@televet/kibble-ui 5.0.20-alpha.hunter.9 → 5.0.20

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 (259) hide show
  1. package/dist/chunks/{avatarGroup.component-BHchH_tF.js → avatarGroup.component-CJCQSIyr.js} +2 -2
  2. package/dist/chunks/{avatarGroup.component-BHchH_tF.js.map → avatarGroup.component-CJCQSIyr.js.map} +1 -1
  3. package/dist/chunks/{avatarGroup.component-Ba_rfWUg.js → avatarGroup.component-M84HNv2O.js} +2 -2
  4. package/dist/chunks/{avatarGroup.component-Ba_rfWUg.js.map → avatarGroup.component-M84HNv2O.js.map} +1 -1
  5. package/dist/chunks/{buttonGroup.component-BNOBvOyv.js → buttonGroup.component-HKh7TJ0v.js} +2 -2
  6. package/dist/chunks/{buttonGroup.component-BNOBvOyv.js.map → buttonGroup.component-HKh7TJ0v.js.map} +1 -1
  7. package/dist/chunks/{buttonGroup.component-BXiKIlPf.js → buttonGroup.component-pR0mvmm7.js} +2 -2
  8. package/dist/chunks/{buttonGroup.component-BXiKIlPf.js.map → buttonGroup.component-pR0mvmm7.js.map} +1 -1
  9. package/dist/chunks/{calendar.component-IbKgfA9K.js → calendar.component-BFSyxaB6.js} +2 -2
  10. package/dist/chunks/{calendar.component-IbKgfA9K.js.map → calendar.component-BFSyxaB6.js.map} +1 -1
  11. package/dist/chunks/{calendar.component-BG7_Kwgn.js → calendar.component-UUc8d3QQ.js} +2 -2
  12. package/dist/chunks/{calendar.component-BG7_Kwgn.js.map → calendar.component-UUc8d3QQ.js.map} +1 -1
  13. package/dist/chunks/{checkbox.component-DdOVYSSc.js → checkbox.component-C132vkan.js} +2 -2
  14. package/dist/chunks/{checkbox.component-DdOVYSSc.js.map → checkbox.component-C132vkan.js.map} +1 -1
  15. package/dist/chunks/{checkbox.component-DDsVfE4a.js → checkbox.component-DUJCiZr2.js} +2 -2
  16. package/dist/chunks/{checkbox.component-DDsVfE4a.js.map → checkbox.component-DUJCiZr2.js.map} +1 -1
  17. package/dist/chunks/{checkboxGroup.component-CvHKP7gd.js → checkboxGroup.component-2U0ZW1TD.js} +2 -2
  18. package/dist/chunks/{checkboxGroup.component-CvHKP7gd.js.map → checkboxGroup.component-2U0ZW1TD.js.map} +1 -1
  19. package/dist/chunks/{checkboxGroup.component-Cx2Gvii5.js → checkboxGroup.component-DW9qUlSm.js} +3 -3
  20. package/dist/chunks/{checkboxGroup.component-Cx2Gvii5.js.map → checkboxGroup.component-DW9qUlSm.js.map} +1 -1
  21. package/dist/chunks/{conversationCard.component-0D3jmvOf.js → conversationCard.component-CscMIq51.js} +2 -2
  22. package/dist/chunks/{conversationCard.component-0D3jmvOf.js.map → conversationCard.component-CscMIq51.js.map} +1 -1
  23. package/dist/chunks/{conversationCard.component-D7hpX-QG.js → conversationCard.component-HYxRoILR.js} +2 -2
  24. package/dist/chunks/{conversationCard.component-D7hpX-QG.js.map → conversationCard.component-HYxRoILR.js.map} +1 -1
  25. package/dist/chunks/{datePicker.component-BuHqzdy_.js → datePicker.component-BuGpHTzS.js} +2 -2
  26. package/dist/chunks/{datePicker.component-BuHqzdy_.js.map → datePicker.component-BuGpHTzS.js.map} +1 -1
  27. package/dist/chunks/{datePicker.component-BmmxcyyX.js → datePicker.component-Dq2vL7Mk.js} +3 -3
  28. package/dist/chunks/{datePicker.component-BmmxcyyX.js.map → datePicker.component-Dq2vL7Mk.js.map} +1 -1
  29. package/dist/chunks/{datePicker.provider-ElRAMKbN.js → datePicker.provider-CavuOZl4.js} +747 -750
  30. package/dist/chunks/{datePicker.provider-ElRAMKbN.js.map → datePicker.provider-CavuOZl4.js.map} +1 -1
  31. package/dist/chunks/datePicker.provider-i35-VNAb.js +15 -0
  32. package/dist/chunks/{datePicker.provider-B7-cWUkv.js.map → datePicker.provider-i35-VNAb.js.map} +1 -1
  33. package/dist/chunks/{dateTimePicker.component-CAYI8EOg.js → dateTimePicker.component-BlWhC5aT.js} +2 -2
  34. package/dist/chunks/{dateTimePicker.component-CAYI8EOg.js.map → dateTimePicker.component-BlWhC5aT.js.map} +1 -1
  35. package/dist/chunks/{dateTimePicker.component-Dnqx_xtK.js → dateTimePicker.component-DnYStcAJ.js} +4 -4
  36. package/dist/chunks/{dateTimePicker.component-Dnqx_xtK.js.map → dateTimePicker.component-DnYStcAJ.js.map} +1 -1
  37. package/dist/chunks/{menu.component-BEDMybmZ.js → menu.component-CV8eVKYt.js} +3 -3
  38. package/dist/chunks/{menu.component-BEDMybmZ.js.map → menu.component-CV8eVKYt.js.map} +1 -1
  39. package/dist/chunks/{menu.component-DypBuCwv.js → menu.component-D2V9Q1Y5.js} +2 -2
  40. package/dist/chunks/{menu.component-DypBuCwv.js.map → menu.component-D2V9Q1Y5.js.map} +1 -1
  41. package/dist/chunks/{numberInput.component-DG6IWAHs.js → numberInput.component-DGPEz0Fv.js} +2 -2
  42. package/dist/chunks/{numberInput.component-DG6IWAHs.js.map → numberInput.component-DGPEz0Fv.js.map} +1 -1
  43. package/dist/chunks/{numberInput.component-DFK4EYLV.js → numberInput.component-V6NQs14b.js} +2 -2
  44. package/dist/chunks/{numberInput.component-DFK4EYLV.js.map → numberInput.component-V6NQs14b.js.map} +1 -1
  45. package/dist/chunks/{pinInput.types-ftBwVMLj.js → pinInput.types-Can9f1Eu.js} +2 -2
  46. package/dist/chunks/{pinInput.types-ftBwVMLj.js.map → pinInput.types-Can9f1Eu.js.map} +1 -1
  47. package/dist/chunks/{pinInput.types-BmXYQb7O.js → pinInput.types-bIGh7aUS.js} +2 -2
  48. package/dist/chunks/{pinInput.types-BmXYQb7O.js.map → pinInput.types-bIGh7aUS.js.map} +1 -1
  49. package/dist/chunks/{radioGroup.types-CVFQ5dZ7.js → radioGroup.types-BVbxeB22.js} +3 -3
  50. package/dist/chunks/{radioGroup.types-CVFQ5dZ7.js.map → radioGroup.types-BVbxeB22.js.map} +1 -1
  51. package/dist/chunks/{radioGroup.types-DxRSugsr.js → radioGroup.types-U1ep9nrN.js} +2 -2
  52. package/dist/chunks/{radioGroup.types-DxRSugsr.js.map → radioGroup.types-U1ep9nrN.js.map} +1 -1
  53. package/dist/chunks/{rating.component-CQgpD-gS.js → rating.component-DeJY9G94.js} +2 -2
  54. package/dist/chunks/rating.component-DeJY9G94.js.map +1 -0
  55. package/dist/chunks/{rating.component-FYKS_NCl.js → rating.component-DsHkKmA7.js} +2 -2
  56. package/dist/chunks/rating.component-DsHkKmA7.js.map +1 -0
  57. package/dist/chunks/{ratingDots.component-C1KgTGWj.js → ratingDots.component-BhWM7kTg.js} +2 -2
  58. package/dist/chunks/{ratingDots.component-C1KgTGWj.js.map → ratingDots.component-BhWM7kTg.js.map} +1 -1
  59. package/dist/chunks/{ratingDots.component-DesbSj0q.js → ratingDots.component-CZ370iI3.js} +2 -2
  60. package/dist/chunks/{ratingDots.component-DesbSj0q.js.map → ratingDots.component-CZ370iI3.js.map} +1 -1
  61. package/dist/chunks/{select.component-BkDkYpf2.js → select.component-CIjEq1os.js} +3 -3
  62. package/dist/chunks/{select.component-BkDkYpf2.js.map → select.component-CIjEq1os.js.map} +1 -1
  63. package/dist/chunks/{select.component-DoFwe4lJ.js → select.component-OrsHXCMz.js} +2 -2
  64. package/dist/chunks/{select.component-DoFwe4lJ.js.map → select.component-OrsHXCMz.js.map} +1 -1
  65. package/dist/chunks/semanticTokens.records-CmeaObFQ.js +2 -0
  66. package/dist/chunks/semanticTokens.records-CmeaObFQ.js.map +1 -0
  67. package/dist/chunks/semanticTokens.records-CwC7zhMS.js +549 -0
  68. package/dist/chunks/semanticTokens.records-CwC7zhMS.js.map +1 -0
  69. package/dist/chunks/{switch.component-Bs-8D1pU.js → switch.component-BYEMhBCA.js} +2 -2
  70. package/dist/chunks/{switch.component-Bs-8D1pU.js.map → switch.component-BYEMhBCA.js.map} +1 -1
  71. package/dist/chunks/{switch.component-Cr8Abw0U.js → switch.component-DjN67nap.js} +2 -2
  72. package/dist/chunks/{switch.component-Cr8Abw0U.js.map → switch.component-DjN67nap.js.map} +1 -1
  73. package/dist/chunks/{tagBlock.component-BWXHnUPn.js → tagBlock.component-B899iqQP.js} +2 -2
  74. package/dist/chunks/{tagBlock.component-BWXHnUPn.js.map → tagBlock.component-B899iqQP.js.map} +1 -1
  75. package/dist/chunks/{tagBlock.component-DjbevH0J.js → tagBlock.component-R4FY7ytN.js} +2 -2
  76. package/dist/chunks/{tagBlock.component-DjbevH0J.js.map → tagBlock.component-R4FY7ytN.js.map} +1 -1
  77. package/dist/chunks/{textInput.component-C7kdQ8hF.js → textInput.component-BeiTxTkS.js} +2 -2
  78. package/dist/chunks/{textInput.component-C7kdQ8hF.js.map → textInput.component-BeiTxTkS.js.map} +1 -1
  79. package/dist/chunks/{textInput.component-DzUKTy1w.js → textInput.component-CwTc0h_F.js} +2 -2
  80. package/dist/chunks/{textInput.component-DzUKTy1w.js.map → textInput.component-CwTc0h_F.js.map} +1 -1
  81. package/dist/chunks/{textarea.component-DteG1L4y.js → textarea.component-BIg_XX_R.js} +2 -2
  82. package/dist/chunks/{textarea.component-DteG1L4y.js.map → textarea.component-BIg_XX_R.js.map} +1 -1
  83. package/dist/chunks/{textarea.component-W9VBnd4-.js → textarea.component-C6Wt1Pk8.js} +2 -2
  84. package/dist/chunks/{textarea.component-W9VBnd4-.js.map → textarea.component-C6Wt1Pk8.js.map} +1 -1
  85. package/dist/chunks/{theme.provider-Cl9_chOv.js → theme.provider-CvuSdLO6.js} +963 -1625
  86. package/dist/chunks/theme.provider-CvuSdLO6.js.map +1 -0
  87. package/dist/chunks/theme.provider-DwwXiHZn.js +28 -0
  88. package/dist/chunks/theme.provider-DwwXiHZn.js.map +1 -0
  89. package/dist/chunks/timePicker.component-BCMX6aqb.js +220 -0
  90. package/dist/chunks/timePicker.component-BCMX6aqb.js.map +1 -0
  91. package/dist/chunks/timePicker.component-D5hw80VV.js +2 -0
  92. package/dist/chunks/timePicker.component-D5hw80VV.js.map +1 -0
  93. package/dist/chunks/{timeRange.component-oc3ptJ_N.js → timeRange.component-BZHpZeAX.js} +2 -2
  94. package/dist/chunks/timeRange.component-BZHpZeAX.js.map +1 -0
  95. package/dist/chunks/{timeRange.component-LBzKy8H3.js → timeRange.component-D3Db8lvh.js} +2 -2
  96. package/dist/chunks/timeRange.component-D3Db8lvh.js.map +1 -0
  97. package/dist/chunks/{withFormControl-08PrhcOk.js → withFormControl-DW9A6BSL.js} +2 -2
  98. package/dist/chunks/{withFormControl-08PrhcOk.js.map → withFormControl-DW9A6BSL.js.map} +1 -1
  99. package/dist/chunks/withFormControl-QV_Jridv.js +2 -0
  100. package/dist/chunks/{withFormControl-BSlIlVY0.js.map → withFormControl-QV_Jridv.js.map} +1 -1
  101. package/dist/cjs/components/AvatarGroup/index.cjs +1 -1
  102. package/dist/cjs/components/ButtonGroup/index.cjs +1 -1
  103. package/dist/cjs/components/Calendar/index.cjs +1 -1
  104. package/dist/cjs/components/Checkbox/index.cjs +1 -1
  105. package/dist/cjs/components/CheckboxGroup/index.cjs +1 -1
  106. package/dist/cjs/components/ConversationCard/index.cjs +1 -1
  107. package/dist/cjs/components/DatePicker/index.cjs +1 -1
  108. package/dist/cjs/components/DateTimePicker/index.cjs +1 -1
  109. package/dist/cjs/components/Menu/index.cjs +1 -1
  110. package/dist/cjs/components/NumberInput/index.cjs +1 -1
  111. package/dist/cjs/components/PinInput/index.cjs +1 -1
  112. package/dist/cjs/components/RadioGroup/index.cjs +1 -1
  113. package/dist/cjs/components/Rating/index.cjs +1 -1
  114. package/dist/cjs/components/RatingDots/index.cjs +1 -1
  115. package/dist/cjs/components/Select/index.cjs +1 -1
  116. package/dist/cjs/components/Switch/index.cjs +1 -1
  117. package/dist/cjs/components/TagBlock/index.cjs +1 -1
  118. package/dist/cjs/components/TextInput/index.cjs +1 -1
  119. package/dist/cjs/components/Textarea/index.cjs +1 -1
  120. package/dist/cjs/components/TimePicker/index.cjs +1 -1
  121. package/dist/cjs/components/TimeRange/index.cjs +1 -1
  122. package/dist/cjs/components/index.cjs +1 -1
  123. package/dist/cjs/hooks/useBreakpoint/index.cjs.map +1 -1
  124. package/dist/cjs/hooks/useDeviceType/index.cjs.map +1 -1
  125. package/dist/cjs/index.cjs +1 -1
  126. package/dist/cjs/theme/index.cjs +1 -1
  127. package/dist/cjs/theme/semanticTokens/index.cjs +1 -1
  128. package/dist/cjs/theme/semanticTokens/index.cjs.map +1 -1
  129. package/dist/cjs/theme/tokens/blurs/index.cjs +1 -1
  130. package/dist/cjs/theme/tokens/blurs/index.cjs.map +1 -1
  131. package/dist/cjs/theme/tokens/borders/index.cjs +1 -1
  132. package/dist/cjs/theme/tokens/borders/index.cjs.map +1 -1
  133. package/dist/cjs/theme/tokens/colors/index.cjs.map +1 -1
  134. package/dist/cjs/theme/tokens/index.cjs +1 -1
  135. package/dist/cjs/theme/tokens/shadows/index.cjs +1 -1
  136. package/dist/cjs/theme/tokens/shadows/index.cjs.map +1 -1
  137. package/dist/cjs/theme/tokens/sizes/index.cjs +1 -1
  138. package/dist/cjs/theme/tokens/sizes/index.cjs.map +1 -1
  139. package/dist/cjs/theme/tokens/spacing/index.cjs +1 -1
  140. package/dist/cjs/theme/tokens/spacing/index.cjs.map +1 -1
  141. package/dist/cjs/theme/tokens/transitions/index.cjs +1 -1
  142. package/dist/cjs/theme/tokens/transitions/index.cjs.map +1 -1
  143. package/dist/cjs/theme/tokens/typography/index.cjs +1 -1
  144. package/dist/cjs/theme/tokens/typography/index.cjs.map +1 -1
  145. package/dist/cjs/theme/tokens/zIndices/index.cjs +1 -1
  146. package/dist/cjs/theme/tokens/zIndices/index.cjs.map +1 -1
  147. package/dist/esm/components/AvatarGroup/index.js +1 -1
  148. package/dist/esm/components/ButtonGroup/index.js +1 -1
  149. package/dist/esm/components/Calendar/index.js +1 -1
  150. package/dist/esm/components/Checkbox/index.js +1 -1
  151. package/dist/esm/components/CheckboxGroup/index.js +1 -1
  152. package/dist/esm/components/ConversationCard/index.js +1 -1
  153. package/dist/esm/components/DatePicker/index.js +2 -2
  154. package/dist/esm/components/DateTimePicker/index.js +1 -1
  155. package/dist/esm/components/Menu/index.js +1 -1
  156. package/dist/esm/components/NumberInput/index.js +1 -1
  157. package/dist/esm/components/PinInput/index.js +1 -1
  158. package/dist/esm/components/RadioGroup/index.js +1 -1
  159. package/dist/esm/components/Rating/index.js +1 -1
  160. package/dist/esm/components/RatingDots/index.js +1 -1
  161. package/dist/esm/components/Select/index.js +1 -1
  162. package/dist/esm/components/Switch/index.js +1 -1
  163. package/dist/esm/components/TagBlock/index.js +1 -1
  164. package/dist/esm/components/TextInput/index.js +1 -1
  165. package/dist/esm/components/Textarea/index.js +1 -1
  166. package/dist/esm/components/TimePicker/index.js +1 -1
  167. package/dist/esm/components/TimeRange/index.js +1 -1
  168. package/dist/esm/components/index.js +22 -22
  169. package/dist/esm/hooks/useBreakpoint/index.js.map +1 -1
  170. package/dist/esm/hooks/useDeviceType/index.js.map +1 -1
  171. package/dist/esm/index.js +23 -23
  172. package/dist/esm/theme/index.js +1 -1
  173. package/dist/esm/theme/semanticTokens/index.js +10 -4
  174. package/dist/esm/theme/semanticTokens/index.js.map +1 -1
  175. package/dist/esm/theme/tokens/blurs/index.js +13 -1
  176. package/dist/esm/theme/tokens/blurs/index.js.map +1 -1
  177. package/dist/esm/theme/tokens/borders/index.js +22 -1
  178. package/dist/esm/theme/tokens/borders/index.js.map +1 -1
  179. package/dist/esm/theme/tokens/colors/index.js.map +1 -1
  180. package/dist/esm/theme/tokens/index.js +26 -2
  181. package/dist/esm/theme/tokens/index.js.map +1 -1
  182. package/dist/esm/theme/tokens/shadows/index.js +55 -1
  183. package/dist/esm/theme/tokens/shadows/index.js.map +1 -1
  184. package/dist/esm/theme/tokens/sizes/index.js +28 -1
  185. package/dist/esm/theme/tokens/sizes/index.js.map +1 -1
  186. package/dist/esm/theme/tokens/spacing/index.js +38 -1
  187. package/dist/esm/theme/tokens/spacing/index.js.map +1 -1
  188. package/dist/esm/theme/tokens/transitions/index.js +17 -1
  189. package/dist/esm/theme/tokens/transitions/index.js.map +1 -1
  190. package/dist/esm/theme/tokens/typography/index.js +53 -1
  191. package/dist/esm/theme/tokens/typography/index.js.map +1 -1
  192. package/dist/esm/theme/tokens/zIndices/index.js +19 -1
  193. package/dist/esm/theme/tokens/zIndices/index.js.map +1 -1
  194. package/dist/types/components/DatePicker/context/datePicker.provider.d.ts +1 -2
  195. package/dist/types/components/Heading/heading.recipe.d.ts +1 -1
  196. package/dist/types/components/Link/link.recipe.d.ts +1 -1
  197. package/dist/types/components/Rating/rating.component.d.ts +1 -1
  198. package/dist/types/components/Text/text.recipe.d.ts +1 -1
  199. package/dist/types/components/TimePicker/timePicker.component.d.ts +1 -2
  200. package/dist/types/components/TimeRange/timeRange.component.d.ts +0 -1
  201. package/dist/types/theme/semanticTokens/aliasPurpose.records.d.ts +1 -1
  202. package/dist/types/theme/semanticTokens/index.d.ts +1 -2
  203. package/dist/types/theme/semanticTokens/semanticTokens.config.d.ts +37 -37
  204. package/dist/types/theme/semanticTokens/utils/flattenSemanticTokenRecord.d.ts +1 -1
  205. package/dist/types/theme/semanticTokens/utils/getSemanticColorToken.d.ts +1 -1
  206. package/dist/types/theme/tokens/blurs/index.d.ts +1 -1
  207. package/dist/types/theme/tokens/borders/index.d.ts +1 -1
  208. package/dist/types/theme/tokens/colors/colors.config.d.ts +1 -1
  209. package/dist/types/theme/tokens/colors/index.d.ts +1 -2
  210. package/dist/types/theme/tokens/shadows/index.d.ts +1 -1
  211. package/dist/types/theme/tokens/sizes/index.d.ts +1 -1
  212. package/dist/types/theme/tokens/spacing/index.d.ts +1 -1
  213. package/dist/types/theme/tokens/spacing/spacing.config.d.ts +2 -2
  214. package/dist/types/theme/tokens/transitions/index.d.ts +1 -1
  215. package/dist/types/theme/tokens/typography/index.d.ts +1 -1
  216. package/dist/types/theme/tokens/zIndices/index.d.ts +1 -1
  217. package/package.json +6 -3
  218. package/dist/chunks/datePicker.provider-B7-cWUkv.js +0 -15
  219. package/dist/chunks/invertToken-DkyAF_BY.js +0 -10
  220. package/dist/chunks/invertToken-DkyAF_BY.js.map +0 -1
  221. package/dist/chunks/invertToken-Em3s32gh.js +0 -2
  222. package/dist/chunks/invertToken-Em3s32gh.js.map +0 -1
  223. package/dist/chunks/rating.component-CQgpD-gS.js.map +0 -1
  224. package/dist/chunks/rating.component-FYKS_NCl.js.map +0 -1
  225. package/dist/chunks/theme.provider-BWhqnOFC.js +0 -28
  226. package/dist/chunks/theme.provider-BWhqnOFC.js.map +0 -1
  227. package/dist/chunks/theme.provider-Cl9_chOv.js.map +0 -1
  228. package/dist/chunks/timePicker.component-DIUqae3b.js +0 -2
  229. package/dist/chunks/timePicker.component-DIUqae3b.js.map +0 -1
  230. package/dist/chunks/timePicker.component-Dl3BE6eW.js +0 -230
  231. package/dist/chunks/timePicker.component-Dl3BE6eW.js.map +0 -1
  232. package/dist/chunks/timeRange.component-LBzKy8H3.js.map +0 -1
  233. package/dist/chunks/timeRange.component-oc3ptJ_N.js.map +0 -1
  234. package/dist/chunks/typography.records-BEd2lI_g.js +0 -54
  235. package/dist/chunks/typography.records-BEd2lI_g.js.map +0 -1
  236. package/dist/chunks/typography.records-Cg_lT1Z3.js +0 -2
  237. package/dist/chunks/typography.records-Cg_lT1Z3.js.map +0 -1
  238. package/dist/chunks/withFormControl-BSlIlVY0.js +0 -2
  239. package/dist/types/theme/semanticTokens/semanticTokens.records.d.ts +0 -419
  240. package/dist/types/theme/semanticTokens/semanticTokens.types.d.ts +0 -17
  241. package/dist/types/theme/semanticTokens/utils/invertToken.d.ts +0 -2
  242. package/dist/types/theme/tokens/blurs/blurs.records.d.ts +0 -2
  243. package/dist/types/theme/tokens/blurs/blurs.types.d.ts +0 -1
  244. package/dist/types/theme/tokens/borders/borders.records.d.ts +0 -3
  245. package/dist/types/theme/tokens/borders/borders.types.d.ts +0 -2
  246. package/dist/types/theme/tokens/colors/colors.records.d.ts +0 -2
  247. package/dist/types/theme/tokens/colors/colors.types.d.ts +0 -2
  248. package/dist/types/theme/tokens/shadows/shadows.records.d.ts +0 -6
  249. package/dist/types/theme/tokens/shadows/shadows.types.d.ts +0 -2
  250. package/dist/types/theme/tokens/sizes/sizes.records.d.ts +0 -3
  251. package/dist/types/theme/tokens/sizes/sizes.types.d.ts +0 -2
  252. package/dist/types/theme/tokens/spacing/spacing.records.d.ts +0 -2
  253. package/dist/types/theme/tokens/spacing/spacing.types.d.ts +0 -1
  254. package/dist/types/theme/tokens/transitions/transitions.records.d.ts +0 -3
  255. package/dist/types/theme/tokens/transitions/transitions.types.d.ts +0 -2
  256. package/dist/types/theme/tokens/typography/typography.records.d.ts +0 -6
  257. package/dist/types/theme/tokens/typography/typography.types.d.ts +0 -5
  258. package/dist/types/theme/tokens/zIndices/zIndices.records.d.ts +0 -2
  259. package/dist/types/theme/tokens/zIndices/zIndices.types.d.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"menu.component-DypBuCwv.js","sources":["../../node_modules/@ark-ui/react/dist/components/menu/use-menu-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-arrow.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-arrow-tip.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-item-context.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-option-item-props-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-checkbox-item.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-content.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-context-trigger.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-indicator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-item-group-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-group.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-group-label.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-indicator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-text.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-positioner.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-radio-item.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-radio-item-group.js","../../node_modules/@ark-ui/react/dist/utils/use-effect-once.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-machine-context.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-trigger-item-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-root.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-root-provider.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-separator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-trigger.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-trigger-item.js","../../node_modules/@chakra-ui/react/dist/esm/components/menu/menu.js","../../src/components/Menu/components/MenuButton/menuButton.component.tsx","../../src/components/Menu/components/MenuItem/menuItem.component.tsx","../../src/components/Menu/components/MenuToggleButtons/menuToggleButtons.component.tsx","../../src/components/Menu/menu.component.tsx"],"sourcesContent":["'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuProvider, useMenuContext] = createContext({\n name: \"MenuContext\",\n hookName: \"useMenuContext\",\n providerName: \"<MenuProvider />\",\n strict: false\n});\n\nexport { MenuProvider, useMenuContext };\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 { useMenuContext } from './use-menu-context.js';\n\nconst MenuArrow = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getArrowProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuArrow.displayName = \"MenuArrow\";\n\nexport { MenuArrow };\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 { useMenuContext } from './use-menu-context.js';\n\nconst MenuArrowTip = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getArrowTipProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuArrowTip.displayName = \"MenuArrowTip\";\n\nexport { MenuArrowTip };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuItemProvider, useMenuItemContext] = createContext({\n name: \"MenuItemContext\",\n hookName: \"useMenuItemContext\",\n providerName: \"<MenuItemProvider />\"\n});\n\nexport { MenuItemProvider, useMenuItemContext };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuItemPropsProvider, useMenuItemPropsContext] = createContext({\n name: \"MenuItemPropsContext\",\n hookName: \"useMenuItemPropsContext\",\n providerName: \"<MenuItemPropsProvider />\"\n});\n\nexport { MenuItemPropsProvider, useMenuItemPropsContext };\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 { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\nimport { MenuItemPropsProvider } from './use-menu-option-item-props-context.js';\n\nconst MenuCheckboxItem = forwardRef((props, ref) => {\n const [partialOptionItemProps, localProps] = createSplitProps()(props, [\n \"checked\",\n \"closeOnSelect\",\n \"disabled\",\n \"onCheckedChange\",\n \"value\",\n \"valueText\"\n ]);\n const optionItemProps = {\n ...partialOptionItemProps,\n type: \"checkbox\"\n };\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getOptionItemProps(optionItemProps), localProps);\n const optionItemState = menu.getOptionItemState(optionItemProps);\n return /* @__PURE__ */ jsx(MenuItemPropsProvider, { value: optionItemProps, children: /* @__PURE__ */ jsx(MenuItemProvider, { value: optionItemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nMenuCheckboxItem.displayName = \"MenuCheckboxItem\";\n\nexport { MenuCheckboxItem };\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 { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuContent = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const presence = usePresenceContext();\n const mergedProps = mergeProps(menu.getContentProps(), presence.getPresenceProps(), props);\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) });\n});\nMenuContent.displayName = \"MenuContent\";\n\nexport { MenuContent };\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 { useMenuContext } from './use-menu-context.js';\n\nconst MenuContextTrigger = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getContextTriggerProps(), props);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nMenuContextTrigger.displayName = \"MenuContextTrigger\";\n\nexport { MenuContextTrigger };\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 { useMenuContext } from './use-menu-context.js';\n\nconst MenuIndicator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getIndicatorProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuIndicator.displayName = \"MenuIndicator\";\n\nexport { MenuIndicator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useEffect } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\nimport { MenuItemPropsProvider } from './use-menu-option-item-props-context.js';\n\nconst MenuItem = forwardRef((props, ref) => {\n const [itemProps, localProps] = createSplitProps()(props, [\n \"closeOnSelect\",\n \"disabled\",\n \"value\",\n \"valueText\",\n \"onSelect\"\n ]);\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getItemProps(itemProps), localProps);\n const itemState = menu.getItemState(itemProps);\n useEffect(() => {\n return menu.addItemListener({ id: itemState.id, onSelect: itemProps.onSelect });\n }, [itemState.id, itemProps.onSelect]);\n return /* @__PURE__ */ jsx(MenuItemPropsProvider, { value: itemProps, children: /* @__PURE__ */ jsx(MenuItemProvider, { value: itemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nMenuItem.displayName = \"MenuItem\";\n\nexport { MenuItem };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuItemGroupProvider, useMenuItemGroupContext] = createContext({\n name: \"MenuItemGroupContext\",\n hookName: \"useMenuItemGroupContext\",\n providerName: \"<MenuItemGroupProvider />\"\n});\n\nexport { MenuItemGroupProvider, useMenuItemGroupContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useId } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemGroupProvider } from './use-menu-item-group-context.js';\n\nconst MenuItemGroup = forwardRef((props, ref) => {\n const [optionalItemGroupProps, localProps] = createSplitProps()(props, [\"id\"]);\n const menu = useMenuContext();\n const id = useId();\n const itemGroupProps = { id, ...optionalItemGroupProps };\n const mergedProps = mergeProps(menu.getItemGroupProps(itemGroupProps), localProps);\n return /* @__PURE__ */ jsx(MenuItemGroupProvider, { value: itemGroupProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nMenuItemGroup.displayName = \"MenuItemGroup\";\n\nexport { MenuItemGroup };\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 { useMenuContext } from './use-menu-context.js';\nimport { useMenuItemGroupContext } from './use-menu-item-group-context.js';\n\nconst MenuItemGroupLabel = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const itemGroup = useMenuItemGroupContext();\n const mergedProps = mergeProps(menu.getItemGroupLabelProps({ htmlFor: itemGroup.id }), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemGroupLabel.displayName = \"MenuItemGroupLabel\";\n\nexport { MenuItemGroupLabel };\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 { useMenuContext } from './use-menu-context.js';\nimport { useMenuItemPropsContext } from './use-menu-option-item-props-context.js';\n\nconst MenuItemIndicator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const itemProps = useMenuItemPropsContext();\n const mergedProps = mergeProps(menu.getItemIndicatorProps(itemProps), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemIndicator.displayName = \"MenuItemIndicator\";\n\nexport { MenuItemIndicator };\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 { useMenuContext } from './use-menu-context.js';\nimport { useMenuItemPropsContext } from './use-menu-option-item-props-context.js';\n\nconst MenuItemText = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const itemProps = useMenuItemPropsContext();\n const mergedProps = mergeProps(menu.getItemTextProps(itemProps), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemText.displayName = \"MenuItemText\";\n\nexport { MenuItemText };\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 { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuPositioner = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getPositionerProps(), props);\n const presence = usePresenceContext();\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuPositioner.displayName = \"MenuPositioner\";\n\nexport { MenuPositioner };\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 { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\nimport { useMenuItemGroupContext } from './use-menu-item-group-context.js';\nimport { MenuItemPropsProvider } from './use-menu-option-item-props-context.js';\n\nconst MenuRadioItem = forwardRef((props, ref) => {\n const [partialItemProps, localProps] = createSplitProps()(props, [\n \"closeOnSelect\",\n \"disabled\",\n \"value\",\n \"valueText\"\n ]);\n const menu = useMenuContext();\n const itemGroup = useMenuItemGroupContext();\n const optionItemProps = {\n ...partialItemProps,\n checked: itemGroup.value === partialItemProps.value,\n type: \"radio\",\n onCheckedChange: () => itemGroup.onValueChange?.({ value: partialItemProps.value })\n };\n const mergedProps = mergeProps(menu.getOptionItemProps(optionItemProps), localProps);\n const optionItemState = menu.getOptionItemState(optionItemProps);\n return /* @__PURE__ */ jsx(MenuItemPropsProvider, { value: optionItemProps, children: /* @__PURE__ */ jsx(MenuItemProvider, { value: optionItemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nMenuRadioItem.displayName = \"MenuRadioItem\";\n\nexport { MenuRadioItem };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useId } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemGroupProvider } from './use-menu-item-group-context.js';\n\nconst MenuRadioItemGroup = forwardRef((props, ref) => {\n const [optionalItemGroupProps, localProps] = createSplitProps()(props, [\n \"id\",\n \"onValueChange\",\n \"value\"\n ]);\n const menu = useMenuContext();\n const id = useId();\n const itemGroupProps = { id, ...optionalItemGroupProps };\n const mergedProps = mergeProps(menu.getItemGroupProps({ id: itemGroupProps.id }), localProps);\n return /* @__PURE__ */ jsx(MenuItemGroupProvider, { value: itemGroupProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nMenuRadioItemGroup.displayName = \"MenuRadioItemGroup\";\n\nexport { MenuRadioItemGroup };\n","'use client';\nimport { useRef, useEffect } from 'react';\n\nconst useEffectOnce = (cb) => {\n const savedCallback = useRef(cb);\n const effectGuard = useRef(false);\n useEffect(() => {\n savedCallback.current = cb;\n });\n useEffect(() => {\n if (effectGuard.current !== true) {\n effectGuard.current = true;\n savedCallback.current();\n }\n }, []);\n};\n\nexport { useEffectOnce };\n","'use client';\nimport * as menu from '@zag-js/menu';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\n\nconst useMenu = (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(menu.machine, machineProps);\n const api = menu.connect(service, normalizeProps);\n return { api, service };\n};\n\nexport { useMenu };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuMachineProvider, useMenuMachineContext] = createContext({\n name: \"MenuMachineContext\",\n hookName: \"useMenuMachineContext\",\n providerName: \"<MenuMachineProvider />\",\n strict: false\n});\n\nexport { MenuMachineProvider, useMenuMachineContext };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuTriggerItemProvider, useMenuTriggerItemContext] = createContext({\n name: \"MenuMachineContext\",\n hookName: \"useMenuMachineContext\",\n providerName: \"<MenuMachineProvider />\",\n strict: false\n});\n\nexport { MenuTriggerItemProvider, useMenuTriggerItemContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { useCallback } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { useEffectOnce } from '../../utils/use-effect-once.js';\nimport { splitPresenceProps } from '../presence/split-presence-props.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useMenu } from './use-menu.js';\nimport { useMenuContext, MenuProvider } from './use-menu-context.js';\nimport { useMenuMachineContext, MenuMachineProvider } from './use-menu-machine-context.js';\nimport { MenuTriggerItemProvider } from './use-menu-trigger-item-context.js';\n\nconst MenuRoot = (props) => {\n const [presenceProps, menuProps] = splitPresenceProps(props);\n const [useMenuProps, localProps] = createSplitProps()(menuProps, [\n \"anchorPoint\",\n \"aria-label\",\n \"closeOnSelect\",\n \"composite\",\n \"defaultHighlightedValue\",\n \"defaultOpen\",\n \"highlightedValue\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onEscapeKeyDown\",\n \"onFocusOutside\",\n \"onHighlightChange\",\n \"onInteractOutside\",\n \"onOpenChange\",\n \"onPointerDownOutside\",\n \"onSelect\",\n \"open\",\n \"positioning\",\n \"typeahead\"\n ]);\n const parentApi = useMenuContext();\n const parentMachine = useMenuMachineContext();\n const { api, service } = useMenu(useMenuProps);\n const presence = usePresence(mergeProps({ present: api.open }, presenceProps));\n useEffectOnce(() => {\n if (!parentMachine) return;\n if (!parentApi) return;\n parentApi.setChild(service);\n api.setParent(parentMachine);\n });\n const triggerItemContext = useCallback(() => parentApi?.getTriggerItemProps(api), [api, parentApi]);\n return /* @__PURE__ */ jsx(MenuTriggerItemProvider, { value: triggerItemContext, children: /* @__PURE__ */ jsx(MenuMachineProvider, { value: service, children: /* @__PURE__ */ jsx(MenuProvider, { value: api, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presence, ...localProps }) }) }) });\n};\n\nexport { MenuRoot };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { useCallback } from 'react';\nimport { useEffectOnce } from '../../utils/use-effect-once.js';\nimport { splitPresenceProps } from '../presence/split-presence-props.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useMenuContext, MenuProvider } from './use-menu-context.js';\nimport { useMenuMachineContext, MenuMachineProvider } from './use-menu-machine-context.js';\nimport { MenuTriggerItemProvider } from './use-menu-trigger-item-context.js';\n\nconst MenuRootProvider = (props) => {\n const parentApi = useMenuContext();\n const parentMachine = useMenuMachineContext();\n const [presenceProps, { value: menu, children }] = splitPresenceProps(props);\n const { api, service } = menu;\n const presence = usePresence(mergeProps({ present: api.open }, presenceProps));\n useEffectOnce(() => {\n if (!parentMachine) return;\n if (!parentApi) return;\n parentApi.setChild(service);\n api.setParent(parentMachine);\n });\n const triggerItemContext = useCallback(() => parentApi?.getTriggerItemProps(api), [api, parentApi]);\n return /* @__PURE__ */ jsx(MenuTriggerItemProvider, { value: triggerItemContext, children: /* @__PURE__ */ jsx(MenuMachineProvider, { value: service, children: /* @__PURE__ */ jsx(MenuProvider, { value: api, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presence, children }) }) }) });\n};\n\nexport { MenuRootProvider };\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 { useMenuContext } from './use-menu-context.js';\n\nconst MenuSeparator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getSeparatorProps(), props);\n return /* @__PURE__ */ jsx(ark.hr, { ...mergedProps, ref });\n});\nMenuSeparator.displayName = \"MenuSeparator\";\n\nexport { MenuSeparator };\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 { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuTrigger = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const presence = usePresenceContext();\n const mergedProps = mergeProps(\n {\n ...menu.getTriggerProps(),\n \"aria-controls\": presence.unmounted ? void 0 : menu.getTriggerProps()[\"aria-controls\"]\n },\n props\n );\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nMenuTrigger.displayName = \"MenuTrigger\";\n\nexport { MenuTrigger };\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 { useMenuTriggerItemContext } from './use-menu-trigger-item-context.js';\n\nconst MenuTriggerItem = forwardRef((props, ref) => {\n const getTriggerItemProps = useMenuTriggerItemContext();\n const mergedProps = mergeProps(getTriggerItemProps?.() ?? {}, props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuTriggerItem.displayName = \"MenuTriggerItem\";\n\nexport { MenuTriggerItem };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { Menu } from '@ark-ui/react/menu';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { CheckIcon } from '../icons.js';\n\nconst {\n withRootProvider,\n withContext,\n useStyles: useMenuStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"menu\" });\nconst MenuRootProvider = withRootProvider(\n Menu.RootProvider\n);\nconst MenuRoot = withRootProvider(Menu.Root, {\n defaultProps: { lazyMount: true, unmountOnExit: true }\n});\nconst MenuPropsProvider = PropsProvider;\nconst MenuTrigger = withContext(\n Menu.Trigger,\n \"trigger\",\n { forwardAsChild: true }\n);\nconst MenuContextTrigger = withContext(Menu.ContextTrigger, \"contextTrigger\", { forwardAsChild: true });\nconst MenuPositioner = withContext(\n Menu.Positioner,\n \"positioner\",\n { forwardAsChild: true }\n);\nconst MenuSeparator = withContext(\n Menu.Separator,\n \"separator\",\n { forwardAsChild: true }\n);\nconst MenuContent = withContext(\n Menu.Content,\n \"content\",\n { forwardAsChild: true }\n);\nconst MenuArrowTip = withContext(\n Menu.ArrowTip,\n \"arrowTip\",\n { forwardAsChild: true }\n);\nconst MenuArrow = withContext(\n Menu.Arrow,\n \"arrow\",\n { forwardAsChild: true, defaultProps: { children: /* @__PURE__ */ jsx(MenuArrowTip, {}) } }\n);\nconst MenuIndicator = withContext(\n Menu.Indicator,\n \"indicator\",\n { forwardAsChild: true }\n);\nconst MenuItemGroup = withContext(\n Menu.ItemGroup,\n \"itemGroup\",\n { forwardAsChild: true }\n);\nconst MenuItemGroupLabel = withContext(Menu.ItemGroupLabel, \"itemGroupLabel\", { forwardAsChild: true });\nconst MenuItem = withContext(\n Menu.Item,\n \"item\",\n { forwardAsChild: true }\n);\nconst MenuTriggerItem = withContext(Menu.TriggerItem, \"item\", { forwardAsChild: true });\nconst MenuItemText = withContext(\n Menu.ItemText,\n \"itemText\",\n { forwardAsChild: true }\n);\nconst MenuItemCommand = withContext(\n \"kbd\",\n \"itemCommand\"\n);\nconst MenuItemIndicator = withContext(Menu.ItemIndicator, \"itemIndicator\", {\n forwardAsChild: true,\n defaultProps: { children: /* @__PURE__ */ jsx(CheckIcon, { boxSize: \"4\" }) }\n});\nconst MenuCheckboxItem = withContext(Menu.CheckboxItem, \"item\", { forwardAsChild: true });\nconst MenuRadioItemGroup = withContext(Menu.RadioItemGroup, \"itemGroup\", { forwardAsChild: true });\nconst MenuRadioItem = withContext(\n Menu.RadioItem,\n \"item\",\n { forwardAsChild: true }\n);\nconst MenuContext = Menu.Context;\nconst MenuItemContext = Menu.ItemContext;\n\nexport { MenuArrow, MenuArrowTip, MenuCheckboxItem, MenuContent, MenuContext, MenuContextTrigger, MenuIndicator, MenuItem, MenuItemCommand, MenuItemContext, MenuItemGroup, MenuItemGroupLabel, MenuItemIndicator, MenuItemText, MenuPositioner, MenuPropsProvider, MenuRadioItem, MenuRadioItemGroup, MenuRoot, MenuRootProvider, MenuSeparator, MenuTrigger, MenuTriggerItem, useMenuStyles };\n","import { Flex } from '@chakra-ui/react/flex';\nimport { Box } from '@chakra-ui/react/box';\nimport { Button, ButtonProps } from 'components/Button/button.component';\nimport { Icon } from 'components/Icon/icon.component';\nimport { Text, TextProps } from 'components/Text/text.component';\nimport { Tooltip, TooltipProps } from 'components/Tooltip/tooltip.component';\nimport React, { useCallback, useEffect, useState } from 'react';\n\nexport interface MenuButtonProps extends Omit<ButtonProps, 'children'> {\n /** If true, the caret will be hidden.\n * @default false\n */\n hideCaret?: boolean;\n /** Text to display in the menu button. */\n text?: string;\n /** Props to customize the text. */\n textProps?: TextProps;\n /** Props to customize the tooltip. */\n tooltipProps?: Omit<TooltipProps, 'children' | 'label' | 'isOpen' | 'onClose'>;\n /** If true, the tooltip will be shown. */\n showTooltip?: boolean;\n /** Determines if the menu is open. */\n isMenuOpen?: boolean;\n}\n\nexport const MenuButton = ({\n hideCaret = false,\n size = 'md',\n text,\n textProps,\n variant,\n onClick,\n ['data-testid']: dataTestId = 'kibble-menu-button',\n ...rest\n}: MenuButtonProps): React.JSX.Element => {\n return (\n <Button\n className=\"Menu__Button\"\n data-testid={dataTestId}\n size={size}\n variant={variant}\n {...rest}\n {...(!text && hideCaret && { paddingInline: 0, paddingBlock: 0 })}\n onClick={(e) => {\n e.stopPropagation();\n onClick?.(e);\n }}\n >\n {text && (\n <Text\n className=\"Menu__ButtonText\"\n data-testid={`${dataTestId}-text`}\n fontWeight=\"semibold\"\n size={size}\n color={variant ? 'inherit' : textProps?.color || 'text.contrast'}\n truncated\n {...textProps}\n >\n {text}\n </Text>\n )}\n {!hideCaret && (\n <Flex className=\"Menu__ButtonCaret\" data-testid={`${dataTestId}-caret`}>\n <Icon name=\"chevronDown\" size={size === 'lg' ? 'sm' : 'xs'} />\n </Flex>\n )}\n </Button>\n );\n};\n\nexport const MenuButtonTooltip = ({ tooltipProps, isMenuOpen, ...rest }: MenuButtonProps): React.JSX.Element => {\n // Needed to manage tooltip open state separately to avoid sticky issues when we open and close menu list\n const [isTooltipOpen, setIsTooltipOpen] = useState(false);\n\n const onMouseEnter = useCallback((): void => {\n if (!isMenuOpen) {\n setIsTooltipOpen(true);\n }\n }, [isMenuOpen]);\n\n const onMouseLeave = useCallback((): void => {\n if (!isMenuOpen) {\n setIsTooltipOpen(false);\n }\n }, [isMenuOpen]);\n\n // Close tooltip when menu opens\n useEffect(() => {\n if (isMenuOpen) {\n setIsTooltipOpen(false);\n }\n }, [isMenuOpen]);\n\n return (\n <Tooltip label={rest.text || ''} open={isTooltipOpen && !isMenuOpen} {...tooltipProps}>\n <Box\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n setIsTooltipOpen(false);\n }}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n <MenuButton {...rest} />\n </Box>\n </Tooltip>\n );\n};\n","import { Flex } from '@chakra-ui/react/flex';\nimport { Menu as CMenu } from '@chakra-ui/react/menu';\nimport React, { useCallback, useState } from 'react';\nimport { Text } from 'components/Text/text.component';\nimport { MenuItemType } from './menuItem.types';\nimport { Menu, MenuProps } from 'components/Menu';\nimport { TypographyVariant } from 'shared/types/typography';\nimport { Checkbox } from 'components/Checkbox/checkbox.component';\nimport { Icon } from 'components/Icon/icon.component';\nimport { Tooltip } from 'components/Tooltip';\n\ninterface BaseMenuItemProps {\n /** Label to display in the menu item. */\n label?: React.ReactNode;\n /** Left element to display in the menu item. */\n leftElement?: React.ReactNode;\n /** Group label to display in the menu item. */\n groupLabel?: string;\n /** Callback function to be called when the menu item is selected. */\n onSelect?: (value: string) => void;\n /** If true, the text will be truncated. */\n shouldTruncateText?: boolean;\n /** Type of the menu item.\n * @default default\n */\n type?: MenuItemType;\n /** Value of the menu item. */\n value: string;\n /** Variant of the menu item. */\n variant?: TypographyVariant;\n /** Data test id for the menu item.\n * @default kibble-menu-item\n */\n 'data-testid'?: string;\n}\n\ninterface DefaultMenuItemProps extends Omit<CMenu.ItemProps, 'onSelect' | 'isDisabled'> {\n /** Type of the menu item.\n * @default default\n */\n type?: 'default';\n /** If true, the menu item will be selected. */\n selected?: boolean;\n /** Tooltip label to display in the menu item. */\n tooltipLabel?: string;\n}\n\ninterface CheckboxMenuItemProps extends Omit<CMenu.CheckboxItemProps, 'onSelect'> {\n /** Type of the menu item.\n * @default checkbox\n */\n type: 'checkbox';\n /** If true, the checkbox will be checked. */\n checked: boolean;\n /** Tooltip label to display in the menu item. */\n tooltipLabel?: string;\n}\n\ninterface SubmenuMenuItemProps extends Omit<MenuProps, 'children' | 'buttonProps'> {\n /** Type of the menu item.\n * @default submenu\n */\n type: 'submenu';\n /** Value text for keyboard navigation. */\n valueText?: string;\n}\n\nexport type MenuItemProps = BaseMenuItemProps & (DefaultMenuItemProps | CheckboxMenuItemProps | SubmenuMenuItemProps);\n\nexport const MenuItem = ({\n label,\n leftElement,\n onSelect,\n shouldTruncateText,\n type = 'default',\n variant,\n ['data-testid']: dataTestId = 'kibble-menu-item',\n ...rest\n}: MenuItemProps): React.JSX.Element => {\n const [isSubmenuOpen, setIsSubmenuOpen] = useState(false);\n\n const handleItemSelect = useCallback(() => {\n if (onSelect) {\n onSelect(rest.value);\n }\n }, [onSelect, rest.value]);\n\n if (type === 'submenu') {\n const {\n valueText,\n listProps,\n positionerProps,\n portalled = true,\n open,\n lazyMount = true,\n unmountOnExit = true,\n } = rest as Omit<SubmenuMenuItemProps, 'type'>;\n\n return (\n <Menu\n lazyMount={lazyMount}\n unmountOnExit={unmountOnExit}\n submenuTrigger={\n <CMenu.TriggerItem\n className=\"Menu__Item--Submenu\"\n data-testid={`${dataTestId}-submenu`}\n justifyContent=\"space-between\"\n aria-valuetext={valueText}\n position=\"relative\"\n onClick={(): void => {\n // If the submenu is controlled, call the onSelect callback passed to the menu\n if (open !== undefined && onSelect) {\n onSelect(rest.value);\n } else {\n // Otherwise, toggle the internalsubmenu open state\n setIsSubmenuOpen(!isSubmenuOpen);\n }\n }}\n >\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={variant}\n />\n <Icon name=\"chevronRight\" size=\"sm\" />\n </CMenu.TriggerItem>\n }\n portalled={portalled}\n open={open !== undefined ? open : isSubmenuOpen}\n listProps={listProps}\n positionerProps={positionerProps}\n />\n );\n }\n\n if (type === 'checkbox') {\n const { checked, value, disabled, tooltipLabel, ...checkboxRest } = rest as CheckboxMenuItemProps;\n return (\n <CMenu.Item\n className=\"Menu__Item--Checkbox\"\n data-testid={`${dataTestId}-checkbox`}\n value={value}\n closeOnSelect={false}\n onSelect={disabled ? undefined : handleItemSelect}\n gap={3}\n disabled={disabled}\n {...checkboxRest}\n >\n <Checkbox checked={!!checked} disabled={disabled} size=\"md\" fullWidth={false} />\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={variant}\n tooltipLabel={tooltipLabel}\n />\n </CMenu.Item>\n );\n }\n\n if (type === 'default') {\n const { selected = false, disabled, value, tooltipLabel, ...defaultRest } = rest as DefaultMenuItemProps;\n return (\n <CMenu.Item\n className=\"Menu__Item--Default\"\n data-testid={`${dataTestId}-default`}\n value={value}\n onSelect={disabled ? undefined : handleItemSelect}\n disabled={disabled}\n {...(selected && { bgColor: 'background.secondaryAlpha.hover' })}\n {...defaultRest}\n >\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={selected ? 'info' : variant}\n tooltipLabel={tooltipLabel}\n />\n </CMenu.Item>\n );\n }\n\n return <></>;\n};\n\nconst MenuItemLabel = ({\n label,\n leftElement,\n shouldTruncateText,\n variant,\n tooltipLabel,\n}: {\n label?: React.ReactNode;\n leftElement?: React.ReactNode;\n shouldTruncateText?: boolean;\n variant?: TypographyVariant;\n tooltipLabel?: string;\n}): React.JSX.Element => {\n const content = (\n <Flex className=\"Menu__ItemLabel\" alignItems=\"center\" gap={3}>\n {leftElement}\n {typeof label === 'string' ? (\n <Text size=\"sm\" truncated={shouldTruncateText} variant={variant}>\n {label}\n </Text>\n ) : (\n label\n )}\n </Flex>\n );\n return tooltipLabel ? <Tooltip label={tooltipLabel}>{content}</Tooltip> : content;\n};\n","import { Box } from '@chakra-ui/react/box';\nimport { Flex } from '@chakra-ui/react/flex';\nimport { Button } from 'components/Button/button.component';\n\ninterface MenuToggleButtonsProps {\n /** Determines if there are selected items. */\n hasSelectedItems?: boolean;\n /** Name of the group. */\n groupName?: string;\n /** Callback function to toggle the selected items. */\n onToggle: ({ groupName, clear }: { clear: boolean; groupName?: string }) => void;\n /** Data test id for the menu toggle buttons.\n * @default kibble-menu-toggle-buttons\n */\n 'data-testid'?: string;\n}\n\nexport const MenuToggleButtons = ({\n groupName,\n hasSelectedItems = false,\n onToggle,\n ['data-testid']: dataTestId = 'kibble-menu-toggle-buttons',\n}: MenuToggleButtonsProps): React.JSX.Element => {\n const isGrouped = !!groupName;\n return (\n <Box className=\"Menu__ToggleButtons\" data-testid={dataTestId} {...(isGrouped && { textAlign: 'right', w: '50%' })}>\n {isGrouped ? (\n <>\n {hasSelectedItems ? (\n <ClearAllButton hasSelectedItems={hasSelectedItems} groupName={groupName} onToggle={onToggle} />\n ) : (\n <SelectAllButton groupName={groupName} onToggle={onToggle} />\n )}\n </>\n ) : (\n <Flex justifyContent=\"space-between\">\n <SelectAllButton groupName={groupName} onToggle={onToggle} />\n <ClearAllButton hasSelectedItems={hasSelectedItems} groupName={groupName} onToggle={onToggle} />\n </Flex>\n )}\n </Box>\n );\n};\n\nconst SelectAllButton = ({ groupName, onToggle }: MenuToggleButtonsProps): React.JSX.Element => {\n return (\n <Button variant=\"ghost\" size=\"xs\" onClick={(): void => onToggle({ groupName, clear: false })}>\n Select All\n </Button>\n );\n};\n\nconst ClearAllButton = ({ hasSelectedItems, groupName, onToggle }: MenuToggleButtonsProps): React.JSX.Element => {\n return (\n <Button\n variant=\"ghostNeutral\"\n iconName=\"arrowCircle\"\n size=\"xs\"\n disabled={!hasSelectedItems}\n onClick={(): void => onToggle({ groupName, clear: true })}\n >\n Clear All\n </Button>\n );\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { Menu as CMenu } from '@chakra-ui/react/menu';\nimport { Portal } from '@chakra-ui/react/portal';\nimport { MenuButton, MenuButtonTooltip, MenuButtonProps } from './components/MenuButton/menuButton.component';\nimport { MenuItem, MenuItemProps } from './components/MenuItem/menuItem.component';\nimport { Box } from '@chakra-ui/react/box';\nimport { Text } from 'components/Text/text.component';\nimport { TextInput } from 'components/TextInput/textInput.component';\nimport { Flex } from '@chakra-ui/react/flex';\nimport { Spinner } from 'components/Spinner/spinner.component';\nimport { MenuToggleButtons } from './components/MenuToggleButtons/menuToggleButtons.component';\nimport { usePortalContentRef } from 'hooks/usePortalContentRef';\nimport { MenuListOnOpenChangeProps } from './menu.types';\nimport { MenuListProps } from './components/MenuList/menuList.types';\n\nexport interface MenuProps extends Omit<CMenu.RootProps, 'children' | 'onSelect' | 'onOpenChange'> {\n /** Props to customize the menu button trigger. */\n buttonProps?: MenuButtonProps;\n /** Props to customize the menu list. */\n listProps?: MenuListProps;\n /** Props to customize the positioner of the menu. */\n positionerProps?: CMenu.PositionerProps;\n /**\n * If true, the menu will be rendered in a Portal.\n * @default false\n */\n portalled?: boolean;\n /** Callback function to be called when the menu is opened or closed. */\n onOpenChange?: ({ open, allSelectedItems }: MenuListOnOpenChangeProps) => void;\n /** Data test id for the menu.\n * @default kibble-menu\n */\n 'data-testid'?: string;\n}\n\ninterface InternalMenuProps extends MenuProps {\n /** React element to be used as the trigger for the submenu.\n * @internal\n */\n submenuTrigger?: React.ReactNode;\n}\n\nexport const Menu = ({\n buttonProps,\n listProps,\n positionerProps,\n portalled = false,\n submenuTrigger,\n lazyMount = true,\n onOpenChange,\n ['data-testid']: dataTestId = 'kibble-menu',\n ...rest\n}: InternalMenuProps): React.JSX.Element => {\n const { contentRef } = usePortalContentRef();\n const {\n canSelectAll,\n canSelectGroups,\n emptyState = 'No results found',\n groupSortOrder,\n loading,\n maxH = '480px',\n menuItems = [],\n minW = '240px',\n onSearch,\n onSelect: onListSelect,\n onSelectAll,\n searchable,\n searchPlaceholder = 'Search...',\n shouldTruncateText,\n ...restListProps\n } = listProps || {};\n const [isOpen, setIsOpen] = useState(false);\n const [searchText, setSearchText] = useState<string>('');\n const [filteredMenuItems, setFilteredMenuItems] = useState<MenuItemProps[]>(menuItems);\n\n // Menu Items\n const groupedItems = useMemo(() => {\n const groups: Record<string, Record<string, MenuItemProps[]>> = {};\n\n filteredMenuItems?.forEach((item) => {\n const group = item.groupLabel || 'default';\n // Default and submenu items are grouped under \"default\"\n const type = item.type === 'checkbox' ? 'checkbox' : 'default';\n\n if (!groups[group]) {\n groups[group] = {};\n }\n\n if (!groups[group][type]) {\n groups[group][type] = [];\n }\n\n groups[group][type].push(item);\n });\n\n return groups;\n }, [filteredMenuItems]);\n\n const groups = useMemo(() => {\n const entries = Object.entries(groupedItems);\n\n if (!groupSortOrder || groupSortOrder.length === 0) {\n return entries;\n }\n\n // Sort groups based on groupSortOrder\n return entries.sort(([groupLabelA], [groupLabelB]) => {\n const indexA = groupSortOrder.indexOf(groupLabelA);\n const indexB = groupSortOrder.indexOf(groupLabelB);\n\n // If both groups are in the sort order, sort by their index\n if (indexA !== -1 && indexB !== -1) {\n return indexA - indexB;\n }\n\n // If only groupA is in the sort order, it comes first\n if (indexA !== -1) {\n return -1;\n }\n\n // If only groupB is in the sort order, it comes first\n if (indexB !== -1) {\n return 1;\n }\n\n // If neither group is in the sort order, maintain original order\n return 0;\n });\n }, [groupedItems, groupSortOrder]);\n\n // Checkbox State Management\n const checkboxItems = useMemo(() => menuItems?.filter((item) => item.type === 'checkbox') || [], [menuItems]);\n\n // Helper functions for checkbox state management\n const isChecked = useCallback(\n (value: string) => {\n return checkboxItems.some((item) => item.value === value && item.checked);\n },\n [checkboxItems],\n );\n\n // Helper function to get selected menu items based on selected values\n const selectedCheckboxItems = useMemo(() => {\n return checkboxItems.filter((item) => item.checked);\n }, [checkboxItems]);\n\n const handleToggleSelectAll = useCallback(\n ({ groupName, clear }: { groupName?: string; clear: boolean }) => {\n let newSelectedItems: MenuItemProps[];\n // Only allow checkbox items that are not disabled to be toggled\n const filteredCheckboxItems = filteredMenuItems.filter((item) => item.type === 'checkbox' && !item.disabled);\n\n // If the group name is provided, only toggle the items in the group\n if (groupName) {\n // Get the items in the group\n const groupedItems = filteredCheckboxItems.filter((item) => item.groupLabel === groupName);\n\n // If the clear flag is true, remove the items in the group\n newSelectedItems = clear\n ? selectedCheckboxItems.filter((cItem) => cItem.groupLabel !== groupName)\n : // Otherwise, add the items in the group to the selected items\n [...new Set([...selectedCheckboxItems, ...groupedItems])];\n } else {\n // If the group name is not provided, toggle all the items\n newSelectedItems = clear\n ? []\n : filteredCheckboxItems.map((item) => {\n return { ...item, checked: true };\n });\n }\n\n // Call the onSelectAll callback with the updated values\n onSelectAll?.({ allSelectedItems: newSelectedItems });\n },\n [onSelectAll, filteredMenuItems, selectedCheckboxItems],\n );\n\n const handleSelect = useCallback(\n (item: MenuItemProps) => {\n // If the item is a checkbox, update the selected checkbox values\n if (item.type === 'checkbox') {\n // Get the new list of selected checkbox items\n const allSelectedItems = isChecked(item.value)\n ? selectedCheckboxItems.filter((cItem) => cItem.value !== item.value)\n : [...selectedCheckboxItems, item];\n\n // If the item has it's own onSelect, call it with just the item value\n if (item.onSelect) {\n item.onSelect(item.value);\n return;\n }\n\n // Otherwise call the onSelect callback with the updated values\n onListSelect?.({ item, allSelectedItems });\n return;\n }\n\n // Otherwise this is a default item, so first check if the item has it's own onSelect callback\n if (item.onSelect) {\n item.onSelect(item.value);\n return;\n }\n\n // Otherwise call the onSelect callback with just the item itself\n onListSelect?.({ item, allSelectedItems: [item] });\n },\n [onListSelect, isChecked, selectedCheckboxItems],\n );\n\n // Search\n const filterOptions = useCallback((searchInput: string, itemsToFilter: MenuItemProps[]) => {\n if (searchInput === '' || !searchInput) {\n return itemsToFilter;\n }\n\n return itemsToFilter.filter((item): boolean => {\n const labelText = typeof item.label === 'string' ? item.label : item.valueText;\n\n return !!labelText?.toLowerCase().includes(searchInput.toLowerCase());\n });\n }, []);\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchInput = e.target.value;\n setSearchText(searchInput);\n\n if (onSearch) {\n onSearch(e);\n }\n },\n [onSearch],\n );\n\n const clearSearch = useCallback(() => {\n setSearchText('');\n\n if (onSearch) {\n onSearch({\n target: { value: '' },\n } as React.ChangeEvent<HTMLInputElement>);\n }\n }, [onSearch]);\n\n // Cleanup\n const handleOpenChange = useCallback(\n (open: boolean) => {\n setIsOpen(open); // Track open state\n if (!open) {\n setSearchText('');\n setFilteredMenuItems(menuItems);\n }\n\n if (onOpenChange) {\n onOpenChange({ open, allSelectedItems: selectedCheckboxItems });\n }\n },\n [menuItems, onOpenChange, selectedCheckboxItems],\n );\n\n useEffect(() => {\n if (onSearch) {\n setFilteredMenuItems(menuItems);\n } else {\n setFilteredMenuItems(filterOptions(searchText, menuItems));\n }\n }, [searchText, onSearch, filterOptions, menuItems]);\n\n return (\n <CMenu.Root\n lazyMount={lazyMount}\n unmountOnExit={lazyMount}\n onOpenChange={(details) => {\n handleOpenChange(details.open);\n }}\n {...rest}\n >\n {!submenuTrigger ? (\n <CMenu.Trigger asChild className=\"Menu__Trigger\" data-testid={`${dataTestId}-trigger`}>\n {buttonProps?.showTooltip ? (\n <MenuButtonTooltip isMenuOpen={isOpen} {...buttonProps} />\n ) : (\n <MenuButton {...buttonProps} />\n )}\n </CMenu.Trigger>\n ) : (\n submenuTrigger\n )}\n <Portal disabled={!portalled} container={contentRef || undefined}>\n <CMenu.Positioner className=\"Menu\" data-testid={dataTestId} {...positionerProps}>\n <CMenu.Content\n className=\"Menu__Content\"\n data-testid={`${dataTestId}-content`}\n maxH={maxH}\n minW={minW}\n {...restListProps}\n {...(searchable && { pt: '0' })}\n onClick={(e) => {\n e.stopPropagation();\n restListProps?.onClick?.(e);\n }}\n >\n {searchable && (\n <Box\n className=\"Menu__SearchBarContainer\"\n data-testid={`${dataTestId}-search-bar-container`}\n px={3}\n py={2}\n position=\"sticky\"\n top={0}\n bg=\"background\"\n zIndex=\"docked\"\n >\n <TextInput\n className=\"Menu__SearchBar\"\n data-testid={`${dataTestId}-search-bar`}\n placeholder={searchPlaceholder}\n onChange={handleSearch}\n size=\"sm\"\n value={searchText}\n clearable\n onClear={clearSearch}\n // Necessary to prevent the Menu from intercepting the Space key press and opening the menu when the search input is focused\n onKeyDown={(e) => {\n if (e.code === 'Space') {\n e.stopPropagation();\n }\n }}\n />\n </Box>\n )}\n {canSelectAll && (\n <Box\n className=\"Menu__CheckboxGroupHeader\"\n data-testid={`${dataTestId}-checkbox-group-header`}\n px={3}\n mt={searchable ? 1 : 2}\n >\n {canSelectAll && !!checkboxItems.length && (\n <MenuToggleButtons\n onToggle={handleToggleSelectAll}\n hasSelectedItems={!!selectedCheckboxItems.length}\n />\n )}\n </Box>\n )}\n {loading && (\n <Flex justifyContent=\"center\" py={5}>\n <Spinner fullScreen />\n </Flex>\n )}\n <Box className=\"Menu__List\" data-testid={`${dataTestId}-list`}>\n {groups.length ? (\n <>\n {groups.map(([groupLabel, types]) => {\n const isDefaultGroup = groupLabel === 'default';\n const itemTypes = Object.keys(types);\n const MenuGroupContainer = !isDefaultGroup ? CMenu.ItemGroup : React.Fragment;\n const groupValues = types['checkbox']?.map((item) => item.value);\n const hasSelectedItems = groupValues?.some((value) =>\n selectedCheckboxItems.some((item) => item.value === value && item.checked),\n );\n return (\n <MenuGroupContainer key={groupLabel}>\n {!isDefaultGroup && (\n <CMenu.ItemGroupLabel>\n <Flex alignItems=\"center\" justifyContent=\"space-between\">\n {groupLabel}\n {canSelectGroups && itemTypes.includes('checkbox') && (\n <MenuToggleButtons\n groupName={groupLabel}\n onToggle={handleToggleSelectAll}\n hasSelectedItems={hasSelectedItems}\n />\n )}\n </Flex>\n </CMenu.ItemGroupLabel>\n )}\n {Object.entries(types).map(([type, items]) =>\n items.map((item, index) => {\n const { groupLabel, ...rest } = item;\n return (\n <MenuItem\n key={`menu-item-${groupLabel}-${type}-${index}`}\n shouldTruncateText={shouldTruncateText}\n {...(item.type === 'checkbox' && {\n checked: isChecked(item.value),\n })}\n onSelect={() => handleSelect(item)}\n {...(item.type === 'submenu' && {\n positionerProps,\n })}\n {...rest}\n data-testid={`${dataTestId}-item-${item.label}`}\n />\n );\n }),\n )}\n </MenuGroupContainer>\n );\n })}\n </>\n ) : (\n <>\n <Box p={3}>\n {typeof emptyState === 'string' ? (\n <Box textAlign=\"center\">\n <Text size=\"sm\" variant=\"subtle\" data-testid={`${dataTestId}-empty-state`}>\n {emptyState}\n </Text>\n </Box>\n ) : (\n emptyState\n )}\n </Box>\n </>\n )}\n </Box>\n </CMenu.Content>\n </CMenu.Positioner>\n </Portal>\n </CMenu.Root>\n );\n};\n"],"names":["MenuProvider","useMenuContext","createContext","MenuArrow","forwardRef","props","ref","menu","mergedProps","mergeProps","jsx","ark","MenuArrowTip","MenuItemProvider","useMenuItemContext","MenuItemPropsProvider","useMenuItemPropsContext","MenuCheckboxItem","partialOptionItemProps","localProps","createSplitProps","optionItemProps","optionItemState","MenuContent","presence","usePresenceContext","composeRefs","MenuContextTrigger","MenuIndicator","MenuItem","itemProps","itemState","useEffect","MenuItemGroupProvider","useMenuItemGroupContext","MenuItemGroup","optionalItemGroupProps","itemGroupProps","useId","MenuItemGroupLabel","itemGroup","MenuItemIndicator","MenuItemText","MenuPositioner","MenuRadioItem","partialItemProps","MenuRadioItemGroup","useEffectOnce","cb","savedCallback","useRef","effectGuard","useMenu","id","getRootNode","useEnvironmentContext","dir","useLocaleContext","machineProps","service","useMachine","menu.machine","menu.connect","normalizeProps","MenuMachineProvider","useMenuMachineContext","MenuTriggerItemProvider","useMenuTriggerItemContext","MenuRoot","presenceProps","menuProps","splitPresenceProps","useMenuProps","parentApi","parentMachine","api","usePresence","triggerItemContext","useCallback","PresenceProvider","MenuRootProvider","children","MenuSeparator","MenuTrigger","MenuTriggerItem","getTriggerItemProps","withRootProvider","withContext","createSlotRecipeContext","Menu.RootProvider","Menu.Root","Menu.Trigger","Menu.ContextTrigger","Menu.Positioner","Menu.Separator","Menu.Content","Menu.ArrowTip","Menu.Arrow","Menu.Indicator","Menu.ItemGroup","Menu.ItemGroupLabel","Menu.Item","Menu.TriggerItem","Menu.ItemText","Menu.ItemIndicator","CheckIcon","Menu.CheckboxItem","Menu.RadioItemGroup","Menu.RadioItem","MenuButton","hideCaret","size","text","textProps","variant","onClick","dataTestId","rest","jsxs","Button","e","Text","Flex","Icon","MenuButtonTooltip","tooltipProps","isMenuOpen","isTooltipOpen","setIsTooltipOpen","useState","onMouseEnter","onMouseLeave","Tooltip","Box","label","leftElement","onSelect","shouldTruncateText","type","isSubmenuOpen","setIsSubmenuOpen","handleItemSelect","valueText","listProps","positionerProps","portalled","open","lazyMount","unmountOnExit","Menu","CMenu.TriggerItem","MenuItemLabel","checked","value","disabled","tooltipLabel","checkboxRest","CMenu.Item","Checkbox","selected","defaultRest","Fragment","content","MenuToggleButtons","groupName","hasSelectedItems","onToggle","isGrouped","ClearAllButton","SelectAllButton","buttonProps","submenuTrigger","onOpenChange","contentRef","usePortalContentRef","canSelectAll","canSelectGroups","emptyState","groupSortOrder","loading","maxH","menuItems","minW","onSearch","onListSelect","onSelectAll","searchable","searchPlaceholder","restListProps","isOpen","setIsOpen","searchText","setSearchText","filteredMenuItems","setFilteredMenuItems","groupedItems","useMemo","groups","item","group","entries","groupLabelA","groupLabelB","indexA","indexB","checkboxItems","isChecked","selectedCheckboxItems","handleToggleSelectAll","clear","newSelectedItems","filteredCheckboxItems","cItem","handleSelect","allSelectedItems","filterOptions","searchInput","itemsToFilter","handleSearch","clearSearch","handleOpenChange","CMenu.Root","details","CMenu.Trigger","Portal","CMenu.Positioner","CMenu.Content","TextInput","Spinner","groupLabel","types","isDefaultGroup","itemTypes","MenuGroupContainer","React","CMenu.ItemGroup","CMenu.ItemGroupLabel","items","index"],"mappings":"kxBAGM,CAACA,GAAcC,CAAc,EAAIC,gBAAc,CACnD,KAAM,cACN,SAAU,iBACV,aAAc,mBACd,OAAQ,EACV,CAAC,ECDKC,GAAYC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC3C,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,cAAa,EAAIF,CAAK,EAC1D,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDH,GAAU,YAAc,YCLxB,MAAMS,GAAeR,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC9C,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,iBAAgB,EAAIF,CAAK,EAC7D,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDM,GAAa,YAAc,eCT3B,KAAM,CAACC,EAAkBC,EAAkB,EAAIZ,gBAAc,CAC3D,KAAM,kBACN,SAAU,qBACV,aAAc,sBAChB,CAAC,ECJK,CAACa,EAAuBC,EAAuB,EAAId,gBAAc,CACrE,KAAM,uBACN,SAAU,0BACV,aAAc,2BAChB,CAAC,ECGKe,GAAmBb,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAClD,KAAM,CAACY,EAAwBC,CAAU,EAAIC,EAAgB,iBAAA,EAAGf,EAAO,CACrE,UACA,gBACA,WACA,kBACA,QACA,WACJ,CAAG,EACKgB,EAAkB,CACtB,GAAGH,EACH,KAAM,UACP,EACKX,EAAON,EAAgB,EACvBO,EAAcC,EAAAA,WAAWF,EAAK,mBAAmBc,CAAe,EAAGF,CAAU,EAC7EG,EAAkBf,EAAK,mBAAmBc,CAAe,EAC/D,OAAuBX,EAAG,kBAAA,IAACK,EAAuB,CAAE,MAAOM,EAAiB,SAA0BX,EAAAA,kBAAAA,IAAIG,EAAkB,CAAE,MAAOS,EAAiB,SAA0BZ,EAAAA,kBAAAA,IAAIC,EAAG,IAAC,IAAK,CAAE,GAAGH,EAAa,IAAAF,CAAG,CAAE,CAAG,CAAA,EAAG,CAC5N,CAAC,EACDW,GAAiB,YAAc,mBCnB/B,MAAMM,GAAcnB,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC7C,MAAMC,EAAON,EAAgB,EACvBuB,EAAWC,EAAAA,mBAAoB,EAC/BjB,EAAcC,EAAU,WAACF,EAAK,gBAAiB,EAAEiB,EAAS,iBAAkB,EAAEnB,CAAK,EACzF,OAAImB,EAAS,UACJ,KAEcd,wBAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAKkB,EAAAA,YAAYF,EAAS,IAAKlB,CAAG,CAAC,CAAE,CAC7F,CAAC,EACDiB,GAAY,YAAc,cCX1B,MAAMI,GAAqBvB,EAAU,WAAC,CAACC,EAAOC,IAAQ,CACpD,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,uBAAsB,EAAIF,CAAK,EACnE,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,OAAQ,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAChE,CAAC,EACDqB,GAAmB,YAAc,qBCLjC,MAAMC,GAAgBxB,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC/C,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,kBAAiB,EAAIF,CAAK,EAC9D,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDsB,GAAc,YAAc,gBCF5B,MAAMC,GAAWzB,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC1C,KAAM,CAACwB,EAAWX,CAAU,EAAIC,EAAgB,iBAAA,EAAGf,EAAO,CACxD,gBACA,WACA,QACA,YACA,UACJ,CAAG,EACKE,EAAON,EAAgB,EACvBO,EAAcC,EAAAA,WAAWF,EAAK,aAAauB,CAAS,EAAGX,CAAU,EACjEY,EAAYxB,EAAK,aAAauB,CAAS,EAC7CE,OAAAA,EAAAA,UAAU,IACDzB,EAAK,gBAAgB,CAAE,GAAIwB,EAAU,GAAI,SAAUD,EAAU,SAAU,EAC7E,CAACC,EAAU,GAAID,EAAU,QAAQ,CAAC,EACdpB,EAAG,kBAAA,IAACK,EAAuB,CAAE,MAAOe,EAAW,SAA0BpB,EAAAA,kBAAAA,IAAIG,EAAkB,CAAE,MAAOkB,EAAW,SAA0BrB,EAAAA,kBAAAA,IAAIC,EAAG,IAAC,IAAK,CAAE,GAAGH,EAAa,IAAAF,CAAG,CAAE,CAAG,CAAA,EAAG,CAChN,CAAC,EACDuB,GAAS,YAAc,WCvBvB,KAAM,CAACI,GAAuBC,EAAuB,EAAIhC,gBAAc,CACrE,KAAM,uBACN,SAAU,0BACV,aAAc,2BAChB,CAAC,ECEKiC,GAAgB/B,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC/C,KAAM,CAAC8B,EAAwBjB,CAAU,EAAIC,EAAgB,iBAAA,EAAGf,EAAO,CAAC,IAAI,CAAC,EACvEE,EAAON,EAAgB,EAEvBoC,EAAiB,CAAE,GADdC,EAAAA,MAAO,EACW,GAAGF,CAAwB,EAClD5B,EAAcC,EAAAA,WAAWF,EAAK,kBAAkB8B,CAAc,EAAGlB,CAAU,EACjF,OAAuBT,EAAG,kBAAA,IAACuB,GAAuB,CAAE,MAAOI,EAAgB,SAA0B3B,EAAAA,kBAAAA,IAAIC,EAAG,IAAC,IAAK,CAAE,GAAGH,EAAa,IAAAF,CAAG,CAAE,CAAC,CAAE,CAC9I,CAAC,EACD6B,GAAc,YAAc,gBCT5B,MAAMI,GAAqBnC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CACpD,MAAMC,EAAON,EAAgB,EACvBuC,EAAYN,GAAyB,EACrC1B,EAAcC,aAAWF,EAAK,uBAAuB,CAAE,QAASiC,EAAU,GAAI,EAAGnC,CAAK,EAC5F,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDiC,GAAmB,YAAc,qBCNjC,MAAME,GAAoBrC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CACnD,MAAMC,EAAON,EAAgB,EACvB6B,EAAYd,GAAyB,EACrCR,EAAcC,EAAAA,WAAWF,EAAK,sBAAsBuB,CAAS,EAAGzB,CAAK,EAC3E,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDmC,GAAkB,YAAc,oBCNhC,MAAMC,GAAetC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC9C,MAAMC,EAAON,EAAgB,EACvB6B,EAAYd,GAAyB,EACrCR,EAAcC,EAAAA,WAAWF,EAAK,iBAAiBuB,CAAS,EAAGzB,CAAK,EACtE,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDoC,GAAa,YAAc,eCN3B,MAAMC,GAAiBvC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAChD,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,mBAAkB,EAAIF,CAAK,EAE/D,OADiBoB,EAAAA,mBAAoB,EACxB,UACJ,KAEcf,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDqC,GAAe,YAAc,iBCN7B,MAAMC,GAAgBxC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC/C,KAAM,CAACuC,EAAkB1B,CAAU,EAAIC,EAAgB,iBAAA,EAAGf,EAAO,CAC/D,gBACA,WACA,QACA,WACJ,CAAG,EACKE,EAAON,EAAgB,EACvBuC,EAAYN,GAAyB,EACrCb,EAAkB,CACtB,GAAGwB,EACH,QAASL,EAAU,QAAUK,EAAiB,MAC9C,KAAM,QACN,gBAAiB,IAAML,EAAU,gBAAgB,CAAE,MAAOK,EAAiB,KAAO,CAAA,CACnF,EACKrC,EAAcC,EAAAA,WAAWF,EAAK,mBAAmBc,CAAe,EAAGF,CAAU,EAC7EG,EAAkBf,EAAK,mBAAmBc,CAAe,EAC/D,OAAuBX,EAAG,kBAAA,IAACK,EAAuB,CAAE,MAAOM,EAAiB,SAA0BX,EAAAA,kBAAAA,IAAIG,EAAkB,CAAE,MAAOS,EAAiB,SAA0BZ,EAAAA,kBAAAA,IAAIC,EAAG,IAAC,IAAK,CAAE,GAAGH,EAAa,IAAAF,CAAG,CAAE,CAAG,CAAA,EAAG,CAC5N,CAAC,EACDsC,GAAc,YAAc,gBCrB5B,MAAME,GAAqB1C,EAAU,WAAC,CAACC,EAAOC,IAAQ,CACpD,KAAM,CAAC8B,EAAwBjB,CAAU,EAAIC,EAAgB,iBAAA,EAAGf,EAAO,CACrE,KACA,gBACA,OACJ,CAAG,EACKE,EAAON,EAAgB,EAEvBoC,EAAiB,CAAE,GADdC,EAAAA,MAAO,EACW,GAAGF,CAAwB,EAClD5B,EAAcC,aAAWF,EAAK,kBAAkB,CAAE,GAAI8B,EAAe,GAAI,EAAGlB,CAAU,EAC5F,OAAuBT,EAAG,kBAAA,IAACuB,GAAuB,CAAE,MAAOI,EAAgB,SAA0B3B,EAAAA,kBAAAA,IAAIC,EAAG,IAAC,IAAK,CAAE,GAAGH,EAAa,IAAAF,CAAG,CAAE,CAAC,CAAE,CAC9I,CAAC,EACDwC,GAAmB,YAAc,qBClBjC,MAAMC,GAAiBC,GAAO,CAC5B,MAAMC,EAAgBC,EAAM,OAACF,CAAE,EACzBG,EAAcD,EAAM,OAAC,EAAK,EAChClB,EAAAA,UAAU,IAAM,CACdiB,EAAc,QAAUD,CAC5B,CAAG,EACDhB,EAAAA,UAAU,IAAM,CACVmB,EAAY,UAAY,KAC1BA,EAAY,QAAU,GACtBF,EAAc,QAAS,EAE1B,EAAE,EAAE,CACP,ECRMG,GAAW/C,GAAU,CACzB,MAAMgD,EAAKf,EAAAA,MAAO,EACZ,CAAE,YAAAgB,CAAa,EAAGC,wBAAuB,EACzC,CAAE,IAAAC,CAAK,EAAGC,mBAAkB,EAC5BC,EAAe,CACnB,GAAAL,EACA,IAAAG,EACA,YAAAF,EACA,GAAGjD,CACJ,EACKsD,EAAUC,EAAAA,WAAWC,GAAY,QAAEH,CAAY,EAErD,MAAO,CAAE,IADGI,GAAAA,QAAaH,EAASI,gBAAc,EAClC,QAAAJ,CAAS,CACzB,ECjBM,CAACK,GAAqBC,EAAqB,EAAI/D,gBAAc,CACjE,KAAM,qBACN,SAAU,wBACV,aAAc,0BACd,OAAQ,EACV,CAAC,ECLK,CAACgE,GAAyBC,EAAyB,EAAIjE,gBAAc,CACzE,KAAM,qBACN,SAAU,wBACV,aAAc,0BACd,OAAQ,EACV,CAAC,ECMKkE,GAAY/D,GAAU,CAC1B,KAAM,CAACgE,EAAeC,CAAS,EAAIC,EAAAA,mBAAmBlE,CAAK,EACrD,CAACmE,EAAcrD,CAAU,EAAIC,EAAgB,iBAAA,EAAGkD,EAAW,CAC/D,cACA,aACA,gBACA,YACA,0BACA,cACA,mBACA,KACA,MACA,YACA,WACA,kBACA,iBACA,oBACA,oBACA,eACA,uBACA,WACA,OACA,cACA,WACJ,CAAG,EACKG,EAAYxE,EAAgB,EAC5ByE,EAAgBT,GAAuB,EACvC,CAAE,IAAAU,EAAK,QAAAhB,GAAYP,GAAQoB,CAAY,EACvChD,EAAWoD,EAAW,YAACnE,aAAW,CAAE,QAASkE,EAAI,MAAQN,CAAa,CAAC,EAC7EtB,GAAc,IAAM,CACb2B,GACAD,IACLA,EAAU,SAASd,CAAO,EAC1BgB,EAAI,UAAUD,CAAa,EAC/B,CAAG,EACD,MAAMG,EAAqBC,cAAY,IAAML,GAAW,oBAAoBE,CAAG,EAAG,CAACA,EAAKF,CAAS,CAAC,EAClG,OAAuB/D,EAAG,kBAAA,IAACwD,GAAyB,CAAE,MAAOW,EAAoB,SAA0BnE,wBAAIsD,GAAqB,CAAE,MAAOL,EAAS,SAA0BjD,EAAAA,kBAAAA,IAAIV,GAAc,CAAE,MAAO2E,EAAK,SAA0BjE,EAAG,kBAAA,IAACqE,EAAgB,iBAAE,CAAE,MAAOvD,EAAU,GAAGL,CAAY,CAAA,EAAG,CAAC,CAAE,CAAC,CAAE,CAC7S,ECvCM6D,GAAoB3E,GAAU,CAClC,MAAMoE,EAAYxE,EAAgB,EAC5ByE,EAAgBT,GAAuB,EACvC,CAACI,EAAe,CAAE,MAAO9D,EAAM,SAAA0E,EAAU,EAAIV,EAAkB,mBAAClE,CAAK,EACrE,CAAE,IAAAsE,EAAK,QAAAhB,CAAO,EAAKpD,EACnBiB,EAAWoD,EAAW,YAACnE,aAAW,CAAE,QAASkE,EAAI,MAAQN,CAAa,CAAC,EAC7EtB,GAAc,IAAM,CACb2B,GACAD,IACLA,EAAU,SAASd,CAAO,EAC1BgB,EAAI,UAAUD,CAAa,EAC/B,CAAG,EACD,MAAMG,EAAqBC,cAAY,IAAML,GAAW,oBAAoBE,CAAG,EAAG,CAACA,EAAKF,CAAS,CAAC,EAClG,OAAuB/D,wBAAIwD,GAAyB,CAAE,MAAOW,EAAoB,SAA0BnE,EAAG,kBAAA,IAACsD,GAAqB,CAAE,MAAOL,EAAS,SAA0BjD,EAAG,kBAAA,IAACV,GAAc,CAAE,MAAO2E,EAAK,SAA0BjE,EAAAA,kBAAAA,IAAIqE,EAAAA,iBAAkB,CAAE,MAAOvD,EAAU,SAAAyD,CAAU,CAAA,EAAG,CAAC,CAAE,CAAC,CAAE,CACxS,ECnBMC,GAAgB9E,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC/C,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,kBAAiB,EAAIF,CAAK,EAC9D,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,GAAI,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC5D,CAAC,EACD4E,GAAc,YAAc,gBCJ5B,MAAMC,GAAc/E,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC7C,MAAMC,EAAON,EAAgB,EACvBuB,EAAWC,EAAAA,mBAAoB,EAC/BjB,EAAcC,EAAU,WAC5B,CACE,GAAGF,EAAK,gBAAiB,EACzB,gBAAiBiB,EAAS,UAAY,OAASjB,EAAK,gBAAe,EAAG,eAAe,CACtF,EACDF,CACD,EACD,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,OAAQ,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAChE,CAAC,EACD6E,GAAY,YAAc,cCb1B,MAAMC,GAAkBhF,EAAU,WAAC,CAACC,EAAOC,IAAQ,CACjD,MAAM+E,EAAsBlB,GAA2B,EACjD3D,EAAcC,EAAU,WAAC4E,IAAmB,GAAQ,CAAA,EAAIhF,CAAK,EACnE,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACD8E,GAAgB,YAAc,kBCL9B,KAAM,CACJ,iBAAAE,GACA,YAAAC,CAGF,EAAIC,GAAuB,wBAAC,CAAE,IAAK,MAAM,CAAE,EAClBF,GACvBG,EACF,EACA,MAAMrB,GAAWkB,GAAiBI,GAAW,CAC3C,aAAc,CAAE,UAAW,GAAM,cAAe,EAAI,CACtD,CAAC,EAEKP,GAAcI,EAClBI,GACA,UACA,CAAE,eAAgB,EAAI,CACxB,EAC2BJ,EAAYK,GAAqB,iBAAkB,CAAE,eAAgB,EAAM,CAAA,EACtG,MAAMjD,GAAiB4C,EACrBM,GACA,aACA,CAAE,eAAgB,EAAI,CACxB,EACsBN,EACpBO,GACA,YACA,CAAE,eAAgB,EAAI,CACxB,EACA,MAAMvE,GAAcgE,EAClBQ,GACA,UACA,CAAE,eAAgB,EAAI,CACxB,EACMnF,GAAe2E,EACnBS,GACA,WACA,CAAE,eAAgB,EAAI,CACxB,EACkBT,EAChBU,GACA,QACA,CAAE,eAAgB,GAAM,aAAc,CAAE,SAA0BvF,wBAAIE,GAAc,CAAA,CAAE,CAAG,CAAA,CAC3F,EACsB2E,EACpBW,GACA,YACA,CAAE,eAAgB,EAAI,CACxB,EACA,MAAM/D,GAAgBoD,EACpBY,GACA,YACA,CAAE,eAAgB,EAAI,CACxB,EACM5D,GAAqBgD,EAAYa,GAAqB,iBAAkB,CAAE,eAAgB,GAAM,EAChGvE,GAAW0D,EACfc,GACA,OACA,CAAE,eAAgB,EAAI,CACxB,EACMjB,GAAkBG,EAAYe,GAAkB,OAAQ,CAAE,eAAgB,GAAM,EACjEf,EACnBgB,GACA,WACA,CAAE,eAAgB,EAAI,CACxB,EACwBhB,EACtB,MACA,aACF,EAC0BA,EAAYiB,GAAoB,gBAAiB,CACzE,eAAgB,GAChB,aAAc,CAAE,SAA0B9F,EAAG,kBAAA,IAAC+F,GAAS,UAAE,CAAE,QAAS,IAAK,CAAC,CAC5E,CAAC,EACwBlB,EAAYmB,GAAmB,OAAQ,CAAE,eAAgB,EAAM,CAAA,EAC7DnB,EAAYoB,GAAqB,YAAa,CAAE,eAAgB,EAAM,CAAA,EAC3EpB,EACpBqB,GACA,OACA,CAAE,eAAgB,EAAI,CACxB,EC9DO,MAAMC,GAAa,CAAC,CACzB,UAAAC,EAAY,GACZ,KAAAC,EAAO,KACP,KAAAC,EACA,UAAAC,EACA,QAAAC,EACA,QAAAC,EACA,CAAC,eAAgBC,EAAa,qBAC9B,GAAGC,CACL,IAEIC,EAAA,kBAAA,KAACC,EAAA,OAAA,CACC,UAAU,eACV,cAAaH,EACb,KAAAL,EACA,QAAAG,EACC,GAAGG,EACH,GAAI,CAACL,GAAQF,GAAa,CAAE,cAAe,EAAG,aAAc,CAAE,EAC/D,QAAUU,GAAM,CACdA,EAAE,gBAAgB,EAClBL,IAAUK,CAAC,CACb,EAEC,SAAA,CACCR,GAAAtG,EAAA,kBAAA,IAAC+G,EAAA,YAAA,CACC,UAAU,mBACV,cAAa,GAAGL,CAAU,QAC1B,WAAW,WACX,KAAAL,EACA,MAAOG,EAAU,UAAYD,GAAW,OAAS,gBACjD,UAAS,GACR,GAAGA,EAEH,SAAAD,CAAA,CACH,EAED,CAACF,GACApG,wBAACgH,EAAAA,MAAK,UAAU,oBAAoB,cAAa,GAAGN,CAAU,SAC5D,SAAC1G,EAAAA,kBAAAA,IAAAiH,GAAA,KAAA,CAAK,KAAK,cAAc,KAAMZ,IAAS,KAAO,KAAO,KAAM,CAC9D,CAAA,CAAA,CAAA,CAEJ,EAISa,GAAoB,CAAC,CAAE,aAAAC,EAAc,WAAAC,EAAY,GAAGT,KAA+C,CAE9G,KAAM,CAACU,EAAeC,CAAgB,EAAIC,EAAAA,SAAS,EAAK,EAElDC,EAAepD,EAAAA,YAAY,IAAY,CACtCgD,GACHE,EAAiB,EAAI,CACvB,EACC,CAACF,CAAU,CAAC,EAETK,EAAerD,EAAAA,YAAY,IAAY,CACtCgD,GACHE,EAAiB,EAAK,CACxB,EACC,CAACF,CAAU,CAAC,EAGf9F,OAAAA,EAAAA,UAAU,IAAM,CACV8F,GACFE,EAAiB,EAAK,CACxB,EACC,CAACF,CAAU,CAAC,EAGbpH,EAAA,kBAAA,IAAC0H,GAAQ,QAAA,CAAA,MAAOf,EAAK,MAAQ,GAAI,KAAMU,GAAiB,CAACD,EAAa,GAAGD,EACvE,SAAAnH,EAAA,kBAAA,IAAC2H,EAAA,IAAA,CACC,QAAUb,GAAM,CACdA,EAAE,eAAe,EACjBA,EAAE,gBAAgB,EAClBQ,EAAiB,EAAK,CACxB,EACA,aAAAE,EACA,aAAAC,EAEA,SAAAzH,EAAA,kBAAA,IAACmG,GAAY,CAAA,GAAGQ,CAAM,CAAA,CAAA,CAAA,EAE1B,CAEJ,ECvCaxF,GAAW,CAAC,CACvB,MAAAyG,EACA,YAAAC,EACA,SAAAC,EACA,mBAAAC,EACA,KAAAC,EAAO,UACP,QAAAxB,EACA,CAAC,eAAgBE,EAAa,mBAC9B,GAAGC,CACL,IAAwC,CACtC,KAAM,CAACsB,EAAeC,CAAgB,EAAIX,EAAAA,SAAS,EAAK,EAElDY,EAAmB/D,EAAAA,YAAY,IAAM,CACrC0D,GACFA,EAASnB,EAAK,KAAK,CAEpB,EAAA,CAACmB,EAAUnB,EAAK,KAAK,CAAC,EAEzB,GAAIqB,IAAS,UAAW,CAChB,KAAA,CACJ,UAAAI,EACA,UAAAC,EACA,gBAAAC,EACA,UAAAC,EAAY,GACZ,KAAAC,EACA,UAAAC,EAAY,GACZ,cAAAC,EAAgB,EAAA,EACd/B,EAGF,OAAA3G,EAAA,kBAAA,IAAC2I,GAAA,CACC,UAAAF,EACA,cAAAC,EACA,eACE9B,EAAA,kBAAA,KAACgC,GAAA,CACC,UAAU,sBACV,cAAa,GAAGlC,CAAU,WAC1B,eAAe,gBACf,iBAAgB0B,EAChB,SAAS,WACT,QAAS,IAAY,CAEfI,IAAS,QAAaV,EACxBA,EAASnB,EAAK,KAAK,EAGnBuB,EAAiB,CAACD,CAAa,CAEnC,EAEA,SAAA,CAAAjI,EAAA,kBAAA,IAAC6I,EAAA,CACC,MAAAjB,EACA,YAAAC,EACA,mBAAAE,EACA,QAAAvB,CAAA,CACF,EACCxG,EAAA,kBAAA,IAAAiH,GAAA,KAAA,CAAK,KAAK,eAAe,KAAK,IAAK,CAAA,CAAA,CAAA,CACtC,EAEF,UAAAsB,EACA,KAAMC,IAAS,OAAYA,EAAOP,EAClC,UAAAI,EACA,gBAAAC,CAAA,CACF,CAAA,CAIJ,GAAIN,IAAS,WAAY,CACvB,KAAM,CAAE,QAAAc,EAAS,MAAAC,EAAO,SAAAC,EAAU,aAAAC,EAAc,GAAGC,GAAiBvC,EAElE,OAAAC,EAAA,kBAAA,KAACuC,GAAA,CACC,UAAU,uBACV,cAAa,GAAGzC,CAAU,YAC1B,MAAAqC,EACA,cAAe,GACf,SAAUC,EAAW,OAAYb,EACjC,IAAK,EACL,SAAAa,EACC,GAAGE,EAEJ,SAAA,CAAClJ,EAAAA,kBAAAA,IAAAoJ,GAAA,gBAAA,CAAS,QAAS,CAAC,CAACN,EAAS,SAAAE,EAAoB,KAAK,KAAK,UAAW,EAAO,CAAA,EAC9EhJ,EAAA,kBAAA,IAAC6I,EAAA,CACC,MAAAjB,EACA,YAAAC,EACA,mBAAAE,EACA,QAAAvB,EACA,aAAAyC,CAAA,CAAA,CACF,CAAA,CACF,CAAA,CAIJ,GAAIjB,IAAS,UAAW,CAChB,KAAA,CAAE,SAAAqB,EAAW,GAAO,SAAAL,EAAU,MAAAD,EAAO,aAAAE,EAAc,GAAGK,GAAgB3C,EAE1E,OAAA3G,EAAA,kBAAA,IAACmJ,GAAA,CACC,UAAU,sBACV,cAAa,GAAGzC,CAAU,WAC1B,MAAAqC,EACA,SAAUC,EAAW,OAAYb,EACjC,SAAAa,EACC,GAAIK,GAAY,CAAE,QAAS,iCAAkC,EAC7D,GAAGC,EAEJ,SAAAtJ,EAAA,kBAAA,IAAC6I,EAAA,CACC,MAAAjB,EACA,YAAAC,EACA,mBAAAE,EACA,QAASsB,EAAW,OAAS7C,EAC7B,aAAAyC,CAAA,CAAA,CACF,CACF,CAAA,CAIJ,OAASjJ,EAAA,kBAAA,IAAAuJ,EAAA,kBAAA,SAAA,EAAA,CACX,EAEMV,EAAgB,CAAC,CACrB,MAAAjB,EACA,YAAAC,EACA,mBAAAE,EACA,QAAAvB,EACA,aAAAyC,CACF,IAMyB,CACjB,MAAAO,2BACHxC,EAAK,KAAA,CAAA,UAAU,kBAAkB,WAAW,SAAS,IAAK,EACxD,SAAA,CAAAa,EACA,OAAOD,GAAU,SACf5H,wBAAA+G,EAAAA,YAAA,CAAK,KAAK,KAAK,UAAWgB,EAAoB,QAAAvB,EAC5C,SAAAoB,CACH,CAAA,EAEAA,CAAA,EAEJ,EAEF,OAAOqB,EAAgBjJ,wBAAA0H,GAAAA,QAAA,CAAQ,MAAOuB,EAAe,UAAQ,CAAA,EAAaO,CAC5E,ECpMaC,GAAoB,CAAC,CAChC,UAAAC,EACA,iBAAAC,EAAmB,GACnB,SAAAC,EACA,CAAC,eAAgBlD,EAAa,4BAChC,IAAiD,CACzC,MAAAmD,EAAY,CAAC,CAACH,EACpB,OACG1J,EAAA,kBAAA,IAAA2H,EAAA,IAAA,CAAI,UAAU,sBAAsB,cAAajB,EAAa,GAAImD,GAAa,CAAE,UAAW,QAAS,EAAG,OACtG,SACCA,EAAA7J,EAAA,kBAAA,IAAAuJ,EAAA,kBAAA,SAAA,CACG,SACCI,EAAA3J,wBAAC8J,GAAe,CAAA,iBAAAH,EAAoC,UAAAD,EAAsB,SAAAE,EAAoB,EAE7F5J,EAAA,kBAAA,IAAA+J,GAAA,CAAgB,UAAAL,EAAsB,SAAAE,CAAoB,CAAA,CAE/D,CAAA,EAEChD,EAAA,kBAAA,KAAAI,EAAA,KAAA,CAAK,eAAe,gBACnB,SAAA,CAAChH,EAAAA,kBAAAA,IAAA+J,GAAA,CAAgB,UAAAL,EAAsB,SAAAE,CAAoB,CAAA,EAC1D5J,EAAAA,kBAAAA,IAAA8J,GAAA,CAAe,iBAAAH,EAAoC,UAAAD,EAAsB,SAAAE,CAAoB,CAAA,CAAA,CAAA,CAChG,CAEJ,CAAA,CAEJ,EAEMG,GAAkB,CAAC,CAAE,UAAAL,EAAW,SAAAE,KAEjC5J,EAAAA,kBAAAA,IAAA6G,EAAAA,OAAA,CAAO,QAAQ,QAAQ,KAAK,KAAK,QAAS,IAAY+C,EAAS,CAAE,UAAAF,EAAW,MAAO,EAAO,CAAA,EAAG,SAE9F,aAAA,EAIEI,GAAiB,CAAC,CAAE,iBAAAH,EAAkB,UAAAD,EAAW,SAAAE,KAEnD5J,EAAA,kBAAA,IAAC6G,EAAA,OAAA,CACC,QAAQ,eACR,SAAS,cACT,KAAK,KACL,SAAU,CAAC8C,EACX,QAAS,IAAYC,EAAS,CAAE,UAAAF,EAAW,MAAO,GAAM,EACzD,SAAA,WAAA,CAED,ECpBSf,GAAO,CAAC,CACnB,YAAAqB,EACA,UAAA3B,EACA,gBAAAC,EACA,UAAAC,EAAY,GACZ,eAAA0B,EACA,UAAAxB,EAAY,GACZ,aAAAyB,EACA,CAAC,eAAgBxD,EAAa,cAC9B,GAAGC,CACL,IAA4C,CACpC,KAAA,CAAE,WAAAwD,CAAW,EAAIC,uBAAoB,EACrC,CACJ,aAAAC,EACA,gBAAAC,EACA,WAAAC,EAAa,mBACb,eAAAC,EACA,QAAAC,EACA,KAAAC,EAAO,QACP,UAAAC,EAAY,CAAC,EACb,KAAAC,EAAO,QACP,SAAAC,EACA,SAAUC,EACV,YAAAC,EACA,WAAAC,EACA,kBAAAC,GAAoB,YACpB,mBAAAlD,GACA,GAAGmD,CACL,EAAI7C,GAAa,CAAC,EACZ,CAAC8C,GAAQC,EAAS,EAAI7D,EAAAA,SAAS,EAAK,EACpC,CAAC8D,EAAYC,CAAa,EAAI/D,EAAAA,SAAiB,EAAE,EACjD,CAACgE,EAAmBC,CAAoB,EAAIjE,EAAAA,SAA0BoD,CAAS,EAG/Ec,EAAeC,EAAAA,QAAQ,IAAM,CACjC,MAAMC,EAA0D,CAAC,EAE9C,OAAAJ,GAAA,QAASK,GAAS,CAC7B,MAAAC,EAAQD,EAAK,YAAc,UAE3B5D,EAAO4D,EAAK,OAAS,WAAa,WAAa,UAEhDD,EAAOE,CAAK,IACfF,EAAOE,CAAK,EAAI,CAAC,GAGdF,EAAOE,CAAK,EAAE7D,CAAI,IACrB2D,EAAOE,CAAK,EAAE7D,CAAI,EAAI,CAAC,GAGzB2D,EAAOE,CAAK,EAAE7D,CAAI,EAAE,KAAK4D,CAAI,CAAA,CAC9B,EAEMD,CAAA,EACN,CAACJ,CAAiB,CAAC,EAEhBI,GAASD,EAAAA,QAAQ,IAAM,CACrB,MAAAI,EAAU,OAAO,QAAQL,CAAY,EAE3C,MAAI,CAACjB,GAAkBA,EAAe,SAAW,EACxCsB,EAIFA,EAAQ,KAAK,CAAC,CAACC,CAAW,EAAG,CAACC,CAAW,IAAM,CAC9C,MAAAC,EAASzB,EAAe,QAAQuB,CAAW,EAC3CG,EAAS1B,EAAe,QAAQwB,CAAW,EAG7C,OAAAC,IAAW,IAAMC,IAAW,GACvBD,EAASC,EAIdD,IAAW,GACN,GAILC,IAAW,GACN,EAIF,CAAA,CACR,CAAA,EACA,CAACT,EAAcjB,CAAc,CAAC,EAG3B2B,EAAgBT,EAAA,QAAQ,IAAMf,GAAW,OAAQiB,GAASA,EAAK,OAAS,UAAU,GAAK,CAAA,EAAI,CAACjB,CAAS,CAAC,EAGtGyB,EAAYhI,EAAA,YACf2E,GACQoD,EAAc,KAAMP,GAASA,EAAK,QAAU7C,GAAS6C,EAAK,OAAO,EAE1E,CAACO,CAAa,CAChB,EAGME,EAAwBX,EAAAA,QAAQ,IAC7BS,EAAc,OAAQP,GAASA,EAAK,OAAO,EACjD,CAACO,CAAa,CAAC,EAEZG,GAAwBlI,EAAA,YAC5B,CAAC,CAAE,UAAAsF,EAAW,MAAA6C,KAAoD,CAC5D,IAAAC,EAEE,MAAAC,EAAwBlB,EAAkB,OAAQK,GAASA,EAAK,OAAS,YAAc,CAACA,EAAK,QAAQ,EAG3G,GAAIlC,EAAW,CAEb,MAAM+B,EAAegB,EAAsB,OAAQb,GAASA,EAAK,aAAelC,CAAS,EAGzF8C,EAAmBD,EACfF,EAAsB,OAAQK,GAAUA,EAAM,aAAehD,CAAS,EAEtE,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG2C,EAAuB,GAAGZ,CAAY,CAAC,CAAC,CAAA,MAG5De,EAAmBD,EACf,CAAC,EACDE,EAAsB,IAAKb,IAClB,CAAE,GAAGA,EAAM,QAAS,EAAK,EACjC,EAIOb,IAAA,CAAE,iBAAkByB,EAAkB,CACtD,EACA,CAACzB,EAAaQ,EAAmBc,CAAqB,CACxD,EAEMM,GAAevI,EAAA,YAClBwH,GAAwB,CAEnB,GAAAA,EAAK,OAAS,WAAY,CAE5B,MAAMgB,EAAmBR,EAAUR,EAAK,KAAK,EACzCS,EAAsB,OAAQK,GAAUA,EAAM,QAAUd,EAAK,KAAK,EAClE,CAAC,GAAGS,EAAuBT,CAAI,EAGnC,GAAIA,EAAK,SAAU,CACZA,EAAA,SAASA,EAAK,KAAK,EACxB,MAAA,CAIad,IAAA,CAAE,KAAAc,EAAM,iBAAAgB,EAAkB,EACzC,MAAA,CAIF,GAAIhB,EAAK,SAAU,CACZA,EAAA,SAASA,EAAK,KAAK,EACxB,MAAA,CAIFd,IAAe,CAAE,KAAAc,EAAM,iBAAkB,CAACA,CAAI,EAAG,CACnD,EACA,CAACd,EAAcsB,EAAWC,CAAqB,CACjD,EAGMQ,GAAgBzI,EAAAA,YAAY,CAAC0I,EAAqBC,IAClDD,IAAgB,IAAM,CAACA,EAClBC,EAGFA,EAAc,OAAQnB,GAGpB,CAAC,EAFU,OAAOA,EAAK,OAAU,SAAWA,EAAK,MAAQA,EAAK,YAEjD,YAAA,EAAc,SAASkB,EAAY,aAAa,CACrE,EACA,EAAE,EAECE,GAAe5I,EAAA,YAClB0C,GAA2C,CACpC,MAAAgG,EAAchG,EAAE,OAAO,MAC7BwE,EAAcwB,CAAW,EAErBjC,GACFA,EAAS/D,CAAC,CAEd,EACA,CAAC+D,CAAQ,CACX,EAEMoC,GAAc7I,EAAAA,YAAY,IAAM,CACpCkH,EAAc,EAAE,EAEZT,GACOA,EAAA,CACP,OAAQ,CAAE,MAAO,EAAG,CAAA,CACkB,CAC1C,EACC,CAACA,CAAQ,CAAC,EAGPqC,GAAmB9I,EAAA,YACtBoE,GAAkB,CACjB4C,GAAU5C,CAAI,EACTA,IACH8C,EAAc,EAAE,EAChBE,EAAqBb,CAAS,GAG5BT,GACFA,EAAa,CAAE,KAAA1B,EAAM,iBAAkB6D,CAAA,CAAuB,CAElE,EACA,CAAC1B,EAAWT,EAAcmC,CAAqB,CACjD,EAEA/K,OAAAA,EAAAA,UAAU,IAAM,CAEZkK,EADEX,EACmBF,EAEAkC,GAAcxB,EAAYV,CAAS,CAF1B,GAI/B,CAACU,EAAYR,EAAUgC,GAAelC,CAAS,CAAC,EAGjD/D,EAAA,kBAAA,KAACuG,GAAA,CACC,UAAA1E,EACA,cAAeA,EACf,aAAe2E,GAAY,CACzBF,GAAiBE,EAAQ,IAAI,CAC/B,EACC,GAAGzG,EAEH,SAAA,CAACsD,GACCjK,EAAA,kBAAA,IAAAqN,GAAA,CAAc,QAAO,GAAC,UAAU,gBAAgB,cAAa,GAAG3G,CAAU,WACxE,SAAasD,GAAA,YACXhK,EAAA,kBAAA,IAAAkH,GAAA,CAAkB,WAAYiE,GAAS,GAAGnB,CAAA,CAAa,EAExDhK,EAAA,kBAAA,IAACmG,GAAY,CAAA,GAAG6D,CAAa,CAAA,CAAA,CAEjC,0BAIDsD,EAAAA,OAAO,CAAA,SAAU,CAAC/E,EAAW,UAAW4B,GAAc,OACrD,SAACnK,EAAA,kBAAA,IAAAuN,GAAA,CAAiB,UAAU,OAAO,cAAa7G,EAAa,GAAG4B,EAC9D,SAAA1B,EAAA,kBAAA,KAAC4G,GAAA,CACC,UAAU,gBACV,cAAa,GAAG9G,CAAU,WAC1B,KAAAgE,EACA,KAAAE,EACC,GAAGM,EACH,GAAIF,GAAc,CAAE,GAAI,GAAI,EAC7B,QAAUlE,GAAM,CACdA,EAAE,gBAAgB,EAClBoE,GAAe,UAAUpE,CAAC,CAC5B,EAEC,SAAA,CACCkE,GAAAhL,EAAA,kBAAA,IAAC2H,EAAA,IAAA,CACC,UAAU,2BACV,cAAa,GAAGjB,CAAU,wBAC1B,GAAI,EACJ,GAAI,EACJ,SAAS,SACT,IAAK,EACL,GAAG,aACH,OAAO,SAEP,SAAA1G,EAAA,kBAAA,IAACyN,GAAA,iBAAA,CACC,UAAU,kBACV,cAAa,GAAG/G,CAAU,cAC1B,YAAauE,GACb,SAAU+B,GACV,KAAK,KACL,MAAO3B,EACP,UAAS,GACT,QAAS4B,GAET,UAAYnG,GAAM,CACZA,EAAE,OAAS,SACbA,EAAE,gBAAgB,CACpB,CACF,CAAA,CACF,CACF,EAEDuD,GACCrK,EAAA,kBAAA,IAAC2H,EAAA,IAAA,CACC,UAAU,4BACV,cAAa,GAAGjB,CAAU,yBAC1B,GAAI,EACJ,GAAIsE,EAAa,EAAI,EAEpB,SAAgBX,GAAA,CAAC,CAAC8B,EAAc,QAC/BnM,EAAA,kBAAA,IAACyJ,GAAA,CACC,SAAU6C,GACV,iBAAkB,CAAC,CAACD,EAAsB,MAAA,CAAA,CAC5C,CAEJ,EAED5B,GACEzK,EAAA,kBAAA,IAAAgH,EAAA,KAAA,CAAK,eAAe,SAAS,GAAI,EAChC,SAAChH,EAAAA,kBAAAA,IAAA0N,GAAAA,QAAA,CAAQ,WAAU,EAAA,CAAC,CACtB,CAAA,0BAED/F,EAAAA,IAAI,CAAA,UAAU,aAAa,cAAa,GAAGjB,CAAU,QACnD,SAAOiF,GAAA,6DAEH,SAAOA,GAAA,IAAI,CAAC,CAACgC,EAAYC,CAAK,IAAM,CACnC,MAAMC,EAAiBF,IAAe,UAChCG,EAAY,OAAO,KAAKF,CAAK,EAC7BG,EAAsBF,EAAmCG,GAAM,QAAA,SAAxBC,GAEvCtE,GADciE,EAAM,UAAa,IAAKhC,GAASA,EAAK,KAAK,GACzB,KAAM7C,GAC1CsD,EAAsB,KAAMT,GAASA,EAAK,QAAU7C,GAAS6C,EAAK,OAAO,CAC3E,EACA,gCACGmC,EACE,CAAA,SAAA,CAAC,CAAAF,GACC7N,EAAA,kBAAA,IAAAkO,GAAA,CACC,kCAAClH,OAAK,CAAA,WAAW,SAAS,eAAe,gBACtC,SAAA,CAAA2G,EACArD,GAAmBwD,EAAU,SAAS,UAAU,GAC/C9N,EAAA,kBAAA,IAACyJ,GAAA,CACC,UAAWkE,EACX,SAAUrB,GACV,iBAAA3C,EAAA,CAAA,CACF,CAAA,CAEJ,CACF,CAAA,EAED,OAAO,QAAQiE,CAAK,EAAE,IAAI,CAAC,CAAC5F,EAAMmG,CAAK,IACtCA,EAAM,IAAI,CAACvC,EAAMwC,KAAU,CACzB,KAAM,CAAE,WAAAT,GAAY,GAAGhH,EAAS,EAAAiF,EAE9B,OAAA5L,EAAA,kBAAA,IAACmB,GAAA,CAEC,mBAAA4G,GACC,GAAI6D,EAAK,OAAS,YAAc,CAC/B,QAASQ,EAAUR,EAAK,KAAK,CAC/B,EACA,SAAU,IAAMe,GAAaf,CAAI,EAChC,GAAIA,EAAK,OAAS,WAAa,CAC9B,gBAAAtD,CACF,EACC,GAAG3B,GACJ,cAAa,GAAGD,CAAU,SAASkF,EAAK,KAAK,EAAA,EAVxC,aAAa+B,EAAU,IAAI3F,CAAI,IAAIoG,EAAK,EAW/C,CAEH,CAAA,CAAA,CACH,CAAA,EAlCuBT,CAmCzB,CAAA,CAEH,CAAA,CACH,EAEA3N,wBAAAuJ,EAAAA,kBAAAA,SAAA,CACE,SAACvJ,EAAAA,kBAAAA,IAAA2H,EAAAA,IAAA,CAAI,EAAG,EACL,SAAO,OAAA4C,GAAe,SACrBvK,EAAAA,kBAAAA,IAAC2H,OAAI,UAAU,SACb,SAAC3H,EAAA,kBAAA,IAAA+G,EAAA,YAAA,CAAK,KAAK,KAAK,QAAQ,SAAS,cAAa,GAAGL,CAAU,eACxD,SACH6D,CAAA,CAAA,CACF,CAAA,EAEAA,CAAA,CAEJ,EACF,CAEJ,CAAA,CAAA,CAAA,GAEJ,CACF,CAAA,CAAA,CAAA,CACF,CAEJ","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]}
1
+ {"version":3,"file":"menu.component-D2V9Q1Y5.js","sources":["../../node_modules/@ark-ui/react/dist/components/menu/use-menu-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-arrow.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-arrow-tip.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-item-context.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-option-item-props-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-checkbox-item.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-content.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-context-trigger.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-indicator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-item-group-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-group.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-group-label.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-indicator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-text.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-positioner.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-radio-item.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-radio-item-group.js","../../node_modules/@ark-ui/react/dist/utils/use-effect-once.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-machine-context.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-trigger-item-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-root.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-root-provider.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-separator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-trigger.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-trigger-item.js","../../node_modules/@chakra-ui/react/dist/esm/components/menu/menu.js","../../src/components/Menu/components/MenuButton/menuButton.component.tsx","../../src/components/Menu/components/MenuItem/menuItem.component.tsx","../../src/components/Menu/components/MenuToggleButtons/menuToggleButtons.component.tsx","../../src/components/Menu/menu.component.tsx"],"sourcesContent":["'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuProvider, useMenuContext] = createContext({\n name: \"MenuContext\",\n hookName: \"useMenuContext\",\n providerName: \"<MenuProvider />\",\n strict: false\n});\n\nexport { MenuProvider, useMenuContext };\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 { useMenuContext } from './use-menu-context.js';\n\nconst MenuArrow = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getArrowProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuArrow.displayName = \"MenuArrow\";\n\nexport { MenuArrow };\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 { useMenuContext } from './use-menu-context.js';\n\nconst MenuArrowTip = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getArrowTipProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuArrowTip.displayName = \"MenuArrowTip\";\n\nexport { MenuArrowTip };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuItemProvider, useMenuItemContext] = createContext({\n name: \"MenuItemContext\",\n hookName: \"useMenuItemContext\",\n providerName: \"<MenuItemProvider />\"\n});\n\nexport { MenuItemProvider, useMenuItemContext };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuItemPropsProvider, useMenuItemPropsContext] = createContext({\n name: \"MenuItemPropsContext\",\n hookName: \"useMenuItemPropsContext\",\n providerName: \"<MenuItemPropsProvider />\"\n});\n\nexport { MenuItemPropsProvider, useMenuItemPropsContext };\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 { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\nimport { MenuItemPropsProvider } from './use-menu-option-item-props-context.js';\n\nconst MenuCheckboxItem = forwardRef((props, ref) => {\n const [partialOptionItemProps, localProps] = createSplitProps()(props, [\n \"checked\",\n \"closeOnSelect\",\n \"disabled\",\n \"onCheckedChange\",\n \"value\",\n \"valueText\"\n ]);\n const optionItemProps = {\n ...partialOptionItemProps,\n type: \"checkbox\"\n };\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getOptionItemProps(optionItemProps), localProps);\n const optionItemState = menu.getOptionItemState(optionItemProps);\n return /* @__PURE__ */ jsx(MenuItemPropsProvider, { value: optionItemProps, children: /* @__PURE__ */ jsx(MenuItemProvider, { value: optionItemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nMenuCheckboxItem.displayName = \"MenuCheckboxItem\";\n\nexport { MenuCheckboxItem };\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 { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuContent = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const presence = usePresenceContext();\n const mergedProps = mergeProps(menu.getContentProps(), presence.getPresenceProps(), props);\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) });\n});\nMenuContent.displayName = \"MenuContent\";\n\nexport { MenuContent };\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 { useMenuContext } from './use-menu-context.js';\n\nconst MenuContextTrigger = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getContextTriggerProps(), props);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nMenuContextTrigger.displayName = \"MenuContextTrigger\";\n\nexport { MenuContextTrigger };\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 { useMenuContext } from './use-menu-context.js';\n\nconst MenuIndicator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getIndicatorProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuIndicator.displayName = \"MenuIndicator\";\n\nexport { MenuIndicator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useEffect } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\nimport { MenuItemPropsProvider } from './use-menu-option-item-props-context.js';\n\nconst MenuItem = forwardRef((props, ref) => {\n const [itemProps, localProps] = createSplitProps()(props, [\n \"closeOnSelect\",\n \"disabled\",\n \"value\",\n \"valueText\",\n \"onSelect\"\n ]);\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getItemProps(itemProps), localProps);\n const itemState = menu.getItemState(itemProps);\n useEffect(() => {\n return menu.addItemListener({ id: itemState.id, onSelect: itemProps.onSelect });\n }, [itemState.id, itemProps.onSelect]);\n return /* @__PURE__ */ jsx(MenuItemPropsProvider, { value: itemProps, children: /* @__PURE__ */ jsx(MenuItemProvider, { value: itemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nMenuItem.displayName = \"MenuItem\";\n\nexport { MenuItem };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuItemGroupProvider, useMenuItemGroupContext] = createContext({\n name: \"MenuItemGroupContext\",\n hookName: \"useMenuItemGroupContext\",\n providerName: \"<MenuItemGroupProvider />\"\n});\n\nexport { MenuItemGroupProvider, useMenuItemGroupContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useId } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemGroupProvider } from './use-menu-item-group-context.js';\n\nconst MenuItemGroup = forwardRef((props, ref) => {\n const [optionalItemGroupProps, localProps] = createSplitProps()(props, [\"id\"]);\n const menu = useMenuContext();\n const id = useId();\n const itemGroupProps = { id, ...optionalItemGroupProps };\n const mergedProps = mergeProps(menu.getItemGroupProps(itemGroupProps), localProps);\n return /* @__PURE__ */ jsx(MenuItemGroupProvider, { value: itemGroupProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nMenuItemGroup.displayName = \"MenuItemGroup\";\n\nexport { MenuItemGroup };\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 { useMenuContext } from './use-menu-context.js';\nimport { useMenuItemGroupContext } from './use-menu-item-group-context.js';\n\nconst MenuItemGroupLabel = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const itemGroup = useMenuItemGroupContext();\n const mergedProps = mergeProps(menu.getItemGroupLabelProps({ htmlFor: itemGroup.id }), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemGroupLabel.displayName = \"MenuItemGroupLabel\";\n\nexport { MenuItemGroupLabel };\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 { useMenuContext } from './use-menu-context.js';\nimport { useMenuItemPropsContext } from './use-menu-option-item-props-context.js';\n\nconst MenuItemIndicator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const itemProps = useMenuItemPropsContext();\n const mergedProps = mergeProps(menu.getItemIndicatorProps(itemProps), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemIndicator.displayName = \"MenuItemIndicator\";\n\nexport { MenuItemIndicator };\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 { useMenuContext } from './use-menu-context.js';\nimport { useMenuItemPropsContext } from './use-menu-option-item-props-context.js';\n\nconst MenuItemText = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const itemProps = useMenuItemPropsContext();\n const mergedProps = mergeProps(menu.getItemTextProps(itemProps), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemText.displayName = \"MenuItemText\";\n\nexport { MenuItemText };\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 { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuPositioner = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getPositionerProps(), props);\n const presence = usePresenceContext();\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuPositioner.displayName = \"MenuPositioner\";\n\nexport { MenuPositioner };\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 { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\nimport { useMenuItemGroupContext } from './use-menu-item-group-context.js';\nimport { MenuItemPropsProvider } from './use-menu-option-item-props-context.js';\n\nconst MenuRadioItem = forwardRef((props, ref) => {\n const [partialItemProps, localProps] = createSplitProps()(props, [\n \"closeOnSelect\",\n \"disabled\",\n \"value\",\n \"valueText\"\n ]);\n const menu = useMenuContext();\n const itemGroup = useMenuItemGroupContext();\n const optionItemProps = {\n ...partialItemProps,\n checked: itemGroup.value === partialItemProps.value,\n type: \"radio\",\n onCheckedChange: () => itemGroup.onValueChange?.({ value: partialItemProps.value })\n };\n const mergedProps = mergeProps(menu.getOptionItemProps(optionItemProps), localProps);\n const optionItemState = menu.getOptionItemState(optionItemProps);\n return /* @__PURE__ */ jsx(MenuItemPropsProvider, { value: optionItemProps, children: /* @__PURE__ */ jsx(MenuItemProvider, { value: optionItemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nMenuRadioItem.displayName = \"MenuRadioItem\";\n\nexport { MenuRadioItem };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useId } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemGroupProvider } from './use-menu-item-group-context.js';\n\nconst MenuRadioItemGroup = forwardRef((props, ref) => {\n const [optionalItemGroupProps, localProps] = createSplitProps()(props, [\n \"id\",\n \"onValueChange\",\n \"value\"\n ]);\n const menu = useMenuContext();\n const id = useId();\n const itemGroupProps = { id, ...optionalItemGroupProps };\n const mergedProps = mergeProps(menu.getItemGroupProps({ id: itemGroupProps.id }), localProps);\n return /* @__PURE__ */ jsx(MenuItemGroupProvider, { value: itemGroupProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nMenuRadioItemGroup.displayName = \"MenuRadioItemGroup\";\n\nexport { MenuRadioItemGroup };\n","'use client';\nimport { useRef, useEffect } from 'react';\n\nconst useEffectOnce = (cb) => {\n const savedCallback = useRef(cb);\n const effectGuard = useRef(false);\n useEffect(() => {\n savedCallback.current = cb;\n });\n useEffect(() => {\n if (effectGuard.current !== true) {\n effectGuard.current = true;\n savedCallback.current();\n }\n }, []);\n};\n\nexport { useEffectOnce };\n","'use client';\nimport * as menu from '@zag-js/menu';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\n\nconst useMenu = (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(menu.machine, machineProps);\n const api = menu.connect(service, normalizeProps);\n return { api, service };\n};\n\nexport { useMenu };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuMachineProvider, useMenuMachineContext] = createContext({\n name: \"MenuMachineContext\",\n hookName: \"useMenuMachineContext\",\n providerName: \"<MenuMachineProvider />\",\n strict: false\n});\n\nexport { MenuMachineProvider, useMenuMachineContext };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuTriggerItemProvider, useMenuTriggerItemContext] = createContext({\n name: \"MenuMachineContext\",\n hookName: \"useMenuMachineContext\",\n providerName: \"<MenuMachineProvider />\",\n strict: false\n});\n\nexport { MenuTriggerItemProvider, useMenuTriggerItemContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { useCallback } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { useEffectOnce } from '../../utils/use-effect-once.js';\nimport { splitPresenceProps } from '../presence/split-presence-props.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useMenu } from './use-menu.js';\nimport { useMenuContext, MenuProvider } from './use-menu-context.js';\nimport { useMenuMachineContext, MenuMachineProvider } from './use-menu-machine-context.js';\nimport { MenuTriggerItemProvider } from './use-menu-trigger-item-context.js';\n\nconst MenuRoot = (props) => {\n const [presenceProps, menuProps] = splitPresenceProps(props);\n const [useMenuProps, localProps] = createSplitProps()(menuProps, [\n \"anchorPoint\",\n \"aria-label\",\n \"closeOnSelect\",\n \"composite\",\n \"defaultHighlightedValue\",\n \"defaultOpen\",\n \"highlightedValue\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onEscapeKeyDown\",\n \"onFocusOutside\",\n \"onHighlightChange\",\n \"onInteractOutside\",\n \"onOpenChange\",\n \"onPointerDownOutside\",\n \"onSelect\",\n \"open\",\n \"positioning\",\n \"typeahead\"\n ]);\n const parentApi = useMenuContext();\n const parentMachine = useMenuMachineContext();\n const { api, service } = useMenu(useMenuProps);\n const presence = usePresence(mergeProps({ present: api.open }, presenceProps));\n useEffectOnce(() => {\n if (!parentMachine) return;\n if (!parentApi) return;\n parentApi.setChild(service);\n api.setParent(parentMachine);\n });\n const triggerItemContext = useCallback(() => parentApi?.getTriggerItemProps(api), [api, parentApi]);\n return /* @__PURE__ */ jsx(MenuTriggerItemProvider, { value: triggerItemContext, children: /* @__PURE__ */ jsx(MenuMachineProvider, { value: service, children: /* @__PURE__ */ jsx(MenuProvider, { value: api, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presence, ...localProps }) }) }) });\n};\n\nexport { MenuRoot };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { useCallback } from 'react';\nimport { useEffectOnce } from '../../utils/use-effect-once.js';\nimport { splitPresenceProps } from '../presence/split-presence-props.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useMenuContext, MenuProvider } from './use-menu-context.js';\nimport { useMenuMachineContext, MenuMachineProvider } from './use-menu-machine-context.js';\nimport { MenuTriggerItemProvider } from './use-menu-trigger-item-context.js';\n\nconst MenuRootProvider = (props) => {\n const parentApi = useMenuContext();\n const parentMachine = useMenuMachineContext();\n const [presenceProps, { value: menu, children }] = splitPresenceProps(props);\n const { api, service } = menu;\n const presence = usePresence(mergeProps({ present: api.open }, presenceProps));\n useEffectOnce(() => {\n if (!parentMachine) return;\n if (!parentApi) return;\n parentApi.setChild(service);\n api.setParent(parentMachine);\n });\n const triggerItemContext = useCallback(() => parentApi?.getTriggerItemProps(api), [api, parentApi]);\n return /* @__PURE__ */ jsx(MenuTriggerItemProvider, { value: triggerItemContext, children: /* @__PURE__ */ jsx(MenuMachineProvider, { value: service, children: /* @__PURE__ */ jsx(MenuProvider, { value: api, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presence, children }) }) }) });\n};\n\nexport { MenuRootProvider };\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 { useMenuContext } from './use-menu-context.js';\n\nconst MenuSeparator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getSeparatorProps(), props);\n return /* @__PURE__ */ jsx(ark.hr, { ...mergedProps, ref });\n});\nMenuSeparator.displayName = \"MenuSeparator\";\n\nexport { MenuSeparator };\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 { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuTrigger = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const presence = usePresenceContext();\n const mergedProps = mergeProps(\n {\n ...menu.getTriggerProps(),\n \"aria-controls\": presence.unmounted ? void 0 : menu.getTriggerProps()[\"aria-controls\"]\n },\n props\n );\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nMenuTrigger.displayName = \"MenuTrigger\";\n\nexport { MenuTrigger };\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 { useMenuTriggerItemContext } from './use-menu-trigger-item-context.js';\n\nconst MenuTriggerItem = forwardRef((props, ref) => {\n const getTriggerItemProps = useMenuTriggerItemContext();\n const mergedProps = mergeProps(getTriggerItemProps?.() ?? {}, props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuTriggerItem.displayName = \"MenuTriggerItem\";\n\nexport { MenuTriggerItem };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { Menu } from '@ark-ui/react/menu';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { CheckIcon } from '../icons.js';\n\nconst {\n withRootProvider,\n withContext,\n useStyles: useMenuStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"menu\" });\nconst MenuRootProvider = withRootProvider(\n Menu.RootProvider\n);\nconst MenuRoot = withRootProvider(Menu.Root, {\n defaultProps: { lazyMount: true, unmountOnExit: true }\n});\nconst MenuPropsProvider = PropsProvider;\nconst MenuTrigger = withContext(\n Menu.Trigger,\n \"trigger\",\n { forwardAsChild: true }\n);\nconst MenuContextTrigger = withContext(Menu.ContextTrigger, \"contextTrigger\", { forwardAsChild: true });\nconst MenuPositioner = withContext(\n Menu.Positioner,\n \"positioner\",\n { forwardAsChild: true }\n);\nconst MenuSeparator = withContext(\n Menu.Separator,\n \"separator\",\n { forwardAsChild: true }\n);\nconst MenuContent = withContext(\n Menu.Content,\n \"content\",\n { forwardAsChild: true }\n);\nconst MenuArrowTip = withContext(\n Menu.ArrowTip,\n \"arrowTip\",\n { forwardAsChild: true }\n);\nconst MenuArrow = withContext(\n Menu.Arrow,\n \"arrow\",\n { forwardAsChild: true, defaultProps: { children: /* @__PURE__ */ jsx(MenuArrowTip, {}) } }\n);\nconst MenuIndicator = withContext(\n Menu.Indicator,\n \"indicator\",\n { forwardAsChild: true }\n);\nconst MenuItemGroup = withContext(\n Menu.ItemGroup,\n \"itemGroup\",\n { forwardAsChild: true }\n);\nconst MenuItemGroupLabel = withContext(Menu.ItemGroupLabel, \"itemGroupLabel\", { forwardAsChild: true });\nconst MenuItem = withContext(\n Menu.Item,\n \"item\",\n { forwardAsChild: true }\n);\nconst MenuTriggerItem = withContext(Menu.TriggerItem, \"item\", { forwardAsChild: true });\nconst MenuItemText = withContext(\n Menu.ItemText,\n \"itemText\",\n { forwardAsChild: true }\n);\nconst MenuItemCommand = withContext(\n \"kbd\",\n \"itemCommand\"\n);\nconst MenuItemIndicator = withContext(Menu.ItemIndicator, \"itemIndicator\", {\n forwardAsChild: true,\n defaultProps: { children: /* @__PURE__ */ jsx(CheckIcon, { boxSize: \"4\" }) }\n});\nconst MenuCheckboxItem = withContext(Menu.CheckboxItem, \"item\", { forwardAsChild: true });\nconst MenuRadioItemGroup = withContext(Menu.RadioItemGroup, \"itemGroup\", { forwardAsChild: true });\nconst MenuRadioItem = withContext(\n Menu.RadioItem,\n \"item\",\n { forwardAsChild: true }\n);\nconst MenuContext = Menu.Context;\nconst MenuItemContext = Menu.ItemContext;\n\nexport { MenuArrow, MenuArrowTip, MenuCheckboxItem, MenuContent, MenuContext, MenuContextTrigger, MenuIndicator, MenuItem, MenuItemCommand, MenuItemContext, MenuItemGroup, MenuItemGroupLabel, MenuItemIndicator, MenuItemText, MenuPositioner, MenuPropsProvider, MenuRadioItem, MenuRadioItemGroup, MenuRoot, MenuRootProvider, MenuSeparator, MenuTrigger, MenuTriggerItem, useMenuStyles };\n","import { Flex } from '@chakra-ui/react/flex';\nimport { Box } from '@chakra-ui/react/box';\nimport { Button, ButtonProps } from 'components/Button/button.component';\nimport { Icon } from 'components/Icon/icon.component';\nimport { Text, TextProps } from 'components/Text/text.component';\nimport { Tooltip, TooltipProps } from 'components/Tooltip/tooltip.component';\nimport React, { useCallback, useEffect, useState } from 'react';\n\nexport interface MenuButtonProps extends Omit<ButtonProps, 'children'> {\n /** If true, the caret will be hidden.\n * @default false\n */\n hideCaret?: boolean;\n /** Text to display in the menu button. */\n text?: string;\n /** Props to customize the text. */\n textProps?: TextProps;\n /** Props to customize the tooltip. */\n tooltipProps?: Omit<TooltipProps, 'children' | 'label' | 'isOpen' | 'onClose'>;\n /** If true, the tooltip will be shown. */\n showTooltip?: boolean;\n /** Determines if the menu is open. */\n isMenuOpen?: boolean;\n}\n\nexport const MenuButton = ({\n hideCaret = false,\n size = 'md',\n text,\n textProps,\n variant,\n onClick,\n ['data-testid']: dataTestId = 'kibble-menu-button',\n ...rest\n}: MenuButtonProps): React.JSX.Element => {\n return (\n <Button\n className=\"Menu__Button\"\n data-testid={dataTestId}\n size={size}\n variant={variant}\n {...rest}\n {...(!text && hideCaret && { paddingInline: 0, paddingBlock: 0 })}\n onClick={(e) => {\n e.stopPropagation();\n onClick?.(e);\n }}\n >\n {text && (\n <Text\n className=\"Menu__ButtonText\"\n data-testid={`${dataTestId}-text`}\n fontWeight=\"semibold\"\n size={size}\n color={variant ? 'inherit' : textProps?.color || 'text.contrast'}\n truncated\n {...textProps}\n >\n {text}\n </Text>\n )}\n {!hideCaret && (\n <Flex className=\"Menu__ButtonCaret\" data-testid={`${dataTestId}-caret`}>\n <Icon name=\"chevronDown\" size={size === 'lg' ? 'sm' : 'xs'} />\n </Flex>\n )}\n </Button>\n );\n};\n\nexport const MenuButtonTooltip = ({ tooltipProps, isMenuOpen, ...rest }: MenuButtonProps): React.JSX.Element => {\n // Needed to manage tooltip open state separately to avoid sticky issues when we open and close menu list\n const [isTooltipOpen, setIsTooltipOpen] = useState(false);\n\n const onMouseEnter = useCallback((): void => {\n if (!isMenuOpen) {\n setIsTooltipOpen(true);\n }\n }, [isMenuOpen]);\n\n const onMouseLeave = useCallback((): void => {\n if (!isMenuOpen) {\n setIsTooltipOpen(false);\n }\n }, [isMenuOpen]);\n\n // Close tooltip when menu opens\n useEffect(() => {\n if (isMenuOpen) {\n setIsTooltipOpen(false);\n }\n }, [isMenuOpen]);\n\n return (\n <Tooltip label={rest.text || ''} open={isTooltipOpen && !isMenuOpen} {...tooltipProps}>\n <Box\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n setIsTooltipOpen(false);\n }}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n <MenuButton {...rest} />\n </Box>\n </Tooltip>\n );\n};\n","import { Flex } from '@chakra-ui/react/flex';\nimport { Menu as CMenu } from '@chakra-ui/react/menu';\nimport React, { useCallback, useState } from 'react';\nimport { Text } from 'components/Text/text.component';\nimport { MenuItemType } from './menuItem.types';\nimport { Menu, MenuProps } from 'components/Menu';\nimport { TypographyVariant } from 'shared/types/typography';\nimport { Checkbox } from 'components/Checkbox/checkbox.component';\nimport { Icon } from 'components/Icon/icon.component';\nimport { Tooltip } from 'components/Tooltip';\n\ninterface BaseMenuItemProps {\n /** Label to display in the menu item. */\n label?: React.ReactNode;\n /** Left element to display in the menu item. */\n leftElement?: React.ReactNode;\n /** Group label to display in the menu item. */\n groupLabel?: string;\n /** Callback function to be called when the menu item is selected. */\n onSelect?: (value: string) => void;\n /** If true, the text will be truncated. */\n shouldTruncateText?: boolean;\n /** Type of the menu item.\n * @default default\n */\n type?: MenuItemType;\n /** Value of the menu item. */\n value: string;\n /** Variant of the menu item. */\n variant?: TypographyVariant;\n /** Data test id for the menu item.\n * @default kibble-menu-item\n */\n 'data-testid'?: string;\n}\n\ninterface DefaultMenuItemProps extends Omit<CMenu.ItemProps, 'onSelect' | 'isDisabled'> {\n /** Type of the menu item.\n * @default default\n */\n type?: 'default';\n /** If true, the menu item will be selected. */\n selected?: boolean;\n /** Tooltip label to display in the menu item. */\n tooltipLabel?: string;\n}\n\ninterface CheckboxMenuItemProps extends Omit<CMenu.CheckboxItemProps, 'onSelect'> {\n /** Type of the menu item.\n * @default checkbox\n */\n type: 'checkbox';\n /** If true, the checkbox will be checked. */\n checked: boolean;\n /** Tooltip label to display in the menu item. */\n tooltipLabel?: string;\n}\n\ninterface SubmenuMenuItemProps extends Omit<MenuProps, 'children' | 'buttonProps'> {\n /** Type of the menu item.\n * @default submenu\n */\n type: 'submenu';\n /** Value text for keyboard navigation. */\n valueText?: string;\n}\n\nexport type MenuItemProps = BaseMenuItemProps & (DefaultMenuItemProps | CheckboxMenuItemProps | SubmenuMenuItemProps);\n\nexport const MenuItem = ({\n label,\n leftElement,\n onSelect,\n shouldTruncateText,\n type = 'default',\n variant,\n ['data-testid']: dataTestId = 'kibble-menu-item',\n ...rest\n}: MenuItemProps): React.JSX.Element => {\n const [isSubmenuOpen, setIsSubmenuOpen] = useState(false);\n\n const handleItemSelect = useCallback(() => {\n if (onSelect) {\n onSelect(rest.value);\n }\n }, [onSelect, rest.value]);\n\n if (type === 'submenu') {\n const {\n valueText,\n listProps,\n positionerProps,\n portalled = true,\n open,\n lazyMount = true,\n unmountOnExit = true,\n } = rest as Omit<SubmenuMenuItemProps, 'type'>;\n\n return (\n <Menu\n lazyMount={lazyMount}\n unmountOnExit={unmountOnExit}\n submenuTrigger={\n <CMenu.TriggerItem\n className=\"Menu__Item--Submenu\"\n data-testid={`${dataTestId}-submenu`}\n justifyContent=\"space-between\"\n aria-valuetext={valueText}\n position=\"relative\"\n onClick={(): void => {\n // If the submenu is controlled, call the onSelect callback passed to the menu\n if (open !== undefined && onSelect) {\n onSelect(rest.value);\n } else {\n // Otherwise, toggle the internalsubmenu open state\n setIsSubmenuOpen(!isSubmenuOpen);\n }\n }}\n >\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={variant}\n />\n <Icon name=\"chevronRight\" size=\"sm\" />\n </CMenu.TriggerItem>\n }\n portalled={portalled}\n open={open !== undefined ? open : isSubmenuOpen}\n listProps={listProps}\n positionerProps={positionerProps}\n />\n );\n }\n\n if (type === 'checkbox') {\n const { checked, value, disabled, tooltipLabel, ...checkboxRest } = rest as CheckboxMenuItemProps;\n return (\n <CMenu.Item\n className=\"Menu__Item--Checkbox\"\n data-testid={`${dataTestId}-checkbox`}\n value={value}\n closeOnSelect={false}\n onSelect={disabled ? undefined : handleItemSelect}\n gap={3}\n disabled={disabled}\n {...checkboxRest}\n >\n <Checkbox checked={!!checked} disabled={disabled} size=\"md\" fullWidth={false} />\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={variant}\n tooltipLabel={tooltipLabel}\n />\n </CMenu.Item>\n );\n }\n\n if (type === 'default') {\n const { selected = false, disabled, value, tooltipLabel, ...defaultRest } = rest as DefaultMenuItemProps;\n return (\n <CMenu.Item\n className=\"Menu__Item--Default\"\n data-testid={`${dataTestId}-default`}\n value={value}\n onSelect={disabled ? undefined : handleItemSelect}\n disabled={disabled}\n {...(selected && { bgColor: 'background.secondaryAlpha.hover' })}\n {...defaultRest}\n >\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={selected ? 'info' : variant}\n tooltipLabel={tooltipLabel}\n />\n </CMenu.Item>\n );\n }\n\n return <></>;\n};\n\nconst MenuItemLabel = ({\n label,\n leftElement,\n shouldTruncateText,\n variant,\n tooltipLabel,\n}: {\n label?: React.ReactNode;\n leftElement?: React.ReactNode;\n shouldTruncateText?: boolean;\n variant?: TypographyVariant;\n tooltipLabel?: string;\n}): React.JSX.Element => {\n const content = (\n <Flex className=\"Menu__ItemLabel\" alignItems=\"center\" gap={3}>\n {leftElement}\n {typeof label === 'string' ? (\n <Text size=\"sm\" truncated={shouldTruncateText} variant={variant}>\n {label}\n </Text>\n ) : (\n label\n )}\n </Flex>\n );\n return tooltipLabel ? <Tooltip label={tooltipLabel}>{content}</Tooltip> : content;\n};\n","import { Box } from '@chakra-ui/react/box';\nimport { Flex } from '@chakra-ui/react/flex';\nimport { Button } from 'components/Button/button.component';\n\ninterface MenuToggleButtonsProps {\n /** Determines if there are selected items. */\n hasSelectedItems?: boolean;\n /** Name of the group. */\n groupName?: string;\n /** Callback function to toggle the selected items. */\n onToggle: ({ groupName, clear }: { clear: boolean; groupName?: string }) => void;\n /** Data test id for the menu toggle buttons.\n * @default kibble-menu-toggle-buttons\n */\n 'data-testid'?: string;\n}\n\nexport const MenuToggleButtons = ({\n groupName,\n hasSelectedItems = false,\n onToggle,\n ['data-testid']: dataTestId = 'kibble-menu-toggle-buttons',\n}: MenuToggleButtonsProps): React.JSX.Element => {\n const isGrouped = !!groupName;\n return (\n <Box className=\"Menu__ToggleButtons\" data-testid={dataTestId} {...(isGrouped && { textAlign: 'right', w: '50%' })}>\n {isGrouped ? (\n <>\n {hasSelectedItems ? (\n <ClearAllButton hasSelectedItems={hasSelectedItems} groupName={groupName} onToggle={onToggle} />\n ) : (\n <SelectAllButton groupName={groupName} onToggle={onToggle} />\n )}\n </>\n ) : (\n <Flex justifyContent=\"space-between\">\n <SelectAllButton groupName={groupName} onToggle={onToggle} />\n <ClearAllButton hasSelectedItems={hasSelectedItems} groupName={groupName} onToggle={onToggle} />\n </Flex>\n )}\n </Box>\n );\n};\n\nconst SelectAllButton = ({ groupName, onToggle }: MenuToggleButtonsProps): React.JSX.Element => {\n return (\n <Button variant=\"ghost\" size=\"xs\" onClick={(): void => onToggle({ groupName, clear: false })}>\n Select All\n </Button>\n );\n};\n\nconst ClearAllButton = ({ hasSelectedItems, groupName, onToggle }: MenuToggleButtonsProps): React.JSX.Element => {\n return (\n <Button\n variant=\"ghostNeutral\"\n iconName=\"arrowCircle\"\n size=\"xs\"\n disabled={!hasSelectedItems}\n onClick={(): void => onToggle({ groupName, clear: true })}\n >\n Clear All\n </Button>\n );\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { Menu as CMenu } from '@chakra-ui/react/menu';\nimport { Portal } from '@chakra-ui/react/portal';\nimport { MenuButton, MenuButtonTooltip, MenuButtonProps } from './components/MenuButton/menuButton.component';\nimport { MenuItem, MenuItemProps } from './components/MenuItem/menuItem.component';\nimport { Box } from '@chakra-ui/react/box';\nimport { Text } from 'components/Text/text.component';\nimport { TextInput } from 'components/TextInput/textInput.component';\nimport { Flex } from '@chakra-ui/react/flex';\nimport { Spinner } from 'components/Spinner/spinner.component';\nimport { MenuToggleButtons } from './components/MenuToggleButtons/menuToggleButtons.component';\nimport { usePortalContentRef } from 'hooks/usePortalContentRef';\nimport { MenuListOnOpenChangeProps } from './menu.types';\nimport { MenuListProps } from './components/MenuList/menuList.types';\n\nexport interface MenuProps extends Omit<CMenu.RootProps, 'children' | 'onSelect' | 'onOpenChange'> {\n /** Props to customize the menu button trigger. */\n buttonProps?: MenuButtonProps;\n /** Props to customize the menu list. */\n listProps?: MenuListProps;\n /** Props to customize the positioner of the menu. */\n positionerProps?: CMenu.PositionerProps;\n /**\n * If true, the menu will be rendered in a Portal.\n * @default false\n */\n portalled?: boolean;\n /** Callback function to be called when the menu is opened or closed. */\n onOpenChange?: ({ open, allSelectedItems }: MenuListOnOpenChangeProps) => void;\n /** Data test id for the menu.\n * @default kibble-menu\n */\n 'data-testid'?: string;\n}\n\ninterface InternalMenuProps extends MenuProps {\n /** React element to be used as the trigger for the submenu.\n * @internal\n */\n submenuTrigger?: React.ReactNode;\n}\n\nexport const Menu = ({\n buttonProps,\n listProps,\n positionerProps,\n portalled = false,\n submenuTrigger,\n lazyMount = true,\n onOpenChange,\n ['data-testid']: dataTestId = 'kibble-menu',\n ...rest\n}: InternalMenuProps): React.JSX.Element => {\n const { contentRef } = usePortalContentRef();\n const {\n canSelectAll,\n canSelectGroups,\n emptyState = 'No results found',\n groupSortOrder,\n loading,\n maxH = '480px',\n menuItems = [],\n minW = '240px',\n onSearch,\n onSelect: onListSelect,\n onSelectAll,\n searchable,\n searchPlaceholder = 'Search...',\n shouldTruncateText,\n ...restListProps\n } = listProps || {};\n const [isOpen, setIsOpen] = useState(false);\n const [searchText, setSearchText] = useState<string>('');\n const [filteredMenuItems, setFilteredMenuItems] = useState<MenuItemProps[]>(menuItems);\n\n // Menu Items\n const groupedItems = useMemo(() => {\n const groups: Record<string, Record<string, MenuItemProps[]>> = {};\n\n filteredMenuItems?.forEach((item) => {\n const group = item.groupLabel || 'default';\n // Default and submenu items are grouped under \"default\"\n const type = item.type === 'checkbox' ? 'checkbox' : 'default';\n\n if (!groups[group]) {\n groups[group] = {};\n }\n\n if (!groups[group][type]) {\n groups[group][type] = [];\n }\n\n groups[group][type].push(item);\n });\n\n return groups;\n }, [filteredMenuItems]);\n\n const groups = useMemo(() => {\n const entries = Object.entries(groupedItems);\n\n if (!groupSortOrder || groupSortOrder.length === 0) {\n return entries;\n }\n\n // Sort groups based on groupSortOrder\n return entries.sort(([groupLabelA], [groupLabelB]) => {\n const indexA = groupSortOrder.indexOf(groupLabelA);\n const indexB = groupSortOrder.indexOf(groupLabelB);\n\n // If both groups are in the sort order, sort by their index\n if (indexA !== -1 && indexB !== -1) {\n return indexA - indexB;\n }\n\n // If only groupA is in the sort order, it comes first\n if (indexA !== -1) {\n return -1;\n }\n\n // If only groupB is in the sort order, it comes first\n if (indexB !== -1) {\n return 1;\n }\n\n // If neither group is in the sort order, maintain original order\n return 0;\n });\n }, [groupedItems, groupSortOrder]);\n\n // Checkbox State Management\n const checkboxItems = useMemo(() => menuItems?.filter((item) => item.type === 'checkbox') || [], [menuItems]);\n\n // Helper functions for checkbox state management\n const isChecked = useCallback(\n (value: string) => {\n return checkboxItems.some((item) => item.value === value && item.checked);\n },\n [checkboxItems],\n );\n\n // Helper function to get selected menu items based on selected values\n const selectedCheckboxItems = useMemo(() => {\n return checkboxItems.filter((item) => item.checked);\n }, [checkboxItems]);\n\n const handleToggleSelectAll = useCallback(\n ({ groupName, clear }: { groupName?: string; clear: boolean }) => {\n let newSelectedItems: MenuItemProps[];\n // Only allow checkbox items that are not disabled to be toggled\n const filteredCheckboxItems = filteredMenuItems.filter((item) => item.type === 'checkbox' && !item.disabled);\n\n // If the group name is provided, only toggle the items in the group\n if (groupName) {\n // Get the items in the group\n const groupedItems = filteredCheckboxItems.filter((item) => item.groupLabel === groupName);\n\n // If the clear flag is true, remove the items in the group\n newSelectedItems = clear\n ? selectedCheckboxItems.filter((cItem) => cItem.groupLabel !== groupName)\n : // Otherwise, add the items in the group to the selected items\n [...new Set([...selectedCheckboxItems, ...groupedItems])];\n } else {\n // If the group name is not provided, toggle all the items\n newSelectedItems = clear\n ? []\n : filteredCheckboxItems.map((item) => {\n return { ...item, checked: true };\n });\n }\n\n // Call the onSelectAll callback with the updated values\n onSelectAll?.({ allSelectedItems: newSelectedItems });\n },\n [onSelectAll, filteredMenuItems, selectedCheckboxItems],\n );\n\n const handleSelect = useCallback(\n (item: MenuItemProps) => {\n // If the item is a checkbox, update the selected checkbox values\n if (item.type === 'checkbox') {\n // Get the new list of selected checkbox items\n const allSelectedItems = isChecked(item.value)\n ? selectedCheckboxItems.filter((cItem) => cItem.value !== item.value)\n : [...selectedCheckboxItems, item];\n\n // If the item has it's own onSelect, call it with just the item value\n if (item.onSelect) {\n item.onSelect(item.value);\n return;\n }\n\n // Otherwise call the onSelect callback with the updated values\n onListSelect?.({ item, allSelectedItems });\n return;\n }\n\n // Otherwise this is a default item, so first check if the item has it's own onSelect callback\n if (item.onSelect) {\n item.onSelect(item.value);\n return;\n }\n\n // Otherwise call the onSelect callback with just the item itself\n onListSelect?.({ item, allSelectedItems: [item] });\n },\n [onListSelect, isChecked, selectedCheckboxItems],\n );\n\n // Search\n const filterOptions = useCallback((searchInput: string, itemsToFilter: MenuItemProps[]) => {\n if (searchInput === '' || !searchInput) {\n return itemsToFilter;\n }\n\n return itemsToFilter.filter((item): boolean => {\n const labelText = typeof item.label === 'string' ? item.label : item.valueText;\n\n return !!labelText?.toLowerCase().includes(searchInput.toLowerCase());\n });\n }, []);\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchInput = e.target.value;\n setSearchText(searchInput);\n\n if (onSearch) {\n onSearch(e);\n }\n },\n [onSearch],\n );\n\n const clearSearch = useCallback(() => {\n setSearchText('');\n\n if (onSearch) {\n onSearch({\n target: { value: '' },\n } as React.ChangeEvent<HTMLInputElement>);\n }\n }, [onSearch]);\n\n // Cleanup\n const handleOpenChange = useCallback(\n (open: boolean) => {\n setIsOpen(open); // Track open state\n if (!open) {\n setSearchText('');\n setFilteredMenuItems(menuItems);\n }\n\n if (onOpenChange) {\n onOpenChange({ open, allSelectedItems: selectedCheckboxItems });\n }\n },\n [menuItems, onOpenChange, selectedCheckboxItems],\n );\n\n useEffect(() => {\n if (onSearch) {\n setFilteredMenuItems(menuItems);\n } else {\n setFilteredMenuItems(filterOptions(searchText, menuItems));\n }\n }, [searchText, onSearch, filterOptions, menuItems]);\n\n return (\n <CMenu.Root\n lazyMount={lazyMount}\n unmountOnExit={lazyMount}\n onOpenChange={(details) => {\n handleOpenChange(details.open);\n }}\n {...rest}\n >\n {!submenuTrigger ? (\n <CMenu.Trigger asChild className=\"Menu__Trigger\" data-testid={`${dataTestId}-trigger`}>\n {buttonProps?.showTooltip ? (\n <MenuButtonTooltip isMenuOpen={isOpen} {...buttonProps} />\n ) : (\n <MenuButton {...buttonProps} />\n )}\n </CMenu.Trigger>\n ) : (\n submenuTrigger\n )}\n <Portal disabled={!portalled} container={contentRef || undefined}>\n <CMenu.Positioner className=\"Menu\" data-testid={dataTestId} {...positionerProps}>\n <CMenu.Content\n className=\"Menu__Content\"\n data-testid={`${dataTestId}-content`}\n maxH={maxH}\n minW={minW}\n {...restListProps}\n {...(searchable && { pt: '0' })}\n onClick={(e) => {\n e.stopPropagation();\n restListProps?.onClick?.(e);\n }}\n >\n {searchable && (\n <Box\n className=\"Menu__SearchBarContainer\"\n data-testid={`${dataTestId}-search-bar-container`}\n px={3}\n py={2}\n position=\"sticky\"\n top={0}\n bg=\"background\"\n zIndex=\"docked\"\n >\n <TextInput\n className=\"Menu__SearchBar\"\n data-testid={`${dataTestId}-search-bar`}\n placeholder={searchPlaceholder}\n onChange={handleSearch}\n size=\"sm\"\n value={searchText}\n clearable\n onClear={clearSearch}\n // Necessary to prevent the Menu from intercepting the Space key press and opening the menu when the search input is focused\n onKeyDown={(e) => {\n if (e.code === 'Space') {\n e.stopPropagation();\n }\n }}\n />\n </Box>\n )}\n {canSelectAll && (\n <Box\n className=\"Menu__CheckboxGroupHeader\"\n data-testid={`${dataTestId}-checkbox-group-header`}\n px={3}\n mt={searchable ? 1 : 2}\n >\n {canSelectAll && !!checkboxItems.length && (\n <MenuToggleButtons\n onToggle={handleToggleSelectAll}\n hasSelectedItems={!!selectedCheckboxItems.length}\n />\n )}\n </Box>\n )}\n {loading && (\n <Flex justifyContent=\"center\" py={5}>\n <Spinner fullScreen />\n </Flex>\n )}\n <Box className=\"Menu__List\" data-testid={`${dataTestId}-list`}>\n {groups.length ? (\n <>\n {groups.map(([groupLabel, types]) => {\n const isDefaultGroup = groupLabel === 'default';\n const itemTypes = Object.keys(types);\n const MenuGroupContainer = !isDefaultGroup ? CMenu.ItemGroup : React.Fragment;\n const groupValues = types['checkbox']?.map((item) => item.value);\n const hasSelectedItems = groupValues?.some((value) =>\n selectedCheckboxItems.some((item) => item.value === value && item.checked),\n );\n return (\n <MenuGroupContainer key={groupLabel}>\n {!isDefaultGroup && (\n <CMenu.ItemGroupLabel>\n <Flex alignItems=\"center\" justifyContent=\"space-between\">\n {groupLabel}\n {canSelectGroups && itemTypes.includes('checkbox') && (\n <MenuToggleButtons\n groupName={groupLabel}\n onToggle={handleToggleSelectAll}\n hasSelectedItems={hasSelectedItems}\n />\n )}\n </Flex>\n </CMenu.ItemGroupLabel>\n )}\n {Object.entries(types).map(([type, items]) =>\n items.map((item, index) => {\n const { groupLabel, ...rest } = item;\n return (\n <MenuItem\n key={`menu-item-${groupLabel}-${type}-${index}`}\n shouldTruncateText={shouldTruncateText}\n {...(item.type === 'checkbox' && {\n checked: isChecked(item.value),\n })}\n onSelect={() => handleSelect(item)}\n {...(item.type === 'submenu' && {\n positionerProps,\n })}\n {...rest}\n data-testid={`${dataTestId}-item-${item.label}`}\n />\n );\n }),\n )}\n </MenuGroupContainer>\n );\n })}\n </>\n ) : (\n <>\n <Box p={3}>\n {typeof emptyState === 'string' ? (\n <Box textAlign=\"center\">\n <Text size=\"sm\" variant=\"subtle\" data-testid={`${dataTestId}-empty-state`}>\n {emptyState}\n </Text>\n </Box>\n ) : (\n emptyState\n )}\n </Box>\n </>\n )}\n </Box>\n </CMenu.Content>\n </CMenu.Positioner>\n </Portal>\n </CMenu.Root>\n );\n};\n"],"names":["MenuProvider","useMenuContext","createContext","MenuArrow","forwardRef","props","ref","menu","mergedProps","mergeProps","jsx","ark","MenuArrowTip","MenuItemProvider","useMenuItemContext","MenuItemPropsProvider","useMenuItemPropsContext","MenuCheckboxItem","partialOptionItemProps","localProps","createSplitProps","optionItemProps","optionItemState","MenuContent","presence","usePresenceContext","composeRefs","MenuContextTrigger","MenuIndicator","MenuItem","itemProps","itemState","useEffect","MenuItemGroupProvider","useMenuItemGroupContext","MenuItemGroup","optionalItemGroupProps","itemGroupProps","useId","MenuItemGroupLabel","itemGroup","MenuItemIndicator","MenuItemText","MenuPositioner","MenuRadioItem","partialItemProps","MenuRadioItemGroup","useEffectOnce","cb","savedCallback","useRef","effectGuard","useMenu","id","getRootNode","useEnvironmentContext","dir","useLocaleContext","machineProps","service","useMachine","menu.machine","menu.connect","normalizeProps","MenuMachineProvider","useMenuMachineContext","MenuTriggerItemProvider","useMenuTriggerItemContext","MenuRoot","presenceProps","menuProps","splitPresenceProps","useMenuProps","parentApi","parentMachine","api","usePresence","triggerItemContext","useCallback","PresenceProvider","MenuRootProvider","children","MenuSeparator","MenuTrigger","MenuTriggerItem","getTriggerItemProps","withRootProvider","withContext","createSlotRecipeContext","Menu.RootProvider","Menu.Root","Menu.Trigger","Menu.ContextTrigger","Menu.Positioner","Menu.Separator","Menu.Content","Menu.ArrowTip","Menu.Arrow","Menu.Indicator","Menu.ItemGroup","Menu.ItemGroupLabel","Menu.Item","Menu.TriggerItem","Menu.ItemText","Menu.ItemIndicator","CheckIcon","Menu.CheckboxItem","Menu.RadioItemGroup","Menu.RadioItem","MenuButton","hideCaret","size","text","textProps","variant","onClick","dataTestId","rest","jsxs","Button","e","Text","Flex","Icon","MenuButtonTooltip","tooltipProps","isMenuOpen","isTooltipOpen","setIsTooltipOpen","useState","onMouseEnter","onMouseLeave","Tooltip","Box","label","leftElement","onSelect","shouldTruncateText","type","isSubmenuOpen","setIsSubmenuOpen","handleItemSelect","valueText","listProps","positionerProps","portalled","open","lazyMount","unmountOnExit","Menu","CMenu.TriggerItem","MenuItemLabel","checked","value","disabled","tooltipLabel","checkboxRest","CMenu.Item","Checkbox","selected","defaultRest","Fragment","content","MenuToggleButtons","groupName","hasSelectedItems","onToggle","isGrouped","ClearAllButton","SelectAllButton","buttonProps","submenuTrigger","onOpenChange","contentRef","usePortalContentRef","canSelectAll","canSelectGroups","emptyState","groupSortOrder","loading","maxH","menuItems","minW","onSearch","onListSelect","onSelectAll","searchable","searchPlaceholder","restListProps","isOpen","setIsOpen","searchText","setSearchText","filteredMenuItems","setFilteredMenuItems","groupedItems","useMemo","groups","item","group","entries","groupLabelA","groupLabelB","indexA","indexB","checkboxItems","isChecked","selectedCheckboxItems","handleToggleSelectAll","clear","newSelectedItems","filteredCheckboxItems","cItem","handleSelect","allSelectedItems","filterOptions","searchInput","itemsToFilter","handleSearch","clearSearch","handleOpenChange","CMenu.Root","details","CMenu.Trigger","Portal","CMenu.Positioner","CMenu.Content","TextInput","Spinner","groupLabel","types","isDefaultGroup","itemTypes","MenuGroupContainer","React","CMenu.ItemGroup","CMenu.ItemGroupLabel","items","index"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]}
@@ -1,2 +1,2 @@
1
- "use strict";const r=require("./jsx-runtime-BjDatQAs.js"),p=require("react"),V=require("./index-BQRnVsAg.js"),L=require("./withFormControl-BSlIlVY0.js"),b=require("./icon.component-B1hr5lLa.js"),M=require("./input-group-DUdSDk4o.js"),W=require("./create-slot-recipe-context-HXE1VazG.js"),N=require("./icons-B6Nwr9di.js"),s=require("./use-locale-context-ym21RUxU.js"),I=require("./index-DVyODQn6.js"),g=require("./use-field-context-Cm29IQ7H.js"),a=require("./index-CQURjLlA.js"),G=e=>e&&e.__esModule?e:{default:e},B=G(p),[j,m]=s.createContext({name:"NumberInputContext",hookName:"useNumberInputContext",providerName:"<NumberInputProvider />"}),U=e=>e.children(m()),R=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getControlProps(),e);return r.jsxRuntimeExports.jsx(s.ark.div,{...o,ref:n})});R.displayName="NumberInputControl";const f=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getDecrementTriggerProps(),e);return r.jsxRuntimeExports.jsx(s.ark.button,{...o,ref:n})});f.displayName="NumberInputDecrementTrigger";const P=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getIncrementTriggerProps(),e);return r.jsxRuntimeExports.jsx(s.ark.button,{...o,ref:n})});P.displayName="NumberInputIncrementTrigger";const h=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getInputProps(),e),u=g.useFieldContext();return r.jsxRuntimeExports.jsx(s.ark.input,{"aria-describedby":u?.ariaDescribedby,...o,ref:n})});h.displayName="NumberInputInput";const C=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getLabelProps(),e);return r.jsxRuntimeExports.jsx(s.ark.label,{...o,ref:n})});C.displayName="NumberInputLabel";const z=e=>{const n=p.useId(),{getRootNode:t}=s.useEnvironmentContext(),{dir:o,locale:u}=s.useLocaleContext(),i=g.useFieldContext(),l={id:n,ids:{label:i?.ids.label,input:i?.ids.control},disabled:i?.disabled,readOnly:i?.readOnly,required:i?.required,invalid:i?.invalid,dir:o,locale:u,getRootNode:t,...e},x=s.useMachine(I.machine,l);return I.connect(x,s.normalizeProps)},v=p.forwardRef((e,n)=>{const[t,o]=s.createSplitProps()(e,["allowMouseWheel","allowOverflow","clampValueOnBlur","defaultValue","disabled","focusInputOnChange","form","formatOptions","id","ids","inputMode","invalid","locale","max","min","name","onFocusChange","onValueChange","onValueInvalid","pattern","readOnly","required","spinOnPress","step","translations","value"]),u=z(t),i=a.mergeProps(u.getRootProps(),o);return r.jsxRuntimeExports.jsx(j,{value:u,children:r.jsxRuntimeExports.jsx(s.ark.div,{...i,ref:n})})});v.displayName="NumberInputRoot";const E=p.forwardRef((e,n)=>{const[{value:t},o]=s.createSplitProps()(e,["value"]),u=a.mergeProps(t.getRootProps(),o);return r.jsxRuntimeExports.jsx(j,{value:t,children:r.jsxRuntimeExports.jsx(s.ark.div,{...u,ref:n})})});E.displayName="NumberInputRootProvider";const w=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getScrubberProps(),e);return r.jsxRuntimeExports.jsx(s.ark.div,{...o,ref:n})});w.displayName="NumberInputScrubber";const _=p.forwardRef((e,n)=>{const{children:t,...o}=e,u=m(),i=a.mergeProps(u.getValueTextProps(),o);return r.jsxRuntimeExports.jsx(s.ark.span,{...i,ref:n,children:t||u.value})});_.displayName="NumberInputValueText";const{withProvider:y,withContext:d}=W.createSlotRecipeContext({key:"numberInput"});y(E,"root",{forwardAsChild:!0});const H=y(v,"root",{forwardAsChild:!0});d(C,"label",{forwardAsChild:!0});const J=d(h,"input",{forwardAsChild:!0}),q=d(P,"incrementTrigger",{forwardAsChild:!0,defaultProps:{children:r.jsxRuntimeExports.jsx(N.ChevronUpIcon,{})}}),$=d(f,"decrementTrigger",{forwardAsChild:!0,defaultProps:{children:r.jsxRuntimeExports.jsx(N.ChevronDownIcon,{})}}),K=d(R,"control",{forwardAsChild:!0,defaultProps:{children:r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[r.jsxRuntimeExports.jsx(q,{}),r.jsxRuntimeExports.jsx($,{})]})}});d(w,"scrubber",{forwardAsChild:!0});d(_,"valueText",{forwardAsChild:!0});const Q=U,k=B.default.forwardRef(({disabled:e=!1,inputRef:n,leftAddon:t,leftElement:o,onContrast:u,placeholder:i,rightAddon:l,rightElement:x,showControls:A=!1,size:D="md",value:T,["data-testid"]:c="kibble-number-input",...O},F)=>r.jsxRuntimeExports.jsx(V.Box,{className:"NumberInput__Wrapper",position:"relative",w:"100%",children:r.jsxRuntimeExports.jsxs(H,{className:"NumberInput","data-testid":c,ref:F,value:T,size:D,disabled:e,variant:u?"onContrast":"default",...O,children:[r.jsxRuntimeExports.jsx(M.InputGroup,{className:"NumberInput__InputGroup","data-testid":`${c}-input-group`,startElement:o,startElementProps:{color:"inherit",_groupDisabled:{opacity:.6}},endElement:x,endElementProps:{color:"inherit",paddingInline:1.5,_groupDisabled:{opacity:.6}},startAddon:t,endAddon:l,children:r.jsxRuntimeExports.jsx(J,{className:"NumberInput__Input","data-testid":`${c}-input`,ref:n,placeholder:i})}),r.jsxRuntimeExports.jsx(Q,{children:S=>r.jsxRuntimeExports.jsx("input",{className:"NumberInput__HiddenInput","data-testid":`${c}-hidden-input`,type:"hidden",name:"amount",value:S.valueAsNumber})}),A&&r.jsxRuntimeExports.jsxs(K,{className:"NumberInput__Control","data-testid":`${c}-control`,children:[r.jsxRuntimeExports.jsx(q,{className:"NumberInput__IncrementTrigger","data-testid":`${c}-increment-trigger`,children:r.jsxRuntimeExports.jsx(b.Icon,{name:"chevronUp",variant:u?"onContrast":"default"})}),r.jsxRuntimeExports.jsx($,{className:"NumberInput__DecrementTrigger","data-testid":`${c}-decrement-trigger`,children:r.jsxRuntimeExports.jsx(b.Icon,{name:"chevronDown",variant:u?"onContrast":"default"})})]})]})}));k.displayName="NumberInput";const X=L.withFormControl(k);exports.WrappedNumberInput=X;
2
- //# sourceMappingURL=numberInput.component-DG6IWAHs.js.map
1
+ "use strict";const r=require("./jsx-runtime-BjDatQAs.js"),p=require("react"),V=require("./index-BQRnVsAg.js"),L=require("./withFormControl-QV_Jridv.js"),b=require("./icon.component-B1hr5lLa.js"),M=require("./input-group-DUdSDk4o.js"),W=require("./create-slot-recipe-context-HXE1VazG.js"),N=require("./icons-B6Nwr9di.js"),s=require("./use-locale-context-ym21RUxU.js"),I=require("./index-DVyODQn6.js"),g=require("./use-field-context-Cm29IQ7H.js"),a=require("./index-CQURjLlA.js"),G=e=>e&&e.__esModule?e:{default:e},B=G(p),[j,m]=s.createContext({name:"NumberInputContext",hookName:"useNumberInputContext",providerName:"<NumberInputProvider />"}),U=e=>e.children(m()),R=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getControlProps(),e);return r.jsxRuntimeExports.jsx(s.ark.div,{...o,ref:n})});R.displayName="NumberInputControl";const f=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getDecrementTriggerProps(),e);return r.jsxRuntimeExports.jsx(s.ark.button,{...o,ref:n})});f.displayName="NumberInputDecrementTrigger";const P=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getIncrementTriggerProps(),e);return r.jsxRuntimeExports.jsx(s.ark.button,{...o,ref:n})});P.displayName="NumberInputIncrementTrigger";const h=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getInputProps(),e),u=g.useFieldContext();return r.jsxRuntimeExports.jsx(s.ark.input,{"aria-describedby":u?.ariaDescribedby,...o,ref:n})});h.displayName="NumberInputInput";const C=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getLabelProps(),e);return r.jsxRuntimeExports.jsx(s.ark.label,{...o,ref:n})});C.displayName="NumberInputLabel";const z=e=>{const n=p.useId(),{getRootNode:t}=s.useEnvironmentContext(),{dir:o,locale:u}=s.useLocaleContext(),i=g.useFieldContext(),l={id:n,ids:{label:i?.ids.label,input:i?.ids.control},disabled:i?.disabled,readOnly:i?.readOnly,required:i?.required,invalid:i?.invalid,dir:o,locale:u,getRootNode:t,...e},x=s.useMachine(I.machine,l);return I.connect(x,s.normalizeProps)},v=p.forwardRef((e,n)=>{const[t,o]=s.createSplitProps()(e,["allowMouseWheel","allowOverflow","clampValueOnBlur","defaultValue","disabled","focusInputOnChange","form","formatOptions","id","ids","inputMode","invalid","locale","max","min","name","onFocusChange","onValueChange","onValueInvalid","pattern","readOnly","required","spinOnPress","step","translations","value"]),u=z(t),i=a.mergeProps(u.getRootProps(),o);return r.jsxRuntimeExports.jsx(j,{value:u,children:r.jsxRuntimeExports.jsx(s.ark.div,{...i,ref:n})})});v.displayName="NumberInputRoot";const E=p.forwardRef((e,n)=>{const[{value:t},o]=s.createSplitProps()(e,["value"]),u=a.mergeProps(t.getRootProps(),o);return r.jsxRuntimeExports.jsx(j,{value:t,children:r.jsxRuntimeExports.jsx(s.ark.div,{...u,ref:n})})});E.displayName="NumberInputRootProvider";const w=p.forwardRef((e,n)=>{const t=m(),o=a.mergeProps(t.getScrubberProps(),e);return r.jsxRuntimeExports.jsx(s.ark.div,{...o,ref:n})});w.displayName="NumberInputScrubber";const _=p.forwardRef((e,n)=>{const{children:t,...o}=e,u=m(),i=a.mergeProps(u.getValueTextProps(),o);return r.jsxRuntimeExports.jsx(s.ark.span,{...i,ref:n,children:t||u.value})});_.displayName="NumberInputValueText";const{withProvider:y,withContext:d}=W.createSlotRecipeContext({key:"numberInput"});y(E,"root",{forwardAsChild:!0});const H=y(v,"root",{forwardAsChild:!0});d(C,"label",{forwardAsChild:!0});const J=d(h,"input",{forwardAsChild:!0}),q=d(P,"incrementTrigger",{forwardAsChild:!0,defaultProps:{children:r.jsxRuntimeExports.jsx(N.ChevronUpIcon,{})}}),$=d(f,"decrementTrigger",{forwardAsChild:!0,defaultProps:{children:r.jsxRuntimeExports.jsx(N.ChevronDownIcon,{})}}),K=d(R,"control",{forwardAsChild:!0,defaultProps:{children:r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[r.jsxRuntimeExports.jsx(q,{}),r.jsxRuntimeExports.jsx($,{})]})}});d(w,"scrubber",{forwardAsChild:!0});d(_,"valueText",{forwardAsChild:!0});const Q=U,k=B.default.forwardRef(({disabled:e=!1,inputRef:n,leftAddon:t,leftElement:o,onContrast:u,placeholder:i,rightAddon:l,rightElement:x,showControls:A=!1,size:D="md",value:T,["data-testid"]:c="kibble-number-input",...O},F)=>r.jsxRuntimeExports.jsx(V.Box,{className:"NumberInput__Wrapper",position:"relative",w:"100%",children:r.jsxRuntimeExports.jsxs(H,{className:"NumberInput","data-testid":c,ref:F,value:T,size:D,disabled:e,variant:u?"onContrast":"default",...O,children:[r.jsxRuntimeExports.jsx(M.InputGroup,{className:"NumberInput__InputGroup","data-testid":`${c}-input-group`,startElement:o,startElementProps:{color:"inherit",_groupDisabled:{opacity:.6}},endElement:x,endElementProps:{color:"inherit",paddingInline:1.5,_groupDisabled:{opacity:.6}},startAddon:t,endAddon:l,children:r.jsxRuntimeExports.jsx(J,{className:"NumberInput__Input","data-testid":`${c}-input`,ref:n,placeholder:i})}),r.jsxRuntimeExports.jsx(Q,{children:S=>r.jsxRuntimeExports.jsx("input",{className:"NumberInput__HiddenInput","data-testid":`${c}-hidden-input`,type:"hidden",name:"amount",value:S.valueAsNumber})}),A&&r.jsxRuntimeExports.jsxs(K,{className:"NumberInput__Control","data-testid":`${c}-control`,children:[r.jsxRuntimeExports.jsx(q,{className:"NumberInput__IncrementTrigger","data-testid":`${c}-increment-trigger`,children:r.jsxRuntimeExports.jsx(b.Icon,{name:"chevronUp",variant:u?"onContrast":"default"})}),r.jsxRuntimeExports.jsx($,{className:"NumberInput__DecrementTrigger","data-testid":`${c}-decrement-trigger`,children:r.jsxRuntimeExports.jsx(b.Icon,{name:"chevronDown",variant:u?"onContrast":"default"})})]})]})}));k.displayName="NumberInput";const X=L.withFormControl(k);exports.WrappedNumberInput=X;
2
+ //# sourceMappingURL=numberInput.component-DGPEz0Fv.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"numberInput.component-DG6IWAHs.js","sources":["../../node_modules/@ark-ui/react/dist/components/number-input/use-number-input-context.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-context.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-control.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-decrement-trigger.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-increment-trigger.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-input.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-label.js","../../node_modules/@ark-ui/react/dist/components/number-input/use-number-input.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-root.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-root-provider.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-scrubber.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-value-text.js","../../node_modules/@chakra-ui/react/dist/esm/components/number-input/number-input.js","../../src/components/NumberInput/numberInput.component.tsx"],"sourcesContent":["'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [NumberInputProvider, useNumberInputContext] = createContext({\n name: \"NumberInputContext\",\n hookName: \"useNumberInputContext\",\n providerName: \"<NumberInputProvider />\"\n});\n\nexport { NumberInputProvider, useNumberInputContext };\n","'use client';\nimport { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputContext = (props) => props.children(useNumberInputContext());\n\nexport { NumberInputContext };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputControl = forwardRef((props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getControlProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nNumberInputControl.displayName = \"NumberInputControl\";\n\nexport { NumberInputControl };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputDecrementTrigger = forwardRef(\n (props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getDecrementTriggerProps(), props);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n }\n);\nNumberInputDecrementTrigger.displayName = \"NumberInputDecrementTrigger\";\n\nexport { NumberInputDecrementTrigger };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputIncrementTrigger = forwardRef(\n (props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getIncrementTriggerProps(), props);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n }\n);\nNumberInputIncrementTrigger.displayName = \"NumberInputIncrementTrigger\";\n\nexport { NumberInputIncrementTrigger };\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 { useFieldContext } from '../field/use-field-context.js';\nimport { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputInput = forwardRef((props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getInputProps(), props);\n const field = useFieldContext();\n return /* @__PURE__ */ jsx(ark.input, { \"aria-describedby\": field?.ariaDescribedby, ...mergedProps, ref });\n});\nNumberInputInput.displayName = \"NumberInputInput\";\n\nexport { NumberInputInput };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputLabel = forwardRef((props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getLabelProps(), props);\n return /* @__PURE__ */ jsx(ark.label, { ...mergedProps, ref });\n});\nNumberInputLabel.displayName = \"NumberInputLabel\";\n\nexport { NumberInputLabel };\n","'use client';\nimport * as numberInput from '@zag-js/number-input';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\nimport { useFieldContext } from '../field/use-field-context.js';\n\nconst useNumberInput = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir, locale } = useLocaleContext();\n const field = useFieldContext();\n const machineProps = {\n id,\n ids: {\n label: field?.ids.label,\n input: field?.ids.control\n },\n disabled: field?.disabled,\n readOnly: field?.readOnly,\n required: field?.required,\n invalid: field?.invalid,\n dir,\n locale,\n getRootNode,\n ...props\n };\n const service = useMachine(numberInput.machine, machineProps);\n return numberInput.connect(service, normalizeProps);\n};\n\nexport { useNumberInput };\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 { useNumberInput } from './use-number-input.js';\nimport { NumberInputProvider } from './use-number-input-context.js';\n\nconst NumberInputRoot = forwardRef((props, ref) => {\n const [useNumberInputProps, localProps] = createSplitProps()(props, [\n \"allowMouseWheel\",\n \"allowOverflow\",\n \"clampValueOnBlur\",\n \"defaultValue\",\n \"disabled\",\n \"focusInputOnChange\",\n \"form\",\n \"formatOptions\",\n \"id\",\n \"ids\",\n \"inputMode\",\n \"invalid\",\n \"locale\",\n \"max\",\n \"min\",\n \"name\",\n \"onFocusChange\",\n \"onValueChange\",\n \"onValueInvalid\",\n \"pattern\",\n \"readOnly\",\n \"required\",\n \"spinOnPress\",\n \"step\",\n \"translations\",\n \"value\"\n ]);\n const numberInput = useNumberInput(useNumberInputProps);\n const mergedProps = mergeProps(numberInput.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(NumberInputProvider, { value: numberInput, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nNumberInputRoot.displayName = \"NumberInputRoot\";\n\nexport { NumberInputRoot };\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 { NumberInputProvider } from './use-number-input-context.js';\n\nconst NumberInputRootProvider = forwardRef((props, ref) => {\n const [{ value: numberInput }, localProps] = createSplitProps()(props, [\"value\"]);\n const mergedProps = mergeProps(numberInput.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(NumberInputProvider, { value: numberInput, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nNumberInputRootProvider.displayName = \"NumberInputRootProvider\";\n\nexport { NumberInputRootProvider };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputScrubber = forwardRef((props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getScrubberProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nNumberInputScrubber.displayName = \"NumberInputScrubber\";\n\nexport { NumberInputScrubber };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputValueText = forwardRef((props, ref) => {\n const { children, ...localProps } = props;\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getValueTextProps(), localProps);\n return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref, children: children || numberInput.value });\n});\nNumberInputValueText.displayName = \"NumberInputValueText\";\n\nexport { NumberInputValueText };\n","\"use strict\";\n\"use client\";\nimport { jsx, jsxs, Fragment } from 'react/jsx-runtime';\nimport { NumberInput } from '@ark-ui/react/number-input';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { ChevronUpIcon, ChevronDownIcon } from '../icons.js';\n\nconst {\n withProvider,\n withContext,\n useStyles: useNumberInputStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"numberInput\" });\nconst NumberInputRootProvider = withProvider(NumberInput.RootProvider, \"root\", { forwardAsChild: true });\nconst NumberInputRoot = withProvider(NumberInput.Root, \"root\", { forwardAsChild: true });\nconst NumberInputPropsProvider = PropsProvider;\nconst NumberInputLabel = withContext(NumberInput.Label, \"label\", { forwardAsChild: true });\nconst NumberInputInput = withContext(NumberInput.Input, \"input\", { forwardAsChild: true });\nconst NumberInputIncrementTrigger = withContext(NumberInput.IncrementTrigger, \"incrementTrigger\", {\n forwardAsChild: true,\n defaultProps: { children: /* @__PURE__ */ jsx(ChevronUpIcon, {}) }\n});\nconst NumberInputDecrementTrigger = withContext(NumberInput.DecrementTrigger, \"decrementTrigger\", {\n forwardAsChild: true,\n defaultProps: { children: /* @__PURE__ */ jsx(ChevronDownIcon, {}) }\n});\nconst NumberInputControl = withContext(NumberInput.Control, \"control\", {\n forwardAsChild: true,\n defaultProps: {\n children: /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(NumberInputIncrementTrigger, {}),\n /* @__PURE__ */ jsx(NumberInputDecrementTrigger, {})\n ] })\n }\n});\nconst NumberInputScrubber = withContext(NumberInput.Scrubber, \"scrubber\", { forwardAsChild: true });\nconst NumberInputValueText = withContext(NumberInput.ValueText, \"valueText\", { forwardAsChild: true });\nconst NumberInputContext = NumberInput.Context;\n\nexport { NumberInputContext, NumberInputControl, NumberInputDecrementTrigger, NumberInputIncrementTrigger, NumberInputInput, NumberInputLabel, NumberInputPropsProvider, NumberInputRoot, NumberInputRootProvider, NumberInputScrubber, NumberInputValueText, useNumberInputStyles };\n","import React from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { withFormControl, WithFormControlProps } from 'hocs/withFormControl/withFormControl';\nimport {\n NumberInput as CNumberInput,\n NumberInputRootProps as CNumberInputRootProps,\n NumberInputValueChangeDetails,\n} from '@chakra-ui/react/number-input';\nimport { InputGroup } from '@chakra-ui/react/input-group';\nimport { FormControlSize } from 'hocs/withFormControl/withFormControl.types';\nimport { Icon } from 'components/Icon/icon.component';\n\nexport interface NumberInputProps extends WithFormControlProps, CNumberInputRootProps {\n /** Ref to the number input element. */\n inputRef?: React.Ref<HTMLInputElement | null>;\n /** Left addon element. */\n leftAddon?: React.ReactNode;\n /** Left element inside the input. */\n leftElement?: React.ReactNode;\n /**\n * If true, the input will render a contrasting variant.\n * @default false\n */\n onContrast?: boolean;\n /** Placeholder text for the number input field. */\n placeholder?: string;\n /** Right addon element. */\n rightAddon?: React.ReactNode;\n /** Right element inside the input. */\n rightElement?: React.ReactNode;\n /**\n * If true, the input will show the increment and decrement buttons.\n * @default false\n */\n showControls?: boolean;\n /** Size of the number input.\n * @default md\n */\n size?: FormControlSize;\n /** Data test id for the number input.\n * @default kibble-number-input\n */\n 'data-testid'?: string;\n /** Callback function when the input value changes. */\n onValueChange?: (details: NumberInputValueChangeDetails) => void;\n}\n\nconst NumberInput = React.forwardRef<HTMLInputElement, NumberInputProps>(\n (\n {\n disabled = false,\n inputRef,\n leftAddon,\n leftElement,\n onContrast,\n placeholder,\n rightAddon,\n rightElement,\n showControls = false,\n size = 'md',\n value,\n ['data-testid']: dataTestId = 'kibble-number-input',\n ...rest\n },\n ref,\n ): React.JSX.Element => {\n return (\n <Box className=\"NumberInput__Wrapper\" position=\"relative\" w=\"100%\">\n <CNumberInput.Root\n className=\"NumberInput\"\n data-testid={dataTestId}\n ref={ref}\n value={value}\n size={size}\n disabled={disabled}\n variant={onContrast ? 'onContrast' : 'default'}\n {...rest}\n >\n <InputGroup\n className=\"NumberInput__InputGroup\"\n data-testid={`${dataTestId}-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 <CNumberInput.Input\n className=\"NumberInput__Input\"\n data-testid={`${dataTestId}-input`}\n ref={inputRef}\n placeholder={placeholder}\n />\n </InputGroup>\n <CNumberInput.Context>\n {(context) => (\n <input\n className=\"NumberInput__HiddenInput\"\n data-testid={`${dataTestId}-hidden-input`}\n type=\"hidden\"\n name=\"amount\"\n value={context.valueAsNumber}\n />\n )}\n </CNumberInput.Context>\n {showControls && (\n <CNumberInput.Control className=\"NumberInput__Control\" data-testid={`${dataTestId}-control`}>\n <CNumberInput.IncrementTrigger\n className=\"NumberInput__IncrementTrigger\"\n data-testid={`${dataTestId}-increment-trigger`}\n >\n <Icon name=\"chevronUp\" variant={onContrast ? 'onContrast' : 'default'} />\n </CNumberInput.IncrementTrigger>\n <CNumberInput.DecrementTrigger\n className=\"NumberInput__DecrementTrigger\"\n data-testid={`${dataTestId}-decrement-trigger`}\n >\n <Icon name=\"chevronDown\" variant={onContrast ? 'onContrast' : 'default'} />\n </CNumberInput.DecrementTrigger>\n </CNumberInput.Control>\n )}\n </CNumberInput.Root>\n </Box>\n );\n },\n);\n\nNumberInput.displayName = 'NumberInput';\nconst WrappedNumberInput = withFormControl<NumberInputProps>(NumberInput);\n\nexport { WrappedNumberInput as NumberInput };\n"],"names":["NumberInputProvider","useNumberInputContext","createContext","NumberInputContext","props","NumberInputControl","forwardRef","ref","numberInput","mergedProps","mergeProps","jsx","ark","NumberInputDecrementTrigger","NumberInputIncrementTrigger","NumberInputInput","field","useFieldContext","NumberInputLabel","useNumberInput","id","useId","getRootNode","useEnvironmentContext","dir","locale","useLocaleContext","machineProps","service","useMachine","numberInput.machine","numberInput.connect","normalizeProps","NumberInputRoot","useNumberInputProps","localProps","createSplitProps","NumberInputRootProvider","NumberInputScrubber","NumberInputValueText","children","withProvider","withContext","createSlotRecipeContext","NumberInput.RootProvider","NumberInput.Root","NumberInput.Label","NumberInput.Input","NumberInput.IncrementTrigger","ChevronUpIcon","NumberInput.DecrementTrigger","ChevronDownIcon","NumberInput.Control","jsxs","Fragment","NumberInput.Scrubber","NumberInput.ValueText","NumberInput.Context","NumberInput","React","disabled","inputRef","leftAddon","leftElement","onContrast","placeholder","rightAddon","rightElement","showControls","size","value","dataTestId","rest","Box","CNumberInput.Root","InputGroup","CNumberInput.Input","CNumberInput.Context","context","CNumberInput.Control","CNumberInput.IncrementTrigger","Icon","CNumberInput.DecrementTrigger","WrappedNumberInput","withFormControl"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12]}
1
+ {"version":3,"file":"numberInput.component-DGPEz0Fv.js","sources":["../../node_modules/@ark-ui/react/dist/components/number-input/use-number-input-context.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-context.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-control.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-decrement-trigger.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-increment-trigger.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-input.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-label.js","../../node_modules/@ark-ui/react/dist/components/number-input/use-number-input.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-root.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-root-provider.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-scrubber.js","../../node_modules/@ark-ui/react/dist/components/number-input/number-input-value-text.js","../../node_modules/@chakra-ui/react/dist/esm/components/number-input/number-input.js","../../src/components/NumberInput/numberInput.component.tsx"],"sourcesContent":["'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [NumberInputProvider, useNumberInputContext] = createContext({\n name: \"NumberInputContext\",\n hookName: \"useNumberInputContext\",\n providerName: \"<NumberInputProvider />\"\n});\n\nexport { NumberInputProvider, useNumberInputContext };\n","'use client';\nimport { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputContext = (props) => props.children(useNumberInputContext());\n\nexport { NumberInputContext };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputControl = forwardRef((props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getControlProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nNumberInputControl.displayName = \"NumberInputControl\";\n\nexport { NumberInputControl };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputDecrementTrigger = forwardRef(\n (props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getDecrementTriggerProps(), props);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n }\n);\nNumberInputDecrementTrigger.displayName = \"NumberInputDecrementTrigger\";\n\nexport { NumberInputDecrementTrigger };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputIncrementTrigger = forwardRef(\n (props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getIncrementTriggerProps(), props);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n }\n);\nNumberInputIncrementTrigger.displayName = \"NumberInputIncrementTrigger\";\n\nexport { NumberInputIncrementTrigger };\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 { useFieldContext } from '../field/use-field-context.js';\nimport { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputInput = forwardRef((props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getInputProps(), props);\n const field = useFieldContext();\n return /* @__PURE__ */ jsx(ark.input, { \"aria-describedby\": field?.ariaDescribedby, ...mergedProps, ref });\n});\nNumberInputInput.displayName = \"NumberInputInput\";\n\nexport { NumberInputInput };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputLabel = forwardRef((props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getLabelProps(), props);\n return /* @__PURE__ */ jsx(ark.label, { ...mergedProps, ref });\n});\nNumberInputLabel.displayName = \"NumberInputLabel\";\n\nexport { NumberInputLabel };\n","'use client';\nimport * as numberInput from '@zag-js/number-input';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\nimport { useFieldContext } from '../field/use-field-context.js';\n\nconst useNumberInput = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir, locale } = useLocaleContext();\n const field = useFieldContext();\n const machineProps = {\n id,\n ids: {\n label: field?.ids.label,\n input: field?.ids.control\n },\n disabled: field?.disabled,\n readOnly: field?.readOnly,\n required: field?.required,\n invalid: field?.invalid,\n dir,\n locale,\n getRootNode,\n ...props\n };\n const service = useMachine(numberInput.machine, machineProps);\n return numberInput.connect(service, normalizeProps);\n};\n\nexport { useNumberInput };\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 { useNumberInput } from './use-number-input.js';\nimport { NumberInputProvider } from './use-number-input-context.js';\n\nconst NumberInputRoot = forwardRef((props, ref) => {\n const [useNumberInputProps, localProps] = createSplitProps()(props, [\n \"allowMouseWheel\",\n \"allowOverflow\",\n \"clampValueOnBlur\",\n \"defaultValue\",\n \"disabled\",\n \"focusInputOnChange\",\n \"form\",\n \"formatOptions\",\n \"id\",\n \"ids\",\n \"inputMode\",\n \"invalid\",\n \"locale\",\n \"max\",\n \"min\",\n \"name\",\n \"onFocusChange\",\n \"onValueChange\",\n \"onValueInvalid\",\n \"pattern\",\n \"readOnly\",\n \"required\",\n \"spinOnPress\",\n \"step\",\n \"translations\",\n \"value\"\n ]);\n const numberInput = useNumberInput(useNumberInputProps);\n const mergedProps = mergeProps(numberInput.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(NumberInputProvider, { value: numberInput, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nNumberInputRoot.displayName = \"NumberInputRoot\";\n\nexport { NumberInputRoot };\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 { NumberInputProvider } from './use-number-input-context.js';\n\nconst NumberInputRootProvider = forwardRef((props, ref) => {\n const [{ value: numberInput }, localProps] = createSplitProps()(props, [\"value\"]);\n const mergedProps = mergeProps(numberInput.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(NumberInputProvider, { value: numberInput, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nNumberInputRootProvider.displayName = \"NumberInputRootProvider\";\n\nexport { NumberInputRootProvider };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputScrubber = forwardRef((props, ref) => {\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getScrubberProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nNumberInputScrubber.displayName = \"NumberInputScrubber\";\n\nexport { NumberInputScrubber };\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 { useNumberInputContext } from './use-number-input-context.js';\n\nconst NumberInputValueText = forwardRef((props, ref) => {\n const { children, ...localProps } = props;\n const numberInput = useNumberInputContext();\n const mergedProps = mergeProps(numberInput.getValueTextProps(), localProps);\n return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref, children: children || numberInput.value });\n});\nNumberInputValueText.displayName = \"NumberInputValueText\";\n\nexport { NumberInputValueText };\n","\"use strict\";\n\"use client\";\nimport { jsx, jsxs, Fragment } from 'react/jsx-runtime';\nimport { NumberInput } from '@ark-ui/react/number-input';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { ChevronUpIcon, ChevronDownIcon } from '../icons.js';\n\nconst {\n withProvider,\n withContext,\n useStyles: useNumberInputStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"numberInput\" });\nconst NumberInputRootProvider = withProvider(NumberInput.RootProvider, \"root\", { forwardAsChild: true });\nconst NumberInputRoot = withProvider(NumberInput.Root, \"root\", { forwardAsChild: true });\nconst NumberInputPropsProvider = PropsProvider;\nconst NumberInputLabel = withContext(NumberInput.Label, \"label\", { forwardAsChild: true });\nconst NumberInputInput = withContext(NumberInput.Input, \"input\", { forwardAsChild: true });\nconst NumberInputIncrementTrigger = withContext(NumberInput.IncrementTrigger, \"incrementTrigger\", {\n forwardAsChild: true,\n defaultProps: { children: /* @__PURE__ */ jsx(ChevronUpIcon, {}) }\n});\nconst NumberInputDecrementTrigger = withContext(NumberInput.DecrementTrigger, \"decrementTrigger\", {\n forwardAsChild: true,\n defaultProps: { children: /* @__PURE__ */ jsx(ChevronDownIcon, {}) }\n});\nconst NumberInputControl = withContext(NumberInput.Control, \"control\", {\n forwardAsChild: true,\n defaultProps: {\n children: /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(NumberInputIncrementTrigger, {}),\n /* @__PURE__ */ jsx(NumberInputDecrementTrigger, {})\n ] })\n }\n});\nconst NumberInputScrubber = withContext(NumberInput.Scrubber, \"scrubber\", { forwardAsChild: true });\nconst NumberInputValueText = withContext(NumberInput.ValueText, \"valueText\", { forwardAsChild: true });\nconst NumberInputContext = NumberInput.Context;\n\nexport { NumberInputContext, NumberInputControl, NumberInputDecrementTrigger, NumberInputIncrementTrigger, NumberInputInput, NumberInputLabel, NumberInputPropsProvider, NumberInputRoot, NumberInputRootProvider, NumberInputScrubber, NumberInputValueText, useNumberInputStyles };\n","import React from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { withFormControl, WithFormControlProps } from 'hocs/withFormControl/withFormControl';\nimport {\n NumberInput as CNumberInput,\n NumberInputRootProps as CNumberInputRootProps,\n NumberInputValueChangeDetails,\n} from '@chakra-ui/react/number-input';\nimport { InputGroup } from '@chakra-ui/react/input-group';\nimport { FormControlSize } from 'hocs/withFormControl/withFormControl.types';\nimport { Icon } from 'components/Icon/icon.component';\n\nexport interface NumberInputProps extends WithFormControlProps, CNumberInputRootProps {\n /** Ref to the number input element. */\n inputRef?: React.Ref<HTMLInputElement | null>;\n /** Left addon element. */\n leftAddon?: React.ReactNode;\n /** Left element inside the input. */\n leftElement?: React.ReactNode;\n /**\n * If true, the input will render a contrasting variant.\n * @default false\n */\n onContrast?: boolean;\n /** Placeholder text for the number input field. */\n placeholder?: string;\n /** Right addon element. */\n rightAddon?: React.ReactNode;\n /** Right element inside the input. */\n rightElement?: React.ReactNode;\n /**\n * If true, the input will show the increment and decrement buttons.\n * @default false\n */\n showControls?: boolean;\n /** Size of the number input.\n * @default md\n */\n size?: FormControlSize;\n /** Data test id for the number input.\n * @default kibble-number-input\n */\n 'data-testid'?: string;\n /** Callback function when the input value changes. */\n onValueChange?: (details: NumberInputValueChangeDetails) => void;\n}\n\nconst NumberInput = React.forwardRef<HTMLInputElement, NumberInputProps>(\n (\n {\n disabled = false,\n inputRef,\n leftAddon,\n leftElement,\n onContrast,\n placeholder,\n rightAddon,\n rightElement,\n showControls = false,\n size = 'md',\n value,\n ['data-testid']: dataTestId = 'kibble-number-input',\n ...rest\n },\n ref,\n ): React.JSX.Element => {\n return (\n <Box className=\"NumberInput__Wrapper\" position=\"relative\" w=\"100%\">\n <CNumberInput.Root\n className=\"NumberInput\"\n data-testid={dataTestId}\n ref={ref}\n value={value}\n size={size}\n disabled={disabled}\n variant={onContrast ? 'onContrast' : 'default'}\n {...rest}\n >\n <InputGroup\n className=\"NumberInput__InputGroup\"\n data-testid={`${dataTestId}-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 <CNumberInput.Input\n className=\"NumberInput__Input\"\n data-testid={`${dataTestId}-input`}\n ref={inputRef}\n placeholder={placeholder}\n />\n </InputGroup>\n <CNumberInput.Context>\n {(context) => (\n <input\n className=\"NumberInput__HiddenInput\"\n data-testid={`${dataTestId}-hidden-input`}\n type=\"hidden\"\n name=\"amount\"\n value={context.valueAsNumber}\n />\n )}\n </CNumberInput.Context>\n {showControls && (\n <CNumberInput.Control className=\"NumberInput__Control\" data-testid={`${dataTestId}-control`}>\n <CNumberInput.IncrementTrigger\n className=\"NumberInput__IncrementTrigger\"\n data-testid={`${dataTestId}-increment-trigger`}\n >\n <Icon name=\"chevronUp\" variant={onContrast ? 'onContrast' : 'default'} />\n </CNumberInput.IncrementTrigger>\n <CNumberInput.DecrementTrigger\n className=\"NumberInput__DecrementTrigger\"\n data-testid={`${dataTestId}-decrement-trigger`}\n >\n <Icon name=\"chevronDown\" variant={onContrast ? 'onContrast' : 'default'} />\n </CNumberInput.DecrementTrigger>\n </CNumberInput.Control>\n )}\n </CNumberInput.Root>\n </Box>\n );\n },\n);\n\nNumberInput.displayName = 'NumberInput';\nconst WrappedNumberInput = withFormControl<NumberInputProps>(NumberInput);\n\nexport { WrappedNumberInput as NumberInput };\n"],"names":["NumberInputProvider","useNumberInputContext","createContext","NumberInputContext","props","NumberInputControl","forwardRef","ref","numberInput","mergedProps","mergeProps","jsx","ark","NumberInputDecrementTrigger","NumberInputIncrementTrigger","NumberInputInput","field","useFieldContext","NumberInputLabel","useNumberInput","id","useId","getRootNode","useEnvironmentContext","dir","locale","useLocaleContext","machineProps","service","useMachine","numberInput.machine","numberInput.connect","normalizeProps","NumberInputRoot","useNumberInputProps","localProps","createSplitProps","NumberInputRootProvider","NumberInputScrubber","NumberInputValueText","children","withProvider","withContext","createSlotRecipeContext","NumberInput.RootProvider","NumberInput.Root","NumberInput.Label","NumberInput.Input","NumberInput.IncrementTrigger","ChevronUpIcon","NumberInput.DecrementTrigger","ChevronDownIcon","NumberInput.Control","jsxs","Fragment","NumberInput.Scrubber","NumberInput.ValueText","NumberInput.Context","NumberInput","React","disabled","inputRef","leftAddon","leftElement","onContrast","placeholder","rightAddon","rightElement","showControls","size","value","dataTestId","rest","Box","CNumberInput.Root","InputGroup","CNumberInput.Input","CNumberInput.Context","context","CNumberInput.Control","CNumberInput.IncrementTrigger","Icon","CNumberInput.DecrementTrigger","WrappedNumberInput","withFormControl"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12]}
@@ -1,7 +1,7 @@
1
1
  import { j as e } from "./jsx-runtime-C5mzlN2N.js";
2
2
  import F, { forwardRef as a, useId as L } from "react";
3
3
  import { B as W } from "./index-9BerxEcw.js";
4
- import { w as q } from "./withFormControl-08PrhcOk.js";
4
+ import { w as q } from "./withFormControl-DW9A6BSL.js";
5
5
  import { I } from "./icon.component-PV_nHBId.js";
6
6
  import { I as B } from "./input-group-CFelIL63.js";
7
7
  import { c as M } from "./create-slot-recipe-context-D_FXDJGp.js";
@@ -224,4 +224,4 @@ const ge = q(D);
224
224
  export {
225
225
  ge as W
226
226
  };
227
- //# sourceMappingURL=numberInput.component-DFK4EYLV.js.map
227
+ //# sourceMappingURL=numberInput.component-V6NQs14b.js.map