@televet/kibble-ui 4.0.0-beta.63 → 4.0.0-beta.65

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 (376) hide show
  1. package/dist/chunks/{alert.types-D-Oi8lzU.js → alert.types-BvnpOwve.js} +2 -2
  2. package/dist/chunks/{alert.types-D-Oi8lzU.js.map → alert.types-BvnpOwve.js.map} +1 -1
  3. package/dist/chunks/{alert.types-QjdV89J8.js → alert.types-Dth5h5qO.js} +3 -3
  4. package/dist/chunks/{alert.types-QjdV89J8.js.map → alert.types-Dth5h5qO.js.map} +1 -1
  5. package/dist/chunks/{avatar.component-DhnsK_Su.js → avatar.component-BPCJZRyT.js} +14 -14
  6. package/dist/chunks/{avatar.component-DhnsK_Su.js.map → avatar.component-BPCJZRyT.js.map} +1 -1
  7. package/dist/chunks/avatar.component-y7gTa1dV.js +2 -0
  8. package/dist/chunks/{avatar.component-Bx-G6wRN.js.map → avatar.component-y7gTa1dV.js.map} +1 -1
  9. package/dist/chunks/{avatarGroup.component-BuIOss-r.js → avatarGroup.component-BnRXVOIV.js} +2 -2
  10. package/dist/chunks/{avatarGroup.component-BuIOss-r.js.map → avatarGroup.component-BnRXVOIV.js.map} +1 -1
  11. package/dist/chunks/{avatarGroup.component-DQ-llmL4.js → avatarGroup.component-Mfl8jvgp.js} +2 -2
  12. package/dist/chunks/{avatarGroup.component-DQ-llmL4.js.map → avatarGroup.component-Mfl8jvgp.js.map} +1 -1
  13. package/dist/chunks/{buttonGroup.component-BniN5aY0.js → buttonGroup.component-6ZBOJbfR.js} +2 -2
  14. package/dist/chunks/{buttonGroup.component-BniN5aY0.js.map → buttonGroup.component-6ZBOJbfR.js.map} +1 -1
  15. package/dist/chunks/{buttonGroup.component-CUgf40bo.js → buttonGroup.component-DQfB4Nj3.js} +2 -2
  16. package/dist/chunks/{buttonGroup.component-CUgf40bo.js.map → buttonGroup.component-DQfB4Nj3.js.map} +1 -1
  17. package/dist/chunks/{characterCounter.component-C5Ju67wX.js → characterCounter.component-4T8NHb11.js} +2 -2
  18. package/dist/chunks/{characterCounter.component-C5Ju67wX.js.map → characterCounter.component-4T8NHb11.js.map} +1 -1
  19. package/dist/chunks/{characterCounter.component-0krhcDgO.js → characterCounter.component-Cs0y0DOj.js} +3 -3
  20. package/dist/chunks/{characterCounter.component-0krhcDgO.js.map → characterCounter.component-Cs0y0DOj.js.map} +1 -1
  21. package/dist/chunks/checkbox.component-CFuJaYmY.js +2 -0
  22. package/dist/chunks/{checkbox.component-CanZsQHo.js.map → checkbox.component-CFuJaYmY.js.map} +1 -1
  23. package/dist/chunks/{checkbox.component-D1hf8o_B.js → checkbox.component-DqlWmIyY.js} +10 -10
  24. package/dist/chunks/{checkbox.component-D1hf8o_B.js.map → checkbox.component-DqlWmIyY.js.map} +1 -1
  25. package/dist/chunks/{checkbox.records-BtLBaHBy.js → checkbox.records-08YIiUZO.js} +12 -12
  26. package/dist/chunks/{checkbox.records-BtLBaHBy.js.map → checkbox.records-08YIiUZO.js.map} +1 -1
  27. package/dist/chunks/checkbox.records-B7refmmT.js +2 -0
  28. package/dist/chunks/{checkbox.records-wbkLltak.js.map → checkbox.records-B7refmmT.js.map} +1 -1
  29. package/dist/chunks/{checkboxGroup.component-yDUy5BQi.js → checkboxGroup.component-DBqDJvPC.js} +3 -3
  30. package/dist/chunks/{checkboxGroup.component-yDUy5BQi.js.map → checkboxGroup.component-DBqDJvPC.js.map} +1 -1
  31. package/dist/chunks/{checkboxGroup.component-CfynWbnU.js → checkboxGroup.component-DaxmsqdZ.js} +2 -2
  32. package/dist/chunks/{checkboxGroup.component-CfynWbnU.js.map → checkboxGroup.component-DaxmsqdZ.js.map} +1 -1
  33. package/dist/chunks/{config-B1FINd7s.js → config-DlTdf-Yt.js} +3 -3
  34. package/dist/chunks/{config-B1FINd7s.js.map → config-DlTdf-Yt.js.map} +1 -1
  35. package/dist/chunks/{conversationCard.component-E9e_Kl-G.js → conversationCard.component-Bg1Q9FdN.js} +18 -17
  36. package/dist/chunks/{conversationCard.component-E9e_Kl-G.js.map → conversationCard.component-Bg1Q9FdN.js.map} +1 -1
  37. package/dist/chunks/conversationCard.component-CBrw3VnT.js +2 -0
  38. package/dist/chunks/{conversationCard.component-C5lvyhtU.js.map → conversationCard.component-CBrw3VnT.js.map} +1 -1
  39. package/dist/chunks/{datePicker.component-Cv88ibpq.js → datePicker.component-DfQNebKg.js} +8 -8
  40. package/dist/chunks/{datePicker.component-Cv88ibpq.js.map → datePicker.component-DfQNebKg.js.map} +1 -1
  41. package/dist/chunks/datePicker.component-u52NQcza.js +15 -0
  42. package/dist/chunks/{datePicker.component-DabILO51.js.map → datePicker.component-u52NQcza.js.map} +1 -1
  43. package/dist/chunks/dialog-trigger-B5NK0lr-.js +2 -0
  44. package/dist/chunks/{dialog-trigger-BCeZGpGO.js.map → dialog-trigger-B5NK0lr-.js.map} +1 -1
  45. package/dist/chunks/{dialog-trigger-D2uDgMJr.js → dialog-trigger-BPlPzPU-.js} +9 -9
  46. package/dist/chunks/{dialog-trigger-D2uDgMJr.js.map → dialog-trigger-BPlPzPU-.js.map} +1 -1
  47. package/dist/chunks/{heading.component-DZ7kmGcE.js → heading.component-BXcyhAEU.js} +2 -2
  48. package/dist/chunks/{heading.component-DZ7kmGcE.js.map → heading.component-BXcyhAEU.js.map} +1 -1
  49. package/dist/chunks/{heading.component-CcrIqjxB.js → heading.component-ZD_UVarx.js} +2 -2
  50. package/dist/chunks/{heading.component-CcrIqjxB.js.map → heading.component-ZD_UVarx.js.map} +1 -1
  51. package/dist/chunks/{index-DZGYG5M4.js → index-BBZxmcrY.js} +2 -2
  52. package/dist/chunks/{index-DZGYG5M4.js.map → index-BBZxmcrY.js.map} +1 -1
  53. package/dist/chunks/index-BDnnTdaJ.js +2 -0
  54. package/dist/chunks/{index-CEYJbpt4.js.map → index-BDnnTdaJ.js.map} +1 -1
  55. package/dist/chunks/index-BGwwyukg.js +2 -0
  56. package/dist/chunks/index-BGwwyukg.js.map +1 -0
  57. package/dist/chunks/{index-CBh9RZVL.js → index-BNYygzo-.js} +18 -17
  58. package/dist/chunks/{index-CBh9RZVL.js.map → index-BNYygzo-.js.map} +1 -1
  59. package/dist/chunks/index-BYf7SZUC.js +2 -0
  60. package/dist/chunks/{index-BfD9Ne2e.js.map → index-BYf7SZUC.js.map} +1 -1
  61. package/dist/chunks/{index-Cuu1x05z.js → index-C2kxTsiE.js} +17 -16
  62. package/dist/chunks/{index-Cuu1x05z.js.map → index-C2kxTsiE.js.map} +1 -1
  63. package/dist/chunks/index-COoMV9Mh.js +2 -0
  64. package/dist/chunks/{index-hGlTuPbK.js.map → index-COoMV9Mh.js.map} +1 -1
  65. package/dist/chunks/index-CYk-7wwG.js +1018 -0
  66. package/dist/chunks/index-CYk-7wwG.js.map +1 -0
  67. package/dist/chunks/index-CZ42b9rT.js +3 -0
  68. package/dist/chunks/index-CZ42b9rT.js.map +1 -0
  69. package/dist/chunks/index-CZz7hHWb.js +2 -0
  70. package/dist/chunks/{index-B4fjIWcA.js.map → index-CZz7hHWb.js.map} +1 -1
  71. package/dist/chunks/{index-Cqwkg1hU.js → index-CjNAJEk5.js} +106 -105
  72. package/dist/chunks/{index-Cqwkg1hU.js.map → index-CjNAJEk5.js.map} +1 -1
  73. package/dist/chunks/{index-CZPHIn6T.js → index-Co91SHhW.js} +3 -3
  74. package/dist/chunks/{index-CZPHIn6T.js.map → index-Co91SHhW.js.map} +1 -1
  75. package/dist/chunks/{index-D5Dscg8T.js → index-D9DU-5GF.js} +49 -48
  76. package/dist/chunks/{index-D5Dscg8T.js.map → index-D9DU-5GF.js.map} +1 -1
  77. package/dist/chunks/{index-f4Ba8Pq7.js → index-DUHFrLMI.js} +15 -15
  78. package/dist/chunks/{index-f4Ba8Pq7.js.map → index-DUHFrLMI.js.map} +1 -1
  79. package/dist/chunks/{index-Dx94WMw1.js → index-DcJZ8q0f.js} +44 -43
  80. package/dist/chunks/{index-Dx94WMw1.js.map → index-DcJZ8q0f.js.map} +1 -1
  81. package/dist/chunks/index-Dyxhds_1.js +2 -0
  82. package/dist/chunks/{index-5cRW642o.js.map → index-Dyxhds_1.js.map} +1 -1
  83. package/dist/chunks/{index-DMSZTX7A.js → index-MDMqrELk.js} +9 -9
  84. package/dist/chunks/{index-DMSZTX7A.js.map → index-MDMqrELk.js.map} +1 -1
  85. package/dist/chunks/index-MlhL0PDC.js +2 -0
  86. package/dist/chunks/{index-CFnNmQf0.js.map → index-MlhL0PDC.js.map} +1 -1
  87. package/dist/chunks/{index-Dq91nN6-.js → index-S1uNQPZj.js} +3 -3
  88. package/dist/chunks/{index-Dq91nN6-.js.map → index-S1uNQPZj.js.map} +1 -1
  89. package/dist/chunks/index-UWtj4ULm.js +8 -0
  90. package/dist/chunks/{index-CedYIQt5.js.map → index-UWtj4ULm.js.map} +1 -1
  91. package/dist/chunks/index-ZaGEDS_0.js +2 -0
  92. package/dist/chunks/{index-BmcSWiFh.js.map → index-ZaGEDS_0.js.map} +1 -1
  93. package/dist/chunks/index-j7W9Hyzx.js +322 -0
  94. package/dist/chunks/index-j7W9Hyzx.js.map +1 -0
  95. package/dist/chunks/{logo.types-CXQsathd.js → logo.types-By8TqyNf.js} +2 -2
  96. package/dist/chunks/{logo.types-CXQsathd.js.map → logo.types-By8TqyNf.js.map} +1 -1
  97. package/dist/chunks/menu.component-CiZzHc2D.js +2 -0
  98. package/dist/chunks/{menu.component-BsIFHOah.js.map → menu.component-CiZzHc2D.js.map} +1 -1
  99. package/dist/chunks/{menu.component-bdDcCEay.js → menu.component-D4gknsq1.js} +26 -26
  100. package/dist/chunks/{menu.component-bdDcCEay.js.map → menu.component-D4gknsq1.js.map} +1 -1
  101. package/dist/chunks/modal.types-9-Bz6ybC.js +2 -0
  102. package/dist/chunks/{modal.types-DYw_hPtT.js.map → modal.types-9-Bz6ybC.js.map} +1 -1
  103. package/dist/chunks/{modal.types-vrGXh5fF.js → modal.types-BV8Eand2.js} +5 -5
  104. package/dist/chunks/{modal.types-vrGXh5fF.js.map → modal.types-BV8Eand2.js.map} +1 -1
  105. package/dist/chunks/{notificationCounter.component-DMr4Mlm9.js → notificationCounter.component-Bei8mHSZ.js} +2 -2
  106. package/dist/chunks/{notificationCounter.component-DMr4Mlm9.js.map → notificationCounter.component-Bei8mHSZ.js.map} +1 -1
  107. package/dist/chunks/pinInput.types-B-RchRm_.js +2 -0
  108. package/dist/chunks/{pinInput.types-DHBICngh.js.map → pinInput.types-B-RchRm_.js.map} +1 -1
  109. package/dist/chunks/{pinInput.types-jvCDRIOC.js → pinInput.types-U7Tfj5It.js} +8 -8
  110. package/dist/chunks/{pinInput.types-jvCDRIOC.js.map → pinInput.types-U7Tfj5It.js.map} +1 -1
  111. package/dist/chunks/popover-80QH8HEJ.js +2 -0
  112. package/dist/chunks/{popover-DPEovmxh.js.map → popover-80QH8HEJ.js.map} +1 -1
  113. package/dist/chunks/{popover-D0QoPsrG.js → popover-B9rNOU0g.js} +26 -26
  114. package/dist/chunks/{popover-D0QoPsrG.js.map → popover-B9rNOU0g.js.map} +1 -1
  115. package/dist/chunks/{popover-root-provider-Dt02njg5.js → popover-root-provider-CeLLpesI.js} +8 -8
  116. package/dist/chunks/{popover-root-provider-Dt02njg5.js.map → popover-root-provider-CeLLpesI.js.map} +1 -1
  117. package/dist/chunks/popover-root-provider-DAMDDAHQ.js +2 -0
  118. package/dist/chunks/{popover-root-provider-BYJE5I-P.js.map → popover-root-provider-DAMDDAHQ.js.map} +1 -1
  119. package/dist/chunks/popover.component-A8In7d2B.js +2 -0
  120. package/dist/chunks/popover.component-A8In7d2B.js.map +1 -0
  121. package/dist/chunks/popover.component-BR8W3Jb8.js +322 -0
  122. package/dist/chunks/popover.component-BR8W3Jb8.js.map +1 -0
  123. package/dist/chunks/popover.recipe--gMRcQTS.js +479 -0
  124. package/dist/chunks/popover.recipe--gMRcQTS.js.map +1 -0
  125. package/dist/chunks/popover.recipe-DLeyokHo.js +2 -0
  126. package/dist/chunks/popover.recipe-DLeyokHo.js.map +1 -0
  127. package/dist/chunks/{radio.records-CzNYznSb.js → radio.records-D7VFHW-s.js} +16 -16
  128. package/dist/chunks/{radio.records-CzNYznSb.js.map → radio.records-D7VFHW-s.js.map} +1 -1
  129. package/dist/chunks/radio.records-DLffZyeq.js +2 -0
  130. package/dist/chunks/{radio.records-CEgwvLIL.js.map → radio.records-DLffZyeq.js.map} +1 -1
  131. package/dist/chunks/radioGroup.component-CZwrCppd.js +2 -0
  132. package/dist/chunks/{radioGroup.component-BhR1aKj7.js.map → radioGroup.component-CZwrCppd.js.map} +1 -1
  133. package/dist/chunks/{radioGroup.component-CyJiJHx5.js → radioGroup.component-DVsMiHFI.js} +11 -11
  134. package/dist/chunks/{radioGroup.component-CyJiJHx5.js.map → radioGroup.component-DVsMiHFI.js.map} +1 -1
  135. package/dist/chunks/{ratingDots.component-HUIKoSFb.js → ratingDots.component-1U-hoEpC.js} +4 -4
  136. package/dist/chunks/{ratingDots.component-HUIKoSFb.js.map → ratingDots.component-1U-hoEpC.js.map} +1 -1
  137. package/dist/chunks/{ratingDots.component-BKUKL6Mz.js → ratingDots.component-qbroWQhZ.js} +2 -2
  138. package/dist/chunks/{ratingDots.component-BKUKL6Mz.js.map → ratingDots.component-qbroWQhZ.js.map} +1 -1
  139. package/dist/chunks/render-strategy-BmWbSgqh.js +2 -0
  140. package/dist/chunks/{render-strategy-CdSSbgPU.js.map → render-strategy-BmWbSgqh.js.map} +1 -1
  141. package/dist/chunks/{render-strategy-ql9Qx5Cz.js → render-strategy-C8hwN3bm.js} +2 -2
  142. package/dist/chunks/{render-strategy-ql9Qx5Cz.js.map → render-strategy-C8hwN3bm.js.map} +1 -1
  143. package/dist/chunks/{select.component-DLt_2xlg.js → select.component-5vAzdrZa.js} +44 -44
  144. package/dist/chunks/{select.component-DLt_2xlg.js.map → select.component-5vAzdrZa.js.map} +1 -1
  145. package/dist/chunks/select.component-C_Fs6Xeq.js +2 -0
  146. package/dist/chunks/{select.component-8ukrnBdk.js.map → select.component-C_Fs6Xeq.js.map} +1 -1
  147. package/dist/chunks/{sortableList.component-B_7TyrzG.js → sortableList.component-BX3EvpRM.js} +3 -3
  148. package/dist/chunks/{sortableList.component-B_7TyrzG.js.map → sortableList.component-BX3EvpRM.js.map} +1 -1
  149. package/dist/chunks/{sortableList.component-CR53llzt.js → sortableList.component-B_O-YB3I.js} +3 -3
  150. package/dist/chunks/{sortableList.component-CR53llzt.js.map → sortableList.component-B_O-YB3I.js.map} +1 -1
  151. package/dist/chunks/{spinner.component-DIyDNcWp.js → spinner.component-CzhcJOwX.js} +2 -2
  152. package/dist/chunks/{spinner.component-DIyDNcWp.js.map → spinner.component-CzhcJOwX.js.map} +1 -1
  153. package/dist/chunks/{spinner.component-Bir81DbZ.js → spinner.component-lHj69hIF.js} +3 -3
  154. package/dist/chunks/{spinner.component-Bir81DbZ.js.map → spinner.component-lHj69hIF.js.map} +1 -1
  155. package/dist/chunks/{styledAvatar.types-CbfoVHIB.js → styledAvatar.types-B9SHiNfg.js} +2 -2
  156. package/dist/chunks/{styledAvatar.types-CbfoVHIB.js.map → styledAvatar.types-B9SHiNfg.js.map} +1 -1
  157. package/dist/chunks/{styledAvatar.types-BjuO516j.js → styledAvatar.types-BvHm6hKS.js} +2 -2
  158. package/dist/chunks/{styledAvatar.types-BjuO516j.js.map → styledAvatar.types-BvHm6hKS.js.map} +1 -1
  159. package/dist/chunks/{swatch.types-B8OSJZ-a.js → swatch.types-DbgA3RWc.js} +2 -2
  160. package/dist/chunks/{swatch.types-B8OSJZ-a.js.map → swatch.types-DbgA3RWc.js.map} +1 -1
  161. package/dist/chunks/switch.component-B3Gfgft9.js +2 -0
  162. package/dist/chunks/{switch.component-CPhSaMqG.js.map → switch.component-B3Gfgft9.js.map} +1 -1
  163. package/dist/chunks/{switch.component-Dpu_wRns.js → switch.component-DjOGsCIQ.js} +11 -11
  164. package/dist/chunks/{switch.component-Dpu_wRns.js.map → switch.component-DjOGsCIQ.js.map} +1 -1
  165. package/dist/chunks/{tabs.component-BHGBxzEH.js → tabs.component-Ca9jVGv0.js} +48 -48
  166. package/dist/chunks/{tabs.component-BHGBxzEH.js.map → tabs.component-Ca9jVGv0.js.map} +1 -1
  167. package/dist/chunks/tabs.component-pl0kO5_M.js +2 -0
  168. package/dist/chunks/{tabs.component-CY9u7o56.js.map → tabs.component-pl0kO5_M.js.map} +1 -1
  169. package/dist/chunks/{tagBlock.component-LnQADvWP.js → tagBlock.component-C2DAQrQE.js} +2 -2
  170. package/dist/chunks/{tagBlock.component-LnQADvWP.js.map → tagBlock.component-C2DAQrQE.js.map} +1 -1
  171. package/dist/chunks/{tagBlock.component-3imRPwFH.js → tagBlock.component-CnPbyaGH.js} +5 -5
  172. package/dist/chunks/{tagBlock.component-3imRPwFH.js.map → tagBlock.component-CnPbyaGH.js.map} +1 -1
  173. package/dist/chunks/text.component-CnnBhB3c.js +2 -0
  174. package/dist/chunks/text.component-CnnBhB3c.js.map +1 -0
  175. package/dist/chunks/text.component-Cpruo7MB.js +12 -0
  176. package/dist/chunks/text.component-Cpruo7MB.js.map +1 -0
  177. package/dist/chunks/textInput.component-D-galjwy.js +2 -0
  178. package/dist/chunks/{textInput.component-BJ3ija0b.js.map → textInput.component-D-galjwy.js.map} +1 -1
  179. package/dist/chunks/{textInput.component-4YWnSJOZ.js → textInput.component-DXtEgbkr.js} +12 -12
  180. package/dist/chunks/{textInput.component-4YWnSJOZ.js.map → textInput.component-DXtEgbkr.js.map} +1 -1
  181. package/dist/chunks/textarea.component-DmxMuMCU.js +2 -0
  182. package/dist/chunks/{textarea.component-zej8Yk62.js.map → textarea.component-DmxMuMCU.js.map} +1 -1
  183. package/dist/chunks/{textarea.component-GhlEwhHu.js → textarea.component-Do0zHf-1.js} +7 -7
  184. package/dist/chunks/{textarea.component-GhlEwhHu.js.map → textarea.component-Do0zHf-1.js.map} +1 -1
  185. package/dist/chunks/theme.provider-CIJGn9Kh.js +26 -0
  186. package/dist/chunks/theme.provider-CIJGn9Kh.js.map +1 -0
  187. package/dist/chunks/{theme.provider-D_vTiS-g.js → theme.provider-Dj4pZ815.js} +1699 -1830
  188. package/dist/chunks/theme.provider-Dj4pZ815.js.map +1 -0
  189. package/dist/chunks/{timePicker.component-C7StGDmo.js → timePicker.component-CophNE3d.js} +2 -2
  190. package/dist/chunks/{timePicker.component-C7StGDmo.js.map → timePicker.component-CophNE3d.js.map} +1 -1
  191. package/dist/chunks/{timePicker.component-DBzIM9G4.js → timePicker.component-DTs3MjOx.js} +4 -4
  192. package/dist/chunks/{timePicker.component-DBzIM9G4.js.map → timePicker.component-DTs3MjOx.js.map} +1 -1
  193. package/dist/chunks/{timeRange.component-CNLSxsSZ.js → timeRange.component-C5dt8sZn.js} +2 -2
  194. package/dist/chunks/{timeRange.component-CNLSxsSZ.js.map → timeRange.component-C5dt8sZn.js.map} +1 -1
  195. package/dist/chunks/{timeRange.component-BceK2COI.js → timeRange.component-C5wSyUiZ.js} +2 -2
  196. package/dist/chunks/{timeRange.component-BceK2COI.js.map → timeRange.component-C5wSyUiZ.js.map} +1 -1
  197. package/dist/chunks/timestamp.component-BPU8bf7p.js +54 -0
  198. package/dist/chunks/{timestamp.component-CbhzpqAt.js.map → timestamp.component-BPU8bf7p.js.map} +1 -1
  199. package/dist/chunks/timestamp.component-rTLrzBPA.js +2 -0
  200. package/dist/chunks/{timestamp.component-DWGPmV_e.js.map → timestamp.component-rTLrzBPA.js.map} +1 -1
  201. package/dist/chunks/{toaster.records-Cf8bpHo8.js → toaster.records-BGfpUOVt.js} +22 -21
  202. package/dist/chunks/{toaster.records-Cf8bpHo8.js.map → toaster.records-BGfpUOVt.js.map} +1 -1
  203. package/dist/chunks/toaster.records-BJo0j1IZ.js +2 -0
  204. package/dist/chunks/{toaster.records-CGym-iT-.js.map → toaster.records-BJo0j1IZ.js.map} +1 -1
  205. package/dist/chunks/tooltip.component-CwrXAVEq.js +2 -0
  206. package/dist/chunks/tooltip.component-CwrXAVEq.js.map +1 -0
  207. package/dist/chunks/tooltip.component-DgOzrNG3.js +758 -0
  208. package/dist/chunks/tooltip.component-DgOzrNG3.js.map +1 -0
  209. package/dist/chunks/{typography.records-BeoK0Uyj.js → typography.records-C6G_65b4.js} +2 -2
  210. package/dist/chunks/{typography.records-BeoK0Uyj.js.map → typography.records-C6G_65b4.js.map} +1 -1
  211. package/dist/chunks/{typography.records-Xg59taw9.js → typography.records-jnjWfTLS.js} +2 -2
  212. package/dist/chunks/{typography.records-Xg59taw9.js.map → typography.records-jnjWfTLS.js.map} +1 -1
  213. package/dist/chunks/use-field-context--wBJQY1R.js +2 -0
  214. package/dist/chunks/{use-field-context-xBX4EpFz.js.map → use-field-context--wBJQY1R.js.map} +1 -1
  215. package/dist/chunks/{use-field-context-C4IwmN39.js → use-field-context-B_G7Yziz.js} +2 -2
  216. package/dist/chunks/{use-field-context-C4IwmN39.js.map → use-field-context-B_G7Yziz.js.map} +1 -1
  217. package/dist/chunks/use-locale-context-BdqHZ8L8.js +22 -0
  218. package/dist/chunks/use-locale-context-BdqHZ8L8.js.map +1 -0
  219. package/dist/chunks/{portal-D2KZrSzZ.js → use-locale-context-D-agiW5E.js} +242 -242
  220. package/dist/chunks/use-locale-context-D-agiW5E.js.map +1 -0
  221. package/dist/chunks/{withFormControl-Cb632r_x.js → withFormControl-BDuV97Vb.js} +49 -49
  222. package/dist/chunks/{withFormControl-Cb632r_x.js.map → withFormControl-BDuV97Vb.js.map} +1 -1
  223. package/dist/chunks/withFormControl-DpytztWF.js +2 -0
  224. package/dist/chunks/{withFormControl-BI8pqhZl.js.map → withFormControl-DpytztWF.js.map} +1 -1
  225. package/dist/chunks/withTruncation-DPbMF-jg.js +2 -0
  226. package/dist/chunks/withTruncation-DPbMF-jg.js.map +1 -0
  227. package/dist/chunks/withTruncation-DoQriKuH.js +67 -0
  228. package/dist/chunks/withTruncation-DoQriKuH.js.map +1 -0
  229. package/dist/chunks/{wrap-CYgSj8wY.js → wrap-B8tBNeBY.js} +2 -2
  230. package/dist/chunks/{wrap-CYgSj8wY.js.map → wrap-B8tBNeBY.js.map} +1 -1
  231. package/dist/cjs/chakra/index.cjs +1 -1
  232. package/dist/cjs/chakra/index.cjs.map +1 -1
  233. package/dist/cjs/components/Alert/index.cjs +1 -1
  234. package/dist/cjs/components/Avatar/index.cjs +1 -1
  235. package/dist/cjs/components/AvatarGroup/index.cjs +1 -1
  236. package/dist/cjs/components/ButtonGroup/index.cjs +1 -1
  237. package/dist/cjs/components/CharacterCounter/index.cjs +1 -1
  238. package/dist/cjs/components/Checkbox/index.cjs +1 -1
  239. package/dist/cjs/components/CheckboxGroup/index.cjs +1 -1
  240. package/dist/cjs/components/ConversationCard/index.cjs +1 -1
  241. package/dist/cjs/components/DatePicker/index.cjs +1 -1
  242. package/dist/cjs/components/Heading/index.cjs +1 -1
  243. package/dist/cjs/components/Menu/index.cjs +1 -1
  244. package/dist/cjs/components/Modal/index.cjs +1 -1
  245. package/dist/cjs/components/PinInput/index.cjs +1 -1
  246. package/dist/cjs/components/Popover/index.cjs +1 -1
  247. package/dist/cjs/components/RadioGroup/index.cjs +1 -1
  248. package/dist/cjs/components/RatingDots/index.cjs +1 -1
  249. package/dist/cjs/components/Select/index.cjs +1 -1
  250. package/dist/cjs/components/SortableList/index.cjs +1 -1
  251. package/dist/cjs/components/Spinner/index.cjs +1 -1
  252. package/dist/cjs/components/StyledAvatar/index.cjs +1 -1
  253. package/dist/cjs/components/Switch/index.cjs +1 -1
  254. package/dist/cjs/components/Tabs/index.cjs +1 -1
  255. package/dist/cjs/components/TagBlock/index.cjs +1 -1
  256. package/dist/cjs/components/Text/index.cjs +1 -1
  257. package/dist/cjs/components/TextInput/index.cjs +1 -1
  258. package/dist/cjs/components/Textarea/index.cjs +1 -1
  259. package/dist/cjs/components/TimePicker/index.cjs +1 -1
  260. package/dist/cjs/components/TimeRange/index.cjs +1 -1
  261. package/dist/cjs/components/Timestamp/index.cjs +1 -1
  262. package/dist/cjs/components/Toast/index.cjs +1 -1
  263. package/dist/cjs/components/Tooltip/index.cjs +1 -1
  264. package/dist/cjs/components/index.cjs +1 -1
  265. package/dist/cjs/index.cjs +1 -1
  266. package/dist/cjs/theme/index.cjs +1 -1
  267. package/dist/esm/chakra/index.js +69 -69
  268. package/dist/esm/components/Alert/index.js +1 -1
  269. package/dist/esm/components/Avatar/index.js +1 -1
  270. package/dist/esm/components/AvatarGroup/index.js +1 -1
  271. package/dist/esm/components/ButtonGroup/index.js +1 -1
  272. package/dist/esm/components/CharacterCounter/index.js +1 -1
  273. package/dist/esm/components/Checkbox/index.js +1 -1
  274. package/dist/esm/components/CheckboxGroup/index.js +1 -1
  275. package/dist/esm/components/ConversationCard/index.js +1 -1
  276. package/dist/esm/components/DatePicker/index.js +1 -1
  277. package/dist/esm/components/Heading/index.js +1 -1
  278. package/dist/esm/components/Logo/index.js +1 -1
  279. package/dist/esm/components/Menu/index.js +1 -1
  280. package/dist/esm/components/Modal/index.js +1 -1
  281. package/dist/esm/components/NotificationCounter/index.js +1 -1
  282. package/dist/esm/components/PinInput/index.js +1 -1
  283. package/dist/esm/components/Popover/index.js +1 -1
  284. package/dist/esm/components/RadioGroup/index.js +1 -1
  285. package/dist/esm/components/RatingDots/index.js +1 -1
  286. package/dist/esm/components/Select/index.js +1 -1
  287. package/dist/esm/components/SortableList/index.js +1 -1
  288. package/dist/esm/components/Spinner/index.js +1 -1
  289. package/dist/esm/components/StyledAvatar/index.js +1 -1
  290. package/dist/esm/components/Swatch/index.js +1 -1
  291. package/dist/esm/components/Switch/index.js +1 -1
  292. package/dist/esm/components/Tabs/index.js +1 -1
  293. package/dist/esm/components/TagBlock/index.js +1 -1
  294. package/dist/esm/components/Text/index.js +1 -1
  295. package/dist/esm/components/TextInput/index.js +1 -1
  296. package/dist/esm/components/Textarea/index.js +1 -1
  297. package/dist/esm/components/TimePicker/index.js +1 -1
  298. package/dist/esm/components/TimeRange/index.js +1 -1
  299. package/dist/esm/components/Timestamp/index.js +1 -1
  300. package/dist/esm/components/Toast/index.js +1 -1
  301. package/dist/esm/components/Tooltip/index.js +1 -1
  302. package/dist/esm/components/index.js +42 -41
  303. package/dist/esm/components/index.js.map +1 -1
  304. package/dist/esm/index.js +61 -60
  305. package/dist/esm/index.js.map +1 -1
  306. package/dist/esm/theme/index.js +1 -1
  307. package/dist/types/components/Menu/menu.recipe.d.ts +1 -1
  308. package/dist/types/components/Modal/modal.recipe.d.ts +1 -1
  309. package/dist/types/components/TimePicker/timePicker.recipe.d.ts +1 -1
  310. package/dist/types/components/Tooltip/tooltip.component.d.ts +6 -5
  311. package/dist/types/theme/tokens/shadows/shadows.config.d.ts +3 -3
  312. package/dist/types/theme/tokens/sizes/sizes.config.d.ts +3 -3
  313. package/dist/types/theme/tokens/zIndices/zIndices.config.d.ts +10 -10
  314. package/package.json +1 -1
  315. package/dist/chunks/avatar.component-Bx-G6wRN.js +0 -2
  316. package/dist/chunks/checkbox.component-CanZsQHo.js +0 -2
  317. package/dist/chunks/checkbox.records-wbkLltak.js +0 -2
  318. package/dist/chunks/conversationCard.component-C5lvyhtU.js +0 -2
  319. package/dist/chunks/datePicker.component-DabILO51.js +0 -15
  320. package/dist/chunks/dialog-trigger-BCeZGpGO.js +0 -2
  321. package/dist/chunks/index-5cRW642o.js +0 -2
  322. package/dist/chunks/index-B4fjIWcA.js +0 -2
  323. package/dist/chunks/index-BfD9Ne2e.js +0 -2
  324. package/dist/chunks/index-BlGAWSIX.js +0 -3
  325. package/dist/chunks/index-BlGAWSIX.js.map +0 -1
  326. package/dist/chunks/index-BmcSWiFh.js +0 -2
  327. package/dist/chunks/index-C323eOJV.js +0 -1328
  328. package/dist/chunks/index-C323eOJV.js.map +0 -1
  329. package/dist/chunks/index-CEYJbpt4.js +0 -2
  330. package/dist/chunks/index-CFnNmQf0.js +0 -2
  331. package/dist/chunks/index-CedYIQt5.js +0 -8
  332. package/dist/chunks/index-Fztcdoo_.js +0 -2
  333. package/dist/chunks/index-Fztcdoo_.js.map +0 -1
  334. package/dist/chunks/index-WyVSig7F.js +0 -70
  335. package/dist/chunks/index-WyVSig7F.js.map +0 -1
  336. package/dist/chunks/index-hGlTuPbK.js +0 -2
  337. package/dist/chunks/menu.component-BsIFHOah.js +0 -2
  338. package/dist/chunks/modal.context-DSKLfsJK.js +0 -12
  339. package/dist/chunks/modal.context-DSKLfsJK.js.map +0 -1
  340. package/dist/chunks/modal.context-EJ67QNzq.js +0 -2
  341. package/dist/chunks/modal.context-EJ67QNzq.js.map +0 -1
  342. package/dist/chunks/modal.types-DYw_hPtT.js +0 -2
  343. package/dist/chunks/pinInput.types-DHBICngh.js +0 -2
  344. package/dist/chunks/popover-DPEovmxh.js +0 -2
  345. package/dist/chunks/popover-root-provider-BYJE5I-P.js +0 -2
  346. package/dist/chunks/popover.component-BmB0qwpj.js +0 -264
  347. package/dist/chunks/popover.component-BmB0qwpj.js.map +0 -1
  348. package/dist/chunks/popover.component-DUX4fJNk.js +0 -2
  349. package/dist/chunks/popover.component-DUX4fJNk.js.map +0 -1
  350. package/dist/chunks/popover.recipe-BLsWPsAa.js +0 -124
  351. package/dist/chunks/popover.recipe-BLsWPsAa.js.map +0 -1
  352. package/dist/chunks/popover.recipe-av5Jdn1r.js +0 -2
  353. package/dist/chunks/popover.recipe-av5Jdn1r.js.map +0 -1
  354. package/dist/chunks/portal-D2KZrSzZ.js.map +0 -1
  355. package/dist/chunks/portal-TWtD47zg.js +0 -22
  356. package/dist/chunks/portal-TWtD47zg.js.map +0 -1
  357. package/dist/chunks/radio.records-CEgwvLIL.js +0 -2
  358. package/dist/chunks/radioGroup.component-BhR1aKj7.js +0 -2
  359. package/dist/chunks/render-strategy-CdSSbgPU.js +0 -2
  360. package/dist/chunks/select.component-8ukrnBdk.js +0 -2
  361. package/dist/chunks/switch.component-CPhSaMqG.js +0 -2
  362. package/dist/chunks/tabs.component-CY9u7o56.js +0 -2
  363. package/dist/chunks/textInput.component-BJ3ija0b.js +0 -2
  364. package/dist/chunks/textarea.component-zej8Yk62.js +0 -2
  365. package/dist/chunks/theme.provider-CkBtkwtf.js +0 -26
  366. package/dist/chunks/theme.provider-CkBtkwtf.js.map +0 -1
  367. package/dist/chunks/theme.provider-D_vTiS-g.js.map +0 -1
  368. package/dist/chunks/timestamp.component-CbhzpqAt.js +0 -53
  369. package/dist/chunks/timestamp.component-DWGPmV_e.js +0 -2
  370. package/dist/chunks/toaster.records-CGym-iT-.js +0 -2
  371. package/dist/chunks/use-field-context-xBX4EpFz.js +0 -2
  372. package/dist/chunks/withFormControl-BI8pqhZl.js +0 -2
  373. package/dist/chunks/withTruncation-CDgWfFpO.js +0 -562
  374. package/dist/chunks/withTruncation-CDgWfFpO.js.map +0 -1
  375. package/dist/chunks/withTruncation-XdRr8uDJ.js +0 -2
  376. package/dist/chunks/withTruncation-XdRr8uDJ.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.component-CY9u7o56.js","sources":["../../node_modules/@ark-ui/react/dist/utils/use-debounce.js","../../node_modules/@ark-ui/react/dist/components/tabs/use-tabs-context.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-content.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-indicator.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-list.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-trigger.js","../../node_modules/@zag-js/tabs/dist/index.mjs","../../node_modules/@ark-ui/react/dist/components/tabs/use-tabs.js","../../node_modules/@ark-ui/react/dist/components/tabs/tabs-root.js","../../node_modules/@ark-ui/react/dist/components/tabs/tabs-root-provider.js","../../node_modules/@chakra-ui/react/dist/esm/components/tabs/tabs.js","../../src/components/Tabs/components/Tab/tab.records.ts","../../src/components/Tabs/components/Tab/tab.component.tsx","../../src/components/Tabs/tabs.component.tsx"],"sourcesContent":["'use client';\nimport { useState, useEffect } from 'react';\n\nfunction useDebounce(value, delay) {\n const [debouncedValue, setDebouncedValue] = useState(value);\n useEffect(() => {\n const timer = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n return debouncedValue;\n}\n\nexport { useDebounce };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [TabsProvider, useTabsContext] = createContext({\n name: \"TabsContext\",\n hookName: \"useTabsContext\",\n providerName: \"<TabsProvider />\"\n});\n\nexport { TabsProvider, useTabsContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { composeRefs } from '../../utils/compose-refs.js';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { useRenderStrategyPropsContext } from '../../utils/render-strategy.js';\nimport { useDebounce } from '../../utils/use-debounce.js';\nimport { ark } from '../factory.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabContent = forwardRef((props, ref) => {\n const [contentProps, localProps] = createSplitProps()(props, [\"value\"]);\n const tabs = useTabsContext();\n const renderStrategyProps = useRenderStrategyPropsContext();\n const presence = usePresence({\n ...renderStrategyProps,\n present: useDebounce(tabs.value === props.value, 0),\n immediate: true\n });\n const mergedProps = mergeProps(tabs.getContentProps(contentProps), presence.getPresenceProps(), localProps);\n return /* @__PURE__ */ jsx(PresenceProvider, { value: presence, children: presence.unmounted ? null : /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) }) });\n});\nTabContent.displayName = \"TabContent\";\n\nexport { TabContent };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabIndicator = forwardRef((props, ref) => {\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getIndicatorProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nTabIndicator.displayName = \"TabIndicator\";\n\nexport { TabIndicator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabList = forwardRef((props, ref) => {\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getListProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nTabList.displayName = \"TabList\";\n\nexport { TabList };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabTrigger = forwardRef((props, ref) => {\n const [tabProps, localProps] = createSplitProps()(props, [\"disabled\", \"value\"]);\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getTriggerProps(tabProps), localProps);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nTabTrigger.displayName = \"TabTrigger\";\n\nexport { TabTrigger };\n","import { createAnatomy } from '@zag-js/anatomy';\nimport { isAnchorElement, trackElementRect, nextTick, raf, getFocusables, prevById, nextById, clickIfLink, itemById, queryAll, dataAttr, isSafari, isSelfTarget, isComposingEvent, getEventKey } from '@zag-js/dom-query';\nimport { last, first, createSplitProps } from '@zag-js/utils';\nimport { createGuards, createMachine } from '@zag-js/core';\nimport { createProps } from '@zag-js/types';\n\n// src/tabs.anatomy.ts\nvar anatomy = createAnatomy(\"tabs\").parts(\"root\", \"list\", \"trigger\", \"content\", \"indicator\");\nvar parts = anatomy.build();\nvar getRootId = (ctx) => ctx.ids?.root ?? `tabs:${ctx.id}`;\nvar getListId = (ctx) => ctx.ids?.list ?? `tabs:${ctx.id}:list`;\nvar getContentId = (ctx, id) => ctx.ids?.content ?? `tabs:${ctx.id}:content-${id}`;\nvar getTriggerId = (ctx, id) => ctx.ids?.trigger ?? `tabs:${ctx.id}:trigger-${id}`;\nvar getIndicatorId = (ctx) => ctx.ids?.indicator ?? `tabs:${ctx.id}:indicator`;\nvar getListEl = (ctx) => ctx.getById(getListId(ctx));\nvar getContentEl = (ctx, id) => ctx.getById(getContentId(ctx, id));\nvar getTriggerEl = (ctx, id) => ctx.getById(getTriggerId(ctx, id));\nvar getIndicatorEl = (ctx) => ctx.getById(getIndicatorId(ctx));\nvar getElements = (ctx) => {\n const ownerId = CSS.escape(getListId(ctx));\n const selector = `[role=tab][data-ownedby='${ownerId}']:not([disabled])`;\n return queryAll(getListEl(ctx), selector);\n};\nvar getFirstTriggerEl = (ctx) => first(getElements(ctx));\nvar getLastTriggerEl = (ctx) => last(getElements(ctx));\nvar getNextTriggerEl = (ctx, opts) => nextById(getElements(ctx), getTriggerId(ctx, opts.value), opts.loopFocus);\nvar getPrevTriggerEl = (ctx, opts) => prevById(getElements(ctx), getTriggerId(ctx, opts.value), opts.loopFocus);\nvar getOffsetRect = (el) => {\n return {\n left: el?.offsetLeft ?? 0,\n top: el?.offsetTop ?? 0,\n width: el?.offsetWidth ?? 0,\n height: el?.offsetHeight ?? 0\n };\n};\nvar getRectById = (ctx, id) => {\n const tab = itemById(getElements(ctx), getTriggerId(ctx, id));\n return resolveRect(getOffsetRect(tab));\n};\nvar resolveRect = (rect) => ({\n width: `${rect.width}px`,\n height: `${rect.height}px`,\n left: `${rect.left}px`,\n top: `${rect.top}px`\n});\n\n// src/tabs.connect.ts\nfunction connect(service, normalize) {\n const { state, send, context, prop, scope } = service;\n const translations = prop(\"translations\");\n const focused = state.matches(\"focused\");\n const isVertical = prop(\"orientation\") === \"vertical\";\n const isHorizontal = prop(\"orientation\") === \"horizontal\";\n const composite = prop(\"composite\");\n function getTriggerState(props2) {\n return {\n selected: context.get(\"value\") === props2.value,\n focused: context.get(\"focusedValue\") === props2.value,\n disabled: !!props2.disabled\n };\n }\n return {\n value: context.get(\"value\"),\n focusedValue: context.get(\"focusedValue\"),\n setValue(value) {\n send({ type: \"SET_VALUE\", value });\n },\n clearValue() {\n send({ type: \"CLEAR_VALUE\" });\n },\n setIndicatorRect(value) {\n const id = getTriggerId(scope, value);\n send({ type: \"SET_INDICATOR_RECT\", id });\n },\n syncTabIndex() {\n send({ type: \"SYNC_TAB_INDEX\" });\n },\n selectNext(fromValue) {\n send({ type: \"TAB_FOCUS\", value: fromValue, src: \"selectNext\" });\n send({ type: \"ARROW_NEXT\", src: \"selectNext\" });\n },\n selectPrev(fromValue) {\n send({ type: \"TAB_FOCUS\", value: fromValue, src: \"selectPrev\" });\n send({ type: \"ARROW_PREV\", src: \"selectPrev\" });\n },\n focus() {\n const value = context.get(\"value\");\n if (!value) return;\n getTriggerEl(scope, value)?.focus();\n },\n getRootProps() {\n return normalize.element({\n ...parts.root.attrs,\n id: getRootId(scope),\n \"data-orientation\": prop(\"orientation\"),\n \"data-focus\": dataAttr(focused),\n dir: prop(\"dir\")\n });\n },\n getListProps() {\n return normalize.element({\n ...parts.list.attrs,\n id: getListId(scope),\n role: \"tablist\",\n dir: prop(\"dir\"),\n \"data-focus\": dataAttr(focused),\n \"aria-orientation\": prop(\"orientation\"),\n \"data-orientation\": prop(\"orientation\"),\n \"aria-label\": translations?.listLabel,\n onKeyDown(event) {\n if (event.defaultPrevented) return;\n if (!isSelfTarget(event)) return;\n if (isComposingEvent(event)) return;\n const keyMap = {\n ArrowDown() {\n if (isHorizontal) return;\n send({ type: \"ARROW_NEXT\", key: \"ArrowDown\" });\n },\n ArrowUp() {\n if (isHorizontal) return;\n send({ type: \"ARROW_PREV\", key: \"ArrowUp\" });\n },\n ArrowLeft() {\n if (isVertical) return;\n send({ type: \"ARROW_PREV\", key: \"ArrowLeft\" });\n },\n ArrowRight() {\n if (isVertical) return;\n send({ type: \"ARROW_NEXT\", key: \"ArrowRight\" });\n },\n Home() {\n send({ type: \"HOME\" });\n },\n End() {\n send({ type: \"END\" });\n },\n Enter() {\n send({ type: \"ENTER\" });\n }\n };\n let key = getEventKey(event, {\n dir: prop(\"dir\"),\n orientation: prop(\"orientation\")\n });\n const exec = keyMap[key];\n if (exec) {\n event.preventDefault();\n exec(event);\n }\n }\n });\n },\n getTriggerState,\n getTriggerProps(props2) {\n const { value, disabled } = props2;\n const triggerState = getTriggerState(props2);\n return normalize.button({\n ...parts.trigger.attrs,\n role: \"tab\",\n type: \"button\",\n disabled,\n dir: prop(\"dir\"),\n \"data-orientation\": prop(\"orientation\"),\n \"data-disabled\": dataAttr(disabled),\n \"aria-disabled\": disabled,\n \"data-value\": value,\n \"aria-selected\": triggerState.selected,\n \"data-selected\": dataAttr(triggerState.selected),\n \"data-focus\": dataAttr(triggerState.focused),\n \"aria-controls\": triggerState.selected ? getContentId(scope, value) : void 0,\n \"data-ownedby\": getListId(scope),\n \"data-ssr\": dataAttr(context.get(\"ssr\")),\n id: getTriggerId(scope, value),\n tabIndex: triggerState.selected && composite ? 0 : -1,\n onFocus() {\n send({ type: \"TAB_FOCUS\", value });\n },\n onBlur(event) {\n const target = event.relatedTarget;\n if (target?.getAttribute(\"role\") !== \"tab\") {\n send({ type: \"TAB_BLUR\" });\n }\n },\n onClick(event) {\n if (event.defaultPrevented) return;\n if (disabled) return;\n if (isSafari()) {\n event.currentTarget.focus();\n }\n send({ type: \"TAB_CLICK\", value });\n }\n });\n },\n getContentProps(props2) {\n const { value } = props2;\n const selected = context.get(\"value\") === value;\n return normalize.element({\n ...parts.content.attrs,\n dir: prop(\"dir\"),\n id: getContentId(scope, value),\n tabIndex: composite ? 0 : -1,\n \"aria-labelledby\": getTriggerId(scope, value),\n role: \"tabpanel\",\n \"data-ownedby\": getListId(scope),\n \"data-selected\": dataAttr(selected),\n \"data-orientation\": prop(\"orientation\"),\n hidden: !selected\n });\n },\n getIndicatorProps() {\n const indicatorRect = context.get(\"indicatorRect\");\n const indicatorTransition = context.get(\"indicatorTransition\");\n return normalize.element({\n id: getIndicatorId(scope),\n ...parts.indicator.attrs,\n dir: prop(\"dir\"),\n \"data-orientation\": prop(\"orientation\"),\n style: {\n \"--transition-property\": \"left, right, top, bottom, width, height\",\n \"--left\": indicatorRect.left,\n \"--top\": indicatorRect.top,\n \"--width\": indicatorRect.width,\n \"--height\": indicatorRect.height,\n position: \"absolute\",\n willChange: \"var(--transition-property)\",\n transitionProperty: \"var(--transition-property)\",\n transitionDuration: indicatorTransition ? \"var(--transition-duration, 150ms)\" : \"0ms\",\n transitionTimingFunction: \"var(--transition-timing-function)\",\n [isHorizontal ? \"left\" : \"top\"]: isHorizontal ? \"var(--left)\" : \"var(--top)\"\n }\n });\n }\n };\n}\nvar { not } = createGuards();\nvar machine = createMachine({\n props({ props: props2 }) {\n return {\n dir: \"ltr\",\n orientation: \"horizontal\",\n activationMode: \"automatic\",\n loopFocus: true,\n composite: true,\n navigate(details) {\n clickIfLink(details.node);\n },\n defaultValue: null,\n ...props2\n };\n },\n initialState() {\n return \"idle\";\n },\n context({ prop, bindable }) {\n return {\n value: bindable(() => ({\n defaultValue: prop(\"defaultValue\"),\n value: prop(\"value\"),\n onChange(value) {\n prop(\"onValueChange\")?.({ value });\n }\n })),\n focusedValue: bindable(() => ({\n defaultValue: prop(\"value\") || prop(\"defaultValue\"),\n sync: true,\n onChange(value) {\n prop(\"onFocusChange\")?.({ focusedValue: value });\n }\n })),\n ssr: bindable(() => ({ defaultValue: true })),\n indicatorTransition: bindable(() => ({ defaultValue: false })),\n indicatorRect: bindable(() => ({\n defaultValue: { left: \"0px\", top: \"0px\", width: \"0px\", height: \"0px\" }\n }))\n };\n },\n watch({ context, prop, track, action }) {\n track([() => context.get(\"value\")], () => {\n action([\"allowIndicatorTransition\", \"syncIndicatorRect\", \"syncTabIndex\", \"navigateIfNeeded\"]);\n });\n track([() => prop(\"dir\"), () => prop(\"orientation\")], () => {\n action([\"syncIndicatorRect\"]);\n });\n },\n on: {\n SET_VALUE: {\n actions: [\"setValue\"]\n },\n CLEAR_VALUE: {\n actions: [\"clearValue\"]\n },\n SET_INDICATOR_RECT: {\n actions: [\"setIndicatorRect\"]\n },\n SYNC_TAB_INDEX: {\n actions: [\"syncTabIndex\"]\n }\n },\n entry: [\"syncIndicatorRect\", \"syncTabIndex\", \"syncSsr\"],\n exit: [\"cleanupObserver\"],\n states: {\n idle: {\n on: {\n TAB_FOCUS: {\n target: \"focused\",\n actions: [\"setFocusedValue\"]\n },\n TAB_CLICK: {\n target: \"focused\",\n actions: [\"setFocusedValue\", \"setValue\"]\n }\n }\n },\n focused: {\n on: {\n TAB_CLICK: {\n target: \"focused\",\n actions: [\"setFocusedValue\", \"setValue\"]\n },\n ARROW_PREV: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusPrevTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusPrevTab\"]\n }\n ],\n ARROW_NEXT: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusNextTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusNextTab\"]\n }\n ],\n HOME: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusFirstTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusFirstTab\"]\n }\n ],\n END: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusLastTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusLastTab\"]\n }\n ],\n ENTER: {\n guard: not(\"selectOnFocus\"),\n actions: [\"selectFocusedTab\"]\n },\n TAB_FOCUS: {\n actions: [\"setFocusedValue\"]\n },\n TAB_BLUR: {\n target: \"idle\",\n actions: [\"clearFocusedValue\"]\n }\n }\n }\n },\n implementations: {\n guards: {\n selectOnFocus: ({ prop }) => prop(\"activationMode\") === \"automatic\"\n },\n actions: {\n selectFocusedTab({ context, prop }) {\n raf(() => {\n const focusedValue = context.get(\"focusedValue\");\n if (!focusedValue) return;\n const nullable = prop(\"deselectable\") && context.get(\"value\") === focusedValue;\n const value = nullable ? null : focusedValue;\n context.set(\"value\", value);\n });\n },\n setFocusedValue({ context, event, flush }) {\n if (event.value == null) return;\n flush(() => {\n context.set(\"focusedValue\", event.value);\n });\n },\n clearFocusedValue({ context }) {\n context.set(\"focusedValue\", null);\n },\n setValue({ context, event, prop }) {\n const nullable = prop(\"deselectable\") && context.get(\"value\") === context.get(\"focusedValue\");\n context.set(\"value\", nullable ? null : event.value);\n },\n clearValue({ context }) {\n context.set(\"value\", null);\n },\n focusFirstTab({ scope }) {\n raf(() => {\n getFirstTriggerEl(scope)?.focus();\n });\n },\n focusLastTab({ scope }) {\n raf(() => {\n getLastTriggerEl(scope)?.focus();\n });\n },\n focusNextTab({ context, prop, scope, event }) {\n const focusedValue = event.value ?? context.get(\"focusedValue\");\n if (!focusedValue) return;\n const triggerEl = getNextTriggerEl(scope, {\n value: focusedValue,\n loopFocus: prop(\"loopFocus\")\n });\n raf(() => {\n if (prop(\"composite\")) {\n triggerEl?.focus();\n } else if (triggerEl?.dataset.value != null) {\n context.set(\"focusedValue\", triggerEl.dataset.value);\n }\n });\n },\n focusPrevTab({ context, prop, scope, event }) {\n const focusedValue = event.value ?? context.get(\"focusedValue\");\n if (!focusedValue) return;\n const triggerEl = getPrevTriggerEl(scope, {\n value: focusedValue,\n loopFocus: prop(\"loopFocus\")\n });\n raf(() => {\n if (prop(\"composite\")) {\n triggerEl?.focus();\n } else if (triggerEl?.dataset.value != null) {\n context.set(\"focusedValue\", triggerEl.dataset.value);\n }\n });\n },\n syncTabIndex({ context, scope }) {\n raf(() => {\n const value = context.get(\"value\");\n if (!value) return;\n const contentEl = getContentEl(scope, value);\n if (!contentEl) return;\n const focusables = getFocusables(contentEl);\n if (focusables.length > 0) {\n contentEl.removeAttribute(\"tabindex\");\n } else {\n contentEl.setAttribute(\"tabindex\", \"0\");\n }\n });\n },\n cleanupObserver({ refs }) {\n const cleanup = refs.get(\"indicatorCleanup\");\n if (cleanup) cleanup();\n },\n allowIndicatorTransition({ context }) {\n context.set(\"indicatorTransition\", true);\n },\n setIndicatorRect({ context, event, scope }) {\n const value = event.id ?? context.get(\"value\");\n const indicatorEl = getIndicatorEl(scope);\n if (!indicatorEl) return;\n if (!value) {\n context.set(\"indicatorTransition\", false);\n return;\n }\n const triggerEl = getTriggerEl(scope, value);\n if (!triggerEl) return;\n context.set(\"indicatorRect\", getRectById(scope, value));\n nextTick(() => {\n context.set(\"indicatorTransition\", false);\n });\n },\n syncSsr({ context }) {\n context.set(\"ssr\", false);\n },\n syncIndicatorRect({ context, refs, scope }) {\n const cleanup = refs.get(\"indicatorCleanup\");\n if (cleanup) cleanup();\n const value = context.get(\"value\");\n if (!value) {\n context.set(\"indicatorTransition\", false);\n return;\n }\n const triggerEl = getTriggerEl(scope, value);\n const indicatorEl = getIndicatorEl(scope);\n if (!triggerEl || !indicatorEl) return;\n const indicatorCleanup = trackElementRect([triggerEl], {\n measure(el) {\n return getOffsetRect(el);\n },\n onEntry({ rects }) {\n const [rect] = rects;\n context.set(\"indicatorRect\", resolveRect(rect));\n }\n });\n refs.set(\"indicatorCleanup\", indicatorCleanup);\n },\n navigateIfNeeded({ context, prop, scope }) {\n const value = context.get(\"value\");\n if (!value) return;\n const triggerEl = getTriggerEl(scope, value);\n if (isAnchorElement(triggerEl)) {\n prop(\"navigate\")?.({ value, node: triggerEl, href: triggerEl.href });\n }\n }\n }\n }\n});\nvar props = createProps()([\n \"activationMode\",\n \"composite\",\n \"deselectable\",\n \"dir\",\n \"getRootNode\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onFocusChange\",\n \"onValueChange\",\n \"orientation\",\n \"translations\",\n \"value\",\n \"defaultValue\"\n]);\nvar splitProps = createSplitProps(props);\nvar triggerProps = createProps()([\"disabled\", \"value\"]);\nvar splitTriggerProps = createSplitProps(triggerProps);\nvar contentProps = createProps()([\"value\"]);\nvar splitContentProps = createSplitProps(contentProps);\n\nexport { anatomy, connect, contentProps, machine, props, splitContentProps, splitProps, splitTriggerProps, triggerProps };\n","'use client';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport * as tabs from '@zag-js/tabs';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\n\nconst useTabs = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const machineProps = {\n id,\n dir,\n getRootNode,\n ...props\n };\n const service = useMachine(tabs.machine, machineProps);\n return tabs.connect(service, normalizeProps);\n};\n\nexport { useTabs };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { splitRenderStrategyProps, RenderStrategyPropsProvider } from '../../utils/render-strategy.js';\nimport { ark } from '../factory.js';\nimport { useTabs } from './use-tabs.js';\nimport { TabsProvider } from './use-tabs-context.js';\n\nconst TabsRoot = forwardRef((props, ref) => {\n const [renderStrategyProps, tabsProps] = splitRenderStrategyProps(props);\n const [useTabsProps, localprops] = createSplitProps()(tabsProps, [\n \"activationMode\",\n \"composite\",\n \"defaultValue\",\n \"deselectable\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onFocusChange\",\n \"onValueChange\",\n \"orientation\",\n \"translations\",\n \"value\"\n ]);\n const tabs = useTabs(useTabsProps);\n const mergedProps = mergeProps(tabs.getRootProps(), localprops);\n return /* @__PURE__ */ jsx(TabsProvider, { value: tabs, children: /* @__PURE__ */ jsx(RenderStrategyPropsProvider, { value: renderStrategyProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nTabsRoot.displayName = \"TabsRoot\";\n\nexport { TabsRoot };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { splitRenderStrategyProps, RenderStrategyPropsProvider } from '../../utils/render-strategy.js';\nimport { ark } from '../factory.js';\nimport { TabsProvider } from './use-tabs-context.js';\n\nconst TabsRootProvider = forwardRef((props, ref) => {\n const [renderStrategyProps, tabsProps] = splitRenderStrategyProps(props);\n const [{ value: tabs }, localprops] = createSplitProps()(tabsProps, [\"value\"]);\n const mergedProps = mergeProps(tabs.getRootProps(), localprops);\n return /* @__PURE__ */ jsx(TabsProvider, { value: tabs, children: /* @__PURE__ */ jsx(RenderStrategyPropsProvider, { value: renderStrategyProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nTabsRootProvider.displayName = \"TabsRootProvider\";\n\nexport { TabsRootProvider };\n","\"use strict\";\n\"use client\";\nimport { Tabs } from '@ark-ui/react/tabs';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\n\nconst {\n withProvider,\n withContext,\n useStyles: useTabsStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"tabs\" });\nconst TabsRootProvider = withProvider(Tabs.RootProvider, \"root\", { forwardAsChild: true });\nconst TabsRoot = withProvider(\n Tabs.Root,\n \"root\",\n { forwardAsChild: true }\n);\nconst TabsPropsProvider = PropsProvider;\nconst TabsTrigger = withContext(\n Tabs.Trigger,\n \"trigger\",\n { forwardAsChild: true }\n);\nconst TabsContent = withContext(\n Tabs.Content,\n \"content\",\n { forwardAsChild: true }\n);\nconst TabsContentGroup = withContext(\"div\", \"contentGroup\");\nconst TabsList = withContext(\n Tabs.List,\n \"list\",\n { forwardAsChild: true }\n);\nconst TabsIndicator = withContext(\n Tabs.Indicator,\n \"indicator\",\n { forwardAsChild: true }\n);\nconst TabsContext = Tabs.Context;\n\nexport { TabsContent, TabsContentGroup, TabsContext, TabsIndicator, TabsList, TabsPropsProvider, TabsRoot, TabsRootProvider, TabsTrigger, useTabsStyles };\n","import { TabSize } from \"./tab.types\";\nimport { NotificationCounterSize } from \"components/NotificationCounter/notificationCounter.types\";\nimport { HeadingSize } from \"components/Heading/heading.types\";\n\nexport const tabNotificationCounterSize: Record<\n TabSize,\n NotificationCounterSize\n> = {\n xs: \"sm\",\n sm: \"md\",\n md: \"md\",\n lg: \"lg\",\n};\n\nexport const tabLabelSize: Record<TabSize, HeadingSize> = {\n xs: \"xs\",\n sm: \"xs\",\n md: \"sm\",\n lg: \"md\",\n};\n","import React from \"react\";\nimport { Tabs } from \"@chakra-ui/react/tabs\";\nimport { Icon, IconName } from \"components/Icon\";\nimport {\n NotificationCounter,\n NotificationCounterProps,\n} from \"components/NotificationCounter/notificationCounter.component\";\nimport { TabIconPosition, TabSize } from \"./tab.types\";\nimport { tabLabelSize, tabNotificationCounterSize } from \"./tab.records\";\nimport { Heading } from \"components/Heading/heading.component\";\n\nexport interface TabProps extends Tabs.TriggerProps {\n iconName?: IconName;\n iconPosition?: TabIconPosition;\n label: string;\n notificationCounterProps?: Omit<NotificationCounterProps, \"size\">;\n showNotificationCounter?: boolean;\n size?: TabSize;\n}\n\nexport const Tab = ({\n iconName,\n iconPosition = \"left\",\n label,\n notificationCounterProps,\n showNotificationCounter,\n size = \"md\",\n ...rest\n}: TabProps): React.JSX.Element => {\n return (\n <Tabs.Trigger className=\"Tab\" data-testid=\"kibble-tab\" {...rest}>\n {!!iconName && iconPosition === \"left\" && (\n <Icon\n className=\"Tab__Icon\"\n data-testid=\"kibble-tab-icon\"\n name={iconName}\n size={size}\n variant=\"default\"\n />\n )}\n <Heading\n className=\"Tab__Label\"\n data-testid=\"kibble-tab-label\"\n size={tabLabelSize[size]}\n >\n {label}\n </Heading>\n {!!iconName && iconPosition === \"right\" && (\n <Icon\n className=\"Tab__Icon\"\n data-testid=\"kibble-tab-icon\"\n name={iconName}\n size={size}\n />\n )}\n {showNotificationCounter && (\n <NotificationCounter\n className=\"Tab__NotificationCounter\"\n data-testid=\"kibble-tab-notification-counter\"\n {...notificationCounterProps}\n size={tabNotificationCounterSize[size]}\n />\n )}\n </Tabs.Trigger>\n );\n};\n","import React from \"react\";\nimport { Tabs as CTabs } from \"@chakra-ui/react/tabs\";\nimport { TabSize } from \"./components/Tab/tab.types\";\nimport { Tab, TabProps } from \"./components/Tab/tab.component\";\nimport { Alignment } from \"shared/types/alignment\";\n\nexport interface TabsProps\n extends Omit<CTabs.RootProps, \"onChange\" | \"variant\"> {\n align?: Alignment;\n onChange?: (value: string) => void;\n size?: TabSize;\n tabs: TabProps[];\n tabsContents?: CTabs.ContentProps[];\n}\n\nexport const Tabs = ({\n align = \"start\",\n onChange,\n size = \"md\",\n tabs,\n tabsContents,\n ...rest\n}: TabsProps): React.JSX.Element => {\n return (\n <CTabs.Root\n className=\"Tabs\"\n data-testid=\"kibble-tabs\"\n justify={align || rest.justify}\n size={size}\n onValueChange={({ value }) => onChange?.(value)}\n {...rest}\n >\n <CTabs.List className=\"Tabs__List\" data-testid=\"kibble-tabs-list\">\n {tabs.map((tab, index) => (\n <Tab key={`tab-${index}`} {...tab} />\n ))}\n </CTabs.List>\n {!!tabsContents &&\n tabsContents.map((tabContent, index) => (\n <CTabs.Content key={`tabContent-${index}`} {...tabContent} />\n ))}\n </CTabs.Root>\n );\n};\n"],"names":["useDebounce","value","delay","debouncedValue","setDebouncedValue","useState","useEffect","timer","TabsProvider","useTabsContext","createContext","TabContent","forwardRef","props","ref","contentProps","localProps","createSplitProps","tabs","renderStrategyProps","useRenderStrategyPropsContext","presence","usePresence","mergedProps","mergeProps","jsx","PresenceProvider","ark","composeRefs","TabIndicator","TabList","TabTrigger","tabProps","anatomy","createAnatomy","parts","getRootId","ctx","getListId","getContentId","id","getTriggerId","getIndicatorId","getListEl","getContentEl","getTriggerEl","getIndicatorEl","getElements","selector","queryAll","getFirstTriggerEl","first","getLastTriggerEl","last","getNextTriggerEl","opts","nextById","getPrevTriggerEl","prevById","getOffsetRect","el","getRectById","tab","itemById","resolveRect","rect","connect","service","normalize","state","send","context","prop","scope","translations","focused","isVertical","isHorizontal","composite","getTriggerState","props2","fromValue","dataAttr","event","isSelfTarget","isComposingEvent","keyMap","key","getEventKey","exec","disabled","triggerState","isSafari","selected","indicatorRect","indicatorTransition","not","createGuards","machine","createMachine","details","clickIfLink","bindable","track","action","raf","focusedValue","flush","nullable","triggerEl","contentEl","getFocusables","refs","cleanup","nextTick","indicatorEl","indicatorCleanup","trackElementRect","rects","isAnchorElement","createProps","useTabs","useId","getRootNode","useEnvironmentContext","dir","useLocaleContext","machineProps","useMachine","tabs.machine","tabs.connect","normalizeProps","TabsRoot","tabsProps","splitRenderStrategyProps","useTabsProps","localprops","RenderStrategyPropsProvider","TabsRootProvider","withProvider","withContext","createSlotRecipeContext","Tabs.RootProvider","Tabs.Root","TabsTrigger","Tabs.Trigger","TabsContent","Tabs.Content","TabsList","Tabs.List","Tabs.Indicator","tabNotificationCounterSize","tabLabelSize","Tab","iconName","iconPosition","label","notificationCounterProps","showNotificationCounter","size","rest","jsxs","Icon","Heading","NotificationCounter","Tabs","align","onChange","tabsContents","CTabs.Root","CTabs.List","index","tabContent","CTabs.Content"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10]}
1
+ {"version":3,"file":"tabs.component-pl0kO5_M.js","sources":["../../node_modules/@ark-ui/react/dist/utils/use-debounce.js","../../node_modules/@ark-ui/react/dist/components/tabs/use-tabs-context.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-content.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-indicator.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-list.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-trigger.js","../../node_modules/@zag-js/tabs/dist/index.mjs","../../node_modules/@ark-ui/react/dist/components/tabs/use-tabs.js","../../node_modules/@ark-ui/react/dist/components/tabs/tabs-root.js","../../node_modules/@ark-ui/react/dist/components/tabs/tabs-root-provider.js","../../node_modules/@chakra-ui/react/dist/esm/components/tabs/tabs.js","../../src/components/Tabs/components/Tab/tab.records.ts","../../src/components/Tabs/components/Tab/tab.component.tsx","../../src/components/Tabs/tabs.component.tsx"],"sourcesContent":["'use client';\nimport { useState, useEffect } from 'react';\n\nfunction useDebounce(value, delay) {\n const [debouncedValue, setDebouncedValue] = useState(value);\n useEffect(() => {\n const timer = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n return debouncedValue;\n}\n\nexport { useDebounce };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [TabsProvider, useTabsContext] = createContext({\n name: \"TabsContext\",\n hookName: \"useTabsContext\",\n providerName: \"<TabsProvider />\"\n});\n\nexport { TabsProvider, useTabsContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { composeRefs } from '../../utils/compose-refs.js';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { useRenderStrategyPropsContext } from '../../utils/render-strategy.js';\nimport { useDebounce } from '../../utils/use-debounce.js';\nimport { ark } from '../factory.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabContent = forwardRef((props, ref) => {\n const [contentProps, localProps] = createSplitProps()(props, [\"value\"]);\n const tabs = useTabsContext();\n const renderStrategyProps = useRenderStrategyPropsContext();\n const presence = usePresence({\n ...renderStrategyProps,\n present: useDebounce(tabs.value === props.value, 0),\n immediate: true\n });\n const mergedProps = mergeProps(tabs.getContentProps(contentProps), presence.getPresenceProps(), localProps);\n return /* @__PURE__ */ jsx(PresenceProvider, { value: presence, children: presence.unmounted ? null : /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) }) });\n});\nTabContent.displayName = \"TabContent\";\n\nexport { TabContent };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabIndicator = forwardRef((props, ref) => {\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getIndicatorProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nTabIndicator.displayName = \"TabIndicator\";\n\nexport { TabIndicator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabList = forwardRef((props, ref) => {\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getListProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nTabList.displayName = \"TabList\";\n\nexport { TabList };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabTrigger = forwardRef((props, ref) => {\n const [tabProps, localProps] = createSplitProps()(props, [\"disabled\", \"value\"]);\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getTriggerProps(tabProps), localProps);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nTabTrigger.displayName = \"TabTrigger\";\n\nexport { TabTrigger };\n","import { createAnatomy } from '@zag-js/anatomy';\nimport { isAnchorElement, trackElementRect, nextTick, raf, getFocusables, prevById, nextById, clickIfLink, itemById, queryAll, dataAttr, isSafari, isSelfTarget, isComposingEvent, getEventKey } from '@zag-js/dom-query';\nimport { last, first, createSplitProps } from '@zag-js/utils';\nimport { createGuards, createMachine } from '@zag-js/core';\nimport { createProps } from '@zag-js/types';\n\n// src/tabs.anatomy.ts\nvar anatomy = createAnatomy(\"tabs\").parts(\"root\", \"list\", \"trigger\", \"content\", \"indicator\");\nvar parts = anatomy.build();\nvar getRootId = (ctx) => ctx.ids?.root ?? `tabs:${ctx.id}`;\nvar getListId = (ctx) => ctx.ids?.list ?? `tabs:${ctx.id}:list`;\nvar getContentId = (ctx, id) => ctx.ids?.content ?? `tabs:${ctx.id}:content-${id}`;\nvar getTriggerId = (ctx, id) => ctx.ids?.trigger ?? `tabs:${ctx.id}:trigger-${id}`;\nvar getIndicatorId = (ctx) => ctx.ids?.indicator ?? `tabs:${ctx.id}:indicator`;\nvar getListEl = (ctx) => ctx.getById(getListId(ctx));\nvar getContentEl = (ctx, id) => ctx.getById(getContentId(ctx, id));\nvar getTriggerEl = (ctx, id) => ctx.getById(getTriggerId(ctx, id));\nvar getIndicatorEl = (ctx) => ctx.getById(getIndicatorId(ctx));\nvar getElements = (ctx) => {\n const ownerId = CSS.escape(getListId(ctx));\n const selector = `[role=tab][data-ownedby='${ownerId}']:not([disabled])`;\n return queryAll(getListEl(ctx), selector);\n};\nvar getFirstTriggerEl = (ctx) => first(getElements(ctx));\nvar getLastTriggerEl = (ctx) => last(getElements(ctx));\nvar getNextTriggerEl = (ctx, opts) => nextById(getElements(ctx), getTriggerId(ctx, opts.value), opts.loopFocus);\nvar getPrevTriggerEl = (ctx, opts) => prevById(getElements(ctx), getTriggerId(ctx, opts.value), opts.loopFocus);\nvar getOffsetRect = (el) => {\n return {\n left: el?.offsetLeft ?? 0,\n top: el?.offsetTop ?? 0,\n width: el?.offsetWidth ?? 0,\n height: el?.offsetHeight ?? 0\n };\n};\nvar getRectById = (ctx, id) => {\n const tab = itemById(getElements(ctx), getTriggerId(ctx, id));\n return resolveRect(getOffsetRect(tab));\n};\nvar resolveRect = (rect) => ({\n width: `${rect.width}px`,\n height: `${rect.height}px`,\n left: `${rect.left}px`,\n top: `${rect.top}px`\n});\n\n// src/tabs.connect.ts\nfunction connect(service, normalize) {\n const { state, send, context, prop, scope } = service;\n const translations = prop(\"translations\");\n const focused = state.matches(\"focused\");\n const isVertical = prop(\"orientation\") === \"vertical\";\n const isHorizontal = prop(\"orientation\") === \"horizontal\";\n const composite = prop(\"composite\");\n function getTriggerState(props2) {\n return {\n selected: context.get(\"value\") === props2.value,\n focused: context.get(\"focusedValue\") === props2.value,\n disabled: !!props2.disabled\n };\n }\n return {\n value: context.get(\"value\"),\n focusedValue: context.get(\"focusedValue\"),\n setValue(value) {\n send({ type: \"SET_VALUE\", value });\n },\n clearValue() {\n send({ type: \"CLEAR_VALUE\" });\n },\n setIndicatorRect(value) {\n const id = getTriggerId(scope, value);\n send({ type: \"SET_INDICATOR_RECT\", id });\n },\n syncTabIndex() {\n send({ type: \"SYNC_TAB_INDEX\" });\n },\n selectNext(fromValue) {\n send({ type: \"TAB_FOCUS\", value: fromValue, src: \"selectNext\" });\n send({ type: \"ARROW_NEXT\", src: \"selectNext\" });\n },\n selectPrev(fromValue) {\n send({ type: \"TAB_FOCUS\", value: fromValue, src: \"selectPrev\" });\n send({ type: \"ARROW_PREV\", src: \"selectPrev\" });\n },\n focus() {\n const value = context.get(\"value\");\n if (!value) return;\n getTriggerEl(scope, value)?.focus();\n },\n getRootProps() {\n return normalize.element({\n ...parts.root.attrs,\n id: getRootId(scope),\n \"data-orientation\": prop(\"orientation\"),\n \"data-focus\": dataAttr(focused),\n dir: prop(\"dir\")\n });\n },\n getListProps() {\n return normalize.element({\n ...parts.list.attrs,\n id: getListId(scope),\n role: \"tablist\",\n dir: prop(\"dir\"),\n \"data-focus\": dataAttr(focused),\n \"aria-orientation\": prop(\"orientation\"),\n \"data-orientation\": prop(\"orientation\"),\n \"aria-label\": translations?.listLabel,\n onKeyDown(event) {\n if (event.defaultPrevented) return;\n if (!isSelfTarget(event)) return;\n if (isComposingEvent(event)) return;\n const keyMap = {\n ArrowDown() {\n if (isHorizontal) return;\n send({ type: \"ARROW_NEXT\", key: \"ArrowDown\" });\n },\n ArrowUp() {\n if (isHorizontal) return;\n send({ type: \"ARROW_PREV\", key: \"ArrowUp\" });\n },\n ArrowLeft() {\n if (isVertical) return;\n send({ type: \"ARROW_PREV\", key: \"ArrowLeft\" });\n },\n ArrowRight() {\n if (isVertical) return;\n send({ type: \"ARROW_NEXT\", key: \"ArrowRight\" });\n },\n Home() {\n send({ type: \"HOME\" });\n },\n End() {\n send({ type: \"END\" });\n },\n Enter() {\n send({ type: \"ENTER\" });\n }\n };\n let key = getEventKey(event, {\n dir: prop(\"dir\"),\n orientation: prop(\"orientation\")\n });\n const exec = keyMap[key];\n if (exec) {\n event.preventDefault();\n exec(event);\n }\n }\n });\n },\n getTriggerState,\n getTriggerProps(props2) {\n const { value, disabled } = props2;\n const triggerState = getTriggerState(props2);\n return normalize.button({\n ...parts.trigger.attrs,\n role: \"tab\",\n type: \"button\",\n disabled,\n dir: prop(\"dir\"),\n \"data-orientation\": prop(\"orientation\"),\n \"data-disabled\": dataAttr(disabled),\n \"aria-disabled\": disabled,\n \"data-value\": value,\n \"aria-selected\": triggerState.selected,\n \"data-selected\": dataAttr(triggerState.selected),\n \"data-focus\": dataAttr(triggerState.focused),\n \"aria-controls\": triggerState.selected ? getContentId(scope, value) : void 0,\n \"data-ownedby\": getListId(scope),\n \"data-ssr\": dataAttr(context.get(\"ssr\")),\n id: getTriggerId(scope, value),\n tabIndex: triggerState.selected && composite ? 0 : -1,\n onFocus() {\n send({ type: \"TAB_FOCUS\", value });\n },\n onBlur(event) {\n const target = event.relatedTarget;\n if (target?.getAttribute(\"role\") !== \"tab\") {\n send({ type: \"TAB_BLUR\" });\n }\n },\n onClick(event) {\n if (event.defaultPrevented) return;\n if (disabled) return;\n if (isSafari()) {\n event.currentTarget.focus();\n }\n send({ type: \"TAB_CLICK\", value });\n }\n });\n },\n getContentProps(props2) {\n const { value } = props2;\n const selected = context.get(\"value\") === value;\n return normalize.element({\n ...parts.content.attrs,\n dir: prop(\"dir\"),\n id: getContentId(scope, value),\n tabIndex: composite ? 0 : -1,\n \"aria-labelledby\": getTriggerId(scope, value),\n role: \"tabpanel\",\n \"data-ownedby\": getListId(scope),\n \"data-selected\": dataAttr(selected),\n \"data-orientation\": prop(\"orientation\"),\n hidden: !selected\n });\n },\n getIndicatorProps() {\n const indicatorRect = context.get(\"indicatorRect\");\n const indicatorTransition = context.get(\"indicatorTransition\");\n return normalize.element({\n id: getIndicatorId(scope),\n ...parts.indicator.attrs,\n dir: prop(\"dir\"),\n \"data-orientation\": prop(\"orientation\"),\n style: {\n \"--transition-property\": \"left, right, top, bottom, width, height\",\n \"--left\": indicatorRect.left,\n \"--top\": indicatorRect.top,\n \"--width\": indicatorRect.width,\n \"--height\": indicatorRect.height,\n position: \"absolute\",\n willChange: \"var(--transition-property)\",\n transitionProperty: \"var(--transition-property)\",\n transitionDuration: indicatorTransition ? \"var(--transition-duration, 150ms)\" : \"0ms\",\n transitionTimingFunction: \"var(--transition-timing-function)\",\n [isHorizontal ? \"left\" : \"top\"]: isHorizontal ? \"var(--left)\" : \"var(--top)\"\n }\n });\n }\n };\n}\nvar { not } = createGuards();\nvar machine = createMachine({\n props({ props: props2 }) {\n return {\n dir: \"ltr\",\n orientation: \"horizontal\",\n activationMode: \"automatic\",\n loopFocus: true,\n composite: true,\n navigate(details) {\n clickIfLink(details.node);\n },\n defaultValue: null,\n ...props2\n };\n },\n initialState() {\n return \"idle\";\n },\n context({ prop, bindable }) {\n return {\n value: bindable(() => ({\n defaultValue: prop(\"defaultValue\"),\n value: prop(\"value\"),\n onChange(value) {\n prop(\"onValueChange\")?.({ value });\n }\n })),\n focusedValue: bindable(() => ({\n defaultValue: prop(\"value\") || prop(\"defaultValue\"),\n sync: true,\n onChange(value) {\n prop(\"onFocusChange\")?.({ focusedValue: value });\n }\n })),\n ssr: bindable(() => ({ defaultValue: true })),\n indicatorTransition: bindable(() => ({ defaultValue: false })),\n indicatorRect: bindable(() => ({\n defaultValue: { left: \"0px\", top: \"0px\", width: \"0px\", height: \"0px\" }\n }))\n };\n },\n watch({ context, prop, track, action }) {\n track([() => context.get(\"value\")], () => {\n action([\"allowIndicatorTransition\", \"syncIndicatorRect\", \"syncTabIndex\", \"navigateIfNeeded\"]);\n });\n track([() => prop(\"dir\"), () => prop(\"orientation\")], () => {\n action([\"syncIndicatorRect\"]);\n });\n },\n on: {\n SET_VALUE: {\n actions: [\"setValue\"]\n },\n CLEAR_VALUE: {\n actions: [\"clearValue\"]\n },\n SET_INDICATOR_RECT: {\n actions: [\"setIndicatorRect\"]\n },\n SYNC_TAB_INDEX: {\n actions: [\"syncTabIndex\"]\n }\n },\n entry: [\"syncIndicatorRect\", \"syncTabIndex\", \"syncSsr\"],\n exit: [\"cleanupObserver\"],\n states: {\n idle: {\n on: {\n TAB_FOCUS: {\n target: \"focused\",\n actions: [\"setFocusedValue\"]\n },\n TAB_CLICK: {\n target: \"focused\",\n actions: [\"setFocusedValue\", \"setValue\"]\n }\n }\n },\n focused: {\n on: {\n TAB_CLICK: {\n target: \"focused\",\n actions: [\"setFocusedValue\", \"setValue\"]\n },\n ARROW_PREV: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusPrevTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusPrevTab\"]\n }\n ],\n ARROW_NEXT: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusNextTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusNextTab\"]\n }\n ],\n HOME: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusFirstTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusFirstTab\"]\n }\n ],\n END: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusLastTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusLastTab\"]\n }\n ],\n ENTER: {\n guard: not(\"selectOnFocus\"),\n actions: [\"selectFocusedTab\"]\n },\n TAB_FOCUS: {\n actions: [\"setFocusedValue\"]\n },\n TAB_BLUR: {\n target: \"idle\",\n actions: [\"clearFocusedValue\"]\n }\n }\n }\n },\n implementations: {\n guards: {\n selectOnFocus: ({ prop }) => prop(\"activationMode\") === \"automatic\"\n },\n actions: {\n selectFocusedTab({ context, prop }) {\n raf(() => {\n const focusedValue = context.get(\"focusedValue\");\n if (!focusedValue) return;\n const nullable = prop(\"deselectable\") && context.get(\"value\") === focusedValue;\n const value = nullable ? null : focusedValue;\n context.set(\"value\", value);\n });\n },\n setFocusedValue({ context, event, flush }) {\n if (event.value == null) return;\n flush(() => {\n context.set(\"focusedValue\", event.value);\n });\n },\n clearFocusedValue({ context }) {\n context.set(\"focusedValue\", null);\n },\n setValue({ context, event, prop }) {\n const nullable = prop(\"deselectable\") && context.get(\"value\") === context.get(\"focusedValue\");\n context.set(\"value\", nullable ? null : event.value);\n },\n clearValue({ context }) {\n context.set(\"value\", null);\n },\n focusFirstTab({ scope }) {\n raf(() => {\n getFirstTriggerEl(scope)?.focus();\n });\n },\n focusLastTab({ scope }) {\n raf(() => {\n getLastTriggerEl(scope)?.focus();\n });\n },\n focusNextTab({ context, prop, scope, event }) {\n const focusedValue = event.value ?? context.get(\"focusedValue\");\n if (!focusedValue) return;\n const triggerEl = getNextTriggerEl(scope, {\n value: focusedValue,\n loopFocus: prop(\"loopFocus\")\n });\n raf(() => {\n if (prop(\"composite\")) {\n triggerEl?.focus();\n } else if (triggerEl?.dataset.value != null) {\n context.set(\"focusedValue\", triggerEl.dataset.value);\n }\n });\n },\n focusPrevTab({ context, prop, scope, event }) {\n const focusedValue = event.value ?? context.get(\"focusedValue\");\n if (!focusedValue) return;\n const triggerEl = getPrevTriggerEl(scope, {\n value: focusedValue,\n loopFocus: prop(\"loopFocus\")\n });\n raf(() => {\n if (prop(\"composite\")) {\n triggerEl?.focus();\n } else if (triggerEl?.dataset.value != null) {\n context.set(\"focusedValue\", triggerEl.dataset.value);\n }\n });\n },\n syncTabIndex({ context, scope }) {\n raf(() => {\n const value = context.get(\"value\");\n if (!value) return;\n const contentEl = getContentEl(scope, value);\n if (!contentEl) return;\n const focusables = getFocusables(contentEl);\n if (focusables.length > 0) {\n contentEl.removeAttribute(\"tabindex\");\n } else {\n contentEl.setAttribute(\"tabindex\", \"0\");\n }\n });\n },\n cleanupObserver({ refs }) {\n const cleanup = refs.get(\"indicatorCleanup\");\n if (cleanup) cleanup();\n },\n allowIndicatorTransition({ context }) {\n context.set(\"indicatorTransition\", true);\n },\n setIndicatorRect({ context, event, scope }) {\n const value = event.id ?? context.get(\"value\");\n const indicatorEl = getIndicatorEl(scope);\n if (!indicatorEl) return;\n if (!value) {\n context.set(\"indicatorTransition\", false);\n return;\n }\n const triggerEl = getTriggerEl(scope, value);\n if (!triggerEl) return;\n context.set(\"indicatorRect\", getRectById(scope, value));\n nextTick(() => {\n context.set(\"indicatorTransition\", false);\n });\n },\n syncSsr({ context }) {\n context.set(\"ssr\", false);\n },\n syncIndicatorRect({ context, refs, scope }) {\n const cleanup = refs.get(\"indicatorCleanup\");\n if (cleanup) cleanup();\n const value = context.get(\"value\");\n if (!value) {\n context.set(\"indicatorTransition\", false);\n return;\n }\n const triggerEl = getTriggerEl(scope, value);\n const indicatorEl = getIndicatorEl(scope);\n if (!triggerEl || !indicatorEl) return;\n const indicatorCleanup = trackElementRect([triggerEl], {\n measure(el) {\n return getOffsetRect(el);\n },\n onEntry({ rects }) {\n const [rect] = rects;\n context.set(\"indicatorRect\", resolveRect(rect));\n }\n });\n refs.set(\"indicatorCleanup\", indicatorCleanup);\n },\n navigateIfNeeded({ context, prop, scope }) {\n const value = context.get(\"value\");\n if (!value) return;\n const triggerEl = getTriggerEl(scope, value);\n if (isAnchorElement(triggerEl)) {\n prop(\"navigate\")?.({ value, node: triggerEl, href: triggerEl.href });\n }\n }\n }\n }\n});\nvar props = createProps()([\n \"activationMode\",\n \"composite\",\n \"deselectable\",\n \"dir\",\n \"getRootNode\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onFocusChange\",\n \"onValueChange\",\n \"orientation\",\n \"translations\",\n \"value\",\n \"defaultValue\"\n]);\nvar splitProps = createSplitProps(props);\nvar triggerProps = createProps()([\"disabled\", \"value\"]);\nvar splitTriggerProps = createSplitProps(triggerProps);\nvar contentProps = createProps()([\"value\"]);\nvar splitContentProps = createSplitProps(contentProps);\n\nexport { anatomy, connect, contentProps, machine, props, splitContentProps, splitProps, splitTriggerProps, triggerProps };\n","'use client';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport * as tabs from '@zag-js/tabs';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\n\nconst useTabs = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const machineProps = {\n id,\n dir,\n getRootNode,\n ...props\n };\n const service = useMachine(tabs.machine, machineProps);\n return tabs.connect(service, normalizeProps);\n};\n\nexport { useTabs };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { splitRenderStrategyProps, RenderStrategyPropsProvider } from '../../utils/render-strategy.js';\nimport { ark } from '../factory.js';\nimport { useTabs } from './use-tabs.js';\nimport { TabsProvider } from './use-tabs-context.js';\n\nconst TabsRoot = forwardRef((props, ref) => {\n const [renderStrategyProps, tabsProps] = splitRenderStrategyProps(props);\n const [useTabsProps, localprops] = createSplitProps()(tabsProps, [\n \"activationMode\",\n \"composite\",\n \"defaultValue\",\n \"deselectable\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onFocusChange\",\n \"onValueChange\",\n \"orientation\",\n \"translations\",\n \"value\"\n ]);\n const tabs = useTabs(useTabsProps);\n const mergedProps = mergeProps(tabs.getRootProps(), localprops);\n return /* @__PURE__ */ jsx(TabsProvider, { value: tabs, children: /* @__PURE__ */ jsx(RenderStrategyPropsProvider, { value: renderStrategyProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nTabsRoot.displayName = \"TabsRoot\";\n\nexport { TabsRoot };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { splitRenderStrategyProps, RenderStrategyPropsProvider } from '../../utils/render-strategy.js';\nimport { ark } from '../factory.js';\nimport { TabsProvider } from './use-tabs-context.js';\n\nconst TabsRootProvider = forwardRef((props, ref) => {\n const [renderStrategyProps, tabsProps] = splitRenderStrategyProps(props);\n const [{ value: tabs }, localprops] = createSplitProps()(tabsProps, [\"value\"]);\n const mergedProps = mergeProps(tabs.getRootProps(), localprops);\n return /* @__PURE__ */ jsx(TabsProvider, { value: tabs, children: /* @__PURE__ */ jsx(RenderStrategyPropsProvider, { value: renderStrategyProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nTabsRootProvider.displayName = \"TabsRootProvider\";\n\nexport { TabsRootProvider };\n","\"use strict\";\n\"use client\";\nimport { Tabs } from '@ark-ui/react/tabs';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\n\nconst {\n withProvider,\n withContext,\n useStyles: useTabsStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"tabs\" });\nconst TabsRootProvider = withProvider(Tabs.RootProvider, \"root\", { forwardAsChild: true });\nconst TabsRoot = withProvider(\n Tabs.Root,\n \"root\",\n { forwardAsChild: true }\n);\nconst TabsPropsProvider = PropsProvider;\nconst TabsTrigger = withContext(\n Tabs.Trigger,\n \"trigger\",\n { forwardAsChild: true }\n);\nconst TabsContent = withContext(\n Tabs.Content,\n \"content\",\n { forwardAsChild: true }\n);\nconst TabsContentGroup = withContext(\"div\", \"contentGroup\");\nconst TabsList = withContext(\n Tabs.List,\n \"list\",\n { forwardAsChild: true }\n);\nconst TabsIndicator = withContext(\n Tabs.Indicator,\n \"indicator\",\n { forwardAsChild: true }\n);\nconst TabsContext = Tabs.Context;\n\nexport { TabsContent, TabsContentGroup, TabsContext, TabsIndicator, TabsList, TabsPropsProvider, TabsRoot, TabsRootProvider, TabsTrigger, useTabsStyles };\n","import { TabSize } from \"./tab.types\";\nimport { NotificationCounterSize } from \"components/NotificationCounter/notificationCounter.types\";\nimport { HeadingSize } from \"components/Heading/heading.types\";\n\nexport const tabNotificationCounterSize: Record<\n TabSize,\n NotificationCounterSize\n> = {\n xs: \"sm\",\n sm: \"md\",\n md: \"md\",\n lg: \"lg\",\n};\n\nexport const tabLabelSize: Record<TabSize, HeadingSize> = {\n xs: \"xs\",\n sm: \"xs\",\n md: \"sm\",\n lg: \"md\",\n};\n","import React from \"react\";\nimport { Tabs } from \"@chakra-ui/react/tabs\";\nimport { Icon, IconName } from \"components/Icon\";\nimport {\n NotificationCounter,\n NotificationCounterProps,\n} from \"components/NotificationCounter/notificationCounter.component\";\nimport { TabIconPosition, TabSize } from \"./tab.types\";\nimport { tabLabelSize, tabNotificationCounterSize } from \"./tab.records\";\nimport { Heading } from \"components/Heading/heading.component\";\n\nexport interface TabProps extends Tabs.TriggerProps {\n iconName?: IconName;\n iconPosition?: TabIconPosition;\n label: string;\n notificationCounterProps?: Omit<NotificationCounterProps, \"size\">;\n showNotificationCounter?: boolean;\n size?: TabSize;\n}\n\nexport const Tab = ({\n iconName,\n iconPosition = \"left\",\n label,\n notificationCounterProps,\n showNotificationCounter,\n size = \"md\",\n ...rest\n}: TabProps): React.JSX.Element => {\n return (\n <Tabs.Trigger className=\"Tab\" data-testid=\"kibble-tab\" {...rest}>\n {!!iconName && iconPosition === \"left\" && (\n <Icon\n className=\"Tab__Icon\"\n data-testid=\"kibble-tab-icon\"\n name={iconName}\n size={size}\n variant=\"default\"\n />\n )}\n <Heading\n className=\"Tab__Label\"\n data-testid=\"kibble-tab-label\"\n size={tabLabelSize[size]}\n >\n {label}\n </Heading>\n {!!iconName && iconPosition === \"right\" && (\n <Icon\n className=\"Tab__Icon\"\n data-testid=\"kibble-tab-icon\"\n name={iconName}\n size={size}\n />\n )}\n {showNotificationCounter && (\n <NotificationCounter\n className=\"Tab__NotificationCounter\"\n data-testid=\"kibble-tab-notification-counter\"\n {...notificationCounterProps}\n size={tabNotificationCounterSize[size]}\n />\n )}\n </Tabs.Trigger>\n );\n};\n","import React from \"react\";\nimport { Tabs as CTabs } from \"@chakra-ui/react/tabs\";\nimport { TabSize } from \"./components/Tab/tab.types\";\nimport { Tab, TabProps } from \"./components/Tab/tab.component\";\nimport { Alignment } from \"shared/types/alignment\";\n\nexport interface TabsProps\n extends Omit<CTabs.RootProps, \"onChange\" | \"variant\"> {\n align?: Alignment;\n onChange?: (value: string) => void;\n size?: TabSize;\n tabs: TabProps[];\n tabsContents?: CTabs.ContentProps[];\n}\n\nexport const Tabs = ({\n align = \"start\",\n onChange,\n size = \"md\",\n tabs,\n tabsContents,\n ...rest\n}: TabsProps): React.JSX.Element => {\n return (\n <CTabs.Root\n className=\"Tabs\"\n data-testid=\"kibble-tabs\"\n justify={align || rest.justify}\n size={size}\n onValueChange={({ value }) => onChange?.(value)}\n {...rest}\n >\n <CTabs.List className=\"Tabs__List\" data-testid=\"kibble-tabs-list\">\n {tabs.map((tab, index) => (\n <Tab key={`tab-${index}`} {...tab} />\n ))}\n </CTabs.List>\n {!!tabsContents &&\n tabsContents.map((tabContent, index) => (\n <CTabs.Content key={`tabContent-${index}`} {...tabContent} />\n ))}\n </CTabs.Root>\n );\n};\n"],"names":["useDebounce","value","delay","debouncedValue","setDebouncedValue","useState","useEffect","timer","TabsProvider","useTabsContext","createContext","TabContent","forwardRef","props","ref","contentProps","localProps","createSplitProps","tabs","renderStrategyProps","useRenderStrategyPropsContext","presence","usePresence","mergedProps","mergeProps","jsx","PresenceProvider","ark","composeRefs","TabIndicator","TabList","TabTrigger","tabProps","anatomy","createAnatomy","parts","getRootId","ctx","getListId","getContentId","id","getTriggerId","getIndicatorId","getListEl","getContentEl","getTriggerEl","getIndicatorEl","getElements","selector","queryAll","getFirstTriggerEl","first","getLastTriggerEl","last","getNextTriggerEl","opts","nextById","getPrevTriggerEl","prevById","getOffsetRect","el","getRectById","tab","itemById","resolveRect","rect","connect","service","normalize","state","send","context","prop","scope","translations","focused","isVertical","isHorizontal","composite","getTriggerState","props2","fromValue","dataAttr","event","isSelfTarget","isComposingEvent","keyMap","key","getEventKey","exec","disabled","triggerState","isSafari","selected","indicatorRect","indicatorTransition","not","createGuards","machine","createMachine","details","clickIfLink","bindable","track","action","raf","focusedValue","flush","nullable","triggerEl","contentEl","getFocusables","refs","cleanup","nextTick","indicatorEl","indicatorCleanup","trackElementRect","rects","isAnchorElement","createProps","useTabs","useId","getRootNode","useEnvironmentContext","dir","useLocaleContext","machineProps","useMachine","tabs.machine","tabs.connect","normalizeProps","TabsRoot","tabsProps","splitRenderStrategyProps","useTabsProps","localprops","RenderStrategyPropsProvider","TabsRootProvider","withProvider","withContext","createSlotRecipeContext","Tabs.RootProvider","Tabs.Root","TabsTrigger","Tabs.Trigger","TabsContent","Tabs.Content","TabsList","Tabs.List","Tabs.Indicator","tabNotificationCounterSize","tabLabelSize","Tab","iconName","iconPosition","label","notificationCounterProps","showNotificationCounter","size","rest","jsxs","Icon","Heading","NotificationCounter","Tabs","align","onChange","tabsContents","CTabs.Root","CTabs.List","index","tabContent","CTabs.Content"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10]}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("./jsx-runtime-BjDatQAs.js"),x=require("react"),k=require("./button.component-Dd9AfGox.js"),T=require("./heading.component-CcrIqjxB.js"),C=require("./menu.component-BsIFHOah.js"),E=require("./spinner.component-DIyDNcWp.js"),N=require("./tag.component-C6a6EzZB.js"),f=require("./withTruncation-XdRr8uDJ.js"),r=require("./box-Baq7UBls.js"),l=require("./flex-D14H6HbP.js"),v=require("./h-stack-Bjx9hlJo.js"),q=n=>n&&n.__esModule?n:{default:n},w=q(x);var i=(n=>(n.Inactive="Inactive",n.Deleted="Deleted",n))(i||{});const y={size:"sm",variant:"secondarySubtle",iconName:"plus",text:"Add",hideCaret:!0},D=({title:n,menuProps:d,tags:a,canBeDeleted:h=!1,onClearAll:_,onRemoveTag:c,onDelete:B,hasError:b=!1,errorText:R="This field contains an error",displayTagsInGroups:u,loading:p=!1})=>{const m=x.useCallback(s=>{c&&c(s,a)},[c,a]),j=w.default.useMemo(()=>{if(!u)return[];const s={};for(const t of a){const o=t.groupLabel||"-";s[o]||(s[o]=[]),s[o].push(t)}return Object.entries(s).map(([t,o])=>({groupLabel:t,tags:o}))},[a,u]),g=x.useCallback(s=>s.map(t=>{const o=t.label.includes(i.Inactive)||t.label.includes(i.Deleted);return e.jsxRuntimeExports.jsx(N.Tag,{className:"TagBlock__Tag","data-testid":"kibble-tag-block-tag",mr:1,mb:1,label:t.label,onClose:()=>m(t.value),closeButtonDisplay:"always",fontWeight:"normal",color:o?"text.placeholder":"text",size:"md"},t.value)}),[m]);return e.jsxRuntimeExports.jsxs(r.Box,{className:"TagBlock","data-testid":"kibble-tag-block",position:"relative",mb:3,py:2,pl:4,pr:2,bg:"background.subtle",borderRadius:"lg",boxShadow:b?"0 0 0 2px var(--chakra-colors-border-danger)":"",border:"1px",borderColor:"border",overflow:p?"hidden":void 0,children:[e.jsxRuntimeExports.jsxs(l.Flex,{className:"TagBlock__ButtonContainer","data-testid":"kibble-tag-block-button-container",justifyContent:"space-between",children:[e.jsxRuntimeExports.jsxs(v.HStack,{gap:1,minH:10,children:[n&&e.jsxRuntimeExports.jsx(f.WrappedText,{className:"TagBlock__Title",mr:2,fontWeight:"bold",children:n}),e.jsxRuntimeExports.jsx(C.Menu,{"data-testid":"kibble-tag-block-menu",...d,buttonProps:d?.buttonProps||y}),e.jsxRuntimeExports.jsx(k.Button,{className:"TagBlock__Button--ClearAll","data-testid":"kibble-tag-block-clear-all-button",size:"sm",iconName:"arrowCircle",variant:"ghostNeutral",onClick:_,disabled:a.length<=0,children:"Clear All"})]}),h&&e.jsxRuntimeExports.jsx(r.Box,{children:e.jsxRuntimeExports.jsx(k.Button,{className:"TagBlock__Button--Delete","data-testid":"kibble-tag-block-delete-button",iconName:"trashcan",variant:"ghostNeutral",onClick:B,justifySelf:"flex-end"})})]}),!!a.length&&e.jsxRuntimeExports.jsx(l.Flex,{className:"TagBlock__TagContainer","data-testid":"kibble-tag-block-tag-container",mt:2,pb:1,alignContent:"space-between",flexWrap:"wrap",justifyContent:"flex-start",alignItems:"flex-start",children:u&&j.length?e.jsxRuntimeExports.jsx(l.Flex,{direction:"column",children:j.map(({groupLabel:s,tags:t})=>e.jsxRuntimeExports.jsxs(r.Box,{mb:2,children:[e.jsxRuntimeExports.jsx(r.Box,{className:"TagBlock__GroupTitle","data-testid":"kibble-tag-block-group-title",children:e.jsxRuntimeExports.jsx(T.WrappedHeading,{size:"xs",pb:2,children:s})}),e.jsxRuntimeExports.jsx(l.Flex,{alignContent:"space-between",flexWrap:"wrap",justifyContent:"flex-start",alignItems:"flex-start",children:g(t)})]},s))}):g(a)}),p&&e.jsxRuntimeExports.jsx(E.Spinner,{fullScreen:!0}),b&&e.jsxRuntimeExports.jsx(f.WrappedText,{className:"TagBlock__Error","data-testid":"kibble-tag-block-error",mt:2,size:"xs",variant:"danger",children:R})]})};exports.TagBlock=D;exports.TagDisabledState=i;
2
- //# sourceMappingURL=tagBlock.component-LnQADvWP.js.map
1
+ "use strict";const e=require("./jsx-runtime-BjDatQAs.js"),x=require("react"),k=require("./button.component-Dd9AfGox.js"),C=require("./heading.component-ZD_UVarx.js"),E=require("./menu.component-CiZzHc2D.js"),T=require("./spinner.component-CzhcJOwX.js"),N=require("./tag.component-C6a6EzZB.js"),f=require("./text.component-CnnBhB3c.js"),r=require("./box-Baq7UBls.js"),l=require("./flex-D14H6HbP.js"),v=require("./h-stack-Bjx9hlJo.js"),q=n=>n&&n.__esModule?n:{default:n},w=q(x);var i=(n=>(n.Inactive="Inactive",n.Deleted="Deleted",n))(i||{});const y={size:"sm",variant:"secondarySubtle",iconName:"plus",text:"Add",hideCaret:!0},D=({title:n,menuProps:d,tags:o,canBeDeleted:h=!1,onClearAll:_,onRemoveTag:c,onDelete:B,hasError:b=!1,errorText:R="This field contains an error",displayTagsInGroups:u,loading:p=!1})=>{const m=x.useCallback(s=>{c&&c(s,o)},[c,o]),j=w.default.useMemo(()=>{if(!u)return[];const s={};for(const t of o){const a=t.groupLabel||"-";s[a]||(s[a]=[]),s[a].push(t)}return Object.entries(s).map(([t,a])=>({groupLabel:t,tags:a}))},[o,u]),g=x.useCallback(s=>s.map(t=>{const a=t.label.includes(i.Inactive)||t.label.includes(i.Deleted);return e.jsxRuntimeExports.jsx(N.Tag,{className:"TagBlock__Tag","data-testid":"kibble-tag-block-tag",mr:1,mb:1,label:t.label,onClose:()=>m(t.value),closeButtonDisplay:"always",fontWeight:"normal",color:a?"text.placeholder":"text",size:"md"},t.value)}),[m]);return e.jsxRuntimeExports.jsxs(r.Box,{className:"TagBlock","data-testid":"kibble-tag-block",position:"relative",mb:3,py:2,pl:4,pr:2,bg:"background.subtle",borderRadius:"lg",boxShadow:b?"0 0 0 2px var(--chakra-colors-border-danger)":"",border:"1px",borderColor:"border",overflow:p?"hidden":void 0,children:[e.jsxRuntimeExports.jsxs(l.Flex,{className:"TagBlock__ButtonContainer","data-testid":"kibble-tag-block-button-container",justifyContent:"space-between",children:[e.jsxRuntimeExports.jsxs(v.HStack,{gap:1,minH:10,children:[n&&e.jsxRuntimeExports.jsx(f.WrappedText,{className:"TagBlock__Title",mr:2,fontWeight:"bold",children:n}),e.jsxRuntimeExports.jsx(E.Menu,{"data-testid":"kibble-tag-block-menu",...d,buttonProps:d?.buttonProps||y}),e.jsxRuntimeExports.jsx(k.Button,{className:"TagBlock__Button--ClearAll","data-testid":"kibble-tag-block-clear-all-button",size:"sm",iconName:"arrowCircle",variant:"ghostNeutral",onClick:_,disabled:o.length<=0,children:"Clear All"})]}),h&&e.jsxRuntimeExports.jsx(r.Box,{children:e.jsxRuntimeExports.jsx(k.Button,{className:"TagBlock__Button--Delete","data-testid":"kibble-tag-block-delete-button",iconName:"trashcan",variant:"ghostNeutral",onClick:B,justifySelf:"flex-end"})})]}),!!o.length&&e.jsxRuntimeExports.jsx(l.Flex,{className:"TagBlock__TagContainer","data-testid":"kibble-tag-block-tag-container",mt:2,pb:1,alignContent:"space-between",flexWrap:"wrap",justifyContent:"flex-start",alignItems:"flex-start",children:u&&j.length?e.jsxRuntimeExports.jsx(l.Flex,{direction:"column",children:j.map(({groupLabel:s,tags:t})=>e.jsxRuntimeExports.jsxs(r.Box,{mb:2,children:[e.jsxRuntimeExports.jsx(r.Box,{className:"TagBlock__GroupTitle","data-testid":"kibble-tag-block-group-title",children:e.jsxRuntimeExports.jsx(C.WrappedHeading,{size:"xs",pb:2,children:s})}),e.jsxRuntimeExports.jsx(l.Flex,{alignContent:"space-between",flexWrap:"wrap",justifyContent:"flex-start",alignItems:"flex-start",children:g(t)})]},s))}):g(o)}),p&&e.jsxRuntimeExports.jsx(T.Spinner,{fullScreen:!0}),b&&e.jsxRuntimeExports.jsx(f.WrappedText,{className:"TagBlock__Error","data-testid":"kibble-tag-block-error",mt:2,size:"xs",variant:"danger",children:R})]})};exports.TagBlock=D;exports.TagDisabledState=i;
2
+ //# sourceMappingURL=tagBlock.component-C2DAQrQE.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tagBlock.component-LnQADvWP.js","sources":["../../src/components/TagBlock/tagBlock.types.ts","../../src/components/TagBlock/tagBlock.component.tsx"],"sourcesContent":["export enum TagDisabledState {\n Inactive = \"Inactive\",\n Deleted = \"Deleted\",\n}\n\nexport interface TagBlockTag {\n label: string;\n value: string;\n groupLabel?: string;\n}\n","import React, { useCallback } from \"react\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport { Flex } from \"@chakra-ui/react/flex\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport { Button } from \"components/Button/button.component\";\nimport { Heading } from \"components/Heading/heading.component\";\nimport { Menu, MenuProps } from \"components/Menu/menu.component\";\nimport { Spinner } from \"components/Spinner/spinner.component\";\nimport { Tag } from \"components/Tag/tag.component\";\nimport { Text } from \"components/Text/text.component\";\nimport { TagBlockTag, TagDisabledState } from \"./tagBlock.types\";\nimport { MenuButtonProps } from \"components/Menu/components/MenuButton/menuButton.components\";\n\ninterface BaseTagBlockProps {\n displayTagsInGroups?: boolean;\n errorText?: string;\n hasError?: boolean;\n loading?: boolean;\n menuProps?: MenuProps;\n onClearAll?: () => void;\n onRemoveTag?: (tag: string, selectedTags: TagBlockTag[]) => void;\n tags: TagBlockTag[];\n title?: string;\n}\n\ninterface DefaultTagBlockProps extends BaseTagBlockProps {\n canBeDeleted?: false;\n onDelete?: never;\n}\n\ninterface DeletableTagBlockProps extends BaseTagBlockProps {\n canBeDeleted: true;\n onDelete: () => void;\n}\n\nexport type TagBlockProps = DefaultTagBlockProps | DeletableTagBlockProps;\n\nconst defaultMenuButtonProps: MenuButtonProps = {\n size: \"sm\",\n variant: \"secondarySubtle\",\n iconName: \"plus\",\n text: \"Add\",\n hideCaret: true,\n};\n\nexport const TagBlock = ({\n title,\n menuProps,\n tags,\n canBeDeleted = false,\n onClearAll,\n onRemoveTag,\n onDelete,\n hasError = false,\n errorText = \"This field contains an error\",\n displayTagsInGroups,\n loading = false,\n}: TagBlockProps): React.JSX.Element => {\n const handleRemoveTag = useCallback(\n (value: string): void => {\n if (onRemoveTag) {\n onRemoveTag(value, tags);\n }\n },\n [onRemoveTag, tags],\n );\n\n const tagsByGroup = React.useMemo(() => {\n if (!displayTagsInGroups) {\n return [];\n }\n const grouped = {} as Record<string, TagBlockTag[]>;\n for (const tag of tags) {\n const group = tag.groupLabel || \"-\";\n if (!grouped[group]) {\n grouped[group] = [];\n }\n grouped[group].push(tag);\n }\n return Object.entries(grouped).map(([groupLabel, tags]) => ({\n groupLabel,\n tags,\n }));\n }, [tags, displayTagsInGroups]);\n\n const renderTags = useCallback(\n (tags: TagBlockTag[]) => {\n return tags.map((tag) => {\n const isDisabled =\n tag.label.includes(TagDisabledState.Inactive) ||\n tag.label.includes(TagDisabledState.Deleted);\n\n return (\n <Tag\n className=\"TagBlock__Tag\"\n data-testid=\"kibble-tag-block-tag\"\n mr={1}\n mb={1}\n key={tag.value}\n label={tag.label}\n onClose={(): void => handleRemoveTag(tag.value)}\n closeButtonDisplay=\"always\"\n fontWeight=\"normal\"\n color={isDisabled ? \"text.placeholder\" : \"text\"}\n size=\"md\"\n />\n );\n });\n },\n [handleRemoveTag],\n );\n\n return (\n <Box\n className=\"TagBlock\"\n data-testid=\"kibble-tag-block\"\n position=\"relative\"\n mb={3}\n py={2}\n pl={4}\n pr={2}\n bg=\"background.subtle\"\n borderRadius=\"lg\"\n boxShadow={hasError ? `0 0 0 2px var(--chakra-colors-border-danger)` : \"\"}\n border=\"1px\"\n borderColor=\"border\"\n overflow={loading ? \"hidden\" : undefined}\n >\n <Flex\n className=\"TagBlock__ButtonContainer\"\n data-testid=\"kibble-tag-block-button-container\"\n justifyContent=\"space-between\"\n >\n <HStack gap={1} minH={10}>\n {title && (\n <Text className=\"TagBlock__Title\" mr={2} fontWeight=\"bold\">\n {title}\n </Text>\n )}\n <Menu\n data-testid=\"kibble-tag-block-menu\"\n {...menuProps}\n buttonProps={menuProps?.buttonProps || defaultMenuButtonProps}\n />\n <Button\n className=\"TagBlock__Button--ClearAll\"\n data-testid=\"kibble-tag-block-clear-all-button\"\n size=\"sm\"\n iconName=\"arrowCircle\"\n variant=\"ghostNeutral\"\n onClick={onClearAll}\n disabled={tags.length <= 0}\n >\n Clear All\n </Button>\n </HStack>\n {canBeDeleted && (\n <Box>\n <Button\n className=\"TagBlock__Button--Delete\"\n data-testid=\"kibble-tag-block-delete-button\"\n iconName=\"trashcan\"\n variant=\"ghostNeutral\"\n onClick={onDelete}\n justifySelf=\"flex-end\"\n />\n </Box>\n )}\n </Flex>\n {Boolean(tags.length) && (\n <Flex\n className=\"TagBlock__TagContainer\"\n data-testid=\"kibble-tag-block-tag-container\"\n mt={2}\n pb={1}\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {displayTagsInGroups && tagsByGroup.length ? (\n <Flex direction=\"column\">\n {tagsByGroup.map(({ groupLabel, tags }) => (\n <Box key={groupLabel} mb={2}>\n <Box\n className=\"TagBlock__GroupTitle\"\n data-testid=\"kibble-tag-block-group-title\"\n >\n <Heading size=\"xs\" pb={2}>\n {groupLabel}\n </Heading>\n </Box>\n <Flex\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {renderTags(tags)}\n </Flex>\n </Box>\n ))}\n </Flex>\n ) : (\n renderTags(tags)\n )}\n </Flex>\n )}\n {loading && <Spinner fullScreen />}\n {hasError && (\n <Text\n className=\"TagBlock__Error\"\n data-testid=\"kibble-tag-block-error\"\n mt={2}\n size=\"xs\"\n variant=\"danger\"\n >\n {errorText}\n </Text>\n )}\n </Box>\n );\n};\n"],"names":["TagDisabledState","defaultMenuButtonProps","TagBlock","title","menuProps","tags","canBeDeleted","onClearAll","onRemoveTag","onDelete","hasError","errorText","displayTagsInGroups","loading","handleRemoveTag","useCallback","value","tagsByGroup","React","grouped","tag","group","groupLabel","renderTags","isDisabled","jsx","Tag","jsxs","Box","Flex","HStack","Text","Menu","Button","Heading","Spinner"],"mappings":"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"}
1
+ {"version":3,"file":"tagBlock.component-C2DAQrQE.js","sources":["../../src/components/TagBlock/tagBlock.types.ts","../../src/components/TagBlock/tagBlock.component.tsx"],"sourcesContent":["export enum TagDisabledState {\n Inactive = \"Inactive\",\n Deleted = \"Deleted\",\n}\n\nexport interface TagBlockTag {\n label: string;\n value: string;\n groupLabel?: string;\n}\n","import React, { useCallback } from \"react\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport { Flex } from \"@chakra-ui/react/flex\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport { Button } from \"components/Button/button.component\";\nimport { Heading } from \"components/Heading/heading.component\";\nimport { Menu, MenuProps } from \"components/Menu/menu.component\";\nimport { Spinner } from \"components/Spinner/spinner.component\";\nimport { Tag } from \"components/Tag/tag.component\";\nimport { Text } from \"components/Text/text.component\";\nimport { TagBlockTag, TagDisabledState } from \"./tagBlock.types\";\nimport { MenuButtonProps } from \"components/Menu/components/MenuButton/menuButton.components\";\n\ninterface BaseTagBlockProps {\n displayTagsInGroups?: boolean;\n errorText?: string;\n hasError?: boolean;\n loading?: boolean;\n menuProps?: MenuProps;\n onClearAll?: () => void;\n onRemoveTag?: (tag: string, selectedTags: TagBlockTag[]) => void;\n tags: TagBlockTag[];\n title?: string;\n}\n\ninterface DefaultTagBlockProps extends BaseTagBlockProps {\n canBeDeleted?: false;\n onDelete?: never;\n}\n\ninterface DeletableTagBlockProps extends BaseTagBlockProps {\n canBeDeleted: true;\n onDelete: () => void;\n}\n\nexport type TagBlockProps = DefaultTagBlockProps | DeletableTagBlockProps;\n\nconst defaultMenuButtonProps: MenuButtonProps = {\n size: \"sm\",\n variant: \"secondarySubtle\",\n iconName: \"plus\",\n text: \"Add\",\n hideCaret: true,\n};\n\nexport const TagBlock = ({\n title,\n menuProps,\n tags,\n canBeDeleted = false,\n onClearAll,\n onRemoveTag,\n onDelete,\n hasError = false,\n errorText = \"This field contains an error\",\n displayTagsInGroups,\n loading = false,\n}: TagBlockProps): React.JSX.Element => {\n const handleRemoveTag = useCallback(\n (value: string): void => {\n if (onRemoveTag) {\n onRemoveTag(value, tags);\n }\n },\n [onRemoveTag, tags],\n );\n\n const tagsByGroup = React.useMemo(() => {\n if (!displayTagsInGroups) {\n return [];\n }\n const grouped = {} as Record<string, TagBlockTag[]>;\n for (const tag of tags) {\n const group = tag.groupLabel || \"-\";\n if (!grouped[group]) {\n grouped[group] = [];\n }\n grouped[group].push(tag);\n }\n return Object.entries(grouped).map(([groupLabel, tags]) => ({\n groupLabel,\n tags,\n }));\n }, [tags, displayTagsInGroups]);\n\n const renderTags = useCallback(\n (tags: TagBlockTag[]) => {\n return tags.map((tag) => {\n const isDisabled =\n tag.label.includes(TagDisabledState.Inactive) ||\n tag.label.includes(TagDisabledState.Deleted);\n\n return (\n <Tag\n className=\"TagBlock__Tag\"\n data-testid=\"kibble-tag-block-tag\"\n mr={1}\n mb={1}\n key={tag.value}\n label={tag.label}\n onClose={(): void => handleRemoveTag(tag.value)}\n closeButtonDisplay=\"always\"\n fontWeight=\"normal\"\n color={isDisabled ? \"text.placeholder\" : \"text\"}\n size=\"md\"\n />\n );\n });\n },\n [handleRemoveTag],\n );\n\n return (\n <Box\n className=\"TagBlock\"\n data-testid=\"kibble-tag-block\"\n position=\"relative\"\n mb={3}\n py={2}\n pl={4}\n pr={2}\n bg=\"background.subtle\"\n borderRadius=\"lg\"\n boxShadow={hasError ? `0 0 0 2px var(--chakra-colors-border-danger)` : \"\"}\n border=\"1px\"\n borderColor=\"border\"\n overflow={loading ? \"hidden\" : undefined}\n >\n <Flex\n className=\"TagBlock__ButtonContainer\"\n data-testid=\"kibble-tag-block-button-container\"\n justifyContent=\"space-between\"\n >\n <HStack gap={1} minH={10}>\n {title && (\n <Text className=\"TagBlock__Title\" mr={2} fontWeight=\"bold\">\n {title}\n </Text>\n )}\n <Menu\n data-testid=\"kibble-tag-block-menu\"\n {...menuProps}\n buttonProps={menuProps?.buttonProps || defaultMenuButtonProps}\n />\n <Button\n className=\"TagBlock__Button--ClearAll\"\n data-testid=\"kibble-tag-block-clear-all-button\"\n size=\"sm\"\n iconName=\"arrowCircle\"\n variant=\"ghostNeutral\"\n onClick={onClearAll}\n disabled={tags.length <= 0}\n >\n Clear All\n </Button>\n </HStack>\n {canBeDeleted && (\n <Box>\n <Button\n className=\"TagBlock__Button--Delete\"\n data-testid=\"kibble-tag-block-delete-button\"\n iconName=\"trashcan\"\n variant=\"ghostNeutral\"\n onClick={onDelete}\n justifySelf=\"flex-end\"\n />\n </Box>\n )}\n </Flex>\n {Boolean(tags.length) && (\n <Flex\n className=\"TagBlock__TagContainer\"\n data-testid=\"kibble-tag-block-tag-container\"\n mt={2}\n pb={1}\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {displayTagsInGroups && tagsByGroup.length ? (\n <Flex direction=\"column\">\n {tagsByGroup.map(({ groupLabel, tags }) => (\n <Box key={groupLabel} mb={2}>\n <Box\n className=\"TagBlock__GroupTitle\"\n data-testid=\"kibble-tag-block-group-title\"\n >\n <Heading size=\"xs\" pb={2}>\n {groupLabel}\n </Heading>\n </Box>\n <Flex\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {renderTags(tags)}\n </Flex>\n </Box>\n ))}\n </Flex>\n ) : (\n renderTags(tags)\n )}\n </Flex>\n )}\n {loading && <Spinner fullScreen />}\n {hasError && (\n <Text\n className=\"TagBlock__Error\"\n data-testid=\"kibble-tag-block-error\"\n mt={2}\n size=\"xs\"\n variant=\"danger\"\n >\n {errorText}\n </Text>\n )}\n </Box>\n );\n};\n"],"names":["TagDisabledState","defaultMenuButtonProps","TagBlock","title","menuProps","tags","canBeDeleted","onClearAll","onRemoveTag","onDelete","hasError","errorText","displayTagsInGroups","loading","handleRemoveTag","useCallback","value","tagsByGroup","React","grouped","tag","group","groupLabel","renderTags","isDisabled","jsx","Tag","jsxs","Box","Flex","HStack","Text","Menu","Button","Heading","Spinner"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { j as e } from "./jsx-runtime-C5mzlN2N.js";
2
2
  import T, { useCallback as g } from "react";
3
3
  import { B as k } from "./button.component-BpF3MzbZ.js";
4
- import { W as N } from "./heading.component-DZ7kmGcE.js";
5
- import { M as v } from "./menu.component-bdDcCEay.js";
6
- import { S as w } from "./spinner.component-Bir81DbZ.js";
4
+ import { W as N } from "./heading.component-BXcyhAEU.js";
5
+ import { M as v } from "./menu.component-D4gknsq1.js";
6
+ import { S as w } from "./spinner.component-lHj69hIF.js";
7
7
  import { T as W } from "./tag.component-pexJ0TAT.js";
8
- import { W as h } from "./withTruncation-CDgWfFpO.js";
8
+ import { W as h } from "./text.component-Cpruo7MB.js";
9
9
  import { B as s } from "./box-Ck9I7FYv.js";
10
10
  import { F as n } from "./flex-smlF8uQG.js";
11
11
  import { H as y } from "./h-stack-Ce6JSBK2.js";
@@ -183,4 +183,4 @@ export {
183
183
  q as T,
184
184
  d as a
185
185
  };
186
- //# sourceMappingURL=tagBlock.component-3imRPwFH.js.map
186
+ //# sourceMappingURL=tagBlock.component-CnPbyaGH.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tagBlock.component-3imRPwFH.js","sources":["../../src/components/TagBlock/tagBlock.types.ts","../../src/components/TagBlock/tagBlock.component.tsx"],"sourcesContent":["export enum TagDisabledState {\n Inactive = \"Inactive\",\n Deleted = \"Deleted\",\n}\n\nexport interface TagBlockTag {\n label: string;\n value: string;\n groupLabel?: string;\n}\n","import React, { useCallback } from \"react\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport { Flex } from \"@chakra-ui/react/flex\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport { Button } from \"components/Button/button.component\";\nimport { Heading } from \"components/Heading/heading.component\";\nimport { Menu, MenuProps } from \"components/Menu/menu.component\";\nimport { Spinner } from \"components/Spinner/spinner.component\";\nimport { Tag } from \"components/Tag/tag.component\";\nimport { Text } from \"components/Text/text.component\";\nimport { TagBlockTag, TagDisabledState } from \"./tagBlock.types\";\nimport { MenuButtonProps } from \"components/Menu/components/MenuButton/menuButton.components\";\n\ninterface BaseTagBlockProps {\n displayTagsInGroups?: boolean;\n errorText?: string;\n hasError?: boolean;\n loading?: boolean;\n menuProps?: MenuProps;\n onClearAll?: () => void;\n onRemoveTag?: (tag: string, selectedTags: TagBlockTag[]) => void;\n tags: TagBlockTag[];\n title?: string;\n}\n\ninterface DefaultTagBlockProps extends BaseTagBlockProps {\n canBeDeleted?: false;\n onDelete?: never;\n}\n\ninterface DeletableTagBlockProps extends BaseTagBlockProps {\n canBeDeleted: true;\n onDelete: () => void;\n}\n\nexport type TagBlockProps = DefaultTagBlockProps | DeletableTagBlockProps;\n\nconst defaultMenuButtonProps: MenuButtonProps = {\n size: \"sm\",\n variant: \"secondarySubtle\",\n iconName: \"plus\",\n text: \"Add\",\n hideCaret: true,\n};\n\nexport const TagBlock = ({\n title,\n menuProps,\n tags,\n canBeDeleted = false,\n onClearAll,\n onRemoveTag,\n onDelete,\n hasError = false,\n errorText = \"This field contains an error\",\n displayTagsInGroups,\n loading = false,\n}: TagBlockProps): React.JSX.Element => {\n const handleRemoveTag = useCallback(\n (value: string): void => {\n if (onRemoveTag) {\n onRemoveTag(value, tags);\n }\n },\n [onRemoveTag, tags],\n );\n\n const tagsByGroup = React.useMemo(() => {\n if (!displayTagsInGroups) {\n return [];\n }\n const grouped = {} as Record<string, TagBlockTag[]>;\n for (const tag of tags) {\n const group = tag.groupLabel || \"-\";\n if (!grouped[group]) {\n grouped[group] = [];\n }\n grouped[group].push(tag);\n }\n return Object.entries(grouped).map(([groupLabel, tags]) => ({\n groupLabel,\n tags,\n }));\n }, [tags, displayTagsInGroups]);\n\n const renderTags = useCallback(\n (tags: TagBlockTag[]) => {\n return tags.map((tag) => {\n const isDisabled =\n tag.label.includes(TagDisabledState.Inactive) ||\n tag.label.includes(TagDisabledState.Deleted);\n\n return (\n <Tag\n className=\"TagBlock__Tag\"\n data-testid=\"kibble-tag-block-tag\"\n mr={1}\n mb={1}\n key={tag.value}\n label={tag.label}\n onClose={(): void => handleRemoveTag(tag.value)}\n closeButtonDisplay=\"always\"\n fontWeight=\"normal\"\n color={isDisabled ? \"text.placeholder\" : \"text\"}\n size=\"md\"\n />\n );\n });\n },\n [handleRemoveTag],\n );\n\n return (\n <Box\n className=\"TagBlock\"\n data-testid=\"kibble-tag-block\"\n position=\"relative\"\n mb={3}\n py={2}\n pl={4}\n pr={2}\n bg=\"background.subtle\"\n borderRadius=\"lg\"\n boxShadow={hasError ? `0 0 0 2px var(--chakra-colors-border-danger)` : \"\"}\n border=\"1px\"\n borderColor=\"border\"\n overflow={loading ? \"hidden\" : undefined}\n >\n <Flex\n className=\"TagBlock__ButtonContainer\"\n data-testid=\"kibble-tag-block-button-container\"\n justifyContent=\"space-between\"\n >\n <HStack gap={1} minH={10}>\n {title && (\n <Text className=\"TagBlock__Title\" mr={2} fontWeight=\"bold\">\n {title}\n </Text>\n )}\n <Menu\n data-testid=\"kibble-tag-block-menu\"\n {...menuProps}\n buttonProps={menuProps?.buttonProps || defaultMenuButtonProps}\n />\n <Button\n className=\"TagBlock__Button--ClearAll\"\n data-testid=\"kibble-tag-block-clear-all-button\"\n size=\"sm\"\n iconName=\"arrowCircle\"\n variant=\"ghostNeutral\"\n onClick={onClearAll}\n disabled={tags.length <= 0}\n >\n Clear All\n </Button>\n </HStack>\n {canBeDeleted && (\n <Box>\n <Button\n className=\"TagBlock__Button--Delete\"\n data-testid=\"kibble-tag-block-delete-button\"\n iconName=\"trashcan\"\n variant=\"ghostNeutral\"\n onClick={onDelete}\n justifySelf=\"flex-end\"\n />\n </Box>\n )}\n </Flex>\n {Boolean(tags.length) && (\n <Flex\n className=\"TagBlock__TagContainer\"\n data-testid=\"kibble-tag-block-tag-container\"\n mt={2}\n pb={1}\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {displayTagsInGroups && tagsByGroup.length ? (\n <Flex direction=\"column\">\n {tagsByGroup.map(({ groupLabel, tags }) => (\n <Box key={groupLabel} mb={2}>\n <Box\n className=\"TagBlock__GroupTitle\"\n data-testid=\"kibble-tag-block-group-title\"\n >\n <Heading size=\"xs\" pb={2}>\n {groupLabel}\n </Heading>\n </Box>\n <Flex\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {renderTags(tags)}\n </Flex>\n </Box>\n ))}\n </Flex>\n ) : (\n renderTags(tags)\n )}\n </Flex>\n )}\n {loading && <Spinner fullScreen />}\n {hasError && (\n <Text\n className=\"TagBlock__Error\"\n data-testid=\"kibble-tag-block-error\"\n mt={2}\n size=\"xs\"\n variant=\"danger\"\n >\n {errorText}\n </Text>\n )}\n </Box>\n );\n};\n"],"names":["TagDisabledState","defaultMenuButtonProps","TagBlock","title","menuProps","tags","canBeDeleted","onClearAll","onRemoveTag","onDelete","hasError","errorText","displayTagsInGroups","loading","handleRemoveTag","useCallback","value","tagsByGroup","React","grouped","tag","group","groupLabel","renderTags","isDisabled","jsx","Tag","jsxs","Box","Flex","HStack","Text","Menu","Button","Heading","Spinner"],"mappings":"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"}
1
+ {"version":3,"file":"tagBlock.component-CnPbyaGH.js","sources":["../../src/components/TagBlock/tagBlock.types.ts","../../src/components/TagBlock/tagBlock.component.tsx"],"sourcesContent":["export enum TagDisabledState {\n Inactive = \"Inactive\",\n Deleted = \"Deleted\",\n}\n\nexport interface TagBlockTag {\n label: string;\n value: string;\n groupLabel?: string;\n}\n","import React, { useCallback } from \"react\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport { Flex } from \"@chakra-ui/react/flex\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport { Button } from \"components/Button/button.component\";\nimport { Heading } from \"components/Heading/heading.component\";\nimport { Menu, MenuProps } from \"components/Menu/menu.component\";\nimport { Spinner } from \"components/Spinner/spinner.component\";\nimport { Tag } from \"components/Tag/tag.component\";\nimport { Text } from \"components/Text/text.component\";\nimport { TagBlockTag, TagDisabledState } from \"./tagBlock.types\";\nimport { MenuButtonProps } from \"components/Menu/components/MenuButton/menuButton.components\";\n\ninterface BaseTagBlockProps {\n displayTagsInGroups?: boolean;\n errorText?: string;\n hasError?: boolean;\n loading?: boolean;\n menuProps?: MenuProps;\n onClearAll?: () => void;\n onRemoveTag?: (tag: string, selectedTags: TagBlockTag[]) => void;\n tags: TagBlockTag[];\n title?: string;\n}\n\ninterface DefaultTagBlockProps extends BaseTagBlockProps {\n canBeDeleted?: false;\n onDelete?: never;\n}\n\ninterface DeletableTagBlockProps extends BaseTagBlockProps {\n canBeDeleted: true;\n onDelete: () => void;\n}\n\nexport type TagBlockProps = DefaultTagBlockProps | DeletableTagBlockProps;\n\nconst defaultMenuButtonProps: MenuButtonProps = {\n size: \"sm\",\n variant: \"secondarySubtle\",\n iconName: \"plus\",\n text: \"Add\",\n hideCaret: true,\n};\n\nexport const TagBlock = ({\n title,\n menuProps,\n tags,\n canBeDeleted = false,\n onClearAll,\n onRemoveTag,\n onDelete,\n hasError = false,\n errorText = \"This field contains an error\",\n displayTagsInGroups,\n loading = false,\n}: TagBlockProps): React.JSX.Element => {\n const handleRemoveTag = useCallback(\n (value: string): void => {\n if (onRemoveTag) {\n onRemoveTag(value, tags);\n }\n },\n [onRemoveTag, tags],\n );\n\n const tagsByGroup = React.useMemo(() => {\n if (!displayTagsInGroups) {\n return [];\n }\n const grouped = {} as Record<string, TagBlockTag[]>;\n for (const tag of tags) {\n const group = tag.groupLabel || \"-\";\n if (!grouped[group]) {\n grouped[group] = [];\n }\n grouped[group].push(tag);\n }\n return Object.entries(grouped).map(([groupLabel, tags]) => ({\n groupLabel,\n tags,\n }));\n }, [tags, displayTagsInGroups]);\n\n const renderTags = useCallback(\n (tags: TagBlockTag[]) => {\n return tags.map((tag) => {\n const isDisabled =\n tag.label.includes(TagDisabledState.Inactive) ||\n tag.label.includes(TagDisabledState.Deleted);\n\n return (\n <Tag\n className=\"TagBlock__Tag\"\n data-testid=\"kibble-tag-block-tag\"\n mr={1}\n mb={1}\n key={tag.value}\n label={tag.label}\n onClose={(): void => handleRemoveTag(tag.value)}\n closeButtonDisplay=\"always\"\n fontWeight=\"normal\"\n color={isDisabled ? \"text.placeholder\" : \"text\"}\n size=\"md\"\n />\n );\n });\n },\n [handleRemoveTag],\n );\n\n return (\n <Box\n className=\"TagBlock\"\n data-testid=\"kibble-tag-block\"\n position=\"relative\"\n mb={3}\n py={2}\n pl={4}\n pr={2}\n bg=\"background.subtle\"\n borderRadius=\"lg\"\n boxShadow={hasError ? `0 0 0 2px var(--chakra-colors-border-danger)` : \"\"}\n border=\"1px\"\n borderColor=\"border\"\n overflow={loading ? \"hidden\" : undefined}\n >\n <Flex\n className=\"TagBlock__ButtonContainer\"\n data-testid=\"kibble-tag-block-button-container\"\n justifyContent=\"space-between\"\n >\n <HStack gap={1} minH={10}>\n {title && (\n <Text className=\"TagBlock__Title\" mr={2} fontWeight=\"bold\">\n {title}\n </Text>\n )}\n <Menu\n data-testid=\"kibble-tag-block-menu\"\n {...menuProps}\n buttonProps={menuProps?.buttonProps || defaultMenuButtonProps}\n />\n <Button\n className=\"TagBlock__Button--ClearAll\"\n data-testid=\"kibble-tag-block-clear-all-button\"\n size=\"sm\"\n iconName=\"arrowCircle\"\n variant=\"ghostNeutral\"\n onClick={onClearAll}\n disabled={tags.length <= 0}\n >\n Clear All\n </Button>\n </HStack>\n {canBeDeleted && (\n <Box>\n <Button\n className=\"TagBlock__Button--Delete\"\n data-testid=\"kibble-tag-block-delete-button\"\n iconName=\"trashcan\"\n variant=\"ghostNeutral\"\n onClick={onDelete}\n justifySelf=\"flex-end\"\n />\n </Box>\n )}\n </Flex>\n {Boolean(tags.length) && (\n <Flex\n className=\"TagBlock__TagContainer\"\n data-testid=\"kibble-tag-block-tag-container\"\n mt={2}\n pb={1}\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {displayTagsInGroups && tagsByGroup.length ? (\n <Flex direction=\"column\">\n {tagsByGroup.map(({ groupLabel, tags }) => (\n <Box key={groupLabel} mb={2}>\n <Box\n className=\"TagBlock__GroupTitle\"\n data-testid=\"kibble-tag-block-group-title\"\n >\n <Heading size=\"xs\" pb={2}>\n {groupLabel}\n </Heading>\n </Box>\n <Flex\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {renderTags(tags)}\n </Flex>\n </Box>\n ))}\n </Flex>\n ) : (\n renderTags(tags)\n )}\n </Flex>\n )}\n {loading && <Spinner fullScreen />}\n {hasError && (\n <Text\n className=\"TagBlock__Error\"\n data-testid=\"kibble-tag-block-error\"\n mt={2}\n size=\"xs\"\n variant=\"danger\"\n >\n {errorText}\n </Text>\n )}\n </Box>\n );\n};\n"],"names":["TagDisabledState","defaultMenuButtonProps","TagBlock","title","menuProps","tags","canBeDeleted","onClearAll","onRemoveTag","onDelete","hasError","errorText","displayTagsInGroups","loading","handleRemoveTag","useCallback","value","tagsByGroup","React","grouped","tag","group","groupLabel","renderTags","isDisabled","jsx","Tag","jsxs","Box","Flex","HStack","Text","Menu","Button","Heading","Spinner"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";const s=require("./jsx-runtime-BjDatQAs.js"),i=require("./withTruncation-DPbMF-jg.js"),r=require("./create-recipe-context-sESms8Eo.js"),{withContext:c}=r.createRecipeContext({key:"text"}),x=c("p"),t=({children:e,...n})=>s.jsxRuntimeExports.jsx(x,{className:"Text","data-testid":"kibble-text",...n,children:e});t.displayName="Text";const o=i.withTruncation(t);exports.WrappedText=o;
2
+ //# sourceMappingURL=text.component-CnnBhB3c.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.component-CnnBhB3c.js","sources":["../../node_modules/@chakra-ui/react/dist/esm/components/typography/text.js","../../src/components/Text/text.component.tsx"],"sourcesContent":["\"use strict\";\n\"use client\";\nimport { createRecipeContext } from '../../styled-system/create-recipe-context.js';\n\nconst { withContext, PropsProvider } = createRecipeContext({\n key: \"text\"\n});\nconst Text = withContext(\"p\");\nconst TextPropsProvider = PropsProvider;\n\nexport { Text, TextPropsProvider };\n","import React from \"react\";\nimport {\n Text as CText,\n TextProps as CTextProps,\n} from \"@chakra-ui/react/typography\";\nimport { withTruncation, WithTruncationProps } from \"hocs/withTruncation\";\nimport { TextSize } from \"./text.types\";\nimport { TypographyVariant } from \"shared/types/typography\";\n\nexport interface TextProps extends WithTruncationProps, CTextProps {\n size?: TextSize;\n variant?: TypographyVariant;\n}\n\nconst Text = ({ children, ...rest }: TextProps): React.JSX.Element => {\n return (\n <CText className=\"Text\" data-testid=\"kibble-text\" {...rest}>\n {children}\n </CText>\n );\n};\n\nText.displayName = \"Text\";\n\nconst WrappedText = withTruncation(Text);\n\nexport { WrappedText as Text };\n"],"names":["withContext","createRecipeContext","Text","children","rest","jsx","CText","WrappedText","withTruncation"],"mappings":"qJAIM,CAAE,YAAAA,CAA2B,EAAIC,sBAAoB,CACzD,IAAK,MACP,CAAC,EACKC,EAAOF,EAAY,GAAG,ECOtBE,EAAO,CAAC,CAAE,SAAAC,EAAU,GAAGC,KAEzBC,EAAA,kBAAA,IAACC,GAAM,UAAU,OAAO,cAAY,cAAe,GAAGF,EACnD,SAAAD,EACH,EAIJD,EAAK,YAAc,OAEb,MAAAK,EAAcC,iBAAeN,CAAI","x_google_ignoreList":[0]}
@@ -0,0 +1,12 @@
1
+ import { j as s } from "./jsx-runtime-C5mzlN2N.js";
2
+ import { w as a } from "./withTruncation-DoQriKuH.js";
3
+ import { c as r } from "./create-recipe-context-D7FewUR4.js";
4
+ const { withContext: x } = r({
5
+ key: "text"
6
+ }), i = x("p"), t = ({ children: e, ...o }) => /* @__PURE__ */ s.jsx(i, { className: "Text", "data-testid": "kibble-text", ...o, children: e });
7
+ t.displayName = "Text";
8
+ const m = a(t);
9
+ export {
10
+ m as W
11
+ };
12
+ //# sourceMappingURL=text.component-Cpruo7MB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.component-Cpruo7MB.js","sources":["../../node_modules/@chakra-ui/react/dist/esm/components/typography/text.js","../../src/components/Text/text.component.tsx"],"sourcesContent":["\"use strict\";\n\"use client\";\nimport { createRecipeContext } from '../../styled-system/create-recipe-context.js';\n\nconst { withContext, PropsProvider } = createRecipeContext({\n key: \"text\"\n});\nconst Text = withContext(\"p\");\nconst TextPropsProvider = PropsProvider;\n\nexport { Text, TextPropsProvider };\n","import React from \"react\";\nimport {\n Text as CText,\n TextProps as CTextProps,\n} from \"@chakra-ui/react/typography\";\nimport { withTruncation, WithTruncationProps } from \"hocs/withTruncation\";\nimport { TextSize } from \"./text.types\";\nimport { TypographyVariant } from \"shared/types/typography\";\n\nexport interface TextProps extends WithTruncationProps, CTextProps {\n size?: TextSize;\n variant?: TypographyVariant;\n}\n\nconst Text = ({ children, ...rest }: TextProps): React.JSX.Element => {\n return (\n <CText className=\"Text\" data-testid=\"kibble-text\" {...rest}>\n {children}\n </CText>\n );\n};\n\nText.displayName = \"Text\";\n\nconst WrappedText = withTruncation(Text);\n\nexport { WrappedText as Text };\n"],"names":["withContext","createRecipeContext","Text","children","rest","jsx","CText","WrappedText","withTruncation"],"mappings":";;;AAIA,MAAM,EAAE,aAAAA,EAA2B,IAAIC,EAAoB;AAAA,EACzD,KAAK;AACP,CAAC,GACKC,IAAOF,EAAY,GAAG,GCOtBE,IAAO,CAAC,EAAE,UAAAC,GAAU,GAAGC,QAEzBC,gBAAAA,EAAA,IAACC,KAAM,WAAU,QAAO,eAAY,eAAe,GAAGF,GACnD,UAAAD,GACH;AAIJD,EAAK,cAAc;AAEb,MAAAK,IAAcC,EAAeN,CAAI;","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";const e=require("./jsx-runtime-BjDatQAs.js"),c=require("react"),y=require("./withFormControl-DpytztWF.js"),P=require("./button.component-Dd9AfGox.js"),b=require("./characterCounter.component-4T8NHb11.js"),T=require("./box-Baq7UBls.js"),k=require("./empty-B5_AO6Pg.js"),I=require("./factory-D6tdBUPG.js"),w=require("./use-recipe-DaPWl_pL.js"),A=require("./group-Cv7AQw1b.js"),v=require("./create-recipe-context-sESms8Eo.js"),N=require("./use-locale-context-BdqHZ8L8.js"),S=require("./use-field-context--wBJQY1R.js"),F=require("./index-CZ42b9rT.js"),B=t=>t&&t.__esModule?t:{default:t},G=B(c),C=c.forwardRef((t,s)=>{const n=S.useFieldContext(),r=F.mergeProps(n?.getInputProps(),t);return e.jsxRuntimeExports.jsx(N.ark.input,{...r,ref:s})});C.displayName="FieldInput";const{withContext:M}=v.createRecipeContext({key:"input"}),z=M(C),R=c.forwardRef(function({unstyled:s,...n},r){const p=w.useRecipe({key:"inputAddon",recipe:n.recipe}),[i,a]=p.splitVariantProps(n),o=s?k.EMPTY_SLOT_STYLES:p(i);return e.jsxRuntimeExports.jsx(I.chakra.div,{ref:r,...a,css:[o,n.css]})}),E=I.chakra("div",{base:{display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",zIndex:2,color:"fg.muted",height:"full",fontSize:"sm",px:"3"},variants:{placement:{start:{insetInlineStart:"0"},end:{insetInlineEnd:"0"}}}}),D=c.forwardRef(function(s,n){const{startElement:r,startElementProps:p,endElement:i,endElementProps:a,startAddon:o,startAddonProps:m,endAddon:d,endAddonProps:x,children:l,startOffset:u="0px",endOffset:f="0px",...h}=s,j=c.Children.only(l),g=!!(o||d);return e.jsxRuntimeExports.jsxs(A.Group,{width:"full",ref:n,attached:g,skip:q=>q.type===E,...h,children:[o&&e.jsxRuntimeExports.jsx(R,{...m,children:o}),r&&e.jsxRuntimeExports.jsx(E,{pointerEvents:"none",...p,children:r}),c.cloneElement(j,{...r&&{ps:`calc(var(--input-height) - ${u})`},...i&&{pe:`calc(var(--input-height) - ${f})`},...l.props}),i&&e.jsxRuntimeExports.jsx(E,{placement:"end",...a,children:i}),d&&e.jsxRuntimeExports.jsx(R,{...x,children:d})]})}),L={sm:"xs",md:"sm",lg:"md"},O=y.withFormControl(({charLimit:t=void 0,clearable:s=!1,disabled:n=!1,inputRef:r,invalid:p,leftAddon:i,leftElement:a,onClear:o,onContrast:m,rightAddon:d,rightElement:x,size:l="md",value:u,...f})=>{const h=()=>{o&&o(u||"")};s&&u&&!n&&(x=e.jsxRuntimeExports.jsx(P.Button,{className:"TextInput__ClearButton","data-testid":"kibble-text-input-clear-button",size:L[l],variant:"ghostNeutral",onClick:h,iconName:"close"}));const j=c.useMemo(()=>u?.toString()?.length||0,[u]);return e.jsxRuntimeExports.jsxs(T.Box,{className:"TextInput__Wrapper",position:"relative",w:"100%",children:[e.jsxRuntimeExports.jsx(D,{className:"TextInput__InputGroup","data-testid":"kibble-text-input-group",startElement:a,startElementProps:{color:"inherit",_groupDisabled:{opacity:.6}},endElement:x,endElementProps:{color:"inherit",paddingInline:1.5,_groupDisabled:{opacity:.6}},startAddon:i,endAddon:d,children:e.jsxRuntimeExports.jsx(z,{"data-testid":"kibble-text-input",className:"TextInput",ref:r,value:u,size:l,disabled:n,...p&&{"aria-invalid":!0},variant:m?"onContrast":"default",...f})}),!!t&&e.jsxRuntimeExports.jsx(b.CharacterCounter,{withLimit:!0,limit:t,currentCount:j})]})}),_=G.default.forwardRef((t,s)=>e.jsxRuntimeExports.jsx(O,{inputRef:s,...t}));_.displayName="TextInput";exports.WrappedTextInput=_;
2
+ //# sourceMappingURL=textInput.component-D-galjwy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"textInput.component-BJ3ija0b.js","sources":["../../node_modules/@ark-ui/react/dist/components/field/field-input.js","../../node_modules/@chakra-ui/react/dist/esm/components/input/input.js","../../node_modules/@chakra-ui/react/dist/esm/components/input/input-addon.js","../../node_modules/@chakra-ui/react/dist/esm/components/input/input-element.js","../../node_modules/@chakra-ui/react/dist/esm/components/input/input-group.js","../../src/components/TextInput/textInput.records.ts","../../src/components/TextInput/textInput.component.tsx"],"sourcesContent":["'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useFieldContext } from './use-field-context.js';\n\nconst FieldInput = forwardRef((props, ref) => {\n const field = useFieldContext();\n const mergedProps = mergeProps(field?.getInputProps(), props);\n return /* @__PURE__ */ jsx(ark.input, { ...mergedProps, ref });\n});\nFieldInput.displayName = \"FieldInput\";\n\nexport { FieldInput };\n","\"use strict\";\n\"use client\";\nimport { Field } from '@ark-ui/react/field';\nimport { createRecipeContext } from '../../styled-system/create-recipe-context.js';\n\nconst { withContext, PropsProvider } = createRecipeContext({\n key: \"input\"\n});\nconst Input = withContext(Field.Input);\nconst InputPropsProvider = PropsProvider;\n\nexport { Input, InputPropsProvider };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { forwardRef } from 'react';\nimport { EMPTY_SLOT_STYLES } from '../../styled-system/empty.js';\nimport { chakra } from '../../styled-system/factory.js';\nimport { useRecipe } from '../../styled-system/use-recipe.js';\n\nconst InputAddon = forwardRef(\n function InputAddon2({ unstyled, ...props }, ref) {\n const recipe = useRecipe({ key: \"inputAddon\", recipe: props.recipe });\n const [variantProps, localProps] = recipe.splitVariantProps(props);\n const styles = unstyled ? EMPTY_SLOT_STYLES : recipe(variantProps);\n return /* @__PURE__ */ jsx(chakra.div, { ref, ...localProps, css: [styles, props.css] });\n }\n);\n\nexport { InputAddon };\n","\"use strict\";\n\"use client\";\nimport { chakra } from '../../styled-system/factory.js';\n\nconst InputElement = chakra(\"div\", {\n base: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n position: \"absolute\",\n zIndex: 2,\n color: \"fg.muted\",\n height: \"full\",\n fontSize: \"sm\",\n px: \"3\"\n },\n variants: {\n placement: {\n start: {\n insetInlineStart: \"0\"\n },\n end: {\n insetInlineEnd: \"0\"\n }\n }\n }\n});\n\nexport { InputElement };\n","\"use strict\";\n\"use client\";\nimport { jsxs, jsx } from 'react/jsx-runtime';\nimport { forwardRef, Children, cloneElement } from 'react';\nimport { InputAddon } from './input-addon.js';\nimport { InputElement } from './input-element.js';\nimport { Group } from '../group/group.js';\n\nconst InputGroup = forwardRef(\n function InputGroup2(props, ref) {\n const {\n startElement,\n startElementProps,\n endElement,\n endElementProps,\n startAddon,\n startAddonProps,\n endAddon,\n endAddonProps,\n children,\n startOffset = \"0px\",\n endOffset = \"0px\",\n ...rest\n } = props;\n const child = Children.only(children);\n const attached = Boolean(startAddon || endAddon);\n return /* @__PURE__ */ jsxs(\n Group,\n {\n width: \"full\",\n ref,\n attached,\n skip: (el) => el.type === InputElement,\n ...rest,\n children: [\n startAddon && /* @__PURE__ */ jsx(InputAddon, { ...startAddonProps, children: startAddon }),\n startElement && /* @__PURE__ */ jsx(InputElement, { pointerEvents: \"none\", ...startElementProps, children: startElement }),\n cloneElement(child, {\n ...startElement && {\n ps: `calc(var(--input-height) - ${startOffset})`\n },\n ...endElement && { pe: `calc(var(--input-height) - ${endOffset})` },\n ...children.props\n }),\n endElement && /* @__PURE__ */ jsx(InputElement, { placement: \"end\", ...endElementProps, children: endElement }),\n endAddon && /* @__PURE__ */ jsx(InputAddon, { ...endAddonProps, children: endAddon })\n ]\n }\n );\n }\n);\n\nexport { InputGroup };\n","import { ButtonSize } from \"components/Button/button.types\";\nimport { FormControlSize } from \"hocs/withFormControl/withFormControl.types\";\n\nexport const closeButtonSizeMap: Record<FormControlSize, ButtonSize> = {\n sm: \"xs\",\n md: \"sm\",\n lg: \"md\",\n};\n","import React, { ForwardedRef, useMemo } from \"react\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport {\n withFormControl,\n WithFormControlProps,\n} from \"hocs/withFormControl/withFormControl\";\nimport {\n Input as CInput,\n InputProps as CInputProps,\n InputGroup,\n} from \"@chakra-ui/react/input\";\nimport { FormControlSize } from \"hocs/withFormControl/withFormControl.types\";\nimport { Button } from \"components/Button/button.component\";\nimport { CharacterCounter } from \"components/CharacterCounter/characterCounter.component\";\nimport { closeButtonSizeMap } from \"./textInput.records\";\n\nexport interface TextInputBaseProps extends WithFormControlProps {\n charLimit?: number;\n inputRef?: ForwardedRef<HTMLInputElement>;\n onContrast?: boolean;\n leftAddon?: React.ReactNode;\n leftElement?: React.ReactNode;\n rightAddon?: React.ReactNode;\n rightElement?: React.ReactNode;\n size?: FormControlSize;\n}\n\nexport interface DefaultTextInputProps extends TextInputBaseProps {\n clearable?: never;\n onClear?: never;\n}\n\nexport interface ClearableTextInputProps extends TextInputBaseProps {\n clearable?: boolean;\n onClear?: (val: string | number | readonly string[]) => void;\n}\n\nexport type KTextInputProps = DefaultTextInputProps | ClearableTextInputProps;\n\nexport type TextInputProps = KTextInputProps & CInputProps;\n\nconst TextInput = withFormControl(\n ({\n charLimit = undefined,\n clearable = false,\n disabled = false,\n inputRef,\n invalid,\n leftAddon,\n leftElement,\n onClear,\n onContrast,\n rightAddon,\n rightElement,\n size = \"md\",\n value,\n ...rest\n }: TextInputProps): React.JSX.Element => {\n const handleClear = (): void => {\n if (onClear) {\n onClear(value || \"\");\n }\n };\n\n if (clearable && !!value && !disabled) {\n rightElement = (\n <Button\n className=\"TextInput__ClearButton\"\n data-testid=\"kibble-text-input-clear-button\"\n size={closeButtonSizeMap[size as FormControlSize]}\n variant=\"ghostNeutral\"\n onClick={handleClear}\n iconName=\"close\"\n />\n );\n }\n\n const currentCharCount = useMemo(\n () => value?.toString()?.length || 0,\n [value],\n );\n\n return (\n <Box className=\"TextInput__Wrapper\" position=\"relative\" w=\"100%\">\n <InputGroup\n className=\"TextInput__InputGroup\"\n data-testid=\"kibble-text-input-group\"\n startElement={leftElement}\n startElementProps={{\n color: \"inherit\",\n _groupDisabled: { opacity: 0.6 },\n }}\n endElement={rightElement}\n endElementProps={{\n color: \"inherit\",\n paddingInline: 1.5,\n _groupDisabled: { opacity: 0.6 },\n }}\n startAddon={leftAddon}\n endAddon={rightAddon}\n >\n <CInput\n data-testid=\"kibble-text-input\"\n className=\"TextInput\"\n ref={inputRef}\n value={value}\n size={size}\n disabled={disabled}\n {...(invalid && { \"aria-invalid\": true })}\n variant={onContrast ? \"onContrast\" : \"default\"}\n {...rest}\n />\n </InputGroup>\n {!!charLimit && (\n <CharacterCounter\n withLimit={true}\n limit={charLimit}\n currentCount={currentCharCount}\n />\n )}\n </Box>\n );\n },\n);\n\nconst WrappedTextInput = React.forwardRef(\n (props: TextInputProps, ref: ForwardedRef<HTMLInputElement>) => (\n <TextInput inputRef={ref} {...props} />\n ),\n);\n\nWrappedTextInput.displayName = \"TextInput\";\n\nexport { WrappedTextInput as TextInput };\n"],"names":["FieldInput","forwardRef","props","ref","field","useFieldContext","mergedProps","mergeProps","jsx","ark","withContext","createRecipeContext","Input","Field.Input","InputAddon","unstyled","recipe","useRecipe","variantProps","localProps","styles","EMPTY_SLOT_STYLES","chakra","InputElement","InputGroup","startElement","startElementProps","endElement","endElementProps","startAddon","startAddonProps","endAddon","endAddonProps","children","startOffset","endOffset","rest","child","Children","attached","jsxs","Group","el","cloneElement","closeButtonSizeMap","TextInput","withFormControl","charLimit","clearable","disabled","inputRef","invalid","leftAddon","leftElement","onClear","onContrast","rightAddon","rightElement","size","value","handleClear","Button","currentCharCount","useMemo","Box","CInput","CharacterCounter","WrappedTextInput","React"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4]}
1
+ {"version":3,"file":"textInput.component-D-galjwy.js","sources":["../../node_modules/@ark-ui/react/dist/components/field/field-input.js","../../node_modules/@chakra-ui/react/dist/esm/components/input/input.js","../../node_modules/@chakra-ui/react/dist/esm/components/input/input-addon.js","../../node_modules/@chakra-ui/react/dist/esm/components/input/input-element.js","../../node_modules/@chakra-ui/react/dist/esm/components/input/input-group.js","../../src/components/TextInput/textInput.records.ts","../../src/components/TextInput/textInput.component.tsx"],"sourcesContent":["'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useFieldContext } from './use-field-context.js';\n\nconst FieldInput = forwardRef((props, ref) => {\n const field = useFieldContext();\n const mergedProps = mergeProps(field?.getInputProps(), props);\n return /* @__PURE__ */ jsx(ark.input, { ...mergedProps, ref });\n});\nFieldInput.displayName = \"FieldInput\";\n\nexport { FieldInput };\n","\"use strict\";\n\"use client\";\nimport { Field } from '@ark-ui/react/field';\nimport { createRecipeContext } from '../../styled-system/create-recipe-context.js';\n\nconst { withContext, PropsProvider } = createRecipeContext({\n key: \"input\"\n});\nconst Input = withContext(Field.Input);\nconst InputPropsProvider = PropsProvider;\n\nexport { Input, InputPropsProvider };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { forwardRef } from 'react';\nimport { EMPTY_SLOT_STYLES } from '../../styled-system/empty.js';\nimport { chakra } from '../../styled-system/factory.js';\nimport { useRecipe } from '../../styled-system/use-recipe.js';\n\nconst InputAddon = forwardRef(\n function InputAddon2({ unstyled, ...props }, ref) {\n const recipe = useRecipe({ key: \"inputAddon\", recipe: props.recipe });\n const [variantProps, localProps] = recipe.splitVariantProps(props);\n const styles = unstyled ? EMPTY_SLOT_STYLES : recipe(variantProps);\n return /* @__PURE__ */ jsx(chakra.div, { ref, ...localProps, css: [styles, props.css] });\n }\n);\n\nexport { InputAddon };\n","\"use strict\";\n\"use client\";\nimport { chakra } from '../../styled-system/factory.js';\n\nconst InputElement = chakra(\"div\", {\n base: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n position: \"absolute\",\n zIndex: 2,\n color: \"fg.muted\",\n height: \"full\",\n fontSize: \"sm\",\n px: \"3\"\n },\n variants: {\n placement: {\n start: {\n insetInlineStart: \"0\"\n },\n end: {\n insetInlineEnd: \"0\"\n }\n }\n }\n});\n\nexport { InputElement };\n","\"use strict\";\n\"use client\";\nimport { jsxs, jsx } from 'react/jsx-runtime';\nimport { forwardRef, Children, cloneElement } from 'react';\nimport { InputAddon } from './input-addon.js';\nimport { InputElement } from './input-element.js';\nimport { Group } from '../group/group.js';\n\nconst InputGroup = forwardRef(\n function InputGroup2(props, ref) {\n const {\n startElement,\n startElementProps,\n endElement,\n endElementProps,\n startAddon,\n startAddonProps,\n endAddon,\n endAddonProps,\n children,\n startOffset = \"0px\",\n endOffset = \"0px\",\n ...rest\n } = props;\n const child = Children.only(children);\n const attached = Boolean(startAddon || endAddon);\n return /* @__PURE__ */ jsxs(\n Group,\n {\n width: \"full\",\n ref,\n attached,\n skip: (el) => el.type === InputElement,\n ...rest,\n children: [\n startAddon && /* @__PURE__ */ jsx(InputAddon, { ...startAddonProps, children: startAddon }),\n startElement && /* @__PURE__ */ jsx(InputElement, { pointerEvents: \"none\", ...startElementProps, children: startElement }),\n cloneElement(child, {\n ...startElement && {\n ps: `calc(var(--input-height) - ${startOffset})`\n },\n ...endElement && { pe: `calc(var(--input-height) - ${endOffset})` },\n ...children.props\n }),\n endElement && /* @__PURE__ */ jsx(InputElement, { placement: \"end\", ...endElementProps, children: endElement }),\n endAddon && /* @__PURE__ */ jsx(InputAddon, { ...endAddonProps, children: endAddon })\n ]\n }\n );\n }\n);\n\nexport { InputGroup };\n","import { ButtonSize } from \"components/Button/button.types\";\nimport { FormControlSize } from \"hocs/withFormControl/withFormControl.types\";\n\nexport const closeButtonSizeMap: Record<FormControlSize, ButtonSize> = {\n sm: \"xs\",\n md: \"sm\",\n lg: \"md\",\n};\n","import React, { ForwardedRef, useMemo } from \"react\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport {\n withFormControl,\n WithFormControlProps,\n} from \"hocs/withFormControl/withFormControl\";\nimport {\n Input as CInput,\n InputProps as CInputProps,\n InputGroup,\n} from \"@chakra-ui/react/input\";\nimport { FormControlSize } from \"hocs/withFormControl/withFormControl.types\";\nimport { Button } from \"components/Button/button.component\";\nimport { CharacterCounter } from \"components/CharacterCounter/characterCounter.component\";\nimport { closeButtonSizeMap } from \"./textInput.records\";\n\nexport interface TextInputBaseProps extends WithFormControlProps {\n charLimit?: number;\n inputRef?: ForwardedRef<HTMLInputElement>;\n onContrast?: boolean;\n leftAddon?: React.ReactNode;\n leftElement?: React.ReactNode;\n rightAddon?: React.ReactNode;\n rightElement?: React.ReactNode;\n size?: FormControlSize;\n}\n\nexport interface DefaultTextInputProps extends TextInputBaseProps {\n clearable?: never;\n onClear?: never;\n}\n\nexport interface ClearableTextInputProps extends TextInputBaseProps {\n clearable?: boolean;\n onClear?: (val: string | number | readonly string[]) => void;\n}\n\nexport type KTextInputProps = DefaultTextInputProps | ClearableTextInputProps;\n\nexport type TextInputProps = KTextInputProps & CInputProps;\n\nconst TextInput = withFormControl(\n ({\n charLimit = undefined,\n clearable = false,\n disabled = false,\n inputRef,\n invalid,\n leftAddon,\n leftElement,\n onClear,\n onContrast,\n rightAddon,\n rightElement,\n size = \"md\",\n value,\n ...rest\n }: TextInputProps): React.JSX.Element => {\n const handleClear = (): void => {\n if (onClear) {\n onClear(value || \"\");\n }\n };\n\n if (clearable && !!value && !disabled) {\n rightElement = (\n <Button\n className=\"TextInput__ClearButton\"\n data-testid=\"kibble-text-input-clear-button\"\n size={closeButtonSizeMap[size as FormControlSize]}\n variant=\"ghostNeutral\"\n onClick={handleClear}\n iconName=\"close\"\n />\n );\n }\n\n const currentCharCount = useMemo(\n () => value?.toString()?.length || 0,\n [value],\n );\n\n return (\n <Box className=\"TextInput__Wrapper\" position=\"relative\" w=\"100%\">\n <InputGroup\n className=\"TextInput__InputGroup\"\n data-testid=\"kibble-text-input-group\"\n startElement={leftElement}\n startElementProps={{\n color: \"inherit\",\n _groupDisabled: { opacity: 0.6 },\n }}\n endElement={rightElement}\n endElementProps={{\n color: \"inherit\",\n paddingInline: 1.5,\n _groupDisabled: { opacity: 0.6 },\n }}\n startAddon={leftAddon}\n endAddon={rightAddon}\n >\n <CInput\n data-testid=\"kibble-text-input\"\n className=\"TextInput\"\n ref={inputRef}\n value={value}\n size={size}\n disabled={disabled}\n {...(invalid && { \"aria-invalid\": true })}\n variant={onContrast ? \"onContrast\" : \"default\"}\n {...rest}\n />\n </InputGroup>\n {!!charLimit && (\n <CharacterCounter\n withLimit={true}\n limit={charLimit}\n currentCount={currentCharCount}\n />\n )}\n </Box>\n );\n },\n);\n\nconst WrappedTextInput = React.forwardRef(\n (props: TextInputProps, ref: ForwardedRef<HTMLInputElement>) => (\n <TextInput inputRef={ref} {...props} />\n ),\n);\n\nWrappedTextInput.displayName = \"TextInput\";\n\nexport { WrappedTextInput as TextInput };\n"],"names":["FieldInput","forwardRef","props","ref","field","useFieldContext","mergedProps","mergeProps","jsx","ark","withContext","createRecipeContext","Input","Field.Input","InputAddon","unstyled","recipe","useRecipe","variantProps","localProps","styles","EMPTY_SLOT_STYLES","chakra","InputElement","InputGroup","startElement","startElementProps","endElement","endElementProps","startAddon","startAddonProps","endAddon","endAddonProps","children","startOffset","endOffset","rest","child","Children","attached","jsxs","Group","el","cloneElement","closeButtonSizeMap","TextInput","withFormControl","charLimit","clearable","disabled","inputRef","invalid","leftAddon","leftElement","onClear","onContrast","rightAddon","rightElement","size","value","handleClear","Button","currentCharCount","useMemo","Box","CInput","CharacterCounter","WrappedTextInput","React"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4]}