@televet/kibble-ui 5.0.13 → 5.0.15

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 (230) hide show
  1. package/dist/chunks/{alert.types-BsTOOEB7.js → alert.types-DWm1TeiF.js} +3 -3
  2. package/dist/chunks/{alert.types-BsTOOEB7.js.map → alert.types-DWm1TeiF.js.map} +1 -1
  3. package/dist/chunks/{anatomy-BkGk10kB.js → anatomy-B0LtI6sf.js} +2 -2
  4. package/dist/chunks/{anatomy-BkGk10kB.js.map → anatomy-B0LtI6sf.js.map} +1 -1
  5. package/dist/chunks/{anatomy-zd4ecEFD.js → anatomy-DKlFmIC5.js} +12 -12
  6. package/dist/chunks/{anatomy-zd4ecEFD.js.map → anatomy-DKlFmIC5.js.map} +1 -1
  7. package/dist/chunks/{avatar.component-CzutRWy6.js → avatar.component-BL6D6Lw_.js} +5 -5
  8. package/dist/chunks/{avatar.component-CzutRWy6.js.map → avatar.component-BL6D6Lw_.js.map} +1 -1
  9. package/dist/chunks/{avatar.records-EoZmO3VR.js → avatar.records-DFg5kBIk.js} +13 -13
  10. package/dist/chunks/{avatar.records-EoZmO3VR.js.map → avatar.records-DFg5kBIk.js.map} +1 -1
  11. package/dist/chunks/{avatarGroup.component-WSh9t8AX.js → avatarGroup.component-Ba_rfWUg.js} +5 -5
  12. package/dist/chunks/{avatarGroup.component-WSh9t8AX.js.map → avatarGroup.component-Ba_rfWUg.js.map} +1 -1
  13. package/dist/chunks/{buttonGroup.component-TsLHB-LO.js → buttonGroup.component-BNOBvOyv.js} +2 -2
  14. package/dist/chunks/{buttonGroup.component-TsLHB-LO.js.map → buttonGroup.component-BNOBvOyv.js.map} +1 -1
  15. package/dist/chunks/{calendar.component-CiBkNtlB.js → calendar.component-B4EcYQEb.js} +2 -2
  16. package/dist/chunks/{calendar.component-CiBkNtlB.js.map → calendar.component-B4EcYQEb.js.map} +1 -1
  17. package/dist/chunks/{characterCounter.component-CoMqt04J.js → characterCounter.component-DI_FQNUR.js} +2 -2
  18. package/dist/chunks/{characterCounter.component-CoMqt04J.js.map → characterCounter.component-DI_FQNUR.js.map} +1 -1
  19. package/dist/chunks/{checkbox.anatomy-BzZ0IkUF.js → checkbox.anatomy-B8fWV_mm.js} +28 -28
  20. package/dist/chunks/{checkbox.anatomy-BzZ0IkUF.js.map → checkbox.anatomy-B8fWV_mm.js.map} +1 -1
  21. package/dist/chunks/{checkbox.component-C0XdgZkr.js → checkbox.component-DDsVfE4a.js} +9 -9
  22. package/dist/chunks/{checkbox.component-C0XdgZkr.js.map → checkbox.component-DDsVfE4a.js.map} +1 -1
  23. package/dist/chunks/{checkboxGroup.component-lxNvlmd_.js → checkboxGroup.component-Cx2Gvii5.js} +3 -3
  24. package/dist/chunks/{checkboxGroup.component-lxNvlmd_.js.map → checkboxGroup.component-Cx2Gvii5.js.map} +1 -1
  25. package/dist/chunks/{conversationCard.component-B_XSYd1p.js → conversationCard.component-D7hpX-QG.js} +8 -8
  26. package/dist/chunks/{conversationCard.component-B_XSYd1p.js.map → conversationCard.component-D7hpX-QG.js.map} +1 -1
  27. package/dist/chunks/{datePicker.component-BAaIqF1O.js → datePicker.component-BotAJpXU.js} +8 -8
  28. package/dist/chunks/{datePicker.component-BAaIqF1O.js.map → datePicker.component-BotAJpXU.js.map} +1 -1
  29. package/dist/chunks/{datePicker.component-mE9U6yIL.js → datePicker.component-Cx76pUPS.js} +2 -2
  30. package/dist/chunks/{datePicker.component-mE9U6yIL.js.map → datePicker.component-Cx76pUPS.js.map} +1 -1
  31. package/dist/chunks/{datePicker.provider-DEN8clnz.js → datePicker.provider-xtYFjWKI.js} +5 -5
  32. package/dist/chunks/{datePicker.provider-DEN8clnz.js.map → datePicker.provider-xtYFjWKI.js.map} +1 -1
  33. package/dist/chunks/{dateTimePicker.component-NOJdpYNs.js → dateTimePicker.component-CUIKZ5BK.js} +9 -9
  34. package/dist/chunks/{dateTimePicker.component-NOJdpYNs.js.map → dateTimePicker.component-CUIKZ5BK.js.map} +1 -1
  35. package/dist/chunks/{dateTimePicker.component-CmpTclKA.js → dateTimePicker.component-IGSiKHDc.js} +2 -2
  36. package/dist/chunks/{dateTimePicker.component-CmpTclKA.js.map → dateTimePicker.component-IGSiKHDc.js.map} +1 -1
  37. package/dist/chunks/{dialog-B9jifvV4.js → dialog-CJpn28QG.js} +6 -6
  38. package/dist/chunks/{dialog-B9jifvV4.js.map → dialog-CJpn28QG.js.map} +1 -1
  39. package/dist/chunks/{field.anatomy-C37GEr2p.js → field.anatomy-CAraH-al.js} +2 -2
  40. package/dist/chunks/{field.anatomy-C37GEr2p.js.map → field.anatomy-CAraH-al.js.map} +1 -1
  41. package/dist/chunks/{heading.component-PFNpLFT7.js → heading.component-CpSAN3cv.js} +2 -2
  42. package/dist/chunks/{heading.component-PFNpLFT7.js.map → heading.component-CpSAN3cv.js.map} +1 -1
  43. package/dist/chunks/index-6QSGfY1E.js +1011 -0
  44. package/dist/chunks/index-6QSGfY1E.js.map +1 -0
  45. package/dist/chunks/{index-D1RhzPVz.js → index-BBvspkoa.js} +3 -3
  46. package/dist/chunks/{index-D1RhzPVz.js.map → index-BBvspkoa.js.map} +1 -1
  47. package/dist/chunks/{index-D7QT9KIZ.js → index-BU6fRN91.js} +3 -3
  48. package/dist/chunks/{index-D7QT9KIZ.js.map → index-BU6fRN91.js.map} +1 -1
  49. package/dist/chunks/{index-Cxrrsmf-.js → index-BWNl4vB2.js} +8 -8
  50. package/dist/chunks/{index-Cxrrsmf-.js.map → index-BWNl4vB2.js.map} +1 -1
  51. package/dist/chunks/{index-fHSGm2nC.js → index-BcafYtXX.js} +47 -47
  52. package/dist/chunks/{index-fHSGm2nC.js.map → index-BcafYtXX.js.map} +1 -1
  53. package/dist/chunks/index-BhMI6dHH.js +191 -0
  54. package/dist/chunks/index-BhMI6dHH.js.map +1 -0
  55. package/dist/chunks/{index-QVc_GVoE.js → index-C0IJq4ol.js} +15 -15
  56. package/dist/chunks/{index-QVc_GVoE.js.map → index-C0IJq4ol.js.map} +1 -1
  57. package/dist/chunks/{index-wV4hG2vI.js → index-CXLyCyl3.js} +4 -4
  58. package/dist/chunks/{index-wV4hG2vI.js.map → index-CXLyCyl3.js.map} +1 -1
  59. package/dist/chunks/{index-DfzXSlq1.js → index-CcwGiuyq.js} +29 -29
  60. package/dist/chunks/{index-DfzXSlq1.js.map → index-CcwGiuyq.js.map} +1 -1
  61. package/dist/chunks/{index-BbZjRFzg.js → index-CgPTA7y6.js} +3 -3
  62. package/dist/chunks/{index-BbZjRFzg.js.map → index-CgPTA7y6.js.map} +1 -1
  63. package/dist/chunks/{index-CbVKVxMW.js → index-CmREf48Z.js} +11 -11
  64. package/dist/chunks/{index-CbVKVxMW.js.map → index-CmREf48Z.js.map} +1 -1
  65. package/dist/chunks/{index-B3xJnxjd.js → index-DJa3JmO7.js} +14 -14
  66. package/dist/chunks/{index-B3xJnxjd.js.map → index-DJa3JmO7.js.map} +1 -1
  67. package/dist/chunks/{index-DS4KlAkI.js → index-DVGrQEJi.js} +20 -20
  68. package/dist/chunks/{index-DS4KlAkI.js.map → index-DVGrQEJi.js.map} +1 -1
  69. package/dist/chunks/{index-C9UYIjEB.js → index-DcmJgLUo.js} +91 -91
  70. package/dist/chunks/{index-C9UYIjEB.js.map → index-DcmJgLUo.js.map} +1 -1
  71. package/dist/chunks/index-DhaZ70Qi.js +2 -0
  72. package/dist/chunks/index-DhaZ70Qi.js.map +1 -0
  73. package/dist/chunks/index-LDDF3MqB.js +2 -0
  74. package/dist/chunks/index-LDDF3MqB.js.map +1 -0
  75. package/dist/chunks/{index-D0DKQnEK.js → index-NrnnmC8w.js} +13 -13
  76. package/dist/chunks/{index-D0DKQnEK.js.map → index-NrnnmC8w.js.map} +1 -1
  77. package/dist/chunks/{index-BrJtqTzN.js → index-hPXhx9Mi.js} +5 -5
  78. package/dist/chunks/{index-BrJtqTzN.js.map → index-hPXhx9Mi.js.map} +1 -1
  79. package/dist/chunks/{index-BgFImxxe.js → index-k8xPaJWO.js} +12 -12
  80. package/dist/chunks/{index-BgFImxxe.js.map → index-k8xPaJWO.js.map} +1 -1
  81. package/dist/chunks/{index-D3Q0mQNf.js → index-mXLFPoCI.js} +18 -18
  82. package/dist/chunks/{index-D3Q0mQNf.js.map → index-mXLFPoCI.js.map} +1 -1
  83. package/dist/chunks/list-collection-Bla_aoE6.js +6 -0
  84. package/dist/chunks/list-collection-Bla_aoE6.js.map +1 -0
  85. package/dist/chunks/list-collection-DoQwQYv1.js +2 -0
  86. package/dist/chunks/list-collection-DoQwQYv1.js.map +1 -0
  87. package/dist/chunks/{menu.component-Cq9sPsTJ.js → menu.component-BEDMybmZ.js} +10 -10
  88. package/dist/chunks/{menu.component-Cq9sPsTJ.js.map → menu.component-BEDMybmZ.js.map} +1 -1
  89. package/dist/chunks/{modal.types-CVy-QT6f.js → modal.types-Bq9gdlSr.js} +4 -4
  90. package/dist/chunks/{modal.types-CVy-QT6f.js.map → modal.types-Bq9gdlSr.js.map} +1 -1
  91. package/dist/chunks/{notificationCounter.component-BlGSd37B.js → notificationCounter.component-6Q3q8jWj.js} +2 -2
  92. package/dist/chunks/{notificationCounter.component-BlGSd37B.js.map → notificationCounter.component-6Q3q8jWj.js.map} +1 -1
  93. package/dist/chunks/{numberInput.component-nT-7b9qv.js → numberInput.component-DFK4EYLV.js} +6 -6
  94. package/dist/chunks/{numberInput.component-nT-7b9qv.js.map → numberInput.component-DFK4EYLV.js.map} +1 -1
  95. package/dist/chunks/{pinInput.types-B0nfeSUS.js → pinInput.types-BmXYQb7O.js} +6 -6
  96. package/dist/chunks/{pinInput.types-B0nfeSUS.js.map → pinInput.types-BmXYQb7O.js.map} +1 -1
  97. package/dist/chunks/{popover-pd70xkY_.js → popover-Gb1fXSR7.js} +5 -5
  98. package/dist/chunks/{popover-pd70xkY_.js.map → popover-Gb1fXSR7.js.map} +1 -1
  99. package/dist/chunks/{popover-root-provider-DR0Iuda1.js → popover-root-provider-CFn2dthZ.js} +5 -5
  100. package/dist/chunks/{popover-root-provider-DR0Iuda1.js.map → popover-root-provider-CFn2dthZ.js.map} +1 -1
  101. package/dist/chunks/{popover.component-BsiKfJR7.js → popover.component-DIYT1Lc0.js} +8 -8
  102. package/dist/chunks/{popover.component-BsiKfJR7.js.map → popover.component-DIYT1Lc0.js.map} +1 -1
  103. package/dist/chunks/{popover.component-C0nG3J1J.js → popover.component-DTjA1GSd.js} +2 -2
  104. package/dist/chunks/{popover.component-C0nG3J1J.js.map → popover.component-DTjA1GSd.js.map} +1 -1
  105. package/dist/chunks/{popover.recipe-NDvOfG9X.js → popover.recipe-CtptsJg6.js} +2 -2
  106. package/dist/chunks/{popover.recipe-NDvOfG9X.js.map → popover.recipe-CtptsJg6.js.map} +1 -1
  107. package/dist/chunks/{popover.recipe-BAl0q_IZ.js → popover.recipe-DPwwsWLb.js} +2 -2
  108. package/dist/chunks/{popover.recipe-BAl0q_IZ.js.map → popover.recipe-DPwwsWLb.js.map} +1 -1
  109. package/dist/chunks/{progress-value-text-DZkUF2cO.js → progress-value-text-D1GjH6w4.js} +4 -4
  110. package/dist/chunks/{progress-value-text-DZkUF2cO.js.map → progress-value-text-D1GjH6w4.js.map} +1 -1
  111. package/dist/chunks/{radioGroup.types-B--54AgI.js → radioGroup.types-CVFQ5dZ7.js} +7 -7
  112. package/dist/chunks/{radioGroup.types-B--54AgI.js.map → radioGroup.types-CVFQ5dZ7.js.map} +1 -1
  113. package/dist/chunks/{rating-group-CfwdAW9a.js → rating-group-DRCWuE5-.js} +5 -5
  114. package/dist/chunks/{rating-group-CfwdAW9a.js.map → rating-group-DRCWuE5-.js.map} +1 -1
  115. package/dist/chunks/{rating.component-DHlwuL8y.js → rating.component-CQgpD-gS.js} +3 -3
  116. package/dist/chunks/{rating.component-DHlwuL8y.js.map → rating.component-CQgpD-gS.js.map} +1 -1
  117. package/dist/chunks/{ratingDots.component-C3ABFE0-.js → ratingDots.component-C1KgTGWj.js} +3 -3
  118. package/dist/chunks/{ratingDots.component-C3ABFE0-.js.map → ratingDots.component-C1KgTGWj.js.map} +1 -1
  119. package/dist/chunks/{render-strategy-munDZLwL.js → render-strategy-DLvzMQD1.js} +2 -2
  120. package/dist/chunks/{render-strategy-munDZLwL.js.map → render-strategy-DLvzMQD1.js.map} +1 -1
  121. package/dist/chunks/{select.component-D5EioB-E.js → select.component-BkDkYpf2.js} +254 -253
  122. package/dist/chunks/select.component-BkDkYpf2.js.map +1 -0
  123. package/dist/chunks/select.component-DoFwe4lJ.js +2 -0
  124. package/dist/chunks/select.component-DoFwe4lJ.js.map +1 -0
  125. package/dist/chunks/{sortableList.component-B2XQoMq7.js → sortableList.component-CbxbBLVQ.js} +3 -3
  126. package/dist/chunks/{sortableList.component-B2XQoMq7.js.map → sortableList.component-CbxbBLVQ.js.map} +1 -1
  127. package/dist/chunks/{spinner.component-D3s81AJH.js → spinner.component-CNHQ8UDz.js} +2 -2
  128. package/dist/chunks/{spinner.component-D3s81AJH.js.map → spinner.component-CNHQ8UDz.js.map} +1 -1
  129. package/dist/chunks/{styledAvatar.types-Dd3tKh-E.js → styledAvatar.types-BaOkOA8K.js} +2 -2
  130. package/dist/chunks/{styledAvatar.types-Dd3tKh-E.js.map → styledAvatar.types-BaOkOA8K.js.map} +1 -1
  131. package/dist/chunks/{switch.component-xlG0hUNX.js → switch.component-Cr8Abw0U.js} +6 -6
  132. package/dist/chunks/{switch.component-xlG0hUNX.js.map → switch.component-Cr8Abw0U.js.map} +1 -1
  133. package/dist/chunks/{tab.types-CO64KNxl.js → tab.types-BoHuF-QZ.js} +13 -13
  134. package/dist/chunks/{tab.types-CO64KNxl.js.map → tab.types-BoHuF-QZ.js.map} +1 -1
  135. package/dist/chunks/{tagBlock.component-BKYJDU4L.js → tagBlock.component-DjbevH0J.js} +5 -5
  136. package/dist/chunks/{tagBlock.component-BKYJDU4L.js.map → tagBlock.component-DjbevH0J.js.map} +1 -1
  137. package/dist/chunks/{text.component-IjomJyJY.js → text.component-DhuUgP3j.js} +2 -2
  138. package/dist/chunks/{text.component-IjomJyJY.js.map → text.component-DhuUgP3j.js.map} +1 -1
  139. package/dist/chunks/{textInput.component-BMy6cEdV.js → textInput.component-C7kdQ8hF.js} +6 -6
  140. package/dist/chunks/{textInput.component-BMy6cEdV.js.map → textInput.component-C7kdQ8hF.js.map} +1 -1
  141. package/dist/chunks/{textarea.component-ChN0RGoe.js → textarea.component-W9VBnd4-.js} +12 -12
  142. package/dist/chunks/{textarea.component-ChN0RGoe.js.map → textarea.component-W9VBnd4-.js.map} +1 -1
  143. package/dist/chunks/{theme.provider-CezsihF5.js → theme.provider-BWhqnOFC.js} +2 -2
  144. package/dist/chunks/{theme.provider-CezsihF5.js.map → theme.provider-BWhqnOFC.js.map} +1 -1
  145. package/dist/chunks/{theme.provider-wnaH4Plk.js → theme.provider-Cl9_chOv.js} +15 -15
  146. package/dist/chunks/{theme.provider-wnaH4Plk.js.map → theme.provider-Cl9_chOv.js.map} +1 -1
  147. package/dist/chunks/{timePicker.component-CSm0UnA5.js → timePicker.component-CDb67FCr.js} +3 -3
  148. package/dist/chunks/{timePicker.component-CSm0UnA5.js.map → timePicker.component-CDb67FCr.js.map} +1 -1
  149. package/dist/chunks/{timePicker.component-BbDzVLdb.js → timePicker.component-CIk5bEyP.js} +2 -2
  150. package/dist/chunks/{timePicker.component-BbDzVLdb.js.map → timePicker.component-CIk5bEyP.js.map} +1 -1
  151. package/dist/chunks/{timeRange.component-Cwn94GUk.js → timeRange.component-B1WKwc-X.js} +2 -2
  152. package/dist/chunks/{timeRange.component-Cwn94GUk.js.map → timeRange.component-B1WKwc-X.js.map} +1 -1
  153. package/dist/chunks/{timeRange.component-DyB1Jo1d.js → timeRange.component-NX1EOY8h.js} +2 -2
  154. package/dist/chunks/{timeRange.component-DyB1Jo1d.js.map → timeRange.component-NX1EOY8h.js.map} +1 -1
  155. package/dist/chunks/{timestamp.component-IfjfMFXl.js → timestamp.component-DkLjxUsy.js} +3 -3
  156. package/dist/chunks/{timestamp.component-IfjfMFXl.js.map → timestamp.component-DkLjxUsy.js.map} +1 -1
  157. package/dist/chunks/{toaster.records-Cb3hbtuY.js → toaster.records-BzZmnA3j.js} +69 -69
  158. package/dist/chunks/{toaster.records-Cb3hbtuY.js.map → toaster.records-BzZmnA3j.js.map} +1 -1
  159. package/dist/chunks/{tooltip.component-DFsQNG1q.js → tooltip.component-CHohp2qn.js} +5 -5
  160. package/dist/chunks/{tooltip.component-DFsQNG1q.js.map → tooltip.component-CHohp2qn.js.map} +1 -1
  161. package/dist/chunks/{use-field-context-DrC9mrDd.js → use-field-context-BoqOeObh.js} +2 -2
  162. package/dist/chunks/{use-field-context-DrC9mrDd.js.map → use-field-context-BoqOeObh.js.map} +1 -1
  163. package/dist/chunks/{use-locale-context-Bw4Gg9Z0.js → use-locale-context-DmcfCmf9.js} +11 -11
  164. package/dist/chunks/{use-locale-context-Bw4Gg9Z0.js.map → use-locale-context-DmcfCmf9.js.map} +1 -1
  165. package/dist/chunks/{withFormControl-lDkIqkED.js → withFormControl-08PrhcOk.js} +6 -6
  166. package/dist/chunks/{withFormControl-lDkIqkED.js.map → withFormControl-08PrhcOk.js.map} +1 -1
  167. package/dist/chunks/{withTruncation-CqDQUSVU.js → withTruncation-B2GhwmHG.js} +2 -2
  168. package/dist/chunks/{withTruncation-CqDQUSVU.js.map → withTruncation-B2GhwmHG.js.map} +1 -1
  169. package/dist/cjs/chakra/index.cjs +2 -2
  170. package/dist/cjs/chakra/index.cjs.map +1 -1
  171. package/dist/cjs/components/DatePicker/index.cjs +1 -1
  172. package/dist/cjs/components/DateTimePicker/index.cjs +1 -1
  173. package/dist/cjs/components/Popover/index.cjs +1 -1
  174. package/dist/cjs/components/Select/index.cjs +1 -1
  175. package/dist/cjs/components/TimePicker/index.cjs +1 -1
  176. package/dist/cjs/components/TimeRange/index.cjs +1 -1
  177. package/dist/cjs/components/index.cjs +1 -1
  178. package/dist/cjs/index.cjs +1 -1
  179. package/dist/cjs/theme/index.cjs +1 -1
  180. package/dist/esm/chakra/index.js +17 -15
  181. package/dist/esm/chakra/index.js.map +1 -1
  182. package/dist/esm/components/Alert/index.js +1 -1
  183. package/dist/esm/components/Avatar/index.js +1 -1
  184. package/dist/esm/components/AvatarGroup/index.js +1 -1
  185. package/dist/esm/components/ButtonGroup/index.js +1 -1
  186. package/dist/esm/components/Calendar/index.js +1 -1
  187. package/dist/esm/components/CharacterCounter/index.js +1 -1
  188. package/dist/esm/components/Checkbox/index.js +1 -1
  189. package/dist/esm/components/CheckboxGroup/index.js +1 -1
  190. package/dist/esm/components/ConversationCard/index.js +1 -1
  191. package/dist/esm/components/DatePicker/index.js +2 -2
  192. package/dist/esm/components/DateTimePicker/index.js +1 -1
  193. package/dist/esm/components/Heading/index.js +1 -1
  194. package/dist/esm/components/Menu/index.js +1 -1
  195. package/dist/esm/components/Modal/index.js +1 -1
  196. package/dist/esm/components/NotificationCounter/index.js +1 -1
  197. package/dist/esm/components/NumberInput/index.js +1 -1
  198. package/dist/esm/components/PinInput/index.js +1 -1
  199. package/dist/esm/components/Popover/index.js +1 -1
  200. package/dist/esm/components/Progress/index.js +3 -3
  201. package/dist/esm/components/RadioGroup/index.js +1 -1
  202. package/dist/esm/components/Rating/index.js +1 -1
  203. package/dist/esm/components/RatingDots/index.js +1 -1
  204. package/dist/esm/components/Select/index.js +1 -1
  205. package/dist/esm/components/SortableList/index.js +1 -1
  206. package/dist/esm/components/Spinner/index.js +1 -1
  207. package/dist/esm/components/StyledAvatar/index.js +1 -1
  208. package/dist/esm/components/Switch/index.js +1 -1
  209. package/dist/esm/components/Tabs/index.js +1 -1
  210. package/dist/esm/components/TagBlock/index.js +1 -1
  211. package/dist/esm/components/Text/index.js +1 -1
  212. package/dist/esm/components/TextInput/index.js +1 -1
  213. package/dist/esm/components/Textarea/index.js +1 -1
  214. package/dist/esm/components/TimePicker/index.js +1 -1
  215. package/dist/esm/components/TimeRange/index.js +1 -1
  216. package/dist/esm/components/Timestamp/index.js +1 -1
  217. package/dist/esm/components/Toast/index.js +1 -1
  218. package/dist/esm/components/Tooltip/index.js +1 -1
  219. package/dist/esm/components/index.js +36 -36
  220. package/dist/esm/index.js +37 -37
  221. package/dist/esm/theme/index.js +1 -1
  222. package/dist/types/chakra/index.d.ts +1 -0
  223. package/package.json +11 -1
  224. package/dist/chunks/index-BGd_2-DY.js +0 -1197
  225. package/dist/chunks/index-BGd_2-DY.js.map +0 -1
  226. package/dist/chunks/index-_913FPya.js +0 -2
  227. package/dist/chunks/index-_913FPya.js.map +0 -1
  228. package/dist/chunks/select.component-D-1YMPU9.js +0 -2
  229. package/dist/chunks/select.component-D-1YMPU9.js.map +0 -1
  230. package/dist/chunks/select.component-D5EioB-E.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"anatomy-zd4ecEFD.js","sources":["../../node_modules/@zag-js/combobox/dist/index.mjs","../../node_modules/@ark-ui/react/dist/components/fieldset/fieldset.anatomy.js","../../node_modules/@chakra-ui/react/dist/esm/anatomy.js"],"sourcesContent":["import { createAnatomy } from '@zag-js/anatomy';\nimport { ListCollection } from '@zag-js/collection';\nimport { raf, setCaretToEnd, nextTick, scrollIntoView, observeAttributes, clickIfLink, query, dataAttr, ariaAttr, isDownloadingEvent, isOpeningInNewTab, isContextMenuEvent, isLeftClick, getEventKey, isComposingEvent, isAnchorElement } from '@zag-js/dom-query';\nimport { getPlacement, getPlacementStyles } from '@zag-js/popper';\nimport { match, remove, addOrRemove, isBoolean, isEqual, createSplitProps, ensure } from '@zag-js/utils';\nimport { ariaHidden } from '@zag-js/aria-hidden';\nimport { setup } from '@zag-js/core';\nimport { trackDismissableElement } from '@zag-js/dismissable';\nimport { createProps } from '@zag-js/types';\n\n// src/combobox.anatomy.ts\nvar anatomy = createAnatomy(\"combobox\").parts(\n \"root\",\n \"clearTrigger\",\n \"content\",\n \"control\",\n \"input\",\n \"item\",\n \"itemGroup\",\n \"itemGroupLabel\",\n \"itemIndicator\",\n \"itemText\",\n \"label\",\n \"list\",\n \"positioner\",\n \"trigger\"\n);\nvar parts = anatomy.build();\nvar collection = (options) => {\n return new ListCollection(options);\n};\ncollection.empty = () => {\n return new ListCollection({ items: [] });\n};\nvar getRootId = (ctx) => ctx.ids?.root ?? `combobox:${ctx.id}`;\nvar getLabelId = (ctx) => ctx.ids?.label ?? `combobox:${ctx.id}:label`;\nvar getControlId = (ctx) => ctx.ids?.control ?? `combobox:${ctx.id}:control`;\nvar getInputId = (ctx) => ctx.ids?.input ?? `combobox:${ctx.id}:input`;\nvar getContentId = (ctx) => ctx.ids?.content ?? `combobox:${ctx.id}:content`;\nvar getPositionerId = (ctx) => ctx.ids?.positioner ?? `combobox:${ctx.id}:popper`;\nvar getTriggerId = (ctx) => ctx.ids?.trigger ?? `combobox:${ctx.id}:toggle-btn`;\nvar getClearTriggerId = (ctx) => ctx.ids?.clearTrigger ?? `combobox:${ctx.id}:clear-btn`;\nvar getItemGroupId = (ctx, id) => ctx.ids?.itemGroup?.(id) ?? `combobox:${ctx.id}:optgroup:${id}`;\nvar getItemGroupLabelId = (ctx, id) => ctx.ids?.itemGroupLabel?.(id) ?? `combobox:${ctx.id}:optgroup-label:${id}`;\nvar getItemId = (ctx, id) => ctx.ids?.item?.(id) ?? `combobox:${ctx.id}:option:${id}`;\nvar getContentEl = (ctx) => ctx.getById(getContentId(ctx));\nvar getInputEl = (ctx) => ctx.getById(getInputId(ctx));\nvar getPositionerEl = (ctx) => ctx.getById(getPositionerId(ctx));\nvar getControlEl = (ctx) => ctx.getById(getControlId(ctx));\nvar getTriggerEl = (ctx) => ctx.getById(getTriggerId(ctx));\nvar getClearTriggerEl = (ctx) => ctx.getById(getClearTriggerId(ctx));\nvar getItemEl = (ctx, value) => {\n if (value == null) return;\n const selector = `[role=option][data-value=\"${CSS.escape(value)}\"]`;\n return query(getContentEl(ctx), selector);\n};\nvar focusInputEl = (ctx) => {\n const inputEl = getInputEl(ctx);\n if (ctx.isActiveElement(inputEl)) return;\n inputEl?.focus({ preventScroll: true });\n};\nvar focusTriggerEl = (ctx) => {\n const triggerEl = getTriggerEl(ctx);\n if (ctx.isActiveElement(triggerEl)) return;\n triggerEl?.focus({ preventScroll: true });\n};\n\n// src/combobox.connect.ts\nfunction connect(service, normalize) {\n const { context, prop, state, send, scope, computed, event } = service;\n const translations = prop(\"translations\");\n const collection2 = prop(\"collection\");\n const disabled = prop(\"disabled\");\n const interactive = computed(\"isInteractive\");\n const invalid = prop(\"invalid\");\n const readOnly = prop(\"readOnly\");\n const open = state.hasTag(\"open\");\n const focused = state.hasTag(\"focused\");\n const composite = prop(\"composite\");\n const highlightedValue = context.get(\"highlightedValue\");\n const popperStyles = getPlacementStyles({\n ...prop(\"positioning\"),\n placement: context.get(\"currentPlacement\")\n });\n function getItemState(props2) {\n const disabled2 = collection2.getItemDisabled(props2.item);\n const value = collection2.getItemValue(props2.item);\n ensure(value, () => `[zag-js] No value found for item ${JSON.stringify(props2.item)}`);\n return {\n value,\n disabled: Boolean(disabled2 || disabled2),\n highlighted: highlightedValue === value,\n selected: context.get(\"value\").includes(value)\n };\n }\n return {\n focused,\n open,\n inputValue: context.get(\"inputValue\"),\n highlightedValue,\n highlightedItem: context.get(\"highlightedItem\"),\n value: context.get(\"value\"),\n valueAsString: computed(\"valueAsString\"),\n hasSelectedItems: computed(\"hasSelectedItems\"),\n selectedItems: context.get(\"selectedItems\"),\n collection: prop(\"collection\"),\n multiple: !!prop(\"multiple\"),\n disabled: !!disabled,\n syncSelectedItems() {\n send({ type: \"SELECTED_ITEMS.SYNC\" });\n },\n reposition(options = {}) {\n send({ type: \"POSITIONING.SET\", options });\n },\n setHighlightValue(value) {\n send({ type: \"HIGHLIGHTED_VALUE.SET\", value });\n },\n clearHighlightValue() {\n send({ type: \"HIGHLIGHTED_VALUE.CLEAR\" });\n },\n selectValue(value) {\n send({ type: \"ITEM.SELECT\", value });\n },\n setValue(value) {\n send({ type: \"VALUE.SET\", value });\n },\n setInputValue(value, reason = \"script\") {\n send({ type: \"INPUT_VALUE.SET\", value, src: reason });\n },\n clearValue(value) {\n if (value != null) {\n send({ type: \"ITEM.CLEAR\", value });\n } else {\n send({ type: \"VALUE.CLEAR\" });\n }\n },\n focus() {\n getInputEl(scope)?.focus();\n },\n setOpen(nextOpen, reason = \"script\") {\n const open2 = state.hasTag(\"open\");\n if (open2 === nextOpen) return;\n send({ type: nextOpen ? \"OPEN\" : \"CLOSE\", src: reason });\n },\n getRootProps() {\n return normalize.element({\n ...parts.root.attrs,\n dir: prop(\"dir\"),\n id: getRootId(scope),\n \"data-invalid\": dataAttr(invalid),\n \"data-readonly\": dataAttr(readOnly)\n });\n },\n getLabelProps() {\n return normalize.label({\n ...parts.label.attrs,\n dir: prop(\"dir\"),\n htmlFor: getInputId(scope),\n id: getLabelId(scope),\n \"data-readonly\": dataAttr(readOnly),\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid),\n \"data-focus\": dataAttr(focused),\n onClick(event2) {\n if (composite) return;\n event2.preventDefault();\n getTriggerEl(scope)?.focus({ preventScroll: true });\n }\n });\n },\n getControlProps() {\n return normalize.element({\n ...parts.control.attrs,\n dir: prop(\"dir\"),\n id: getControlId(scope),\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-focus\": dataAttr(focused),\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid)\n });\n },\n getPositionerProps() {\n return normalize.element({\n ...parts.positioner.attrs,\n dir: prop(\"dir\"),\n id: getPositionerId(scope),\n style: popperStyles.floating\n });\n },\n getInputProps() {\n return normalize.input({\n ...parts.input.attrs,\n dir: prop(\"dir\"),\n \"aria-invalid\": ariaAttr(invalid),\n \"data-invalid\": dataAttr(invalid),\n \"data-autofocus\": dataAttr(prop(\"autoFocus\")),\n name: prop(\"name\"),\n form: prop(\"form\"),\n disabled,\n required: prop(\"required\"),\n autoComplete: \"off\",\n autoCorrect: \"off\",\n autoCapitalize: \"none\",\n spellCheck: \"false\",\n readOnly,\n placeholder: prop(\"placeholder\"),\n id: getInputId(scope),\n type: \"text\",\n role: \"combobox\",\n defaultValue: context.get(\"inputValue\"),\n \"aria-autocomplete\": computed(\"autoComplete\") ? \"both\" : \"list\",\n \"aria-controls\": getContentId(scope),\n \"aria-expanded\": open,\n \"data-state\": open ? \"open\" : \"closed\",\n \"aria-activedescendant\": highlightedValue ? getItemId(scope, highlightedValue) : void 0,\n onClick(event2) {\n if (event2.defaultPrevented) return;\n if (!prop(\"openOnClick\")) return;\n if (!interactive) return;\n send({ type: \"INPUT.CLICK\", src: \"input-click\" });\n },\n onFocus() {\n if (disabled) return;\n send({ type: \"INPUT.FOCUS\" });\n },\n onBlur() {\n if (disabled) return;\n send({ type: \"INPUT.BLUR\" });\n },\n onChange(event2) {\n send({ type: \"INPUT.CHANGE\", value: event2.currentTarget.value, src: \"input-change\" });\n },\n onKeyDown(event2) {\n if (event2.defaultPrevented) return;\n if (!interactive) return;\n if (event2.ctrlKey || event2.shiftKey || isComposingEvent(event2)) return;\n const openOnKeyPress = prop(\"openOnKeyPress\");\n const isModifierKey = event2.ctrlKey || event2.metaKey || event2.shiftKey;\n const keypress = true;\n const keymap = {\n ArrowDown(event3) {\n if (!openOnKeyPress && !open) return;\n send({ type: event3.altKey ? \"OPEN\" : \"INPUT.ARROW_DOWN\", keypress, src: \"arrow-key\" });\n event3.preventDefault();\n },\n ArrowUp() {\n if (!openOnKeyPress && !open) return;\n send({ type: event2.altKey ? \"CLOSE\" : \"INPUT.ARROW_UP\", keypress, src: \"arrow-key\" });\n event2.preventDefault();\n },\n Home(event3) {\n if (isModifierKey) return;\n send({ type: \"INPUT.HOME\", keypress });\n if (open) {\n event3.preventDefault();\n }\n },\n End(event3) {\n if (isModifierKey) return;\n send({ type: \"INPUT.END\", keypress });\n if (open) {\n event3.preventDefault();\n }\n },\n Enter(event3) {\n send({ type: \"INPUT.ENTER\", keypress, src: \"item-select\" });\n const submittable = computed(\"isCustomValue\") && prop(\"allowCustomValue\");\n if (open && !submittable) {\n event3.preventDefault();\n }\n if (highlightedValue == null) return;\n const itemEl = getItemEl(scope, highlightedValue);\n if (isAnchorElement(itemEl)) {\n prop(\"navigate\")?.({ value: highlightedValue, node: itemEl, href: itemEl.href });\n }\n },\n Escape() {\n send({ type: \"INPUT.ESCAPE\", keypress, src: \"escape-key\" });\n event2.preventDefault();\n }\n };\n const key = getEventKey(event2, { dir: prop(\"dir\") });\n const exec = keymap[key];\n exec?.(event2);\n }\n });\n },\n getTriggerProps(props2 = {}) {\n return normalize.button({\n ...parts.trigger.attrs,\n dir: prop(\"dir\"),\n id: getTriggerId(scope),\n \"aria-haspopup\": composite ? \"listbox\" : \"dialog\",\n type: \"button\",\n tabIndex: props2.focusable ? void 0 : -1,\n \"aria-label\": translations.triggerLabel,\n \"aria-expanded\": open,\n \"data-state\": open ? \"open\" : \"closed\",\n \"aria-controls\": open ? getContentId(scope) : void 0,\n disabled,\n \"data-invalid\": dataAttr(invalid),\n \"data-focusable\": dataAttr(props2.focusable),\n \"data-readonly\": dataAttr(readOnly),\n \"data-disabled\": dataAttr(disabled),\n onFocus() {\n if (!props2.focusable) return;\n send({ type: \"INPUT.FOCUS\", src: \"trigger\" });\n },\n onClick(event2) {\n if (event2.defaultPrevented) return;\n if (!interactive) return;\n if (!isLeftClick(event2)) return;\n send({ type: \"TRIGGER.CLICK\", src: \"trigger-click\" });\n },\n onPointerDown(event2) {\n if (!interactive) return;\n if (event2.pointerType === \"touch\") return;\n if (!isLeftClick(event2)) return;\n event2.preventDefault();\n queueMicrotask(() => {\n getInputEl(scope)?.focus({ preventScroll: true });\n });\n },\n onKeyDown(event2) {\n if (event2.defaultPrevented) return;\n if (composite) return;\n const keyMap = {\n ArrowDown() {\n send({ type: \"INPUT.ARROW_DOWN\", src: \"arrow-key\" });\n },\n ArrowUp() {\n send({ type: \"INPUT.ARROW_UP\", src: \"arrow-key\" });\n }\n };\n const key = getEventKey(event2, { dir: prop(\"dir\") });\n const exec = keyMap[key];\n if (exec) {\n exec(event2);\n event2.preventDefault();\n }\n }\n });\n },\n getContentProps() {\n return normalize.element({\n ...parts.content.attrs,\n dir: prop(\"dir\"),\n id: getContentId(scope),\n role: !composite ? \"dialog\" : \"listbox\",\n tabIndex: -1,\n hidden: !open,\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-placement\": context.get(\"currentPlacement\"),\n \"aria-labelledby\": getLabelId(scope),\n \"aria-multiselectable\": prop(\"multiple\") && composite ? true : void 0,\n \"data-empty\": dataAttr(collection2.size === 0),\n onPointerDown(event2) {\n if (!isLeftClick(event2)) return;\n event2.preventDefault();\n }\n });\n },\n getListProps() {\n return normalize.element({\n ...parts.list.attrs,\n role: !composite ? \"listbox\" : void 0,\n \"data-empty\": dataAttr(collection2.size === 0),\n \"aria-labelledby\": getLabelId(scope),\n \"aria-multiselectable\": prop(\"multiple\") && !composite ? true : void 0\n });\n },\n getClearTriggerProps() {\n return normalize.button({\n ...parts.clearTrigger.attrs,\n dir: prop(\"dir\"),\n id: getClearTriggerId(scope),\n type: \"button\",\n tabIndex: -1,\n disabled,\n \"data-invalid\": dataAttr(invalid),\n \"aria-label\": translations.clearTriggerLabel,\n \"aria-controls\": getInputId(scope),\n hidden: !context.get(\"value\").length,\n onPointerDown(event2) {\n if (!isLeftClick(event2)) return;\n event2.preventDefault();\n },\n onClick(event2) {\n if (event2.defaultPrevented) return;\n if (!interactive) return;\n send({ type: \"VALUE.CLEAR\", src: \"clear-trigger\" });\n }\n });\n },\n getItemState,\n getItemProps(props2) {\n const itemState = getItemState(props2);\n const value = itemState.value;\n return normalize.element({\n ...parts.item.attrs,\n dir: prop(\"dir\"),\n id: getItemId(scope, value),\n role: \"option\",\n tabIndex: -1,\n \"data-highlighted\": dataAttr(itemState.highlighted),\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n \"aria-selected\": ariaAttr(itemState.highlighted),\n \"aria-disabled\": ariaAttr(itemState.disabled),\n \"data-disabled\": dataAttr(itemState.disabled),\n \"data-value\": itemState.value,\n onPointerMove() {\n if (itemState.disabled) return;\n if (itemState.highlighted) return;\n send({ type: \"ITEM.POINTER_MOVE\", value });\n },\n onPointerLeave() {\n if (props2.persistFocus) return;\n if (itemState.disabled) return;\n const prev = event.previous();\n const mouseMoved = prev?.type.includes(\"POINTER\");\n if (!mouseMoved) return;\n send({ type: \"ITEM.POINTER_LEAVE\", value });\n },\n onClick(event2) {\n if (isDownloadingEvent(event2)) return;\n if (isOpeningInNewTab(event2)) return;\n if (isContextMenuEvent(event2)) return;\n if (itemState.disabled) return;\n send({ type: \"ITEM.CLICK\", src: \"item-select\", value });\n }\n });\n },\n getItemTextProps(props2) {\n const itemState = getItemState(props2);\n return normalize.element({\n ...parts.itemText.attrs,\n dir: prop(\"dir\"),\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n \"data-disabled\": dataAttr(itemState.disabled),\n \"data-highlighted\": dataAttr(itemState.highlighted)\n });\n },\n getItemIndicatorProps(props2) {\n const itemState = getItemState(props2);\n return normalize.element({\n \"aria-hidden\": true,\n ...parts.itemIndicator.attrs,\n dir: prop(\"dir\"),\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n hidden: !itemState.selected\n });\n },\n getItemGroupProps(props2) {\n const { id } = props2;\n return normalize.element({\n ...parts.itemGroup.attrs,\n dir: prop(\"dir\"),\n id: getItemGroupId(scope, id),\n \"aria-labelledby\": getItemGroupLabelId(scope, id),\n \"data-empty\": dataAttr(collection2.size === 0),\n role: \"group\"\n });\n },\n getItemGroupLabelProps(props2) {\n const { htmlFor } = props2;\n return normalize.element({\n ...parts.itemGroupLabel.attrs,\n dir: prop(\"dir\"),\n id: getItemGroupLabelId(scope, htmlFor),\n role: \"presentation\"\n });\n }\n };\n}\nvar { guards, createMachine, choose } = setup();\nvar { and, not } = guards;\nvar machine = createMachine({\n props({ props: props2 }) {\n return {\n loopFocus: true,\n openOnClick: false,\n defaultValue: [],\n closeOnSelect: !props2.multiple,\n allowCustomValue: false,\n inputBehavior: \"none\",\n selectionBehavior: props2.multiple ? \"clear\" : \"replace\",\n openOnKeyPress: true,\n openOnChange: true,\n composite: true,\n navigate({ node }) {\n clickIfLink(node);\n },\n collection: collection.empty(),\n ...props2,\n positioning: {\n placement: \"bottom\",\n sameWidth: true,\n ...props2.positioning\n },\n translations: {\n triggerLabel: \"Toggle suggestions\",\n clearTriggerLabel: \"Clear value\",\n ...props2.translations\n }\n };\n },\n initialState({ prop }) {\n const open = prop(\"open\") || prop(\"defaultOpen\");\n return open ? \"suggesting\" : \"idle\";\n },\n context({ prop, bindable, getContext, getEvent }) {\n return {\n currentPlacement: bindable(() => ({\n defaultValue: void 0\n })),\n value: bindable(() => ({\n defaultValue: prop(\"defaultValue\"),\n value: prop(\"value\"),\n isEqual,\n hash(value) {\n return value.join(\",\");\n },\n onChange(value) {\n const context = getContext();\n const prevSelectedItems = context.get(\"selectedItems\");\n const collection2 = prop(\"collection\");\n const nextItems = value.map((v) => {\n const item = prevSelectedItems.find((item2) => collection2.getItemValue(item2) === v);\n return item || collection2.find(v);\n });\n context.set(\"selectedItems\", nextItems);\n prop(\"onValueChange\")?.({ value, items: nextItems });\n }\n })),\n highlightedValue: bindable(() => ({\n defaultValue: prop(\"defaultHighlightedValue\") || null,\n value: prop(\"highlightedValue\"),\n onChange(value) {\n const item = prop(\"collection\").find(value);\n prop(\"onHighlightChange\")?.({ highlightedValue: value, highlightedItem: item });\n }\n })),\n inputValue: bindable(() => {\n let inputValue = prop(\"inputValue\") || prop(\"defaultInputValue\") || \"\";\n const value = prop(\"defaultValue\") || prop(\"value\") || [];\n if (!inputValue.trim() && !prop(\"multiple\")) {\n const valueAsString = prop(\"collection\").stringifyMany(value);\n inputValue = match(prop(\"selectionBehavior\"), {\n preserve: inputValue || valueAsString,\n replace: valueAsString,\n clear: \"\"\n });\n }\n return {\n defaultValue: inputValue,\n value: prop(\"inputValue\"),\n onChange(value2) {\n const event = getEvent();\n const reason = (event.previousEvent || event).src;\n prop(\"onInputValueChange\")?.({ inputValue: value2, reason });\n }\n };\n }),\n highlightedItem: bindable(() => {\n const highlightedValue = prop(\"highlightedValue\");\n const highlightedItem = prop(\"collection\").find(highlightedValue);\n return { defaultValue: highlightedItem };\n }),\n selectedItems: bindable(() => {\n const value = prop(\"value\") || prop(\"defaultValue\") || [];\n const selectedItems = prop(\"collection\").findMany(value);\n return { defaultValue: selectedItems };\n })\n };\n },\n computed: {\n isInputValueEmpty: ({ context }) => context.get(\"inputValue\").length === 0,\n isInteractive: ({ prop }) => !(prop(\"readOnly\") || prop(\"disabled\")),\n autoComplete: ({ prop }) => prop(\"inputBehavior\") === \"autocomplete\",\n autoHighlight: ({ prop }) => prop(\"inputBehavior\") === \"autohighlight\",\n hasSelectedItems: ({ context }) => context.get(\"value\").length > 0,\n valueAsString: ({ context, prop }) => prop(\"collection\").stringifyItems(context.get(\"selectedItems\")),\n isCustomValue: ({ context, computed }) => context.get(\"inputValue\") !== computed(\"valueAsString\")\n },\n watch({ context, prop, track, action, send }) {\n track([() => context.hash(\"value\")], () => {\n action([\"syncSelectedItems\"]);\n });\n track([() => context.get(\"inputValue\")], () => {\n action([\"syncInputValue\"]);\n });\n track([() => context.get(\"highlightedValue\")], () => {\n action([\"syncHighlightedItem\", \"autofillInputValue\"]);\n });\n track([() => prop(\"open\")], () => {\n action([\"toggleVisibility\"]);\n });\n track([() => prop(\"collection\").toString()], () => {\n send({ type: \"CHILDREN_CHANGE\" });\n });\n },\n on: {\n \"SELECTED_ITEMS.SYNC\": {\n actions: [\"syncSelectedItems\"]\n },\n \"HIGHLIGHTED_VALUE.SET\": {\n actions: [\"setHighlightedValue\"]\n },\n \"HIGHLIGHTED_VALUE.CLEAR\": {\n actions: [\"clearHighlightedValue\"]\n },\n \"ITEM.SELECT\": {\n actions: [\"selectItem\"]\n },\n \"ITEM.CLEAR\": {\n actions: [\"clearItem\"]\n },\n \"VALUE.SET\": {\n actions: [\"setValue\"]\n },\n \"INPUT_VALUE.SET\": {\n actions: [\"setInputValue\"]\n },\n \"POSITIONING.SET\": {\n actions: [\"reposition\"]\n }\n },\n entry: choose([\n {\n guard: \"autoFocus\",\n actions: [\"setInitialFocus\"]\n }\n ]),\n states: {\n idle: {\n tags: [\"idle\", \"closed\"],\n entry: [\"scrollContentToTop\", \"clearHighlightedValue\"],\n on: {\n \"CONTROLLED.OPEN\": {\n target: \"interacting\"\n },\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n \"INPUT.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n \"INPUT.FOCUS\": {\n target: \"focused\"\n },\n OPEN: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"invokeOnOpen\"]\n }\n ],\n \"VALUE.CLEAR\": {\n target: \"focused\",\n actions: [\"clearInputValue\", \"clearSelectedItems\", \"setInitialFocus\"]\n }\n }\n },\n focused: {\n tags: [\"focused\", \"closed\"],\n entry: [\"scrollContentToTop\", \"clearHighlightedValue\"],\n on: {\n \"CONTROLLED.OPEN\": [\n {\n guard: \"isChangeEvent\",\n target: \"suggesting\"\n },\n {\n target: \"interacting\"\n }\n ],\n \"INPUT.CHANGE\": [\n {\n guard: and(\"isOpenControlled\", \"openOnChange\"),\n actions: [\"setInputValue\", \"invokeOnOpen\", \"highlightFirstItemIfNeeded\"]\n },\n {\n guard: \"openOnChange\",\n target: \"suggesting\",\n actions: [\"setInputValue\", \"invokeOnOpen\", \"highlightFirstItemIfNeeded\"]\n },\n {\n actions: [\"setInputValue\"]\n }\n ],\n \"LAYER.INTERACT_OUTSIDE\": {\n target: \"idle\"\n },\n \"INPUT.ESCAPE\": {\n guard: and(\"isCustomValue\", not(\"allowCustomValue\")),\n actions: [\"revertInputValue\"]\n },\n \"INPUT.BLUR\": {\n target: \"idle\"\n },\n \"INPUT.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n \"INPUT.ARROW_DOWN\": [\n // == group 1 ==\n {\n guard: and(\"isOpenControlled\", \"autoComplete\"),\n actions: [\"invokeOnOpen\"]\n },\n {\n guard: \"autoComplete\",\n target: \"interacting\",\n actions: [\"invokeOnOpen\"]\n },\n // == group 2 ==\n {\n guard: \"isOpenControlled\",\n actions: [\"highlightFirstOrSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"highlightFirstOrSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n \"INPUT.ARROW_UP\": [\n // == group 1 ==\n {\n guard: \"autoComplete\",\n target: \"interacting\",\n actions: [\"invokeOnOpen\"]\n },\n {\n guard: \"autoComplete\",\n target: \"interacting\",\n actions: [\"invokeOnOpen\"]\n },\n // == group 2 ==\n {\n target: \"interacting\",\n actions: [\"highlightLastOrSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"highlightLastOrSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n OPEN: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"invokeOnOpen\"]\n }\n ],\n \"VALUE.CLEAR\": {\n actions: [\"clearInputValue\", \"clearSelectedItems\"]\n }\n }\n },\n interacting: {\n tags: [\"open\", \"focused\"],\n entry: [\"setInitialFocus\"],\n effects: [\"scrollToHighlightedItem\", \"trackDismissableLayer\", \"trackPlacement\", \"hideOtherElements\"],\n on: {\n \"CONTROLLED.CLOSE\": [\n {\n guard: \"restoreFocus\",\n target: \"focused\",\n actions: [\"setFinalFocus\"]\n },\n {\n target: \"idle\"\n }\n ],\n CHILDREN_CHANGE: [\n {\n guard: \"isHighlightedItemRemoved\",\n actions: [\"clearHighlightedValue\"]\n },\n {\n actions: [\"scrollToHighlightedItem\"]\n }\n ],\n \"INPUT.HOME\": {\n actions: [\"highlightFirstItem\"]\n },\n \"INPUT.END\": {\n actions: [\"highlightLastItem\"]\n },\n \"INPUT.ARROW_DOWN\": [\n {\n guard: and(\"autoComplete\", \"isLastItemHighlighted\"),\n actions: [\"clearHighlightedValue\", \"scrollContentToTop\"]\n },\n {\n actions: [\"highlightNextItem\"]\n }\n ],\n \"INPUT.ARROW_UP\": [\n {\n guard: and(\"autoComplete\", \"isFirstItemHighlighted\"),\n actions: [\"clearHighlightedValue\"]\n },\n {\n actions: [\"highlightPrevItem\"]\n }\n ],\n \"INPUT.ENTER\": [\n // == group 1 ==\n {\n guard: and(\"isOpenControlled\", \"isCustomValue\", not(\"hasHighlightedItem\"), not(\"allowCustomValue\")),\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n {\n guard: and(\"isCustomValue\", not(\"hasHighlightedItem\"), not(\"allowCustomValue\")),\n target: \"focused\",\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n // == group 2 ==\n {\n guard: and(\"isOpenControlled\", \"closeOnSelect\"),\n actions: [\"selectHighlightedItem\", \"invokeOnClose\"]\n },\n {\n guard: \"closeOnSelect\",\n target: \"focused\",\n actions: [\"selectHighlightedItem\", \"invokeOnClose\", \"setFinalFocus\"]\n },\n {\n actions: [\"selectHighlightedItem\"]\n }\n ],\n \"INPUT.CHANGE\": [\n {\n guard: \"autoComplete\",\n target: \"suggesting\",\n actions: [\"setInputValue\"]\n },\n {\n target: \"suggesting\",\n actions: [\"clearHighlightedValue\", \"setInputValue\"]\n }\n ],\n \"ITEM.POINTER_MOVE\": {\n actions: [\"setHighlightedValue\"]\n },\n \"ITEM.POINTER_LEAVE\": {\n actions: [\"clearHighlightedValue\"]\n },\n \"ITEM.CLICK\": [\n {\n guard: and(\"isOpenControlled\", \"closeOnSelect\"),\n actions: [\"selectItem\", \"invokeOnClose\"]\n },\n {\n guard: \"closeOnSelect\",\n target: \"focused\",\n actions: [\"selectItem\", \"invokeOnClose\", \"setFinalFocus\"]\n },\n {\n actions: [\"selectItem\"]\n }\n ],\n \"LAYER.ESCAPE\": [\n {\n guard: and(\"isOpenControlled\", \"autoComplete\"),\n actions: [\"syncInputValue\", \"invokeOnClose\"]\n },\n {\n guard: \"autoComplete\",\n target: \"focused\",\n actions: [\"syncInputValue\", \"invokeOnClose\"]\n },\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\", \"setFinalFocus\"]\n }\n ],\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\"]\n }\n ],\n \"LAYER.INTERACT_OUTSIDE\": [\n // == group 1 ==\n {\n guard: and(\"isOpenControlled\", \"isCustomValue\", not(\"allowCustomValue\")),\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n {\n guard: and(\"isCustomValue\", not(\"allowCustomValue\")),\n target: \"idle\",\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n // == group 2 ==\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"idle\",\n actions: [\"invokeOnClose\"]\n }\n ],\n CLOSE: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\", \"setFinalFocus\"]\n }\n ],\n \"VALUE.CLEAR\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"clearInputValue\", \"clearSelectedItems\", \"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"clearInputValue\", \"clearSelectedItems\", \"invokeOnClose\", \"setFinalFocus\"]\n }\n ]\n }\n },\n suggesting: {\n tags: [\"open\", \"focused\"],\n effects: [\"trackDismissableLayer\", \"scrollToHighlightedItem\", \"trackPlacement\", \"hideOtherElements\"],\n entry: [\"setInitialFocus\"],\n on: {\n \"CONTROLLED.CLOSE\": [\n {\n guard: \"restoreFocus\",\n target: \"focused\",\n actions: [\"setFinalFocus\"]\n },\n {\n target: \"idle\"\n }\n ],\n CHILDREN_CHANGE: [\n {\n guard: \"autoHighlight\",\n actions: [\"highlightFirstItem\"]\n },\n {\n guard: \"isHighlightedItemRemoved\",\n actions: [\"clearHighlightedValue\"]\n }\n ],\n \"INPUT.ARROW_DOWN\": {\n target: \"interacting\",\n actions: [\"highlightNextItem\"]\n },\n \"INPUT.ARROW_UP\": {\n target: \"interacting\",\n actions: [\"highlightPrevItem\"]\n },\n \"INPUT.HOME\": {\n target: \"interacting\",\n actions: [\"highlightFirstItem\"]\n },\n \"INPUT.END\": {\n target: \"interacting\",\n actions: [\"highlightLastItem\"]\n },\n \"INPUT.ENTER\": [\n // == group 1 ==\n {\n guard: and(\"isOpenControlled\", \"isCustomValue\", not(\"hasHighlightedItem\"), not(\"allowCustomValue\")),\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n {\n guard: and(\"isCustomValue\", not(\"hasHighlightedItem\"), not(\"allowCustomValue\")),\n target: \"focused\",\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n // == group 2 ==\n {\n guard: and(\"isOpenControlled\", \"closeOnSelect\"),\n actions: [\"selectHighlightedItem\", \"invokeOnClose\"]\n },\n {\n guard: \"closeOnSelect\",\n target: \"focused\",\n actions: [\"selectHighlightedItem\", \"invokeOnClose\", \"setFinalFocus\"]\n },\n {\n actions: [\"selectHighlightedItem\"]\n }\n ],\n \"INPUT.CHANGE\": {\n actions: [\"setInputValue\"]\n },\n \"LAYER.ESCAPE\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\"]\n }\n ],\n \"ITEM.POINTER_MOVE\": {\n target: \"interacting\",\n actions: [\"setHighlightedValue\"]\n },\n \"ITEM.POINTER_LEAVE\": {\n actions: [\"clearHighlightedValue\"]\n },\n \"LAYER.INTERACT_OUTSIDE\": [\n // == group 1 ==\n {\n guard: and(\"isOpenControlled\", \"isCustomValue\", not(\"allowCustomValue\")),\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n {\n guard: and(\"isCustomValue\", not(\"allowCustomValue\")),\n target: \"idle\",\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n // == group 2 ==\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"idle\",\n actions: [\"invokeOnClose\"]\n }\n ],\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\"]\n }\n ],\n \"ITEM.CLICK\": [\n {\n guard: and(\"isOpenControlled\", \"closeOnSelect\"),\n actions: [\"selectItem\", \"invokeOnClose\"]\n },\n {\n guard: \"closeOnSelect\",\n target: \"focused\",\n actions: [\"selectItem\", \"invokeOnClose\", \"setFinalFocus\"]\n },\n {\n actions: [\"selectItem\"]\n }\n ],\n CLOSE: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\", \"setFinalFocus\"]\n }\n ],\n \"VALUE.CLEAR\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"clearInputValue\", \"clearSelectedItems\", \"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"clearInputValue\", \"clearSelectedItems\", \"invokeOnClose\", \"setFinalFocus\"]\n }\n ]\n }\n }\n },\n implementations: {\n guards: {\n isInputValueEmpty: ({ computed }) => computed(\"isInputValueEmpty\"),\n autoComplete: ({ computed, prop }) => computed(\"autoComplete\") && !prop(\"multiple\"),\n autoHighlight: ({ computed }) => computed(\"autoHighlight\"),\n isFirstItemHighlighted: ({ prop, context }) => prop(\"collection\").firstValue === context.get(\"highlightedValue\"),\n isLastItemHighlighted: ({ prop, context }) => prop(\"collection\").lastValue === context.get(\"highlightedValue\"),\n isCustomValue: ({ computed }) => computed(\"isCustomValue\"),\n allowCustomValue: ({ prop }) => !!prop(\"allowCustomValue\"),\n hasHighlightedItem: ({ context }) => context.get(\"highlightedValue\") != null,\n closeOnSelect: ({ prop }) => !!prop(\"closeOnSelect\"),\n isOpenControlled: ({ prop }) => prop(\"open\") != null,\n openOnChange: ({ prop, context }) => {\n const openOnChange = prop(\"openOnChange\");\n if (isBoolean(openOnChange)) return openOnChange;\n return !!openOnChange?.({ inputValue: context.get(\"inputValue\") });\n },\n restoreFocus: ({ event }) => event.restoreFocus == null ? true : !!event.restoreFocus,\n isChangeEvent: ({ event }) => event.previousEvent?.type === \"INPUT.CHANGE\",\n autoFocus: ({ prop }) => !!prop(\"autoFocus\"),\n isHighlightedItemRemoved: ({ prop, context }) => !prop(\"collection\").has(context.get(\"highlightedValue\"))\n },\n effects: {\n trackDismissableLayer({ send, prop, scope }) {\n if (prop(\"disableLayer\")) return;\n const contentEl = () => getContentEl(scope);\n return trackDismissableElement(contentEl, {\n defer: true,\n exclude: () => [getInputEl(scope), getTriggerEl(scope), getClearTriggerEl(scope)],\n onFocusOutside: prop(\"onFocusOutside\"),\n onPointerDownOutside: prop(\"onPointerDownOutside\"),\n onInteractOutside: prop(\"onInteractOutside\"),\n onEscapeKeyDown(event) {\n event.preventDefault();\n event.stopPropagation();\n send({ type: \"LAYER.ESCAPE\", src: \"escape-key\" });\n },\n onDismiss() {\n send({ type: \"LAYER.INTERACT_OUTSIDE\", src: \"interact-outside\", restoreFocus: false });\n }\n });\n },\n hideOtherElements({ scope }) {\n return ariaHidden([\n getInputEl(scope),\n getContentEl(scope),\n getTriggerEl(scope),\n getClearTriggerEl(scope)\n ]);\n },\n trackPlacement({ context, prop, scope }) {\n const anchorEl = () => getControlEl(scope) || getTriggerEl(scope);\n const positionerEl = () => getPositionerEl(scope);\n context.set(\"currentPlacement\", prop(\"positioning\").placement);\n return getPlacement(anchorEl, positionerEl, {\n ...prop(\"positioning\"),\n defer: true,\n onComplete(data) {\n context.set(\"currentPlacement\", data.placement);\n }\n });\n },\n scrollToHighlightedItem({ context, prop, scope, event }) {\n const inputEl = getInputEl(scope);\n let cleanups = [];\n const exec = (immediate) => {\n const pointer = event.current().type.includes(\"POINTER\");\n const highlightedValue = context.get(\"highlightedValue\");\n if (pointer || !highlightedValue) return;\n const itemEl = getItemEl(scope, highlightedValue);\n const contentEl = getContentEl(scope);\n const scrollToIndexFn = prop(\"scrollToIndexFn\");\n if (scrollToIndexFn) {\n const highlightedIndex = prop(\"collection\").indexOf(highlightedValue);\n scrollToIndexFn({ index: highlightedIndex, immediate });\n return;\n }\n const raf_cleanup = raf(() => {\n scrollIntoView(itemEl, { rootEl: contentEl, block: \"nearest\" });\n });\n cleanups.push(raf_cleanup);\n };\n const rafCleanup = raf(() => exec(true));\n cleanups.push(rafCleanup);\n const observerCleanup = observeAttributes(inputEl, {\n attributes: [\"aria-activedescendant\"],\n callback: () => exec(false)\n });\n cleanups.push(observerCleanup);\n return () => {\n cleanups.forEach((cleanup) => cleanup());\n };\n }\n },\n actions: {\n reposition({ context, prop, scope, event }) {\n const controlEl = () => getControlEl(scope);\n const positionerEl = () => getPositionerEl(scope);\n getPlacement(controlEl, positionerEl, {\n ...prop(\"positioning\"),\n ...event.options,\n defer: true,\n listeners: false,\n onComplete(data) {\n context.set(\"currentPlacement\", data.placement);\n }\n });\n },\n setHighlightedValue({ context, event }) {\n if (event.value == null) return;\n context.set(\"highlightedValue\", event.value);\n },\n clearHighlightedValue({ context }) {\n context.set(\"highlightedValue\", null);\n },\n selectHighlightedItem(params) {\n const { context, prop } = params;\n const collection2 = prop(\"collection\");\n const highlightedValue = context.get(\"highlightedValue\");\n if (!highlightedValue || !collection2.has(highlightedValue)) return;\n const nextValue = prop(\"multiple\") ? addOrRemove(context.get(\"value\"), highlightedValue) : [highlightedValue];\n prop(\"onSelect\")?.({ value: nextValue, itemValue: highlightedValue });\n context.set(\"value\", nextValue);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: collection2.stringifyMany(nextValue),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n },\n scrollToHighlightedItem({ context, prop, scope }) {\n nextTick(() => {\n const highlightedValue = context.get(\"highlightedValue\");\n if (highlightedValue == null) return;\n const itemEl = getItemEl(scope, highlightedValue);\n const contentEl = getContentEl(scope);\n const scrollToIndexFn = prop(\"scrollToIndexFn\");\n if (scrollToIndexFn) {\n const highlightedIndex = prop(\"collection\").indexOf(highlightedValue);\n scrollToIndexFn({ index: highlightedIndex, immediate: true });\n return;\n }\n scrollIntoView(itemEl, { rootEl: contentEl, block: \"nearest\" });\n });\n },\n selectItem(params) {\n const { context, event, flush, prop } = params;\n if (event.value == null) return;\n flush(() => {\n const nextValue = prop(\"multiple\") ? addOrRemove(context.get(\"value\"), event.value) : [event.value];\n prop(\"onSelect\")?.({ value: nextValue, itemValue: event.value });\n context.set(\"value\", nextValue);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: prop(\"collection\").stringifyMany(nextValue),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n });\n },\n clearItem(params) {\n const { context, event, flush, prop } = params;\n if (event.value == null) return;\n flush(() => {\n const nextValue = remove(context.get(\"value\"), event.value);\n context.set(\"value\", nextValue);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: prop(\"collection\").stringifyMany(nextValue),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n });\n },\n setInitialFocus({ scope }) {\n raf(() => {\n focusInputEl(scope);\n });\n },\n setFinalFocus({ scope }) {\n raf(() => {\n const triggerEl = getTriggerEl(scope);\n if (triggerEl?.dataset.focusable == null) {\n focusInputEl(scope);\n } else {\n focusTriggerEl(scope);\n }\n });\n },\n syncInputValue({ context, scope, event }) {\n const inputEl = getInputEl(scope);\n if (!inputEl) return;\n inputEl.value = context.get(\"inputValue\");\n queueMicrotask(() => {\n if (event.current().type === \"INPUT.CHANGE\") return;\n setCaretToEnd(inputEl);\n });\n },\n setInputValue({ context, event }) {\n context.set(\"inputValue\", event.value);\n },\n clearInputValue({ context }) {\n context.set(\"inputValue\", \"\");\n },\n revertInputValue({ context, prop, computed }) {\n const selectionBehavior = prop(\"selectionBehavior\");\n const inputValue = match(selectionBehavior, {\n replace: computed(\"hasSelectedItems\") ? computed(\"valueAsString\") : \"\",\n preserve: context.get(\"inputValue\"),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n },\n setValue(params) {\n const { context, flush, event, prop } = params;\n flush(() => {\n context.set(\"value\", event.value);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: prop(\"collection\").stringifyMany(event.value),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n });\n },\n clearSelectedItems(params) {\n const { context, flush, prop } = params;\n flush(() => {\n context.set(\"value\", []);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: prop(\"collection\").stringifyMany([]),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n });\n },\n scrollContentToTop({ prop, scope }) {\n const scrollToIndexFn = prop(\"scrollToIndexFn\");\n if (scrollToIndexFn) {\n scrollToIndexFn({ index: 0, immediate: true });\n } else {\n const contentEl = getContentEl(scope);\n if (!contentEl) return;\n contentEl.scrollTop = 0;\n }\n },\n invokeOnOpen({ prop, event }) {\n const reason = getOpenChangeReason(event);\n prop(\"onOpenChange\")?.({ open: true, reason });\n },\n invokeOnClose({ prop, event }) {\n const reason = getOpenChangeReason(event);\n prop(\"onOpenChange\")?.({ open: false, reason });\n },\n highlightFirstItem({ context, prop, scope }) {\n const exec = getContentEl(scope) ? queueMicrotask : raf;\n exec(() => {\n const value = prop(\"collection\").firstValue;\n if (value) context.set(\"highlightedValue\", value);\n });\n },\n highlightFirstItemIfNeeded({ computed, action }) {\n if (!computed(\"autoHighlight\")) return;\n action([\"highlightFirstItem\"]);\n },\n highlightLastItem({ context, prop, scope }) {\n const exec = getContentEl(scope) ? queueMicrotask : raf;\n exec(() => {\n const value = prop(\"collection\").lastValue;\n if (value) context.set(\"highlightedValue\", value);\n });\n },\n highlightNextItem({ context, prop }) {\n let value = null;\n const highlightedValue = context.get(\"highlightedValue\");\n const collection2 = prop(\"collection\");\n if (highlightedValue) {\n value = collection2.getNextValue(highlightedValue);\n if (!value && prop(\"loopFocus\")) value = collection2.firstValue;\n } else {\n value = collection2.firstValue;\n }\n if (value) context.set(\"highlightedValue\", value);\n },\n highlightPrevItem({ context, prop }) {\n let value = null;\n const highlightedValue = context.get(\"highlightedValue\");\n const collection2 = prop(\"collection\");\n if (highlightedValue) {\n value = collection2.getPreviousValue(highlightedValue);\n if (!value && prop(\"loopFocus\")) value = collection2.lastValue;\n } else {\n value = collection2.lastValue;\n }\n if (value) context.set(\"highlightedValue\", value);\n },\n highlightFirstSelectedItem({ context, prop }) {\n raf(() => {\n const [value] = prop(\"collection\").sort(context.get(\"value\"));\n if (value) context.set(\"highlightedValue\", value);\n });\n },\n highlightFirstOrSelectedItem({ context, prop, computed }) {\n raf(() => {\n let value = null;\n if (computed(\"hasSelectedItems\")) {\n value = prop(\"collection\").sort(context.get(\"value\"))[0];\n } else {\n value = prop(\"collection\").firstValue;\n }\n if (value) context.set(\"highlightedValue\", value);\n });\n },\n highlightLastOrSelectedItem({ context, prop, computed }) {\n raf(() => {\n const collection2 = prop(\"collection\");\n let value = null;\n if (computed(\"hasSelectedItems\")) {\n value = collection2.sort(context.get(\"value\"))[0];\n } else {\n value = collection2.lastValue;\n }\n if (value) context.set(\"highlightedValue\", value);\n });\n },\n autofillInputValue({ context, computed, prop, event, scope }) {\n const inputEl = getInputEl(scope);\n const collection2 = prop(\"collection\");\n if (!computed(\"autoComplete\") || !inputEl || !event.keypress) return;\n const valueText = collection2.stringify(context.get(\"highlightedValue\"));\n raf(() => {\n inputEl.value = valueText || context.get(\"inputValue\");\n });\n },\n syncSelectedItems(params) {\n queueMicrotask(() => {\n const { context, prop } = params;\n const collection2 = prop(\"collection\");\n const value = context.get(\"value\");\n const selectedItems = value.map((v) => {\n const item = context.get(\"selectedItems\").find((item2) => collection2.getItemValue(item2) === v);\n return item || collection2.find(v);\n });\n context.set(\"selectedItems\", selectedItems);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: collection2.stringifyMany(value),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n });\n },\n syncHighlightedItem({ context, prop }) {\n const item = prop(\"collection\").find(context.get(\"highlightedValue\"));\n context.set(\"highlightedItem\", item);\n },\n toggleVisibility({ event, send, prop }) {\n send({ type: prop(\"open\") ? \"CONTROLLED.OPEN\" : \"CONTROLLED.CLOSE\", previousEvent: event });\n }\n }\n }\n});\nfunction getOpenChangeReason(event) {\n return (event.previousEvent || event).src;\n}\nvar props = createProps()([\n \"allowCustomValue\",\n \"autoFocus\",\n \"closeOnSelect\",\n \"collection\",\n \"composite\",\n \"defaultHighlightedValue\",\n \"defaultInputValue\",\n \"defaultOpen\",\n \"defaultValue\",\n \"dir\",\n \"disabled\",\n \"disableLayer\",\n \"form\",\n \"getRootNode\",\n \"highlightedValue\",\n \"id\",\n \"ids\",\n \"inputBehavior\",\n \"inputValue\",\n \"invalid\",\n \"loopFocus\",\n \"multiple\",\n \"name\",\n \"navigate\",\n \"onFocusOutside\",\n \"onHighlightChange\",\n \"onInputValueChange\",\n \"onInteractOutside\",\n \"onOpenChange\",\n \"onOpenChange\",\n \"onPointerDownOutside\",\n \"onSelect\",\n \"onValueChange\",\n \"open\",\n \"openOnChange\",\n \"openOnClick\",\n \"openOnKeyPress\",\n \"placeholder\",\n \"positioning\",\n \"readOnly\",\n \"required\",\n \"scrollToIndexFn\",\n \"selectionBehavior\",\n \"translations\",\n \"value\"\n]);\nvar splitProps = createSplitProps(props);\nvar itemGroupLabelProps = createProps()([\"htmlFor\"]);\nvar splitItemGroupLabelProps = createSplitProps(itemGroupLabelProps);\nvar itemGroupProps = createProps()([\"id\"]);\nvar splitItemGroupProps = createSplitProps(itemGroupProps);\nvar itemProps = createProps()([\"item\", \"persistFocus\"]);\nvar splitItemProps = createSplitProps(itemProps);\n\nexport { anatomy, collection, connect, itemGroupLabelProps, itemGroupProps, itemProps, machine, props, splitItemGroupLabelProps, splitItemGroupProps, splitItemProps, splitProps };\n","'use client';\nimport { createAnatomy } from '@zag-js/anatomy';\n\nconst fieldsetAnatomy = createAnatomy(\"fieldset\").parts(\"root\", \"errorText\", \"helperText\", \"legend\");\nconst parts = fieldsetAnatomy.build();\n\nexport { fieldsetAnatomy, parts };\n","\"use strict\";\nimport { comboboxAnatomy as comboboxAnatomy$1 } from '@ark-ui/react';\nimport { accordionAnatomy as accordionAnatomy$1 } from '@ark-ui/react/accordion';\nimport { createAnatomy } from '@ark-ui/react/anatomy';\nimport { clipboardAnatomy as clipboardAnatomy$1 } from '@ark-ui/react/clipboard';\nimport { colorPickerAnatomy as colorPickerAnatomy$1 } from '@ark-ui/react/color-picker';\nimport { dialogAnatomy as dialogAnatomy$1 } from '@ark-ui/react/dialog';\nimport { editableAnatomy as editableAnatomy$1 } from '@ark-ui/react/editable';\nimport { fieldAnatomy as fieldAnatomy$1 } from '@ark-ui/react/field';\nimport { fieldsetAnatomy as fieldsetAnatomy$1 } from '@ark-ui/react/fieldset';\nimport { fileUploadAnatomy as fileUploadAnatomy$1 } from '@ark-ui/react/file-upload';\nimport { menuAnatomy as menuAnatomy$1 } from '@ark-ui/react/menu';\nimport { popoverAnatomy as popoverAnatomy$1 } from '@ark-ui/react/popover';\nimport { radioGroupAnatomy as radioGroupAnatomy$1 } from '@ark-ui/react/radio-group';\nimport { ratingGroupAnatomy as ratingGroupAnatomy$1 } from '@ark-ui/react/rating-group';\nimport { selectAnatomy as selectAnatomy$1 } from '@ark-ui/react/select';\nimport { sliderAnatomy as sliderAnatomy$1 } from '@ark-ui/react/slider';\nimport { switchAnatomy as switchAnatomy$1 } from '@ark-ui/react/switch';\nexport { treeViewAnatomy } from '@ark-ui/react/tree-view';\nexport { avatarAnatomy } from '@ark-ui/react/avatar';\nexport { checkboxAnatomy } from '@ark-ui/react/checkbox';\nexport { collapsibleAnatomy } from '@ark-ui/react/collapsible';\nexport { hoverCardAnatomy } from '@ark-ui/react/hover-card';\nexport { numberInputAnatomy } from '@ark-ui/react/number-input';\nexport { pinInputAnatomy } from '@ark-ui/react/pin-input';\nexport { progressAnatomy } from '@ark-ui/react/progress';\nexport { qrCodeAnatomy } from '@ark-ui/react/qr-code';\nexport { segmentGroupAnatomy } from '@ark-ui/react/segment-group';\nexport { tooltipAnatomy } from '@ark-ui/react/tooltip';\n\nconst accordionAnatomy = accordionAnatomy$1.extendWith(\"itemBody\");\nconst actionBarAnatomy = createAnatomy(\"action-bar\").parts(\n \"positioner\",\n \"content\",\n \"separator\",\n \"selectionTrigger\",\n \"closeTrigger\"\n);\nconst alertAnatomy = createAnatomy(\"alert\").parts(\n \"title\",\n \"description\",\n \"root\",\n \"indicator\",\n \"content\"\n);\nconst breadcrumbAnatomy = createAnatomy(\"breadcrumb\").parts(\n \"link\",\n \"currentLink\",\n \"item\",\n \"list\",\n \"root\",\n \"ellipsis\",\n \"separator\"\n);\nconst blockquoteAnatomy = createAnatomy(\"blockquote\").parts(\n \"root\",\n \"icon\",\n \"content\",\n \"caption\"\n);\nconst cardAnatomy = createAnatomy(\"card\").parts(\n \"root\",\n \"header\",\n \"body\",\n \"footer\",\n \"title\",\n \"description\"\n);\nconst checkboxCardAnatomy = createAnatomy(\"checkbox-card\", [\n \"root\",\n \"control\",\n \"label\",\n \"description\",\n \"addon\",\n \"indicator\",\n \"content\"\n]);\nconst dataListAnatomy = createAnatomy(\"data-list\").parts(\n \"root\",\n \"item\",\n \"itemLabel\",\n \"itemValue\"\n);\nconst dialogAnatomy = dialogAnatomy$1.extendWith(\n \"header\",\n \"body\",\n \"footer\",\n \"backdrop\"\n);\nconst drawerAnatomy = dialogAnatomy$1.extendWith(\n \"header\",\n \"body\",\n \"footer\",\n \"backdrop\"\n);\nconst editableAnatomy = editableAnatomy$1.extendWith(\"textarea\");\nconst emptyStateAnatomy = createAnatomy(\"empty-state\", [\n \"root\",\n \"content\",\n \"indicator\",\n \"title\",\n \"description\"\n]);\nconst fieldAnatomy = fieldAnatomy$1.extendWith(\"requiredIndicator\");\nconst fieldsetAnatomy = fieldsetAnatomy$1.extendWith(\"content\");\nconst fileUploadAnatomy = fileUploadAnatomy$1.extendWith(\n \"itemContent\",\n \"dropzoneContent\",\n \"fileText\"\n);\nconst listAnatomy = createAnatomy(\"list\").parts(\n \"root\",\n \"item\",\n \"indicator\"\n);\nconst menuAnatomy = menuAnatomy$1.extendWith(\"itemCommand\");\nconst nativeSelectAnatomy = createAnatomy(\"select\").parts(\n \"root\",\n \"field\",\n \"indicator\"\n);\nconst popoverAnatomy = popoverAnatomy$1.extendWith(\n \"header\",\n \"body\",\n \"footer\"\n);\nconst radioGroupAnatomy = radioGroupAnatomy$1.extendWith(\n \"itemAddon\",\n \"itemIndicator\"\n);\nconst radioCardAnatomy = radioGroupAnatomy.extendWith(\n \"itemContent\",\n \"itemDescription\"\n);\nconst ratingGroupAnatomy = ratingGroupAnatomy$1.extendWith(\"itemIndicator\");\nconst selectAnatomy = selectAnatomy$1.extendWith(\"indicatorGroup\");\nconst comboboxAnatomy = comboboxAnatomy$1.extendWith(\n \"indicatorGroup\",\n \"empty\"\n);\nconst sliderAnatomy = sliderAnatomy$1.extendWith(\"markerIndicator\");\nconst statAnatomy = createAnatomy(\"stat\").parts(\n \"root\",\n \"label\",\n \"helpText\",\n \"valueText\",\n \"valueUnit\",\n \"indicator\"\n);\nconst statusAnatomy = createAnatomy(\"status\").parts(\"root\", \"indicator\");\nconst stepsAnatomy = createAnatomy(\"steps\", [\n \"root\",\n \"list\",\n \"item\",\n \"trigger\",\n \"indicator\",\n \"separator\",\n \"content\",\n \"title\",\n \"description\",\n \"nextTrigger\",\n \"prevTrigger\",\n \"progress\"\n]);\nconst switchAnatomy = switchAnatomy$1.extendWith(\"indicator\");\nconst tableAnatomy = createAnatomy(\"table\").parts(\n \"root\",\n \"header\",\n \"body\",\n \"row\",\n \"columnHeader\",\n \"cell\",\n \"footer\",\n \"caption\"\n);\nconst toastAnatomy = createAnatomy(\"toast\").parts(\n \"root\",\n \"title\",\n \"description\",\n \"indicator\",\n \"closeTrigger\",\n \"actionTrigger\"\n);\nconst tabsAnatomy = createAnatomy(\"tabs\").parts(\n \"root\",\n \"trigger\",\n \"list\",\n \"content\",\n \"contentGroup\",\n \"indicator\"\n);\nconst tagAnatomy = createAnatomy(\"tag\").parts(\n \"root\",\n \"label\",\n \"closeTrigger\",\n \"startElement\",\n \"endElement\"\n);\nconst timelineAnatomy = createAnatomy(\"timeline\").parts(\n \"root\",\n \"item\",\n \"content\",\n \"separator\",\n \"indicator\",\n \"connector\",\n \"title\",\n \"description\"\n);\nconst colorPickerAnatomy = colorPickerAnatomy$1.extendWith(\"channelText\");\nconst codeBlockAnatomy = createAnatomy(\"code-block\", [\n \"root\",\n \"content\",\n \"title\",\n \"header\",\n \"footer\",\n \"control\",\n \"overlay\",\n \"code\",\n \"codeText\",\n \"copyTrigger\",\n \"copyIndicator\",\n \"collapseTrigger\",\n \"collapseIndicator\",\n \"collapseText\"\n]);\nconst clipboardAnatomy = clipboardAnatomy$1.extendWith(\"valueText\");\n\nexport { accordionAnatomy, actionBarAnatomy, alertAnatomy, blockquoteAnatomy, breadcrumbAnatomy, cardAnatomy, checkboxCardAnatomy, clipboardAnatomy, codeBlockAnatomy, colorPickerAnatomy, comboboxAnatomy, dataListAnatomy, dialogAnatomy, drawerAnatomy, editableAnatomy, emptyStateAnatomy, fieldAnatomy, fieldsetAnatomy, fileUploadAnatomy, listAnatomy, menuAnatomy, nativeSelectAnatomy, popoverAnatomy, radioCardAnatomy, radioGroupAnatomy, ratingGroupAnatomy, selectAnatomy, sliderAnatomy, statAnatomy, statusAnatomy, stepsAnatomy, switchAnatomy, tableAnatomy, tabsAnatomy, tagAnatomy, timelineAnatomy, toastAnatomy };\n"],"names":["anatomy","createAnatomy","createProps","fieldsetAnatomy","accordionAnatomy","accordionAnatomy$1","actionBarAnatomy","alertAnatomy","breadcrumbAnatomy","blockquoteAnatomy","cardAnatomy","checkboxCardAnatomy","dataListAnatomy","dialogAnatomy","dialogAnatomy$1","drawerAnatomy","editableAnatomy","editableAnatomy$1","emptyStateAnatomy","fieldAnatomy","fieldAnatomy$1","fieldsetAnatomy$1","fileUploadAnatomy","fileUploadAnatomy$1","listAnatomy","menuAnatomy","menuAnatomy$1","nativeSelectAnatomy","popoverAnatomy","popoverAnatomy$1","radioGroupAnatomy","radioGroupAnatomy$1","radioCardAnatomy","ratingGroupAnatomy","ratingGroupAnatomy$1","selectAnatomy","selectAnatomy$1","comboboxAnatomy","comboboxAnatomy$1","sliderAnatomy","sliderAnatomy$1","statAnatomy","statusAnatomy","stepsAnatomy","switchAnatomy","switchAnatomy$1","tableAnatomy","toastAnatomy","tabsAnatomy","tagAnatomy","timelineAnatomy","colorPickerAnatomy","colorPickerAnatomy$1","codeBlockAnatomy","clipboardAnatomy$1"],"mappings":"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","x_google_ignoreList":[0,1,2]}
1
+ {"version":3,"file":"anatomy-DKlFmIC5.js","sources":["../../node_modules/@zag-js/combobox/dist/index.mjs","../../node_modules/@ark-ui/react/dist/components/fieldset/fieldset.anatomy.js","../../node_modules/@chakra-ui/react/dist/esm/anatomy.js"],"sourcesContent":["import { createAnatomy } from '@zag-js/anatomy';\nimport { ListCollection } from '@zag-js/collection';\nimport { raf, setCaretToEnd, nextTick, scrollIntoView, observeAttributes, clickIfLink, query, dataAttr, ariaAttr, isDownloadingEvent, isOpeningInNewTab, isContextMenuEvent, isLeftClick, getEventKey, isComposingEvent, isAnchorElement } from '@zag-js/dom-query';\nimport { getPlacement, getPlacementStyles } from '@zag-js/popper';\nimport { match, remove, addOrRemove, isBoolean, isEqual, createSplitProps, ensure } from '@zag-js/utils';\nimport { ariaHidden } from '@zag-js/aria-hidden';\nimport { setup } from '@zag-js/core';\nimport { trackDismissableElement } from '@zag-js/dismissable';\nimport { createProps } from '@zag-js/types';\n\n// src/combobox.anatomy.ts\nvar anatomy = createAnatomy(\"combobox\").parts(\n \"root\",\n \"clearTrigger\",\n \"content\",\n \"control\",\n \"input\",\n \"item\",\n \"itemGroup\",\n \"itemGroupLabel\",\n \"itemIndicator\",\n \"itemText\",\n \"label\",\n \"list\",\n \"positioner\",\n \"trigger\"\n);\nvar parts = anatomy.build();\nvar collection = (options) => {\n return new ListCollection(options);\n};\ncollection.empty = () => {\n return new ListCollection({ items: [] });\n};\nvar getRootId = (ctx) => ctx.ids?.root ?? `combobox:${ctx.id}`;\nvar getLabelId = (ctx) => ctx.ids?.label ?? `combobox:${ctx.id}:label`;\nvar getControlId = (ctx) => ctx.ids?.control ?? `combobox:${ctx.id}:control`;\nvar getInputId = (ctx) => ctx.ids?.input ?? `combobox:${ctx.id}:input`;\nvar getContentId = (ctx) => ctx.ids?.content ?? `combobox:${ctx.id}:content`;\nvar getPositionerId = (ctx) => ctx.ids?.positioner ?? `combobox:${ctx.id}:popper`;\nvar getTriggerId = (ctx) => ctx.ids?.trigger ?? `combobox:${ctx.id}:toggle-btn`;\nvar getClearTriggerId = (ctx) => ctx.ids?.clearTrigger ?? `combobox:${ctx.id}:clear-btn`;\nvar getItemGroupId = (ctx, id) => ctx.ids?.itemGroup?.(id) ?? `combobox:${ctx.id}:optgroup:${id}`;\nvar getItemGroupLabelId = (ctx, id) => ctx.ids?.itemGroupLabel?.(id) ?? `combobox:${ctx.id}:optgroup-label:${id}`;\nvar getItemId = (ctx, id) => ctx.ids?.item?.(id) ?? `combobox:${ctx.id}:option:${id}`;\nvar getContentEl = (ctx) => ctx.getById(getContentId(ctx));\nvar getInputEl = (ctx) => ctx.getById(getInputId(ctx));\nvar getPositionerEl = (ctx) => ctx.getById(getPositionerId(ctx));\nvar getControlEl = (ctx) => ctx.getById(getControlId(ctx));\nvar getTriggerEl = (ctx) => ctx.getById(getTriggerId(ctx));\nvar getClearTriggerEl = (ctx) => ctx.getById(getClearTriggerId(ctx));\nvar getItemEl = (ctx, value) => {\n if (value == null) return;\n const selector = `[role=option][data-value=\"${CSS.escape(value)}\"]`;\n return query(getContentEl(ctx), selector);\n};\nvar focusInputEl = (ctx) => {\n const inputEl = getInputEl(ctx);\n if (ctx.isActiveElement(inputEl)) return;\n inputEl?.focus({ preventScroll: true });\n};\nvar focusTriggerEl = (ctx) => {\n const triggerEl = getTriggerEl(ctx);\n if (ctx.isActiveElement(triggerEl)) return;\n triggerEl?.focus({ preventScroll: true });\n};\n\n// src/combobox.connect.ts\nfunction connect(service, normalize) {\n const { context, prop, state, send, scope, computed, event } = service;\n const translations = prop(\"translations\");\n const collection2 = prop(\"collection\");\n const disabled = prop(\"disabled\");\n const interactive = computed(\"isInteractive\");\n const invalid = prop(\"invalid\");\n const readOnly = prop(\"readOnly\");\n const open = state.hasTag(\"open\");\n const focused = state.hasTag(\"focused\");\n const composite = prop(\"composite\");\n const highlightedValue = context.get(\"highlightedValue\");\n const popperStyles = getPlacementStyles({\n ...prop(\"positioning\"),\n placement: context.get(\"currentPlacement\")\n });\n function getItemState(props2) {\n const disabled2 = collection2.getItemDisabled(props2.item);\n const value = collection2.getItemValue(props2.item);\n ensure(value, () => `[zag-js] No value found for item ${JSON.stringify(props2.item)}`);\n return {\n value,\n disabled: Boolean(disabled2 || disabled2),\n highlighted: highlightedValue === value,\n selected: context.get(\"value\").includes(value)\n };\n }\n return {\n focused,\n open,\n inputValue: context.get(\"inputValue\"),\n highlightedValue,\n highlightedItem: context.get(\"highlightedItem\"),\n value: context.get(\"value\"),\n valueAsString: computed(\"valueAsString\"),\n hasSelectedItems: computed(\"hasSelectedItems\"),\n selectedItems: context.get(\"selectedItems\"),\n collection: prop(\"collection\"),\n multiple: !!prop(\"multiple\"),\n disabled: !!disabled,\n syncSelectedItems() {\n send({ type: \"SELECTED_ITEMS.SYNC\" });\n },\n reposition(options = {}) {\n send({ type: \"POSITIONING.SET\", options });\n },\n setHighlightValue(value) {\n send({ type: \"HIGHLIGHTED_VALUE.SET\", value });\n },\n clearHighlightValue() {\n send({ type: \"HIGHLIGHTED_VALUE.CLEAR\" });\n },\n selectValue(value) {\n send({ type: \"ITEM.SELECT\", value });\n },\n setValue(value) {\n send({ type: \"VALUE.SET\", value });\n },\n setInputValue(value, reason = \"script\") {\n send({ type: \"INPUT_VALUE.SET\", value, src: reason });\n },\n clearValue(value) {\n if (value != null) {\n send({ type: \"ITEM.CLEAR\", value });\n } else {\n send({ type: \"VALUE.CLEAR\" });\n }\n },\n focus() {\n getInputEl(scope)?.focus();\n },\n setOpen(nextOpen, reason = \"script\") {\n const open2 = state.hasTag(\"open\");\n if (open2 === nextOpen) return;\n send({ type: nextOpen ? \"OPEN\" : \"CLOSE\", src: reason });\n },\n getRootProps() {\n return normalize.element({\n ...parts.root.attrs,\n dir: prop(\"dir\"),\n id: getRootId(scope),\n \"data-invalid\": dataAttr(invalid),\n \"data-readonly\": dataAttr(readOnly)\n });\n },\n getLabelProps() {\n return normalize.label({\n ...parts.label.attrs,\n dir: prop(\"dir\"),\n htmlFor: getInputId(scope),\n id: getLabelId(scope),\n \"data-readonly\": dataAttr(readOnly),\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid),\n \"data-focus\": dataAttr(focused),\n onClick(event2) {\n if (composite) return;\n event2.preventDefault();\n getTriggerEl(scope)?.focus({ preventScroll: true });\n }\n });\n },\n getControlProps() {\n return normalize.element({\n ...parts.control.attrs,\n dir: prop(\"dir\"),\n id: getControlId(scope),\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-focus\": dataAttr(focused),\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid)\n });\n },\n getPositionerProps() {\n return normalize.element({\n ...parts.positioner.attrs,\n dir: prop(\"dir\"),\n id: getPositionerId(scope),\n style: popperStyles.floating\n });\n },\n getInputProps() {\n return normalize.input({\n ...parts.input.attrs,\n dir: prop(\"dir\"),\n \"aria-invalid\": ariaAttr(invalid),\n \"data-invalid\": dataAttr(invalid),\n \"data-autofocus\": dataAttr(prop(\"autoFocus\")),\n name: prop(\"name\"),\n form: prop(\"form\"),\n disabled,\n required: prop(\"required\"),\n autoComplete: \"off\",\n autoCorrect: \"off\",\n autoCapitalize: \"none\",\n spellCheck: \"false\",\n readOnly,\n placeholder: prop(\"placeholder\"),\n id: getInputId(scope),\n type: \"text\",\n role: \"combobox\",\n defaultValue: context.get(\"inputValue\"),\n \"aria-autocomplete\": computed(\"autoComplete\") ? \"both\" : \"list\",\n \"aria-controls\": getContentId(scope),\n \"aria-expanded\": open,\n \"data-state\": open ? \"open\" : \"closed\",\n \"aria-activedescendant\": highlightedValue ? getItemId(scope, highlightedValue) : void 0,\n onClick(event2) {\n if (event2.defaultPrevented) return;\n if (!prop(\"openOnClick\")) return;\n if (!interactive) return;\n send({ type: \"INPUT.CLICK\", src: \"input-click\" });\n },\n onFocus() {\n if (disabled) return;\n send({ type: \"INPUT.FOCUS\" });\n },\n onBlur() {\n if (disabled) return;\n send({ type: \"INPUT.BLUR\" });\n },\n onChange(event2) {\n send({ type: \"INPUT.CHANGE\", value: event2.currentTarget.value, src: \"input-change\" });\n },\n onKeyDown(event2) {\n if (event2.defaultPrevented) return;\n if (!interactive) return;\n if (event2.ctrlKey || event2.shiftKey || isComposingEvent(event2)) return;\n const openOnKeyPress = prop(\"openOnKeyPress\");\n const isModifierKey = event2.ctrlKey || event2.metaKey || event2.shiftKey;\n const keypress = true;\n const keymap = {\n ArrowDown(event3) {\n if (!openOnKeyPress && !open) return;\n send({ type: event3.altKey ? \"OPEN\" : \"INPUT.ARROW_DOWN\", keypress, src: \"arrow-key\" });\n event3.preventDefault();\n },\n ArrowUp() {\n if (!openOnKeyPress && !open) return;\n send({ type: event2.altKey ? \"CLOSE\" : \"INPUT.ARROW_UP\", keypress, src: \"arrow-key\" });\n event2.preventDefault();\n },\n Home(event3) {\n if (isModifierKey) return;\n send({ type: \"INPUT.HOME\", keypress });\n if (open) {\n event3.preventDefault();\n }\n },\n End(event3) {\n if (isModifierKey) return;\n send({ type: \"INPUT.END\", keypress });\n if (open) {\n event3.preventDefault();\n }\n },\n Enter(event3) {\n send({ type: \"INPUT.ENTER\", keypress, src: \"item-select\" });\n const submittable = computed(\"isCustomValue\") && prop(\"allowCustomValue\");\n if (open && !submittable) {\n event3.preventDefault();\n }\n if (highlightedValue == null) return;\n const itemEl = getItemEl(scope, highlightedValue);\n if (isAnchorElement(itemEl)) {\n prop(\"navigate\")?.({ value: highlightedValue, node: itemEl, href: itemEl.href });\n }\n },\n Escape() {\n send({ type: \"INPUT.ESCAPE\", keypress, src: \"escape-key\" });\n event2.preventDefault();\n }\n };\n const key = getEventKey(event2, { dir: prop(\"dir\") });\n const exec = keymap[key];\n exec?.(event2);\n }\n });\n },\n getTriggerProps(props2 = {}) {\n return normalize.button({\n ...parts.trigger.attrs,\n dir: prop(\"dir\"),\n id: getTriggerId(scope),\n \"aria-haspopup\": composite ? \"listbox\" : \"dialog\",\n type: \"button\",\n tabIndex: props2.focusable ? void 0 : -1,\n \"aria-label\": translations.triggerLabel,\n \"aria-expanded\": open,\n \"data-state\": open ? \"open\" : \"closed\",\n \"aria-controls\": open ? getContentId(scope) : void 0,\n disabled,\n \"data-invalid\": dataAttr(invalid),\n \"data-focusable\": dataAttr(props2.focusable),\n \"data-readonly\": dataAttr(readOnly),\n \"data-disabled\": dataAttr(disabled),\n onFocus() {\n if (!props2.focusable) return;\n send({ type: \"INPUT.FOCUS\", src: \"trigger\" });\n },\n onClick(event2) {\n if (event2.defaultPrevented) return;\n if (!interactive) return;\n if (!isLeftClick(event2)) return;\n send({ type: \"TRIGGER.CLICK\", src: \"trigger-click\" });\n },\n onPointerDown(event2) {\n if (!interactive) return;\n if (event2.pointerType === \"touch\") return;\n if (!isLeftClick(event2)) return;\n event2.preventDefault();\n queueMicrotask(() => {\n getInputEl(scope)?.focus({ preventScroll: true });\n });\n },\n onKeyDown(event2) {\n if (event2.defaultPrevented) return;\n if (composite) return;\n const keyMap = {\n ArrowDown() {\n send({ type: \"INPUT.ARROW_DOWN\", src: \"arrow-key\" });\n },\n ArrowUp() {\n send({ type: \"INPUT.ARROW_UP\", src: \"arrow-key\" });\n }\n };\n const key = getEventKey(event2, { dir: prop(\"dir\") });\n const exec = keyMap[key];\n if (exec) {\n exec(event2);\n event2.preventDefault();\n }\n }\n });\n },\n getContentProps() {\n return normalize.element({\n ...parts.content.attrs,\n dir: prop(\"dir\"),\n id: getContentId(scope),\n role: !composite ? \"dialog\" : \"listbox\",\n tabIndex: -1,\n hidden: !open,\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-placement\": context.get(\"currentPlacement\"),\n \"aria-labelledby\": getLabelId(scope),\n \"aria-multiselectable\": prop(\"multiple\") && composite ? true : void 0,\n \"data-empty\": dataAttr(collection2.size === 0),\n onPointerDown(event2) {\n if (!isLeftClick(event2)) return;\n event2.preventDefault();\n }\n });\n },\n getListProps() {\n return normalize.element({\n ...parts.list.attrs,\n role: !composite ? \"listbox\" : void 0,\n \"data-empty\": dataAttr(collection2.size === 0),\n \"aria-labelledby\": getLabelId(scope),\n \"aria-multiselectable\": prop(\"multiple\") && !composite ? true : void 0\n });\n },\n getClearTriggerProps() {\n return normalize.button({\n ...parts.clearTrigger.attrs,\n dir: prop(\"dir\"),\n id: getClearTriggerId(scope),\n type: \"button\",\n tabIndex: -1,\n disabled,\n \"data-invalid\": dataAttr(invalid),\n \"aria-label\": translations.clearTriggerLabel,\n \"aria-controls\": getInputId(scope),\n hidden: !context.get(\"value\").length,\n onPointerDown(event2) {\n if (!isLeftClick(event2)) return;\n event2.preventDefault();\n },\n onClick(event2) {\n if (event2.defaultPrevented) return;\n if (!interactive) return;\n send({ type: \"VALUE.CLEAR\", src: \"clear-trigger\" });\n }\n });\n },\n getItemState,\n getItemProps(props2) {\n const itemState = getItemState(props2);\n const value = itemState.value;\n return normalize.element({\n ...parts.item.attrs,\n dir: prop(\"dir\"),\n id: getItemId(scope, value),\n role: \"option\",\n tabIndex: -1,\n \"data-highlighted\": dataAttr(itemState.highlighted),\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n \"aria-selected\": ariaAttr(itemState.highlighted),\n \"aria-disabled\": ariaAttr(itemState.disabled),\n \"data-disabled\": dataAttr(itemState.disabled),\n \"data-value\": itemState.value,\n onPointerMove() {\n if (itemState.disabled) return;\n if (itemState.highlighted) return;\n send({ type: \"ITEM.POINTER_MOVE\", value });\n },\n onPointerLeave() {\n if (props2.persistFocus) return;\n if (itemState.disabled) return;\n const prev = event.previous();\n const mouseMoved = prev?.type.includes(\"POINTER\");\n if (!mouseMoved) return;\n send({ type: \"ITEM.POINTER_LEAVE\", value });\n },\n onClick(event2) {\n if (isDownloadingEvent(event2)) return;\n if (isOpeningInNewTab(event2)) return;\n if (isContextMenuEvent(event2)) return;\n if (itemState.disabled) return;\n send({ type: \"ITEM.CLICK\", src: \"item-select\", value });\n }\n });\n },\n getItemTextProps(props2) {\n const itemState = getItemState(props2);\n return normalize.element({\n ...parts.itemText.attrs,\n dir: prop(\"dir\"),\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n \"data-disabled\": dataAttr(itemState.disabled),\n \"data-highlighted\": dataAttr(itemState.highlighted)\n });\n },\n getItemIndicatorProps(props2) {\n const itemState = getItemState(props2);\n return normalize.element({\n \"aria-hidden\": true,\n ...parts.itemIndicator.attrs,\n dir: prop(\"dir\"),\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n hidden: !itemState.selected\n });\n },\n getItemGroupProps(props2) {\n const { id } = props2;\n return normalize.element({\n ...parts.itemGroup.attrs,\n dir: prop(\"dir\"),\n id: getItemGroupId(scope, id),\n \"aria-labelledby\": getItemGroupLabelId(scope, id),\n \"data-empty\": dataAttr(collection2.size === 0),\n role: \"group\"\n });\n },\n getItemGroupLabelProps(props2) {\n const { htmlFor } = props2;\n return normalize.element({\n ...parts.itemGroupLabel.attrs,\n dir: prop(\"dir\"),\n id: getItemGroupLabelId(scope, htmlFor),\n role: \"presentation\"\n });\n }\n };\n}\nvar { guards, createMachine, choose } = setup();\nvar { and, not } = guards;\nvar machine = createMachine({\n props({ props: props2 }) {\n return {\n loopFocus: true,\n openOnClick: false,\n defaultValue: [],\n closeOnSelect: !props2.multiple,\n allowCustomValue: false,\n inputBehavior: \"none\",\n selectionBehavior: props2.multiple ? \"clear\" : \"replace\",\n openOnKeyPress: true,\n openOnChange: true,\n composite: true,\n navigate({ node }) {\n clickIfLink(node);\n },\n collection: collection.empty(),\n ...props2,\n positioning: {\n placement: \"bottom\",\n sameWidth: true,\n ...props2.positioning\n },\n translations: {\n triggerLabel: \"Toggle suggestions\",\n clearTriggerLabel: \"Clear value\",\n ...props2.translations\n }\n };\n },\n initialState({ prop }) {\n const open = prop(\"open\") || prop(\"defaultOpen\");\n return open ? \"suggesting\" : \"idle\";\n },\n context({ prop, bindable, getContext, getEvent }) {\n return {\n currentPlacement: bindable(() => ({\n defaultValue: void 0\n })),\n value: bindable(() => ({\n defaultValue: prop(\"defaultValue\"),\n value: prop(\"value\"),\n isEqual,\n hash(value) {\n return value.join(\",\");\n },\n onChange(value) {\n const context = getContext();\n const prevSelectedItems = context.get(\"selectedItems\");\n const collection2 = prop(\"collection\");\n const nextItems = value.map((v) => {\n const item = prevSelectedItems.find((item2) => collection2.getItemValue(item2) === v);\n return item || collection2.find(v);\n });\n context.set(\"selectedItems\", nextItems);\n prop(\"onValueChange\")?.({ value, items: nextItems });\n }\n })),\n highlightedValue: bindable(() => ({\n defaultValue: prop(\"defaultHighlightedValue\") || null,\n value: prop(\"highlightedValue\"),\n onChange(value) {\n const item = prop(\"collection\").find(value);\n prop(\"onHighlightChange\")?.({ highlightedValue: value, highlightedItem: item });\n }\n })),\n inputValue: bindable(() => {\n let inputValue = prop(\"inputValue\") || prop(\"defaultInputValue\") || \"\";\n const value = prop(\"defaultValue\") || prop(\"value\") || [];\n if (!inputValue.trim() && !prop(\"multiple\")) {\n const valueAsString = prop(\"collection\").stringifyMany(value);\n inputValue = match(prop(\"selectionBehavior\"), {\n preserve: inputValue || valueAsString,\n replace: valueAsString,\n clear: \"\"\n });\n }\n return {\n defaultValue: inputValue,\n value: prop(\"inputValue\"),\n onChange(value2) {\n const event = getEvent();\n const reason = (event.previousEvent || event).src;\n prop(\"onInputValueChange\")?.({ inputValue: value2, reason });\n }\n };\n }),\n highlightedItem: bindable(() => {\n const highlightedValue = prop(\"highlightedValue\");\n const highlightedItem = prop(\"collection\").find(highlightedValue);\n return { defaultValue: highlightedItem };\n }),\n selectedItems: bindable(() => {\n const value = prop(\"value\") || prop(\"defaultValue\") || [];\n const selectedItems = prop(\"collection\").findMany(value);\n return { defaultValue: selectedItems };\n })\n };\n },\n computed: {\n isInputValueEmpty: ({ context }) => context.get(\"inputValue\").length === 0,\n isInteractive: ({ prop }) => !(prop(\"readOnly\") || prop(\"disabled\")),\n autoComplete: ({ prop }) => prop(\"inputBehavior\") === \"autocomplete\",\n autoHighlight: ({ prop }) => prop(\"inputBehavior\") === \"autohighlight\",\n hasSelectedItems: ({ context }) => context.get(\"value\").length > 0,\n valueAsString: ({ context, prop }) => prop(\"collection\").stringifyItems(context.get(\"selectedItems\")),\n isCustomValue: ({ context, computed }) => context.get(\"inputValue\") !== computed(\"valueAsString\")\n },\n watch({ context, prop, track, action, send }) {\n track([() => context.hash(\"value\")], () => {\n action([\"syncSelectedItems\"]);\n });\n track([() => context.get(\"inputValue\")], () => {\n action([\"syncInputValue\"]);\n });\n track([() => context.get(\"highlightedValue\")], () => {\n action([\"syncHighlightedItem\", \"autofillInputValue\"]);\n });\n track([() => prop(\"open\")], () => {\n action([\"toggleVisibility\"]);\n });\n track([() => prop(\"collection\").toString()], () => {\n send({ type: \"CHILDREN_CHANGE\" });\n });\n },\n on: {\n \"SELECTED_ITEMS.SYNC\": {\n actions: [\"syncSelectedItems\"]\n },\n \"HIGHLIGHTED_VALUE.SET\": {\n actions: [\"setHighlightedValue\"]\n },\n \"HIGHLIGHTED_VALUE.CLEAR\": {\n actions: [\"clearHighlightedValue\"]\n },\n \"ITEM.SELECT\": {\n actions: [\"selectItem\"]\n },\n \"ITEM.CLEAR\": {\n actions: [\"clearItem\"]\n },\n \"VALUE.SET\": {\n actions: [\"setValue\"]\n },\n \"INPUT_VALUE.SET\": {\n actions: [\"setInputValue\"]\n },\n \"POSITIONING.SET\": {\n actions: [\"reposition\"]\n }\n },\n entry: choose([\n {\n guard: \"autoFocus\",\n actions: [\"setInitialFocus\"]\n }\n ]),\n states: {\n idle: {\n tags: [\"idle\", \"closed\"],\n entry: [\"scrollContentToTop\", \"clearHighlightedValue\"],\n on: {\n \"CONTROLLED.OPEN\": {\n target: \"interacting\"\n },\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n \"INPUT.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n \"INPUT.FOCUS\": {\n target: \"focused\"\n },\n OPEN: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"invokeOnOpen\"]\n }\n ],\n \"VALUE.CLEAR\": {\n target: \"focused\",\n actions: [\"clearInputValue\", \"clearSelectedItems\", \"setInitialFocus\"]\n }\n }\n },\n focused: {\n tags: [\"focused\", \"closed\"],\n entry: [\"scrollContentToTop\", \"clearHighlightedValue\"],\n on: {\n \"CONTROLLED.OPEN\": [\n {\n guard: \"isChangeEvent\",\n target: \"suggesting\"\n },\n {\n target: \"interacting\"\n }\n ],\n \"INPUT.CHANGE\": [\n {\n guard: and(\"isOpenControlled\", \"openOnChange\"),\n actions: [\"setInputValue\", \"invokeOnOpen\", \"highlightFirstItemIfNeeded\"]\n },\n {\n guard: \"openOnChange\",\n target: \"suggesting\",\n actions: [\"setInputValue\", \"invokeOnOpen\", \"highlightFirstItemIfNeeded\"]\n },\n {\n actions: [\"setInputValue\"]\n }\n ],\n \"LAYER.INTERACT_OUTSIDE\": {\n target: \"idle\"\n },\n \"INPUT.ESCAPE\": {\n guard: and(\"isCustomValue\", not(\"allowCustomValue\")),\n actions: [\"revertInputValue\"]\n },\n \"INPUT.BLUR\": {\n target: \"idle\"\n },\n \"INPUT.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n \"INPUT.ARROW_DOWN\": [\n // == group 1 ==\n {\n guard: and(\"isOpenControlled\", \"autoComplete\"),\n actions: [\"invokeOnOpen\"]\n },\n {\n guard: \"autoComplete\",\n target: \"interacting\",\n actions: [\"invokeOnOpen\"]\n },\n // == group 2 ==\n {\n guard: \"isOpenControlled\",\n actions: [\"highlightFirstOrSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"highlightFirstOrSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n \"INPUT.ARROW_UP\": [\n // == group 1 ==\n {\n guard: \"autoComplete\",\n target: \"interacting\",\n actions: [\"invokeOnOpen\"]\n },\n {\n guard: \"autoComplete\",\n target: \"interacting\",\n actions: [\"invokeOnOpen\"]\n },\n // == group 2 ==\n {\n target: \"interacting\",\n actions: [\"highlightLastOrSelectedItem\", \"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"highlightLastOrSelectedItem\", \"invokeOnOpen\"]\n }\n ],\n OPEN: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"interacting\",\n actions: [\"invokeOnOpen\"]\n }\n ],\n \"VALUE.CLEAR\": {\n actions: [\"clearInputValue\", \"clearSelectedItems\"]\n }\n }\n },\n interacting: {\n tags: [\"open\", \"focused\"],\n entry: [\"setInitialFocus\"],\n effects: [\"scrollToHighlightedItem\", \"trackDismissableLayer\", \"trackPlacement\", \"hideOtherElements\"],\n on: {\n \"CONTROLLED.CLOSE\": [\n {\n guard: \"restoreFocus\",\n target: \"focused\",\n actions: [\"setFinalFocus\"]\n },\n {\n target: \"idle\"\n }\n ],\n CHILDREN_CHANGE: [\n {\n guard: \"isHighlightedItemRemoved\",\n actions: [\"clearHighlightedValue\"]\n },\n {\n actions: [\"scrollToHighlightedItem\"]\n }\n ],\n \"INPUT.HOME\": {\n actions: [\"highlightFirstItem\"]\n },\n \"INPUT.END\": {\n actions: [\"highlightLastItem\"]\n },\n \"INPUT.ARROW_DOWN\": [\n {\n guard: and(\"autoComplete\", \"isLastItemHighlighted\"),\n actions: [\"clearHighlightedValue\", \"scrollContentToTop\"]\n },\n {\n actions: [\"highlightNextItem\"]\n }\n ],\n \"INPUT.ARROW_UP\": [\n {\n guard: and(\"autoComplete\", \"isFirstItemHighlighted\"),\n actions: [\"clearHighlightedValue\"]\n },\n {\n actions: [\"highlightPrevItem\"]\n }\n ],\n \"INPUT.ENTER\": [\n // == group 1 ==\n {\n guard: and(\"isOpenControlled\", \"isCustomValue\", not(\"hasHighlightedItem\"), not(\"allowCustomValue\")),\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n {\n guard: and(\"isCustomValue\", not(\"hasHighlightedItem\"), not(\"allowCustomValue\")),\n target: \"focused\",\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n // == group 2 ==\n {\n guard: and(\"isOpenControlled\", \"closeOnSelect\"),\n actions: [\"selectHighlightedItem\", \"invokeOnClose\"]\n },\n {\n guard: \"closeOnSelect\",\n target: \"focused\",\n actions: [\"selectHighlightedItem\", \"invokeOnClose\", \"setFinalFocus\"]\n },\n {\n actions: [\"selectHighlightedItem\"]\n }\n ],\n \"INPUT.CHANGE\": [\n {\n guard: \"autoComplete\",\n target: \"suggesting\",\n actions: [\"setInputValue\"]\n },\n {\n target: \"suggesting\",\n actions: [\"clearHighlightedValue\", \"setInputValue\"]\n }\n ],\n \"ITEM.POINTER_MOVE\": {\n actions: [\"setHighlightedValue\"]\n },\n \"ITEM.POINTER_LEAVE\": {\n actions: [\"clearHighlightedValue\"]\n },\n \"ITEM.CLICK\": [\n {\n guard: and(\"isOpenControlled\", \"closeOnSelect\"),\n actions: [\"selectItem\", \"invokeOnClose\"]\n },\n {\n guard: \"closeOnSelect\",\n target: \"focused\",\n actions: [\"selectItem\", \"invokeOnClose\", \"setFinalFocus\"]\n },\n {\n actions: [\"selectItem\"]\n }\n ],\n \"LAYER.ESCAPE\": [\n {\n guard: and(\"isOpenControlled\", \"autoComplete\"),\n actions: [\"syncInputValue\", \"invokeOnClose\"]\n },\n {\n guard: \"autoComplete\",\n target: \"focused\",\n actions: [\"syncInputValue\", \"invokeOnClose\"]\n },\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\", \"setFinalFocus\"]\n }\n ],\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\"]\n }\n ],\n \"LAYER.INTERACT_OUTSIDE\": [\n // == group 1 ==\n {\n guard: and(\"isOpenControlled\", \"isCustomValue\", not(\"allowCustomValue\")),\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n {\n guard: and(\"isCustomValue\", not(\"allowCustomValue\")),\n target: \"idle\",\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n // == group 2 ==\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"idle\",\n actions: [\"invokeOnClose\"]\n }\n ],\n CLOSE: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\", \"setFinalFocus\"]\n }\n ],\n \"VALUE.CLEAR\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"clearInputValue\", \"clearSelectedItems\", \"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"clearInputValue\", \"clearSelectedItems\", \"invokeOnClose\", \"setFinalFocus\"]\n }\n ]\n }\n },\n suggesting: {\n tags: [\"open\", \"focused\"],\n effects: [\"trackDismissableLayer\", \"scrollToHighlightedItem\", \"trackPlacement\", \"hideOtherElements\"],\n entry: [\"setInitialFocus\"],\n on: {\n \"CONTROLLED.CLOSE\": [\n {\n guard: \"restoreFocus\",\n target: \"focused\",\n actions: [\"setFinalFocus\"]\n },\n {\n target: \"idle\"\n }\n ],\n CHILDREN_CHANGE: [\n {\n guard: \"autoHighlight\",\n actions: [\"highlightFirstItem\"]\n },\n {\n guard: \"isHighlightedItemRemoved\",\n actions: [\"clearHighlightedValue\"]\n }\n ],\n \"INPUT.ARROW_DOWN\": {\n target: \"interacting\",\n actions: [\"highlightNextItem\"]\n },\n \"INPUT.ARROW_UP\": {\n target: \"interacting\",\n actions: [\"highlightPrevItem\"]\n },\n \"INPUT.HOME\": {\n target: \"interacting\",\n actions: [\"highlightFirstItem\"]\n },\n \"INPUT.END\": {\n target: \"interacting\",\n actions: [\"highlightLastItem\"]\n },\n \"INPUT.ENTER\": [\n // == group 1 ==\n {\n guard: and(\"isOpenControlled\", \"isCustomValue\", not(\"hasHighlightedItem\"), not(\"allowCustomValue\")),\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n {\n guard: and(\"isCustomValue\", not(\"hasHighlightedItem\"), not(\"allowCustomValue\")),\n target: \"focused\",\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n // == group 2 ==\n {\n guard: and(\"isOpenControlled\", \"closeOnSelect\"),\n actions: [\"selectHighlightedItem\", \"invokeOnClose\"]\n },\n {\n guard: \"closeOnSelect\",\n target: \"focused\",\n actions: [\"selectHighlightedItem\", \"invokeOnClose\", \"setFinalFocus\"]\n },\n {\n actions: [\"selectHighlightedItem\"]\n }\n ],\n \"INPUT.CHANGE\": {\n actions: [\"setInputValue\"]\n },\n \"LAYER.ESCAPE\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\"]\n }\n ],\n \"ITEM.POINTER_MOVE\": {\n target: \"interacting\",\n actions: [\"setHighlightedValue\"]\n },\n \"ITEM.POINTER_LEAVE\": {\n actions: [\"clearHighlightedValue\"]\n },\n \"LAYER.INTERACT_OUTSIDE\": [\n // == group 1 ==\n {\n guard: and(\"isOpenControlled\", \"isCustomValue\", not(\"allowCustomValue\")),\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n {\n guard: and(\"isCustomValue\", not(\"allowCustomValue\")),\n target: \"idle\",\n actions: [\"revertInputValue\", \"invokeOnClose\"]\n },\n // == group 2 ==\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"idle\",\n actions: [\"invokeOnClose\"]\n }\n ],\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\"]\n }\n ],\n \"ITEM.CLICK\": [\n {\n guard: and(\"isOpenControlled\", \"closeOnSelect\"),\n actions: [\"selectItem\", \"invokeOnClose\"]\n },\n {\n guard: \"closeOnSelect\",\n target: \"focused\",\n actions: [\"selectItem\", \"invokeOnClose\", \"setFinalFocus\"]\n },\n {\n actions: [\"selectItem\"]\n }\n ],\n CLOSE: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\", \"setFinalFocus\"]\n }\n ],\n \"VALUE.CLEAR\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"clearInputValue\", \"clearSelectedItems\", \"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"clearInputValue\", \"clearSelectedItems\", \"invokeOnClose\", \"setFinalFocus\"]\n }\n ]\n }\n }\n },\n implementations: {\n guards: {\n isInputValueEmpty: ({ computed }) => computed(\"isInputValueEmpty\"),\n autoComplete: ({ computed, prop }) => computed(\"autoComplete\") && !prop(\"multiple\"),\n autoHighlight: ({ computed }) => computed(\"autoHighlight\"),\n isFirstItemHighlighted: ({ prop, context }) => prop(\"collection\").firstValue === context.get(\"highlightedValue\"),\n isLastItemHighlighted: ({ prop, context }) => prop(\"collection\").lastValue === context.get(\"highlightedValue\"),\n isCustomValue: ({ computed }) => computed(\"isCustomValue\"),\n allowCustomValue: ({ prop }) => !!prop(\"allowCustomValue\"),\n hasHighlightedItem: ({ context }) => context.get(\"highlightedValue\") != null,\n closeOnSelect: ({ prop }) => !!prop(\"closeOnSelect\"),\n isOpenControlled: ({ prop }) => prop(\"open\") != null,\n openOnChange: ({ prop, context }) => {\n const openOnChange = prop(\"openOnChange\");\n if (isBoolean(openOnChange)) return openOnChange;\n return !!openOnChange?.({ inputValue: context.get(\"inputValue\") });\n },\n restoreFocus: ({ event }) => event.restoreFocus == null ? true : !!event.restoreFocus,\n isChangeEvent: ({ event }) => event.previousEvent?.type === \"INPUT.CHANGE\",\n autoFocus: ({ prop }) => !!prop(\"autoFocus\"),\n isHighlightedItemRemoved: ({ prop, context }) => !prop(\"collection\").has(context.get(\"highlightedValue\"))\n },\n effects: {\n trackDismissableLayer({ send, prop, scope }) {\n if (prop(\"disableLayer\")) return;\n const contentEl = () => getContentEl(scope);\n return trackDismissableElement(contentEl, {\n defer: true,\n exclude: () => [getInputEl(scope), getTriggerEl(scope), getClearTriggerEl(scope)],\n onFocusOutside: prop(\"onFocusOutside\"),\n onPointerDownOutside: prop(\"onPointerDownOutside\"),\n onInteractOutside: prop(\"onInteractOutside\"),\n onEscapeKeyDown(event) {\n event.preventDefault();\n event.stopPropagation();\n send({ type: \"LAYER.ESCAPE\", src: \"escape-key\" });\n },\n onDismiss() {\n send({ type: \"LAYER.INTERACT_OUTSIDE\", src: \"interact-outside\", restoreFocus: false });\n }\n });\n },\n hideOtherElements({ scope }) {\n return ariaHidden([\n getInputEl(scope),\n getContentEl(scope),\n getTriggerEl(scope),\n getClearTriggerEl(scope)\n ]);\n },\n trackPlacement({ context, prop, scope }) {\n const anchorEl = () => getControlEl(scope) || getTriggerEl(scope);\n const positionerEl = () => getPositionerEl(scope);\n context.set(\"currentPlacement\", prop(\"positioning\").placement);\n return getPlacement(anchorEl, positionerEl, {\n ...prop(\"positioning\"),\n defer: true,\n onComplete(data) {\n context.set(\"currentPlacement\", data.placement);\n }\n });\n },\n scrollToHighlightedItem({ context, prop, scope, event }) {\n const inputEl = getInputEl(scope);\n let cleanups = [];\n const exec = (immediate) => {\n const pointer = event.current().type.includes(\"POINTER\");\n const highlightedValue = context.get(\"highlightedValue\");\n if (pointer || !highlightedValue) return;\n const itemEl = getItemEl(scope, highlightedValue);\n const contentEl = getContentEl(scope);\n const scrollToIndexFn = prop(\"scrollToIndexFn\");\n if (scrollToIndexFn) {\n const highlightedIndex = prop(\"collection\").indexOf(highlightedValue);\n scrollToIndexFn({ index: highlightedIndex, immediate });\n return;\n }\n const raf_cleanup = raf(() => {\n scrollIntoView(itemEl, { rootEl: contentEl, block: \"nearest\" });\n });\n cleanups.push(raf_cleanup);\n };\n const rafCleanup = raf(() => exec(true));\n cleanups.push(rafCleanup);\n const observerCleanup = observeAttributes(inputEl, {\n attributes: [\"aria-activedescendant\"],\n callback: () => exec(false)\n });\n cleanups.push(observerCleanup);\n return () => {\n cleanups.forEach((cleanup) => cleanup());\n };\n }\n },\n actions: {\n reposition({ context, prop, scope, event }) {\n const controlEl = () => getControlEl(scope);\n const positionerEl = () => getPositionerEl(scope);\n getPlacement(controlEl, positionerEl, {\n ...prop(\"positioning\"),\n ...event.options,\n defer: true,\n listeners: false,\n onComplete(data) {\n context.set(\"currentPlacement\", data.placement);\n }\n });\n },\n setHighlightedValue({ context, event }) {\n if (event.value == null) return;\n context.set(\"highlightedValue\", event.value);\n },\n clearHighlightedValue({ context }) {\n context.set(\"highlightedValue\", null);\n },\n selectHighlightedItem(params) {\n const { context, prop } = params;\n const collection2 = prop(\"collection\");\n const highlightedValue = context.get(\"highlightedValue\");\n if (!highlightedValue || !collection2.has(highlightedValue)) return;\n const nextValue = prop(\"multiple\") ? addOrRemove(context.get(\"value\"), highlightedValue) : [highlightedValue];\n prop(\"onSelect\")?.({ value: nextValue, itemValue: highlightedValue });\n context.set(\"value\", nextValue);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: collection2.stringifyMany(nextValue),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n },\n scrollToHighlightedItem({ context, prop, scope }) {\n nextTick(() => {\n const highlightedValue = context.get(\"highlightedValue\");\n if (highlightedValue == null) return;\n const itemEl = getItemEl(scope, highlightedValue);\n const contentEl = getContentEl(scope);\n const scrollToIndexFn = prop(\"scrollToIndexFn\");\n if (scrollToIndexFn) {\n const highlightedIndex = prop(\"collection\").indexOf(highlightedValue);\n scrollToIndexFn({ index: highlightedIndex, immediate: true });\n return;\n }\n scrollIntoView(itemEl, { rootEl: contentEl, block: \"nearest\" });\n });\n },\n selectItem(params) {\n const { context, event, flush, prop } = params;\n if (event.value == null) return;\n flush(() => {\n const nextValue = prop(\"multiple\") ? addOrRemove(context.get(\"value\"), event.value) : [event.value];\n prop(\"onSelect\")?.({ value: nextValue, itemValue: event.value });\n context.set(\"value\", nextValue);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: prop(\"collection\").stringifyMany(nextValue),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n });\n },\n clearItem(params) {\n const { context, event, flush, prop } = params;\n if (event.value == null) return;\n flush(() => {\n const nextValue = remove(context.get(\"value\"), event.value);\n context.set(\"value\", nextValue);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: prop(\"collection\").stringifyMany(nextValue),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n });\n },\n setInitialFocus({ scope }) {\n raf(() => {\n focusInputEl(scope);\n });\n },\n setFinalFocus({ scope }) {\n raf(() => {\n const triggerEl = getTriggerEl(scope);\n if (triggerEl?.dataset.focusable == null) {\n focusInputEl(scope);\n } else {\n focusTriggerEl(scope);\n }\n });\n },\n syncInputValue({ context, scope, event }) {\n const inputEl = getInputEl(scope);\n if (!inputEl) return;\n inputEl.value = context.get(\"inputValue\");\n queueMicrotask(() => {\n if (event.current().type === \"INPUT.CHANGE\") return;\n setCaretToEnd(inputEl);\n });\n },\n setInputValue({ context, event }) {\n context.set(\"inputValue\", event.value);\n },\n clearInputValue({ context }) {\n context.set(\"inputValue\", \"\");\n },\n revertInputValue({ context, prop, computed }) {\n const selectionBehavior = prop(\"selectionBehavior\");\n const inputValue = match(selectionBehavior, {\n replace: computed(\"hasSelectedItems\") ? computed(\"valueAsString\") : \"\",\n preserve: context.get(\"inputValue\"),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n },\n setValue(params) {\n const { context, flush, event, prop } = params;\n flush(() => {\n context.set(\"value\", event.value);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: prop(\"collection\").stringifyMany(event.value),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n });\n },\n clearSelectedItems(params) {\n const { context, flush, prop } = params;\n flush(() => {\n context.set(\"value\", []);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: prop(\"collection\").stringifyMany([]),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n });\n },\n scrollContentToTop({ prop, scope }) {\n const scrollToIndexFn = prop(\"scrollToIndexFn\");\n if (scrollToIndexFn) {\n scrollToIndexFn({ index: 0, immediate: true });\n } else {\n const contentEl = getContentEl(scope);\n if (!contentEl) return;\n contentEl.scrollTop = 0;\n }\n },\n invokeOnOpen({ prop, event }) {\n const reason = getOpenChangeReason(event);\n prop(\"onOpenChange\")?.({ open: true, reason });\n },\n invokeOnClose({ prop, event }) {\n const reason = getOpenChangeReason(event);\n prop(\"onOpenChange\")?.({ open: false, reason });\n },\n highlightFirstItem({ context, prop, scope }) {\n const exec = getContentEl(scope) ? queueMicrotask : raf;\n exec(() => {\n const value = prop(\"collection\").firstValue;\n if (value) context.set(\"highlightedValue\", value);\n });\n },\n highlightFirstItemIfNeeded({ computed, action }) {\n if (!computed(\"autoHighlight\")) return;\n action([\"highlightFirstItem\"]);\n },\n highlightLastItem({ context, prop, scope }) {\n const exec = getContentEl(scope) ? queueMicrotask : raf;\n exec(() => {\n const value = prop(\"collection\").lastValue;\n if (value) context.set(\"highlightedValue\", value);\n });\n },\n highlightNextItem({ context, prop }) {\n let value = null;\n const highlightedValue = context.get(\"highlightedValue\");\n const collection2 = prop(\"collection\");\n if (highlightedValue) {\n value = collection2.getNextValue(highlightedValue);\n if (!value && prop(\"loopFocus\")) value = collection2.firstValue;\n } else {\n value = collection2.firstValue;\n }\n if (value) context.set(\"highlightedValue\", value);\n },\n highlightPrevItem({ context, prop }) {\n let value = null;\n const highlightedValue = context.get(\"highlightedValue\");\n const collection2 = prop(\"collection\");\n if (highlightedValue) {\n value = collection2.getPreviousValue(highlightedValue);\n if (!value && prop(\"loopFocus\")) value = collection2.lastValue;\n } else {\n value = collection2.lastValue;\n }\n if (value) context.set(\"highlightedValue\", value);\n },\n highlightFirstSelectedItem({ context, prop }) {\n raf(() => {\n const [value] = prop(\"collection\").sort(context.get(\"value\"));\n if (value) context.set(\"highlightedValue\", value);\n });\n },\n highlightFirstOrSelectedItem({ context, prop, computed }) {\n raf(() => {\n let value = null;\n if (computed(\"hasSelectedItems\")) {\n value = prop(\"collection\").sort(context.get(\"value\"))[0];\n } else {\n value = prop(\"collection\").firstValue;\n }\n if (value) context.set(\"highlightedValue\", value);\n });\n },\n highlightLastOrSelectedItem({ context, prop, computed }) {\n raf(() => {\n const collection2 = prop(\"collection\");\n let value = null;\n if (computed(\"hasSelectedItems\")) {\n value = collection2.sort(context.get(\"value\"))[0];\n } else {\n value = collection2.lastValue;\n }\n if (value) context.set(\"highlightedValue\", value);\n });\n },\n autofillInputValue({ context, computed, prop, event, scope }) {\n const inputEl = getInputEl(scope);\n const collection2 = prop(\"collection\");\n if (!computed(\"autoComplete\") || !inputEl || !event.keypress) return;\n const valueText = collection2.stringify(context.get(\"highlightedValue\"));\n raf(() => {\n inputEl.value = valueText || context.get(\"inputValue\");\n });\n },\n syncSelectedItems(params) {\n queueMicrotask(() => {\n const { context, prop } = params;\n const collection2 = prop(\"collection\");\n const value = context.get(\"value\");\n const selectedItems = value.map((v) => {\n const item = context.get(\"selectedItems\").find((item2) => collection2.getItemValue(item2) === v);\n return item || collection2.find(v);\n });\n context.set(\"selectedItems\", selectedItems);\n const inputValue = match(prop(\"selectionBehavior\"), {\n preserve: context.get(\"inputValue\"),\n replace: collection2.stringifyMany(value),\n clear: \"\"\n });\n context.set(\"inputValue\", inputValue);\n });\n },\n syncHighlightedItem({ context, prop }) {\n const item = prop(\"collection\").find(context.get(\"highlightedValue\"));\n context.set(\"highlightedItem\", item);\n },\n toggleVisibility({ event, send, prop }) {\n send({ type: prop(\"open\") ? \"CONTROLLED.OPEN\" : \"CONTROLLED.CLOSE\", previousEvent: event });\n }\n }\n }\n});\nfunction getOpenChangeReason(event) {\n return (event.previousEvent || event).src;\n}\nvar props = createProps()([\n \"allowCustomValue\",\n \"autoFocus\",\n \"closeOnSelect\",\n \"collection\",\n \"composite\",\n \"defaultHighlightedValue\",\n \"defaultInputValue\",\n \"defaultOpen\",\n \"defaultValue\",\n \"dir\",\n \"disabled\",\n \"disableLayer\",\n \"form\",\n \"getRootNode\",\n \"highlightedValue\",\n \"id\",\n \"ids\",\n \"inputBehavior\",\n \"inputValue\",\n \"invalid\",\n \"loopFocus\",\n \"multiple\",\n \"name\",\n \"navigate\",\n \"onFocusOutside\",\n \"onHighlightChange\",\n \"onInputValueChange\",\n \"onInteractOutside\",\n \"onOpenChange\",\n \"onOpenChange\",\n \"onPointerDownOutside\",\n \"onSelect\",\n \"onValueChange\",\n \"open\",\n \"openOnChange\",\n \"openOnClick\",\n \"openOnKeyPress\",\n \"placeholder\",\n \"positioning\",\n \"readOnly\",\n \"required\",\n \"scrollToIndexFn\",\n \"selectionBehavior\",\n \"translations\",\n \"value\"\n]);\nvar splitProps = createSplitProps(props);\nvar itemGroupLabelProps = createProps()([\"htmlFor\"]);\nvar splitItemGroupLabelProps = createSplitProps(itemGroupLabelProps);\nvar itemGroupProps = createProps()([\"id\"]);\nvar splitItemGroupProps = createSplitProps(itemGroupProps);\nvar itemProps = createProps()([\"item\", \"persistFocus\"]);\nvar splitItemProps = createSplitProps(itemProps);\n\nexport { anatomy, collection, connect, itemGroupLabelProps, itemGroupProps, itemProps, machine, props, splitItemGroupLabelProps, splitItemGroupProps, splitItemProps, splitProps };\n","'use client';\nimport { createAnatomy } from '@zag-js/anatomy';\n\nconst fieldsetAnatomy = createAnatomy(\"fieldset\").parts(\"root\", \"errorText\", \"helperText\", \"legend\");\nconst parts = fieldsetAnatomy.build();\n\nexport { fieldsetAnatomy, parts };\n","\"use strict\";\nimport { comboboxAnatomy as comboboxAnatomy$1 } from '@ark-ui/react';\nimport { accordionAnatomy as accordionAnatomy$1 } from '@ark-ui/react/accordion';\nimport { createAnatomy } from '@ark-ui/react/anatomy';\nimport { clipboardAnatomy as clipboardAnatomy$1 } from '@ark-ui/react/clipboard';\nimport { colorPickerAnatomy as colorPickerAnatomy$1 } from '@ark-ui/react/color-picker';\nimport { dialogAnatomy as dialogAnatomy$1 } from '@ark-ui/react/dialog';\nimport { editableAnatomy as editableAnatomy$1 } from '@ark-ui/react/editable';\nimport { fieldAnatomy as fieldAnatomy$1 } from '@ark-ui/react/field';\nimport { fieldsetAnatomy as fieldsetAnatomy$1 } from '@ark-ui/react/fieldset';\nimport { fileUploadAnatomy as fileUploadAnatomy$1 } from '@ark-ui/react/file-upload';\nimport { menuAnatomy as menuAnatomy$1 } from '@ark-ui/react/menu';\nimport { popoverAnatomy as popoverAnatomy$1 } from '@ark-ui/react/popover';\nimport { radioGroupAnatomy as radioGroupAnatomy$1 } from '@ark-ui/react/radio-group';\nimport { ratingGroupAnatomy as ratingGroupAnatomy$1 } from '@ark-ui/react/rating-group';\nimport { selectAnatomy as selectAnatomy$1 } from '@ark-ui/react/select';\nimport { sliderAnatomy as sliderAnatomy$1 } from '@ark-ui/react/slider';\nimport { switchAnatomy as switchAnatomy$1 } from '@ark-ui/react/switch';\nexport { treeViewAnatomy } from '@ark-ui/react/tree-view';\nexport { avatarAnatomy } from '@ark-ui/react/avatar';\nexport { checkboxAnatomy } from '@ark-ui/react/checkbox';\nexport { collapsibleAnatomy } from '@ark-ui/react/collapsible';\nexport { hoverCardAnatomy } from '@ark-ui/react/hover-card';\nexport { numberInputAnatomy } from '@ark-ui/react/number-input';\nexport { pinInputAnatomy } from '@ark-ui/react/pin-input';\nexport { progressAnatomy } from '@ark-ui/react/progress';\nexport { qrCodeAnatomy } from '@ark-ui/react/qr-code';\nexport { segmentGroupAnatomy } from '@ark-ui/react/segment-group';\nexport { tooltipAnatomy } from '@ark-ui/react/tooltip';\n\nconst accordionAnatomy = accordionAnatomy$1.extendWith(\"itemBody\");\nconst actionBarAnatomy = createAnatomy(\"action-bar\").parts(\n \"positioner\",\n \"content\",\n \"separator\",\n \"selectionTrigger\",\n \"closeTrigger\"\n);\nconst alertAnatomy = createAnatomy(\"alert\").parts(\n \"title\",\n \"description\",\n \"root\",\n \"indicator\",\n \"content\"\n);\nconst breadcrumbAnatomy = createAnatomy(\"breadcrumb\").parts(\n \"link\",\n \"currentLink\",\n \"item\",\n \"list\",\n \"root\",\n \"ellipsis\",\n \"separator\"\n);\nconst blockquoteAnatomy = createAnatomy(\"blockquote\").parts(\n \"root\",\n \"icon\",\n \"content\",\n \"caption\"\n);\nconst cardAnatomy = createAnatomy(\"card\").parts(\n \"root\",\n \"header\",\n \"body\",\n \"footer\",\n \"title\",\n \"description\"\n);\nconst checkboxCardAnatomy = createAnatomy(\"checkbox-card\", [\n \"root\",\n \"control\",\n \"label\",\n \"description\",\n \"addon\",\n \"indicator\",\n \"content\"\n]);\nconst dataListAnatomy = createAnatomy(\"data-list\").parts(\n \"root\",\n \"item\",\n \"itemLabel\",\n \"itemValue\"\n);\nconst dialogAnatomy = dialogAnatomy$1.extendWith(\n \"header\",\n \"body\",\n \"footer\",\n \"backdrop\"\n);\nconst drawerAnatomy = dialogAnatomy$1.extendWith(\n \"header\",\n \"body\",\n \"footer\",\n \"backdrop\"\n);\nconst editableAnatomy = editableAnatomy$1.extendWith(\"textarea\");\nconst emptyStateAnatomy = createAnatomy(\"empty-state\", [\n \"root\",\n \"content\",\n \"indicator\",\n \"title\",\n \"description\"\n]);\nconst fieldAnatomy = fieldAnatomy$1.extendWith(\"requiredIndicator\");\nconst fieldsetAnatomy = fieldsetAnatomy$1.extendWith(\"content\");\nconst fileUploadAnatomy = fileUploadAnatomy$1.extendWith(\n \"itemContent\",\n \"dropzoneContent\",\n \"fileText\"\n);\nconst listAnatomy = createAnatomy(\"list\").parts(\n \"root\",\n \"item\",\n \"indicator\"\n);\nconst menuAnatomy = menuAnatomy$1.extendWith(\"itemCommand\");\nconst nativeSelectAnatomy = createAnatomy(\"select\").parts(\n \"root\",\n \"field\",\n \"indicator\"\n);\nconst popoverAnatomy = popoverAnatomy$1.extendWith(\n \"header\",\n \"body\",\n \"footer\"\n);\nconst radioGroupAnatomy = radioGroupAnatomy$1.extendWith(\n \"itemAddon\",\n \"itemIndicator\"\n);\nconst radioCardAnatomy = radioGroupAnatomy.extendWith(\n \"itemContent\",\n \"itemDescription\"\n);\nconst ratingGroupAnatomy = ratingGroupAnatomy$1.extendWith(\"itemIndicator\");\nconst selectAnatomy = selectAnatomy$1.extendWith(\"indicatorGroup\");\nconst comboboxAnatomy = comboboxAnatomy$1.extendWith(\n \"indicatorGroup\",\n \"empty\"\n);\nconst sliderAnatomy = sliderAnatomy$1.extendWith(\"markerIndicator\");\nconst statAnatomy = createAnatomy(\"stat\").parts(\n \"root\",\n \"label\",\n \"helpText\",\n \"valueText\",\n \"valueUnit\",\n \"indicator\"\n);\nconst statusAnatomy = createAnatomy(\"status\").parts(\"root\", \"indicator\");\nconst stepsAnatomy = createAnatomy(\"steps\", [\n \"root\",\n \"list\",\n \"item\",\n \"trigger\",\n \"indicator\",\n \"separator\",\n \"content\",\n \"title\",\n \"description\",\n \"nextTrigger\",\n \"prevTrigger\",\n \"progress\"\n]);\nconst switchAnatomy = switchAnatomy$1.extendWith(\"indicator\");\nconst tableAnatomy = createAnatomy(\"table\").parts(\n \"root\",\n \"header\",\n \"body\",\n \"row\",\n \"columnHeader\",\n \"cell\",\n \"footer\",\n \"caption\"\n);\nconst toastAnatomy = createAnatomy(\"toast\").parts(\n \"root\",\n \"title\",\n \"description\",\n \"indicator\",\n \"closeTrigger\",\n \"actionTrigger\"\n);\nconst tabsAnatomy = createAnatomy(\"tabs\").parts(\n \"root\",\n \"trigger\",\n \"list\",\n \"content\",\n \"contentGroup\",\n \"indicator\"\n);\nconst tagAnatomy = createAnatomy(\"tag\").parts(\n \"root\",\n \"label\",\n \"closeTrigger\",\n \"startElement\",\n \"endElement\"\n);\nconst timelineAnatomy = createAnatomy(\"timeline\").parts(\n \"root\",\n \"item\",\n \"content\",\n \"separator\",\n \"indicator\",\n \"connector\",\n \"title\",\n \"description\"\n);\nconst colorPickerAnatomy = colorPickerAnatomy$1.extendWith(\"channelText\");\nconst codeBlockAnatomy = createAnatomy(\"code-block\", [\n \"root\",\n \"content\",\n \"title\",\n \"header\",\n \"footer\",\n \"control\",\n \"overlay\",\n \"code\",\n \"codeText\",\n \"copyTrigger\",\n \"copyIndicator\",\n \"collapseTrigger\",\n \"collapseIndicator\",\n \"collapseText\"\n]);\nconst clipboardAnatomy = clipboardAnatomy$1.extendWith(\"valueText\");\n\nexport { accordionAnatomy, actionBarAnatomy, alertAnatomy, blockquoteAnatomy, breadcrumbAnatomy, cardAnatomy, checkboxCardAnatomy, clipboardAnatomy, codeBlockAnatomy, colorPickerAnatomy, comboboxAnatomy, dataListAnatomy, dialogAnatomy, drawerAnatomy, editableAnatomy, emptyStateAnatomy, fieldAnatomy, fieldsetAnatomy, fileUploadAnatomy, listAnatomy, menuAnatomy, nativeSelectAnatomy, popoverAnatomy, radioCardAnatomy, radioGroupAnatomy, ratingGroupAnatomy, selectAnatomy, sliderAnatomy, statAnatomy, statusAnatomy, stepsAnatomy, switchAnatomy, tableAnatomy, tabsAnatomy, tagAnatomy, timelineAnatomy, toastAnatomy };\n"],"names":["anatomy","createAnatomy","createProps","fieldsetAnatomy","accordionAnatomy","accordionAnatomy$1","actionBarAnatomy","alertAnatomy","breadcrumbAnatomy","blockquoteAnatomy","cardAnatomy","checkboxCardAnatomy","dataListAnatomy","dialogAnatomy","dialogAnatomy$1","drawerAnatomy","editableAnatomy","editableAnatomy$1","emptyStateAnatomy","fieldAnatomy","fieldAnatomy$1","fieldsetAnatomy$1","fileUploadAnatomy","fileUploadAnatomy$1","listAnatomy","menuAnatomy","menuAnatomy$1","nativeSelectAnatomy","popoverAnatomy","popoverAnatomy$1","radioGroupAnatomy","radioGroupAnatomy$1","radioCardAnatomy","ratingGroupAnatomy","ratingGroupAnatomy$1","selectAnatomy","selectAnatomy$1","comboboxAnatomy","comboboxAnatomy$1","sliderAnatomy","sliderAnatomy$1","statAnatomy","statusAnatomy","stepsAnatomy","switchAnatomy","switchAnatomy$1","tableAnatomy","toastAnatomy","tabsAnatomy","tagAnatomy","timelineAnatomy","colorPickerAnatomy","colorPickerAnatomy$1","codeBlockAnatomy","clipboardAnatomy$1"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -1,18 +1,18 @@
1
1
  import { j as r } from "./jsx-runtime-C5mzlN2N.js";
2
2
  import R, { forwardRef as l, useId as E, useMemo as m, useState as Z, useCallback as L } from "react";
3
- import { T as O } from "./tooltip.component-DFsQNG1q.js";
3
+ import { T as O } from "./tooltip.component-CHohp2qn.js";
4
4
  import { I as A } from "./icon.component-PV_nHBId.js";
5
5
  import { F as I } from "./float-DgYuLWpx.js";
6
6
  import { a as X } from "./config-Djkl1N81.js";
7
7
  import { u as q } from "./use-recipe-d63ABaZ3.js";
8
8
  import { F as D } from "./flex-CX-8gE9T.js";
9
9
  import { C as J } from "./center-Dmlzv1BW.js";
10
- import { m as K, c as Q, A as y } from "./avatar.records-EoZmO3VR.js";
10
+ import { m as K, c as Q, A as y } from "./avatar.records-DFg5kBIk.js";
11
11
  import { c as N, a as U } from "./factory-BQshv7_b.js";
12
12
  import { c as Y, u as aa } from "./create-slot-recipe-context-D_FXDJGp.js";
13
13
  import { G as ta } from "./group-CplNJpRQ.js";
14
- import { a as ea, d as p, u as ra, f as sa, g as oa, n as na, b as F } from "./use-locale-context-Bw4Gg9Z0.js";
15
- import { a6 as v } from "./index-fHSGm2nC.js";
14
+ import { a as ea, d as p, u as ra, f as sa, g as oa, n as na, b as F } from "./use-locale-context-DmcfCmf9.js";
15
+ import { a6 as v } from "./index-BcafYtXX.js";
16
16
  const [_, B] = ea({
17
17
  name: "AvatarContext",
18
18
  hookName: "useAvatarContext",
@@ -401,4 +401,4 @@ export {
401
401
  Ea as A,
402
402
  Ta as a
403
403
  };
404
- //# sourceMappingURL=avatar.component-CzutRWy6.js.map
404
+ //# sourceMappingURL=avatar.component-BL6D6Lw_.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar.component-CzutRWy6.js","sources":["../../node_modules/@ark-ui/react/dist/components/avatar/use-avatar-context.js","../../node_modules/@ark-ui/react/dist/components/avatar/avatar-fallback.js","../../node_modules/@ark-ui/react/dist/components/avatar/avatar-image.js","../../node_modules/@ark-ui/react/dist/components/avatar/use-avatar.js","../../node_modules/@ark-ui/react/dist/components/avatar/avatar-root.js","../../node_modules/@ark-ui/react/dist/components/avatar/avatar-root-provider.js","../../node_modules/@chakra-ui/react/dist/esm/components/avatar/avatar.js","../../src/components/Avatar/components/AvatarRemoveButton/avatarRemoveButton.component.tsx","../../src/shared/utils/sizes.ts","../../src/components/Avatar/components/AvatarBadge/avatarBadge.recipe.ts","../../src/components/Avatar/components/AvatarBadge/avatarBadge.records.ts","../../src/components/Avatar/components/AvatarBadge/avatarBadge.component.tsx","../../src/components/Avatar/components/AvatarTooltipTriggerWrapper/avatarTooltipTriggerWrapper.component.tsx","../../src/components/Avatar/avatar.component.tsx"],"sourcesContent":["'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [AvatarProvider, useAvatarContext] = createContext({\n name: \"AvatarContext\",\n hookName: \"useAvatarContext\",\n providerName: \"<AvatarProvider />\"\n});\n\nexport { AvatarProvider, useAvatarContext };\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 { useAvatarContext } from './use-avatar-context.js';\n\nconst AvatarFallback = forwardRef((props, ref) => {\n const avatar = useAvatarContext();\n const mergedProps = mergeProps(avatar.getFallbackProps(), props);\n return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref });\n});\nAvatarFallback.displayName = \"AvatarFallback\";\n\nexport { AvatarFallback };\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 { useAvatarContext } from './use-avatar-context.js';\n\nconst AvatarImage = forwardRef((props, ref) => {\n const avatar = useAvatarContext();\n const mergedProps = mergeProps(avatar.getImageProps(), props);\n return /* @__PURE__ */ jsx(ark.img, { ...mergedProps, ref });\n});\nAvatarImage.displayName = \"AvatarImage\";\n\nexport { AvatarImage };\n","'use client';\nimport * as avatar from '@zag-js/avatar';\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 useAvatar = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const context = {\n id,\n dir,\n getRootNode,\n ...props\n };\n const service = useMachine(avatar.machine, context);\n return avatar.connect(service, normalizeProps);\n};\n\nexport { useAvatar };\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 { useAvatar } from './use-avatar.js';\nimport { AvatarProvider } from './use-avatar-context.js';\n\nconst AvatarRoot = forwardRef((props, ref) => {\n const [useAvatarProps, localProps] = createSplitProps()(props, [\"id\", \"ids\", \"onStatusChange\"]);\n const avatar = useAvatar(useAvatarProps);\n const mergedProps = mergeProps(avatar.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(AvatarProvider, { value: avatar, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nAvatarRoot.displayName = \"AvatarRoot\";\n\nexport { AvatarRoot };\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 { AvatarProvider } from './use-avatar-context.js';\n\nconst AvatarRootProvider = forwardRef((props, ref) => {\n const [{ value: avatar }, localProps] = createSplitProps()(props, [\"value\"]);\n const mergedProps = mergeProps(avatar.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(AvatarProvider, { value: avatar, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nAvatarRootProvider.displayName = \"AvatarRootProvider\";\n\nexport { AvatarRootProvider };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { Avatar } from '@ark-ui/react/avatar';\nimport { forwardRef, useMemo } from 'react';\nimport { cx } from '../../utils/cx.js';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { chakra } from '../../styled-system/factory.js';\nimport { useSlotRecipe } from '../../styled-system/use-slot-recipe.js';\nimport { Group } from '../group/group.js';\n\nconst {\n withProvider,\n withContext,\n useStyles: useAvatarStyles,\n useClassNames,\n PropsProvider\n} = createSlotRecipeContext({ key: \"avatar\" });\nconst AvatarRootProvider = withProvider(Avatar.RootProvider, \"root\", { forwardAsChild: true });\nconst AvatarRoot = withProvider(\n Avatar.Root,\n \"root\",\n { forwardAsChild: true }\n);\nconst AvatarPropsProvider = PropsProvider;\nconst StyledFallback = chakra(Avatar.Fallback, {}, { forwardAsChild: true });\nfunction getFallbackChildren(props) {\n if (props.children || props.asChild) return props.children;\n if (props.name) return getInitials(props.name);\n return /* @__PURE__ */ jsx(AvatarIcon, {});\n}\nfunction getInitials(name) {\n const names = name.trim().split(\" \");\n const firstName = names[0] != null ? names[0] : \"\";\n const lastName = names.length > 1 ? names[names.length - 1] : \"\";\n return firstName && lastName ? `${firstName.charAt(0)}${lastName.charAt(0)}` : firstName.charAt(0);\n}\nconst AvatarFallback = forwardRef(\n function AvatarFallback2(props, ref) {\n const styles = useAvatarStyles();\n const classNames = useClassNames();\n const { name: _, ...rest } = props;\n return /* @__PURE__ */ jsx(\n StyledFallback,\n {\n ref,\n ...rest,\n className: cx(props.className, classNames.fallback),\n css: [styles.fallback, props.css],\n children: getFallbackChildren(props)\n }\n );\n }\n);\nconst AvatarImage = withContext(\n Avatar.Image,\n \"image\",\n {\n forwardAsChild: true,\n defaultProps: {\n draggable: \"false\",\n referrerPolicy: \"no-referrer\"\n }\n }\n);\nconst AvatarIcon = forwardRef(\n function AvatarIcon2(props, ref) {\n return /* @__PURE__ */ jsx(\n chakra.svg,\n {\n stroke: \"currentColor\",\n fill: \"currentColor\",\n strokeWidth: \"0\",\n viewBox: \"0 0 24 24\",\n height: \"1.2em\",\n width: \"1.2em\",\n ref,\n ...props,\n children: /* @__PURE__ */ jsx(\"path\", { d: \"M20 22H18V20C18 18.3431 16.6569 17 15 17H9C7.34315 17 6 18.3431 6 20V22H4V20C4 17.2386 6.23858 15 9 15H15C17.7614 15 20 17.2386 20 20V22ZM12 13C8.68629 13 6 10.3137 6 7C6 3.68629 8.68629 1 12 1C15.3137 1 18 3.68629 18 7C18 10.3137 15.3137 13 12 13ZM12 11C14.2091 11 16 9.20914 16 7C16 4.79086 14.2091 3 12 3C9.79086 3 8 4.79086 8 7C8 9.20914 9.79086 11 12 11Z\" })\n }\n );\n }\n);\nconst AvatarContext = Avatar.Context;\nconst AvatarGroup = forwardRef(\n function AvatarGroup2(props, ref) {\n const recipe = useSlotRecipe({ key: \"avatar\" });\n const [variantProps, localProps] = useMemo(\n () => recipe.splitVariantProps(props),\n [props, recipe]\n );\n return /* @__PURE__ */ jsx(PropsProvider, { value: variantProps, children: /* @__PURE__ */ jsx(Group, { gap: \"0\", spaceX: \"-3\", ref, ...localProps }) });\n }\n);\n\nexport { AvatarContext, AvatarFallback, AvatarGroup, AvatarIcon, AvatarImage, AvatarPropsProvider, AvatarRoot, AvatarRootProvider, useAvatarStyles };\n","import React, { useCallback, MouseEvent, useState } from 'react';\nimport { Float } from '@chakra-ui/react/float';\nimport { Icon } from 'components/Icon/icon.component';\nimport { AvatarSize } from 'components/Avatar/avatar.types';\n\ninterface AvatarRemoveButtonProps {\n /** Callback function to be called when the remove button is clicked. */\n onRemove?: (value?: string) => void;\n /** Value of the avatar. */\n value?: string;\n /** Data test id for the remove button.\n * @default kibble-avatar-remove-button\n */\n 'data-testid'?: string;\n}\n\ninterface InternalAvatarRemoveButtonProps extends AvatarRemoveButtonProps {\n /** Size of the avatar.\n * @internal\n */\n avatarSize: AvatarSize;\n}\n\nconst AvatarRemoveButton = ({\n avatarSize,\n onRemove,\n value,\n ['data-testid']: dataTestId = 'kibble-avatar-remove-button',\n}: InternalAvatarRemoveButtonProps): React.JSX.Element => {\n const [isBeingHovered, setIsBeingHovered] = useState(false);\n\n const onRemoveButtonClick = useCallback(\n (e: MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n if (onRemove) {\n onRemove(value);\n }\n },\n [onRemove, value],\n );\n\n return (\n <Float\n className=\"Avatar__RemoveButton\"\n data-testid={dataTestId}\n backgroundColor=\"background\"\n borderRadius=\"full\"\n cursor=\"pointer\"\n display=\"none\"\n h={4}\n onClick={onRemoveButtonClick}\n onMouseEnter={(): void => setIsBeingHovered(true)}\n onMouseLeave={(): void => setIsBeingHovered(false)}\n w={4}\n zIndex=\"tooltip\"\n offset={avatarSize === 'xl' ? 2 : 0.5}\n _groupHover={{\n display: 'flex',\n }}\n >\n <Icon variant=\"default\" name=\"closeCircleSolid\" size={isBeingHovered ? 'sm' : 'xs'} />\n </Float>\n );\n};\n\nexport default AvatarRemoveButton;\n","import { AvatarSize } from 'components/Avatar/avatar.types';\nimport { IconSize } from 'components/Icon/icon.types';\n\ninterface GetNextIconSizeProps {\n currentSize: IconSize | AvatarSize;\n larger: boolean;\n delta: number;\n}\n\nexport const getNextIconSize = ({ currentSize, larger = true, delta = 1 }: GetNextIconSizeProps): IconSize => {\n let nextSize: IconSize;\n switch (currentSize) {\n case 'xs':\n nextSize = larger ? 'sm' : 'xs';\n break;\n case 'sm':\n nextSize = larger ? 'md' : 'xs';\n break;\n case 'md':\n nextSize = larger ? 'lg' : 'sm';\n break;\n case 'lg':\n nextSize = larger ? 'xl' : 'md';\n break;\n case 'xl':\n nextSize = larger ? '2xl' : 'lg';\n break;\n case '2xl':\n nextSize = larger ? '2xl' : 'xl';\n break;\n default:\n nextSize = currentSize as IconSize;\n break;\n }\n\n if (delta > 1) {\n nextSize = getNextIconSize({\n currentSize: nextSize,\n larger,\n delta: delta - 1,\n });\n }\n\n return nextSize;\n};\n","import { defineRecipe, SystemStyleObject } from '@chakra-ui/react/styled-system';\nimport { AvatarSize } from 'components/Avatar/avatar.types';\nimport { Status } from 'shared/types/status';\n\nconst avatarBadgeStatusStyles: Record<Status, SystemStyleObject> = {\n info: {\n bgColor: 'background.info',\n },\n default: {\n bgColor: 'background.subtle.less',\n },\n error: {\n bgColor: 'background.danger',\n },\n success: {\n bgColor: 'background.success',\n },\n warning: {\n bgColor: 'background.warning.contrast',\n },\n};\n\nconst avatarBadgeSizeStyles: Record<AvatarSize, SystemStyleObject> = {\n xs: {\n boxSize: '10px',\n },\n sm: {\n boxSize: '18px',\n },\n md: {\n boxSize: '18px',\n },\n lg: {\n boxSize: '18px',\n },\n xl: {\n borderWidth: '2px',\n boxSize: '24px',\n },\n};\n\nexport const avatarBadgeRecipe = defineRecipe({\n base: {\n alignItems: 'center',\n borderColor: 'border.strong.contrast',\n borderRadius: 'full',\n borderWidth: '1px',\n justifyContent: 'center',\n },\n variants: {\n size: avatarBadgeSizeStyles,\n status: avatarBadgeStatusStyles,\n withIcon: {\n true: {},\n false: {},\n },\n },\n defaultVariants: {\n status: 'info',\n },\n compoundVariants: [\n {\n withIcon: false,\n status: 'info',\n css: {\n bgColor: 'background.secondary',\n },\n },\n {\n withIcon: false,\n status: 'default',\n css: {\n bgColor: 'background.contrast',\n },\n },\n {\n withIcon: false,\n status: 'error',\n css: {\n bgColor: 'background.destructive',\n },\n },\n {\n withIcon: false,\n status: 'success',\n css: {\n bgColor: 'background.success.contrast',\n },\n },\n {\n withIcon: false,\n status: 'warning',\n css: {\n bgColor: 'background.warning.contrast',\n },\n },\n {\n withIcon: false,\n size: ['sm', 'md', 'lg'],\n css: {\n boxSize: '12px',\n },\n },\n {\n withIcon: false,\n size: 'xl',\n css: {\n borderWidth: '2px',\n boxSize: '16px',\n },\n },\n ],\n});\n","import { AvatarSize } from 'components/Avatar/avatar.types';\n\nexport const iconBadgeOffsetMap: Record<AvatarSize, number> = {\n xs: 0.5,\n sm: 0.5,\n md: 0.5,\n lg: 0.5,\n xl: 2,\n};\n\nexport const badgeOffsetMap: Record<AvatarSize, number> = {\n xs: 0.5,\n sm: 0.5,\n md: 1,\n lg: 1,\n xl: 2,\n};\n","import React, { useMemo } from 'react';\nimport { Float } from '@chakra-ui/react/float';\nimport { Icon, IconName } from 'components/Icon';\nimport { TypographyVariant } from 'shared/types/typography';\nimport { AvatarSize } from 'components/Avatar/avatar.types';\nimport { ConditionalValue, useRecipe } from '@chakra-ui/react/styled-system';\nimport { AvatarBadgePosition } from './avatarBadge.types';\nimport { Flex, FlexProps } from '@chakra-ui/react/flex';\nimport { avatarBadgeRecipe } from './avatarBadge.recipe';\nimport { Status } from 'shared/types/status';\nimport { badgeOffsetMap, iconBadgeOffsetMap } from './avatarBadge.records';\n\nexport interface AvatarBadgeProps extends FlexProps {\n /** Name of the icon inside the badge. */\n iconName?: IconName;\n /** Position of the badge relative to the avatar. */\n position?: ConditionalValue<AvatarBadgePosition>;\n /** Determines the color of the badge. */\n status?: Status;\n /** Data test id for the avatar badge. */\n 'data-testid'?: string;\n}\n\ninterface InternalAvatarBadgeProps extends AvatarBadgeProps {\n /** Size of the avatar.\n * @internal\n */\n avatarSize?: AvatarSize;\n}\n\nexport const AvatarBadge = ({\n avatarSize = 'md',\n iconName,\n position = 'bottom-end',\n status = 'info',\n ['data-testid']: dataTestId = 'kibble-avatar-badge-wrapper',\n ...rest\n}: InternalAvatarBadgeProps): React.JSX.Element => {\n const recipe = useRecipe({ recipe: avatarBadgeRecipe });\n const styles = recipe({ status, size: avatarSize, withIcon: !!iconName });\n const useSmallBadge = useMemo(() => avatarSize === 'xs' || !iconName, [iconName, avatarSize]);\n const offsetRecord = useMemo(() => (useSmallBadge ? badgeOffsetMap : iconBadgeOffsetMap), [useSmallBadge]);\n\n return (\n <Float\n className=\"Avatar__BadgeWrapper\"\n data-testid={dataTestId}\n offset={offsetRecord[avatarSize]}\n placement={position}\n >\n <Flex className=\"Avatar__Badge\" data-testid={`${dataTestId}-badge`} css={styles} {...rest}>\n {!useSmallBadge && iconName && (\n <Icon\n name={iconName}\n variant={status !== 'error' ? (status as TypographyVariant) : 'danger'}\n size={avatarSize === 'xl' ? 'sm' : 'xs'}\n />\n )}\n </Flex>\n </Float>\n );\n};\n","import { Center, CenterProps } from '@chakra-ui/react/center';\nimport { forwardRef } from 'react';\n\nexport const AvatarTooltipTriggerWrapper = forwardRef<\n HTMLDivElement,\n CenterProps & React.HTMLAttributes<HTMLDivElement>\n>((props, ref) => <Center ref={ref} className=\"Avatar__TooltipTriggerWrapper\" {...props} />);\nAvatarTooltipTriggerWrapper.displayName = 'AvatarTooltipTriggerWrapper';\n","import React, { useMemo } from 'react';\nimport { Avatar as CAvatar } from '@chakra-ui/react/avatar';\nimport { Tooltip, TooltipProps } from 'components/Tooltip/tooltip.component';\nimport { Icon, IconName } from 'components/Icon';\nimport AvatarRemoveButton from './components/AvatarRemoveButton/avatarRemoveButton.component';\nimport { AvatarSize, AvatarVariant } from './avatar.types';\nimport { getNextIconSize } from 'shared/utils/sizes';\nimport { AvatarBadge, AvatarBadgeProps } from './components/AvatarBadge/avatarBadge.component';\nimport { AvatarTooltipTriggerWrapper } from './components/AvatarTooltipTriggerWrapper/avatarTooltipTriggerWrapper.component';\nimport { AvatarSizeMap } from './avatar.records';\n\nexport interface AvatarProps extends CAvatar.RootProps {\n /** Props to customize the badge, `showBadge` must be set to true for the badge to show. */\n badgeProps?: AvatarBadgeProps;\n /** If true, the border of the avatar will be hidden. */\n hideBorder?: boolean;\n /** The name of the icon to be displayed inside the avatar. */\n iconName?: IconName;\n /** The name to derive the initials from. This will also be the default text for the tooltip unless `tooltipProps` is passed in. */\n name?: string;\n /** Callback function when the avatar is clicked. */\n onClick?: (event: React.MouseEvent<HTMLDivElement>) => void;\n /** Callback function when the remove button is clicked. */\n onRemove?: (value?: string) => void;\n /** If true, a badge will be displayed on the avatar. */\n showBadge?: boolean;\n /** If true, a remove button will be displayed when hovering over the avatar.\n * @default false\n */\n showRemoveButton?: boolean;\n /** Shows a tooltip on hover with the avatar name, if `tooltipProps` is not passed in. The tooltip will be disabled if no name is provided. */\n showTooltip?: boolean;\n /** Size of the avatar.\n * @default md\n */\n size?: AvatarSize;\n /** The source URL of the image to be displayed in the avatar. */\n src?: string;\n /** Props to customize the tooltip. See `Tooltip` for more information. */\n tooltipProps?: TooltipProps;\n /** Variant of the avatar.\n * @default default\n */\n variant?: AvatarVariant;\n /** The webp source URL of the image to be displayed in the avatar. */\n webpSrc?: string;\n /** The value of the avatar. */\n value?: string;\n /** Data test id for the avatar.\n * @default kibble-avatar\n */\n 'data-testid'?: string;\n /** The children to be displayed inside the avatar. */\n children?: React.ReactNode;\n}\n\nexport const Avatar = React.memo(\n ({\n badgeProps,\n hideBorder,\n iconName,\n name = '',\n onClick,\n onRemove,\n showBadge,\n showRemoveButton,\n showTooltip = true,\n size = 'md',\n src,\n tooltipProps,\n variant = 'default',\n webpSrc,\n value,\n ['data-testid']: dataTestId = 'kibble-avatar',\n children,\n ...rest\n }: AvatarProps): React.JSX.Element => {\n const AvatarRoot: React.FC<AvatarProps> = useMemo(\n () =>\n ({ children }: AvatarProps) => (\n <CAvatar.Root\n className=\"Avatar group\"\n data-testid={dataTestId}\n variant={variant}\n size={size}\n interactive={!!onClick}\n hideBorder={hideBorder}\n onClick={onClick}\n {...rest}\n >\n {children}\n </CAvatar.Root>\n ),\n [dataTestId, hideBorder, onClick, rest, size, variant],\n );\n\n const AvatarContent: React.FC<AvatarProps> = useMemo(\n () => () => (\n <>\n {children ? (\n children\n ) : (\n <CAvatar.Fallback name={name}>\n {iconName && (\n <Icon\n name={iconName}\n mt=\"-1px\"\n size={\n size === 'lg'\n ? 'lg'\n : getNextIconSize({\n currentSize: size,\n larger: true,\n delta: 1,\n })\n }\n />\n )}\n </CAvatar.Fallback>\n )}\n {showBadge && <AvatarBadge avatarSize={size} {...badgeProps} />}\n {(webpSrc || src) && <CAvatar.Image src={src} srcSet={webpSrc} />}\n </>\n ),\n [badgeProps, children, iconName, name, showBadge, size, src, webpSrc],\n );\n\n const TooltipWrapper: React.FC<AvatarProps> = useMemo(\n () =>\n ({ children }) =>\n showTooltip ? (\n <Tooltip\n data-testid={`${dataTestId}-tooltip`}\n {...tooltipProps}\n label={tooltipProps?.label || name}\n disabled={!name && !tooltipProps?.label}\n placement={tooltipProps?.placement || 'bottom'}\n >\n <AvatarTooltipTriggerWrapper w={AvatarSizeMap[size]} h={AvatarSizeMap[size]}>\n {children}\n </AvatarTooltipTriggerWrapper>\n </Tooltip>\n ) : (\n <React.Fragment>{children}</React.Fragment>\n ),\n [dataTestId, name, showTooltip, size, tooltipProps],\n );\n\n if (showRemoveButton)\n return (\n <AvatarRoot>\n <TooltipWrapper>\n <AvatarContent />\n </TooltipWrapper>\n {showRemoveButton && size !== 'xs' && (\n <AvatarRemoveButton avatarSize={size} onRemove={onRemove} value={value} />\n )}\n </AvatarRoot>\n );\n\n return (\n <TooltipWrapper>\n <AvatarRoot>\n <AvatarContent />\n </AvatarRoot>\n </TooltipWrapper>\n );\n },\n);\n"],"names":["AvatarProvider","useAvatarContext","createContext","AvatarFallback","forwardRef","props","ref","avatar","mergedProps","mergeProps","jsx","ark","AvatarImage","useAvatar","id","useId","getRootNode","useEnvironmentContext","dir","useLocaleContext","context","service","useMachine","avatar.machine","avatar.connect","normalizeProps","AvatarRoot","useAvatarProps","localProps","createSplitProps","AvatarRootProvider","withProvider","withContext","useAvatarStyles","useClassNames","PropsProvider","createSlotRecipeContext","Avatar.RootProvider","Avatar.Root","StyledFallback","chakra","Avatar.Fallback","getFallbackChildren","getInitials","AvatarIcon","name","names","firstName","lastName","styles","classNames","_","rest","cx","Avatar.Image","AvatarGroup","recipe","useSlotRecipe","variantProps","useMemo","Group","AvatarRemoveButton","avatarSize","onRemove","value","dataTestId","isBeingHovered","setIsBeingHovered","useState","onRemoveButtonClick","useCallback","e","Float","Icon","getNextIconSize","currentSize","larger","delta","nextSize","avatarBadgeStatusStyles","avatarBadgeSizeStyles","avatarBadgeRecipe","defineRecipe","iconBadgeOffsetMap","badgeOffsetMap","AvatarBadge","iconName","position","status","useRecipe","useSmallBadge","offsetRecord","Flex","AvatarTooltipTriggerWrapper","Center","Avatar","React","badgeProps","hideBorder","onClick","showBadge","showRemoveButton","showTooltip","size","src","tooltipProps","variant","webpSrc","children","CAvatar.Root","AvatarContent","jsxs","Fragment","CAvatar.Fallback","CAvatar.Image","TooltipWrapper","Tooltip","AvatarSizeMap"],"mappings":";;;;;;;;;;;;;;;AAGA,MAAM,CAACA,GAAgBC,CAAgB,IAAIC,GAAc;AAAA,EACvD,MAAM;AAAA,EACN,UAAU;AAAA,EACV,cAAc;AAChB,CAAC,GCAKC,IAAiBC,EAAW,CAACC,GAAOC,MAAQ;AAChD,QAAMC,IAASN,EAAkB,GAC3BO,IAAcC,EAAWF,EAAO,iBAAgB,GAAIF,CAAK;AAC/D,SAAuBK,gBAAAA,EAAAA,IAAIC,EAAI,MAAM,EAAE,GAAGH,GAAa,KAAAF,GAAK;AAC9D,CAAC;AACDH,EAAe,cAAc;ACL7B,MAAMS,IAAcR,EAAW,CAACC,GAAOC,MAAQ;AAC7C,QAAMC,IAASN,EAAkB,GAC3BO,IAAcC,EAAWF,EAAO,cAAa,GAAIF,CAAK;AAC5D,SAAuBK,gBAAAA,EAAAA,IAAIC,EAAI,KAAK,EAAE,GAAGH,GAAa,KAAAF,GAAK;AAC7D,CAAC;AACDM,EAAY,cAAc;ACL1B,MAAMC,KAAY,CAACR,MAAU;AAC3B,QAAMS,IAAKC,EAAO,GACZ,EAAE,aAAAC,EAAa,IAAGC,GAAuB,GACzC,EAAE,KAAAC,EAAK,IAAGC,GAAkB,GAC5BC,IAAU;AAAA,IACd,IAAAN;AAAA,IACA,KAAAI;AAAA,IACA,aAAAF;AAAA,IACA,GAAGX;AAAA,EACJ,GACKgB,IAAUC,GAAWC,GAAgBH,CAAO;AAClD,SAAOI,EAAeH,GAASI,EAAc;AAC/C,GCVMC,IAAatB,EAAW,CAACC,GAAOC,MAAQ;AAC5C,QAAM,CAACqB,GAAgBC,CAAU,IAAIC,EAAgB,EAAGxB,GAAO,CAAC,MAAM,OAAO,gBAAgB,CAAC,GACxFE,IAASM,GAAUc,CAAc,GACjCnB,IAAcC,EAAWF,EAAO,aAAY,GAAIqB,CAAU;AAChE,SAAuBlB,gBAAAA,EAAG,IAACV,GAAgB,EAAE,OAAOO,GAAQ,UAA0BG,gBAAAA,EAAAA,IAAIC,EAAI,KAAK,EAAE,GAAGH,GAAa,KAAAF,EAAG,CAAE,EAAC,CAAE;AAC/H,CAAC;AACDoB,EAAW,cAAc;ACPzB,MAAMI,IAAqB1B,EAAW,CAACC,GAAOC,MAAQ;AACpD,QAAM,CAAC,EAAE,OAAOC,KAAUqB,CAAU,IAAIC,IAAmBxB,GAAO,CAAC,OAAO,CAAC,GACrEG,IAAcC,EAAWF,EAAO,aAAY,GAAIqB,CAAU;AAChE,SAAuBlB,gBAAAA,EAAG,IAACV,GAAgB,EAAE,OAAOO,GAAQ,UAA0BG,gBAAAA,EAAAA,IAAIC,EAAI,KAAK,EAAE,GAAGH,GAAa,KAAAF,EAAG,CAAE,EAAC,CAAE;AAC/H,CAAC;AACDwB,EAAmB,cAAc;ACFjC,MAAM;AAAA,EACJ,cAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAWC;AAAA,EACX,eAAAC;AAAA,EACA,eAAAC;AACF,IAAIC,EAAwB,EAAE,KAAK,UAAU;AAClBL,EAAaM,GAAqB,QAAQ,EAAE,gBAAgB,GAAM,CAAA;AAC7F,MAAMX,KAAaK;AAAA,EACjBO;AAAAA,EACA;AAAA,EACA,EAAE,gBAAgB,GAAI;AACxB,GAEMC,KAAiBC,EAAOC,GAAiB,CAAE,GAAE,EAAE,gBAAgB,IAAM;AAC3E,SAASC,GAAoBrC,GAAO;AAClC,SAAIA,EAAM,YAAYA,EAAM,UAAgBA,EAAM,WAC9CA,EAAM,OAAasC,GAAYtC,EAAM,IAAI,IACtBK,gBAAAA,EAAG,IAACkC,IAAY,EAAE;AAC3C;AACA,SAASD,GAAYE,GAAM;AACzB,QAAMC,IAAQD,EAAK,KAAI,EAAG,MAAM,GAAG,GAC7BE,IAAYD,EAAM,CAAC,KAAK,OAAOA,EAAM,CAAC,IAAI,IAC1CE,IAAWF,EAAM,SAAS,IAAIA,EAAMA,EAAM,SAAS,CAAC,IAAI;AAC9D,SAAOC,KAAaC,IAAW,GAAGD,EAAU,OAAO,CAAC,CAAC,GAAGC,EAAS,OAAO,CAAC,CAAC,KAAKD,EAAU,OAAO,CAAC;AACnG;AACA,MAAM5C,KAAiBC;AAAA,EACrB,SAAyBC,GAAOC,GAAK;AACnC,UAAM2C,IAAShB,GAAiB,GAC1BiB,IAAahB,GAAe,GAC5B,EAAE,MAAMiB,GAAG,GAAGC,EAAM,IAAG/C;AAC7B,WAAuBK,gBAAAA,EAAG;AAAA,MACxB6B;AAAA,MACA;AAAA,QACE,KAAAjC;AAAA,QACA,GAAG8C;AAAA,QACH,WAAWC,EAAGhD,EAAM,WAAW6C,EAAW,QAAQ;AAAA,QAClD,KAAK,CAACD,EAAO,UAAU5C,EAAM,GAAG;AAAA,QAChC,UAAUqC,GAAoBrC,CAAK;AAAA,MAC3C;AAAA,IACK;AAAA,EACL;AACA,GACMO,KAAcoB;AAAA,EAClBsB;AAAAA,EACA;AAAA,EACA;AAAA,IACE,gBAAgB;AAAA,IAChB,cAAc;AAAA,MACZ,WAAW;AAAA,MACX,gBAAgB;AAAA,IACtB;AAAA,EACA;AACA,GACMV,KAAaxC;AAAA,EACjB,SAAqBC,GAAOC,GAAK;AAC/B,WAAuBI,gBAAAA,EAAG;AAAA,MACxB8B,EAAO;AAAA,MACP;AAAA,QACE,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,aAAa;AAAA,QACb,SAAS;AAAA,QACT,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAAlC;AAAA,QACA,GAAGD;AAAA,QACH,UAA0BK,gBAAAA,EAAAA,IAAI,QAAQ,EAAE,GAAG,0WAA2W,CAAA;AAAA,MAC9Z;AAAA,IACK;AAAA,EACL;AACA,GAEM6C,KAAcnD;AAAA,EAClB,SAAsBC,GAAOC,GAAK;AAChC,UAAMkD,IAASC,GAAc,EAAE,KAAK,SAAQ,CAAE,GACxC,CAACC,GAAc9B,CAAU,IAAI+B;AAAA,MACjC,MAAMH,EAAO,kBAAkBnD,CAAK;AAAA,MACpC,CAACA,GAAOmD,CAAM;AAAA,IACf;AACD,WAAuB9C,gBAAAA,EAAAA,IAAIyB,IAAe,EAAE,OAAOuB,GAAc,UAA0BhD,gBAAAA,EAAAA,IAAIkD,IAAO,EAAE,KAAK,KAAK,QAAQ,MAAM,KAAAtD,GAAK,GAAGsB,EAAY,CAAA,GAAG;AAAA,EAC3J;AACA,GCtEMiC,KAAqB,CAAC;AAAA,EAC1B,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,CAAC,gBAAgBC,IAAa;AAChC,MAA0D;AACxD,QAAM,CAACC,GAAgBC,CAAiB,IAAIC,EAAS,EAAK,GAEpDC,IAAsBC;AAAA,IAC1B,CAACC,MAAkC;AACjC,MAAAA,EAAE,gBAAgB,GACdR,KACFA,EAASC,CAAK;AAAA,IAElB;AAAA,IACA,CAACD,GAAUC,CAAK;AAAA,EAClB;AAGE,SAAAtD,gBAAAA,EAAA;AAAA,IAAC8D;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,eAAaP;AAAA,MACb,iBAAgB;AAAA,MAChB,cAAa;AAAA,MACb,QAAO;AAAA,MACP,SAAQ;AAAA,MACR,GAAG;AAAA,MACH,SAASI;AAAA,MACT,cAAc,MAAYF,EAAkB,EAAI;AAAA,MAChD,cAAc,MAAYA,EAAkB,EAAK;AAAA,MACjD,GAAG;AAAA,MACH,QAAO;AAAA,MACP,QAAQL,MAAe,OAAO,IAAI;AAAA,MAClC,aAAa;AAAA,QACX,SAAS;AAAA,MACX;AAAA,MAEA,UAAApD,gBAAAA,EAAA,IAAC+D,KAAK,SAAQ,WAAU,MAAK,oBAAmB,MAAMP,IAAiB,OAAO,KAAM,CAAA;AAAA,IAAA;AAAA,EACtF;AAEJ,GCtDaQ,IAAkB,CAAC,EAAE,aAAAC,GAAa,QAAAC,IAAS,IAAM,OAAAC,IAAQ,QAAwC;AACxG,MAAAC;AACJ,UAAQH,GAAa;AAAA,IACnB,KAAK;AACH,MAAAG,IAAWF,IAAS,OAAO;AAC3B;AAAA,IACF,KAAK;AACH,MAAAE,IAAWF,IAAS,OAAO;AAC3B;AAAA,IACF,KAAK;AACH,MAAAE,IAAWF,IAAS,OAAO;AAC3B;AAAA,IACF,KAAK;AACH,MAAAE,IAAWF,IAAS,OAAO;AAC3B;AAAA,IACF,KAAK;AACH,MAAAE,IAAWF,IAAS,QAAQ;AAC5B;AAAA,IACF,KAAK;AACH,MAAAE,IAAWF,IAAS,QAAQ;AAC5B;AAAA,IACF;AACa,MAAAE,IAAAH;AACX;AAAA,EAAA;AAGJ,SAAIE,IAAQ,MACVC,IAAWJ,EAAgB;AAAA,IACzB,aAAaI;AAAA,IACb,QAAAF;AAAA,IACA,OAAOC,IAAQ;AAAA,EAAA,CAChB,IAGIC;AACT,GCxCMC,KAA6D;AAAA,EACjE,MAAM;AAAA,IACJ,SAAS;AAAA,EACX;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,EACX;AAAA,EACA,OAAO;AAAA,IACL,SAAS;AAAA,EACX;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,EACX;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,EAAA;AAEb,GAEMC,KAA+D;AAAA,EACnE,IAAI;AAAA,IACF,SAAS;AAAA,EACX;AAAA,EACA,IAAI;AAAA,IACF,SAAS;AAAA,EACX;AAAA,EACA,IAAI;AAAA,IACF,SAAS;AAAA,EACX;AAAA,EACA,IAAI;AAAA,IACF,SAAS;AAAA,EACX;AAAA,EACA,IAAI;AAAA,IACF,aAAa;AAAA,IACb,SAAS;AAAA,EAAA;AAEb,GAEaC,KAAoBC,EAAa;AAAA,EAC5C,MAAM;AAAA,IACJ,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,cAAc;AAAA,IACd,aAAa;AAAA,IACb,gBAAgB;AAAA,EAClB;AAAA,EACA,UAAU;AAAA,IACR,MAAMF;AAAA,IACN,QAAQD;AAAA,IACR,UAAU;AAAA,MACR,MAAM,CAAC;AAAA,MACP,OAAO,CAAA;AAAA,IAAC;AAAA,EAEZ;AAAA,EACA,iBAAiB;AAAA,IACf,QAAQ;AAAA,EACV;AAAA,EACA,kBAAkB;AAAA,IAChB;AAAA,MACE,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,MAAM,CAAC,MAAM,MAAM,IAAI;AAAA,MACvB,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,MAAM;AAAA,MACN,KAAK;AAAA,QACH,aAAa;AAAA,QACb,SAAS;AAAA,MAAA;AAAA,IACX;AAAA,EACF;AAEJ,CAAC,GC9GYI,KAAiD;AAAA,EAC5D,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN,GAEaC,KAA6C;AAAA,EACxD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN,GCcaC,KAAc,CAAC;AAAA,EAC1B,YAAAvB,IAAa;AAAA,EACb,UAAAwB;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,QAAAC,IAAS;AAAA,EACT,CAAC,gBAAgBvB,IAAa;AAAA,EAC9B,GAAGb;AACL,MAAmD;AAE3C,QAAAH,IADSwC,EAAU,EAAE,QAAQR,IAAmB,EAChC,EAAE,QAAAO,GAAQ,MAAM1B,GAAY,UAAU,CAAC,CAACwB,GAAU,GAClEI,IAAgB/B,EAAQ,MAAMG,MAAe,QAAQ,CAACwB,GAAU,CAACA,GAAUxB,CAAU,CAAC,GACtF6B,IAAehC,EAAQ,MAAO+B,IAAgBN,KAAiBD,IAAqB,CAACO,CAAa,CAAC;AAGvG,SAAAhF,gBAAAA,EAAA;AAAA,IAAC8D;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,eAAaP;AAAA,MACb,QAAQ0B,EAAa7B,CAAU;AAAA,MAC/B,WAAWyB;AAAA,MAEX,UAAC7E,gBAAAA,EAAA,IAAAkF,GAAA,EAAK,WAAU,iBAAgB,eAAa,GAAG3B,CAAU,UAAU,KAAKhB,GAAS,GAAGG,GAClF,UAAA,CAACsC,KAAiBJ,KACjB5E,gBAAAA,EAAA;AAAA,QAAC+D;AAAA,QAAA;AAAA,UACC,MAAMa;AAAA,UACN,SAASE,MAAW,UAAWA,IAA+B;AAAA,UAC9D,MAAM1B,MAAe,OAAO,OAAO;AAAA,QAAA;AAAA,MAAA,EAGzC,CAAA;AAAA,IAAA;AAAA,EACF;AAEJ,GC1Da+B,IAA8BzF,EAGzC,CAACC,GAAOC,MAAQI,gBAAAA,EAAAA,IAACoF,GAAO,EAAA,KAAAxF,GAAU,WAAU,iCAAiC,GAAGD,EAAO,CAAA,CAAE;AAC3FwF,EAA4B,cAAc;ACiDnC,MAAME,KAASC,EAAM;AAAA,EAC1B,CAAC;AAAA,IACC,YAAAC;AAAA,IACA,YAAAC;AAAA,IACA,UAAAZ;AAAA,IACA,MAAAzC,IAAO;AAAA,IACP,SAAAsD;AAAA,IACA,UAAApC;AAAA,IACA,WAAAqC;AAAA,IACA,kBAAAC;AAAA,IACA,aAAAC,IAAc;AAAA,IACd,MAAAC,IAAO;AAAA,IACP,KAAAC;AAAA,IACA,cAAAC;AAAA,IACA,SAAAC,IAAU;AAAA,IACV,SAAAC;AAAA,IACA,OAAA3C;AAAA,IACA,CAAC,gBAAgBC,IAAa;AAAA,IAC9B,UAAA2C;AAAA,IACA,GAAGxD;AAAA,EAAA,MACiC;AACpC,UAAM1B,IAAoCiC;AAAA,MACxC,MACE,CAAC,EAAE,UAAAiD,QACDlG,gBAAAA,EAAA;AAAA,QAACmG;AAAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,eAAa5C;AAAA,UACb,SAAAyC;AAAA,UACA,MAAAH;AAAA,UACA,aAAa,CAAC,CAACJ;AAAA,UACf,YAAAD;AAAA,UACA,SAAAC;AAAA,UACC,GAAG/C;AAAA,UAEH,UAAAwD;AAAAA,QAAA;AAAA,MACH;AAAA,MAEJ,CAAC3C,GAAYiC,GAAYC,GAAS/C,GAAMmD,GAAMG,CAAO;AAAA,IACvD,GAEMI,IAAuCnD;AAAA,MAC3C,MAAM,MAEDoD,gBAAAA,EAAA,KAAAC,YAAA,EAAA,UAAA;AAAA,QAAAJ,KAGElG,gBAAAA,MAAAuG,IAAA,EAAiB,MAAApE,GACf,UACCyC,KAAA5E,gBAAAA,EAAA;AAAA,UAAC+D;AAAA,UAAA;AAAA,YACC,MAAMa;AAAA,YACN,IAAG;AAAA,YACH,MACEiB,MAAS,OACL,OACA7B,EAAgB;AAAA,cACd,aAAa6B;AAAA,cACb,QAAQ;AAAA,cACR,OAAO;AAAA,YACR,CAAA;AAAA,UAAA;AAAA,QAAA,GAIb;AAAA,QAEDH,KAAc1F,gBAAAA,EAAA,IAAA2E,IAAA,EAAY,YAAYkB,GAAO,GAAGN,GAAY;AAAA,SAC3DU,KAAWH,MAAS9F,gBAAAA,EAAA,IAAAwG,IAAA,EAAc,KAAAV,GAAU,QAAQG,EAAS,CAAA;AAAA,MAAA,GACjE;AAAA,MAEF,CAACV,GAAYW,GAAUtB,GAAUzC,GAAMuD,GAAWG,GAAMC,GAAKG,CAAO;AAAA,IACtE,GAEMQ,IAAwCxD;AAAA,MAC5C,MACE,CAAC,EAAE,UAAAiD,QACDN,IACE5F,gBAAAA,EAAA;AAAA,QAAC0G;AAAA,QAAA;AAAA,UACC,eAAa,GAAGnD,CAAU;AAAA,UACzB,GAAGwC;AAAA,UACJ,OAAOA,GAAc,SAAS5D;AAAA,UAC9B,UAAU,CAACA,KAAQ,CAAC4D,GAAc;AAAA,UAClC,WAAWA,GAAc,aAAa;AAAA,UAEtC,UAAA/F,gBAAAA,EAAAA,IAACmF,GAA4B,EAAA,GAAGwB,EAAcd,CAAI,GAAG,GAAGc,EAAcd,CAAI,GACvE,UAAAK,EACH,CAAA;AAAA,QAAA;AAAA,MAAA,IAGDlG,gBAAAA,EAAAA,IAAAsF,EAAM,UAAN,EAAgB,UAAAY,EAAS,CAAA;AAAA,MAEhC,CAAC3C,GAAYpB,GAAMyD,GAAaC,GAAME,CAAY;AAAA,IACpD;AAEI,WAAAJ,2BAEC3E,GACC,EAAA,UAAA;AAAA,MAAChB,gBAAAA,EAAA,IAAAyG,GAAA,EACC,UAACzG,gBAAAA,EAAA,IAAAoG,GAAA,CAAc,CAAA,GACjB;AAAA,MACCT,KAAoBE,MAAS,QAC5B7F,gBAAAA,MAACmD,MAAmB,YAAY0C,GAAM,UAAAxC,GAAoB,OAAAC,EAAc,CAAA;AAAA,IAAA,GAE5E,0BAIDmD,GACC,EAAA,UAAAzG,gBAAAA,EAAA,IAACgB,KACC,UAAChB,gBAAAA,EAAA,IAAAoG,GAAA,EAAc,GACjB,EACF,CAAA;AAAA,EAAA;AAGN;","x_google_ignoreList":[0,1,2,3,4,5,6]}
1
+ {"version":3,"file":"avatar.component-BL6D6Lw_.js","sources":["../../node_modules/@ark-ui/react/dist/components/avatar/use-avatar-context.js","../../node_modules/@ark-ui/react/dist/components/avatar/avatar-fallback.js","../../node_modules/@ark-ui/react/dist/components/avatar/avatar-image.js","../../node_modules/@ark-ui/react/dist/components/avatar/use-avatar.js","../../node_modules/@ark-ui/react/dist/components/avatar/avatar-root.js","../../node_modules/@ark-ui/react/dist/components/avatar/avatar-root-provider.js","../../node_modules/@chakra-ui/react/dist/esm/components/avatar/avatar.js","../../src/components/Avatar/components/AvatarRemoveButton/avatarRemoveButton.component.tsx","../../src/shared/utils/sizes.ts","../../src/components/Avatar/components/AvatarBadge/avatarBadge.recipe.ts","../../src/components/Avatar/components/AvatarBadge/avatarBadge.records.ts","../../src/components/Avatar/components/AvatarBadge/avatarBadge.component.tsx","../../src/components/Avatar/components/AvatarTooltipTriggerWrapper/avatarTooltipTriggerWrapper.component.tsx","../../src/components/Avatar/avatar.component.tsx"],"sourcesContent":["'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [AvatarProvider, useAvatarContext] = createContext({\n name: \"AvatarContext\",\n hookName: \"useAvatarContext\",\n providerName: \"<AvatarProvider />\"\n});\n\nexport { AvatarProvider, useAvatarContext };\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 { useAvatarContext } from './use-avatar-context.js';\n\nconst AvatarFallback = forwardRef((props, ref) => {\n const avatar = useAvatarContext();\n const mergedProps = mergeProps(avatar.getFallbackProps(), props);\n return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref });\n});\nAvatarFallback.displayName = \"AvatarFallback\";\n\nexport { AvatarFallback };\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 { useAvatarContext } from './use-avatar-context.js';\n\nconst AvatarImage = forwardRef((props, ref) => {\n const avatar = useAvatarContext();\n const mergedProps = mergeProps(avatar.getImageProps(), props);\n return /* @__PURE__ */ jsx(ark.img, { ...mergedProps, ref });\n});\nAvatarImage.displayName = \"AvatarImage\";\n\nexport { AvatarImage };\n","'use client';\nimport * as avatar from '@zag-js/avatar';\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 useAvatar = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const context = {\n id,\n dir,\n getRootNode,\n ...props\n };\n const service = useMachine(avatar.machine, context);\n return avatar.connect(service, normalizeProps);\n};\n\nexport { useAvatar };\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 { useAvatar } from './use-avatar.js';\nimport { AvatarProvider } from './use-avatar-context.js';\n\nconst AvatarRoot = forwardRef((props, ref) => {\n const [useAvatarProps, localProps] = createSplitProps()(props, [\"id\", \"ids\", \"onStatusChange\"]);\n const avatar = useAvatar(useAvatarProps);\n const mergedProps = mergeProps(avatar.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(AvatarProvider, { value: avatar, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nAvatarRoot.displayName = \"AvatarRoot\";\n\nexport { AvatarRoot };\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 { AvatarProvider } from './use-avatar-context.js';\n\nconst AvatarRootProvider = forwardRef((props, ref) => {\n const [{ value: avatar }, localProps] = createSplitProps()(props, [\"value\"]);\n const mergedProps = mergeProps(avatar.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(AvatarProvider, { value: avatar, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nAvatarRootProvider.displayName = \"AvatarRootProvider\";\n\nexport { AvatarRootProvider };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { Avatar } from '@ark-ui/react/avatar';\nimport { forwardRef, useMemo } from 'react';\nimport { cx } from '../../utils/cx.js';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { chakra } from '../../styled-system/factory.js';\nimport { useSlotRecipe } from '../../styled-system/use-slot-recipe.js';\nimport { Group } from '../group/group.js';\n\nconst {\n withProvider,\n withContext,\n useStyles: useAvatarStyles,\n useClassNames,\n PropsProvider\n} = createSlotRecipeContext({ key: \"avatar\" });\nconst AvatarRootProvider = withProvider(Avatar.RootProvider, \"root\", { forwardAsChild: true });\nconst AvatarRoot = withProvider(\n Avatar.Root,\n \"root\",\n { forwardAsChild: true }\n);\nconst AvatarPropsProvider = PropsProvider;\nconst StyledFallback = chakra(Avatar.Fallback, {}, { forwardAsChild: true });\nfunction getFallbackChildren(props) {\n if (props.children || props.asChild) return props.children;\n if (props.name) return getInitials(props.name);\n return /* @__PURE__ */ jsx(AvatarIcon, {});\n}\nfunction getInitials(name) {\n const names = name.trim().split(\" \");\n const firstName = names[0] != null ? names[0] : \"\";\n const lastName = names.length > 1 ? names[names.length - 1] : \"\";\n return firstName && lastName ? `${firstName.charAt(0)}${lastName.charAt(0)}` : firstName.charAt(0);\n}\nconst AvatarFallback = forwardRef(\n function AvatarFallback2(props, ref) {\n const styles = useAvatarStyles();\n const classNames = useClassNames();\n const { name: _, ...rest } = props;\n return /* @__PURE__ */ jsx(\n StyledFallback,\n {\n ref,\n ...rest,\n className: cx(props.className, classNames.fallback),\n css: [styles.fallback, props.css],\n children: getFallbackChildren(props)\n }\n );\n }\n);\nconst AvatarImage = withContext(\n Avatar.Image,\n \"image\",\n {\n forwardAsChild: true,\n defaultProps: {\n draggable: \"false\",\n referrerPolicy: \"no-referrer\"\n }\n }\n);\nconst AvatarIcon = forwardRef(\n function AvatarIcon2(props, ref) {\n return /* @__PURE__ */ jsx(\n chakra.svg,\n {\n stroke: \"currentColor\",\n fill: \"currentColor\",\n strokeWidth: \"0\",\n viewBox: \"0 0 24 24\",\n height: \"1.2em\",\n width: \"1.2em\",\n ref,\n ...props,\n children: /* @__PURE__ */ jsx(\"path\", { d: \"M20 22H18V20C18 18.3431 16.6569 17 15 17H9C7.34315 17 6 18.3431 6 20V22H4V20C4 17.2386 6.23858 15 9 15H15C17.7614 15 20 17.2386 20 20V22ZM12 13C8.68629 13 6 10.3137 6 7C6 3.68629 8.68629 1 12 1C15.3137 1 18 3.68629 18 7C18 10.3137 15.3137 13 12 13ZM12 11C14.2091 11 16 9.20914 16 7C16 4.79086 14.2091 3 12 3C9.79086 3 8 4.79086 8 7C8 9.20914 9.79086 11 12 11Z\" })\n }\n );\n }\n);\nconst AvatarContext = Avatar.Context;\nconst AvatarGroup = forwardRef(\n function AvatarGroup2(props, ref) {\n const recipe = useSlotRecipe({ key: \"avatar\" });\n const [variantProps, localProps] = useMemo(\n () => recipe.splitVariantProps(props),\n [props, recipe]\n );\n return /* @__PURE__ */ jsx(PropsProvider, { value: variantProps, children: /* @__PURE__ */ jsx(Group, { gap: \"0\", spaceX: \"-3\", ref, ...localProps }) });\n }\n);\n\nexport { AvatarContext, AvatarFallback, AvatarGroup, AvatarIcon, AvatarImage, AvatarPropsProvider, AvatarRoot, AvatarRootProvider, useAvatarStyles };\n","import React, { useCallback, MouseEvent, useState } from 'react';\nimport { Float } from '@chakra-ui/react/float';\nimport { Icon } from 'components/Icon/icon.component';\nimport { AvatarSize } from 'components/Avatar/avatar.types';\n\ninterface AvatarRemoveButtonProps {\n /** Callback function to be called when the remove button is clicked. */\n onRemove?: (value?: string) => void;\n /** Value of the avatar. */\n value?: string;\n /** Data test id for the remove button.\n * @default kibble-avatar-remove-button\n */\n 'data-testid'?: string;\n}\n\ninterface InternalAvatarRemoveButtonProps extends AvatarRemoveButtonProps {\n /** Size of the avatar.\n * @internal\n */\n avatarSize: AvatarSize;\n}\n\nconst AvatarRemoveButton = ({\n avatarSize,\n onRemove,\n value,\n ['data-testid']: dataTestId = 'kibble-avatar-remove-button',\n}: InternalAvatarRemoveButtonProps): React.JSX.Element => {\n const [isBeingHovered, setIsBeingHovered] = useState(false);\n\n const onRemoveButtonClick = useCallback(\n (e: MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n if (onRemove) {\n onRemove(value);\n }\n },\n [onRemove, value],\n );\n\n return (\n <Float\n className=\"Avatar__RemoveButton\"\n data-testid={dataTestId}\n backgroundColor=\"background\"\n borderRadius=\"full\"\n cursor=\"pointer\"\n display=\"none\"\n h={4}\n onClick={onRemoveButtonClick}\n onMouseEnter={(): void => setIsBeingHovered(true)}\n onMouseLeave={(): void => setIsBeingHovered(false)}\n w={4}\n zIndex=\"tooltip\"\n offset={avatarSize === 'xl' ? 2 : 0.5}\n _groupHover={{\n display: 'flex',\n }}\n >\n <Icon variant=\"default\" name=\"closeCircleSolid\" size={isBeingHovered ? 'sm' : 'xs'} />\n </Float>\n );\n};\n\nexport default AvatarRemoveButton;\n","import { AvatarSize } from 'components/Avatar/avatar.types';\nimport { IconSize } from 'components/Icon/icon.types';\n\ninterface GetNextIconSizeProps {\n currentSize: IconSize | AvatarSize;\n larger: boolean;\n delta: number;\n}\n\nexport const getNextIconSize = ({ currentSize, larger = true, delta = 1 }: GetNextIconSizeProps): IconSize => {\n let nextSize: IconSize;\n switch (currentSize) {\n case 'xs':\n nextSize = larger ? 'sm' : 'xs';\n break;\n case 'sm':\n nextSize = larger ? 'md' : 'xs';\n break;\n case 'md':\n nextSize = larger ? 'lg' : 'sm';\n break;\n case 'lg':\n nextSize = larger ? 'xl' : 'md';\n break;\n case 'xl':\n nextSize = larger ? '2xl' : 'lg';\n break;\n case '2xl':\n nextSize = larger ? '2xl' : 'xl';\n break;\n default:\n nextSize = currentSize as IconSize;\n break;\n }\n\n if (delta > 1) {\n nextSize = getNextIconSize({\n currentSize: nextSize,\n larger,\n delta: delta - 1,\n });\n }\n\n return nextSize;\n};\n","import { defineRecipe, SystemStyleObject } from '@chakra-ui/react/styled-system';\nimport { AvatarSize } from 'components/Avatar/avatar.types';\nimport { Status } from 'shared/types/status';\n\nconst avatarBadgeStatusStyles: Record<Status, SystemStyleObject> = {\n info: {\n bgColor: 'background.info',\n },\n default: {\n bgColor: 'background.subtle.less',\n },\n error: {\n bgColor: 'background.danger',\n },\n success: {\n bgColor: 'background.success',\n },\n warning: {\n bgColor: 'background.warning.contrast',\n },\n};\n\nconst avatarBadgeSizeStyles: Record<AvatarSize, SystemStyleObject> = {\n xs: {\n boxSize: '10px',\n },\n sm: {\n boxSize: '18px',\n },\n md: {\n boxSize: '18px',\n },\n lg: {\n boxSize: '18px',\n },\n xl: {\n borderWidth: '2px',\n boxSize: '24px',\n },\n};\n\nexport const avatarBadgeRecipe = defineRecipe({\n base: {\n alignItems: 'center',\n borderColor: 'border.strong.contrast',\n borderRadius: 'full',\n borderWidth: '1px',\n justifyContent: 'center',\n },\n variants: {\n size: avatarBadgeSizeStyles,\n status: avatarBadgeStatusStyles,\n withIcon: {\n true: {},\n false: {},\n },\n },\n defaultVariants: {\n status: 'info',\n },\n compoundVariants: [\n {\n withIcon: false,\n status: 'info',\n css: {\n bgColor: 'background.secondary',\n },\n },\n {\n withIcon: false,\n status: 'default',\n css: {\n bgColor: 'background.contrast',\n },\n },\n {\n withIcon: false,\n status: 'error',\n css: {\n bgColor: 'background.destructive',\n },\n },\n {\n withIcon: false,\n status: 'success',\n css: {\n bgColor: 'background.success.contrast',\n },\n },\n {\n withIcon: false,\n status: 'warning',\n css: {\n bgColor: 'background.warning.contrast',\n },\n },\n {\n withIcon: false,\n size: ['sm', 'md', 'lg'],\n css: {\n boxSize: '12px',\n },\n },\n {\n withIcon: false,\n size: 'xl',\n css: {\n borderWidth: '2px',\n boxSize: '16px',\n },\n },\n ],\n});\n","import { AvatarSize } from 'components/Avatar/avatar.types';\n\nexport const iconBadgeOffsetMap: Record<AvatarSize, number> = {\n xs: 0.5,\n sm: 0.5,\n md: 0.5,\n lg: 0.5,\n xl: 2,\n};\n\nexport const badgeOffsetMap: Record<AvatarSize, number> = {\n xs: 0.5,\n sm: 0.5,\n md: 1,\n lg: 1,\n xl: 2,\n};\n","import React, { useMemo } from 'react';\nimport { Float } from '@chakra-ui/react/float';\nimport { Icon, IconName } from 'components/Icon';\nimport { TypographyVariant } from 'shared/types/typography';\nimport { AvatarSize } from 'components/Avatar/avatar.types';\nimport { ConditionalValue, useRecipe } from '@chakra-ui/react/styled-system';\nimport { AvatarBadgePosition } from './avatarBadge.types';\nimport { Flex, FlexProps } from '@chakra-ui/react/flex';\nimport { avatarBadgeRecipe } from './avatarBadge.recipe';\nimport { Status } from 'shared/types/status';\nimport { badgeOffsetMap, iconBadgeOffsetMap } from './avatarBadge.records';\n\nexport interface AvatarBadgeProps extends FlexProps {\n /** Name of the icon inside the badge. */\n iconName?: IconName;\n /** Position of the badge relative to the avatar. */\n position?: ConditionalValue<AvatarBadgePosition>;\n /** Determines the color of the badge. */\n status?: Status;\n /** Data test id for the avatar badge. */\n 'data-testid'?: string;\n}\n\ninterface InternalAvatarBadgeProps extends AvatarBadgeProps {\n /** Size of the avatar.\n * @internal\n */\n avatarSize?: AvatarSize;\n}\n\nexport const AvatarBadge = ({\n avatarSize = 'md',\n iconName,\n position = 'bottom-end',\n status = 'info',\n ['data-testid']: dataTestId = 'kibble-avatar-badge-wrapper',\n ...rest\n}: InternalAvatarBadgeProps): React.JSX.Element => {\n const recipe = useRecipe({ recipe: avatarBadgeRecipe });\n const styles = recipe({ status, size: avatarSize, withIcon: !!iconName });\n const useSmallBadge = useMemo(() => avatarSize === 'xs' || !iconName, [iconName, avatarSize]);\n const offsetRecord = useMemo(() => (useSmallBadge ? badgeOffsetMap : iconBadgeOffsetMap), [useSmallBadge]);\n\n return (\n <Float\n className=\"Avatar__BadgeWrapper\"\n data-testid={dataTestId}\n offset={offsetRecord[avatarSize]}\n placement={position}\n >\n <Flex className=\"Avatar__Badge\" data-testid={`${dataTestId}-badge`} css={styles} {...rest}>\n {!useSmallBadge && iconName && (\n <Icon\n name={iconName}\n variant={status !== 'error' ? (status as TypographyVariant) : 'danger'}\n size={avatarSize === 'xl' ? 'sm' : 'xs'}\n />\n )}\n </Flex>\n </Float>\n );\n};\n","import { Center, CenterProps } from '@chakra-ui/react/center';\nimport { forwardRef } from 'react';\n\nexport const AvatarTooltipTriggerWrapper = forwardRef<\n HTMLDivElement,\n CenterProps & React.HTMLAttributes<HTMLDivElement>\n>((props, ref) => <Center ref={ref} className=\"Avatar__TooltipTriggerWrapper\" {...props} />);\nAvatarTooltipTriggerWrapper.displayName = 'AvatarTooltipTriggerWrapper';\n","import React, { useMemo } from 'react';\nimport { Avatar as CAvatar } from '@chakra-ui/react/avatar';\nimport { Tooltip, TooltipProps } from 'components/Tooltip/tooltip.component';\nimport { Icon, IconName } from 'components/Icon';\nimport AvatarRemoveButton from './components/AvatarRemoveButton/avatarRemoveButton.component';\nimport { AvatarSize, AvatarVariant } from './avatar.types';\nimport { getNextIconSize } from 'shared/utils/sizes';\nimport { AvatarBadge, AvatarBadgeProps } from './components/AvatarBadge/avatarBadge.component';\nimport { AvatarTooltipTriggerWrapper } from './components/AvatarTooltipTriggerWrapper/avatarTooltipTriggerWrapper.component';\nimport { AvatarSizeMap } from './avatar.records';\n\nexport interface AvatarProps extends CAvatar.RootProps {\n /** Props to customize the badge, `showBadge` must be set to true for the badge to show. */\n badgeProps?: AvatarBadgeProps;\n /** If true, the border of the avatar will be hidden. */\n hideBorder?: boolean;\n /** The name of the icon to be displayed inside the avatar. */\n iconName?: IconName;\n /** The name to derive the initials from. This will also be the default text for the tooltip unless `tooltipProps` is passed in. */\n name?: string;\n /** Callback function when the avatar is clicked. */\n onClick?: (event: React.MouseEvent<HTMLDivElement>) => void;\n /** Callback function when the remove button is clicked. */\n onRemove?: (value?: string) => void;\n /** If true, a badge will be displayed on the avatar. */\n showBadge?: boolean;\n /** If true, a remove button will be displayed when hovering over the avatar.\n * @default false\n */\n showRemoveButton?: boolean;\n /** Shows a tooltip on hover with the avatar name, if `tooltipProps` is not passed in. The tooltip will be disabled if no name is provided. */\n showTooltip?: boolean;\n /** Size of the avatar.\n * @default md\n */\n size?: AvatarSize;\n /** The source URL of the image to be displayed in the avatar. */\n src?: string;\n /** Props to customize the tooltip. See `Tooltip` for more information. */\n tooltipProps?: TooltipProps;\n /** Variant of the avatar.\n * @default default\n */\n variant?: AvatarVariant;\n /** The webp source URL of the image to be displayed in the avatar. */\n webpSrc?: string;\n /** The value of the avatar. */\n value?: string;\n /** Data test id for the avatar.\n * @default kibble-avatar\n */\n 'data-testid'?: string;\n /** The children to be displayed inside the avatar. */\n children?: React.ReactNode;\n}\n\nexport const Avatar = React.memo(\n ({\n badgeProps,\n hideBorder,\n iconName,\n name = '',\n onClick,\n onRemove,\n showBadge,\n showRemoveButton,\n showTooltip = true,\n size = 'md',\n src,\n tooltipProps,\n variant = 'default',\n webpSrc,\n value,\n ['data-testid']: dataTestId = 'kibble-avatar',\n children,\n ...rest\n }: AvatarProps): React.JSX.Element => {\n const AvatarRoot: React.FC<AvatarProps> = useMemo(\n () =>\n ({ children }: AvatarProps) => (\n <CAvatar.Root\n className=\"Avatar group\"\n data-testid={dataTestId}\n variant={variant}\n size={size}\n interactive={!!onClick}\n hideBorder={hideBorder}\n onClick={onClick}\n {...rest}\n >\n {children}\n </CAvatar.Root>\n ),\n [dataTestId, hideBorder, onClick, rest, size, variant],\n );\n\n const AvatarContent: React.FC<AvatarProps> = useMemo(\n () => () => (\n <>\n {children ? (\n children\n ) : (\n <CAvatar.Fallback name={name}>\n {iconName && (\n <Icon\n name={iconName}\n mt=\"-1px\"\n size={\n size === 'lg'\n ? 'lg'\n : getNextIconSize({\n currentSize: size,\n larger: true,\n delta: 1,\n })\n }\n />\n )}\n </CAvatar.Fallback>\n )}\n {showBadge && <AvatarBadge avatarSize={size} {...badgeProps} />}\n {(webpSrc || src) && <CAvatar.Image src={src} srcSet={webpSrc} />}\n </>\n ),\n [badgeProps, children, iconName, name, showBadge, size, src, webpSrc],\n );\n\n const TooltipWrapper: React.FC<AvatarProps> = useMemo(\n () =>\n ({ children }) =>\n showTooltip ? (\n <Tooltip\n data-testid={`${dataTestId}-tooltip`}\n {...tooltipProps}\n label={tooltipProps?.label || name}\n disabled={!name && !tooltipProps?.label}\n placement={tooltipProps?.placement || 'bottom'}\n >\n <AvatarTooltipTriggerWrapper w={AvatarSizeMap[size]} h={AvatarSizeMap[size]}>\n {children}\n </AvatarTooltipTriggerWrapper>\n </Tooltip>\n ) : (\n <React.Fragment>{children}</React.Fragment>\n ),\n [dataTestId, name, showTooltip, size, tooltipProps],\n );\n\n if (showRemoveButton)\n return (\n <AvatarRoot>\n <TooltipWrapper>\n <AvatarContent />\n </TooltipWrapper>\n {showRemoveButton && size !== 'xs' && (\n <AvatarRemoveButton avatarSize={size} onRemove={onRemove} value={value} />\n )}\n </AvatarRoot>\n );\n\n return (\n <TooltipWrapper>\n <AvatarRoot>\n <AvatarContent />\n </AvatarRoot>\n </TooltipWrapper>\n );\n },\n);\n"],"names":["AvatarProvider","useAvatarContext","createContext","AvatarFallback","forwardRef","props","ref","avatar","mergedProps","mergeProps","jsx","ark","AvatarImage","useAvatar","id","useId","getRootNode","useEnvironmentContext","dir","useLocaleContext","context","service","useMachine","avatar.machine","avatar.connect","normalizeProps","AvatarRoot","useAvatarProps","localProps","createSplitProps","AvatarRootProvider","withProvider","withContext","useAvatarStyles","useClassNames","PropsProvider","createSlotRecipeContext","Avatar.RootProvider","Avatar.Root","StyledFallback","chakra","Avatar.Fallback","getFallbackChildren","getInitials","AvatarIcon","name","names","firstName","lastName","styles","classNames","_","rest","cx","Avatar.Image","AvatarGroup","recipe","useSlotRecipe","variantProps","useMemo","Group","AvatarRemoveButton","avatarSize","onRemove","value","dataTestId","isBeingHovered","setIsBeingHovered","useState","onRemoveButtonClick","useCallback","e","Float","Icon","getNextIconSize","currentSize","larger","delta","nextSize","avatarBadgeStatusStyles","avatarBadgeSizeStyles","avatarBadgeRecipe","defineRecipe","iconBadgeOffsetMap","badgeOffsetMap","AvatarBadge","iconName","position","status","useRecipe","useSmallBadge","offsetRecord","Flex","AvatarTooltipTriggerWrapper","Center","Avatar","React","badgeProps","hideBorder","onClick","showBadge","showRemoveButton","showTooltip","size","src","tooltipProps","variant","webpSrc","children","CAvatar.Root","AvatarContent","jsxs","Fragment","CAvatar.Fallback","CAvatar.Image","TooltipWrapper","Tooltip","AvatarSizeMap"],"mappings":";;;;;;;;;;;;;;;AAGA,MAAM,CAACA,GAAgBC,CAAgB,IAAIC,GAAc;AAAA,EACvD,MAAM;AAAA,EACN,UAAU;AAAA,EACV,cAAc;AAChB,CAAC,GCAKC,IAAiBC,EAAW,CAACC,GAAOC,MAAQ;AAChD,QAAMC,IAASN,EAAkB,GAC3BO,IAAcC,EAAWF,EAAO,iBAAgB,GAAIF,CAAK;AAC/D,SAAuBK,gBAAAA,EAAAA,IAAIC,EAAI,MAAM,EAAE,GAAGH,GAAa,KAAAF,GAAK;AAC9D,CAAC;AACDH,EAAe,cAAc;ACL7B,MAAMS,IAAcR,EAAW,CAACC,GAAOC,MAAQ;AAC7C,QAAMC,IAASN,EAAkB,GAC3BO,IAAcC,EAAWF,EAAO,cAAa,GAAIF,CAAK;AAC5D,SAAuBK,gBAAAA,EAAAA,IAAIC,EAAI,KAAK,EAAE,GAAGH,GAAa,KAAAF,GAAK;AAC7D,CAAC;AACDM,EAAY,cAAc;ACL1B,MAAMC,KAAY,CAACR,MAAU;AAC3B,QAAMS,IAAKC,EAAO,GACZ,EAAE,aAAAC,EAAa,IAAGC,GAAuB,GACzC,EAAE,KAAAC,EAAK,IAAGC,GAAkB,GAC5BC,IAAU;AAAA,IACd,IAAAN;AAAA,IACA,KAAAI;AAAA,IACA,aAAAF;AAAA,IACA,GAAGX;AAAA,EACJ,GACKgB,IAAUC,GAAWC,GAAgBH,CAAO;AAClD,SAAOI,EAAeH,GAASI,EAAc;AAC/C,GCVMC,IAAatB,EAAW,CAACC,GAAOC,MAAQ;AAC5C,QAAM,CAACqB,GAAgBC,CAAU,IAAIC,EAAgB,EAAGxB,GAAO,CAAC,MAAM,OAAO,gBAAgB,CAAC,GACxFE,IAASM,GAAUc,CAAc,GACjCnB,IAAcC,EAAWF,EAAO,aAAY,GAAIqB,CAAU;AAChE,SAAuBlB,gBAAAA,EAAG,IAACV,GAAgB,EAAE,OAAOO,GAAQ,UAA0BG,gBAAAA,EAAAA,IAAIC,EAAI,KAAK,EAAE,GAAGH,GAAa,KAAAF,EAAG,CAAE,EAAC,CAAE;AAC/H,CAAC;AACDoB,EAAW,cAAc;ACPzB,MAAMI,IAAqB1B,EAAW,CAACC,GAAOC,MAAQ;AACpD,QAAM,CAAC,EAAE,OAAOC,KAAUqB,CAAU,IAAIC,IAAmBxB,GAAO,CAAC,OAAO,CAAC,GACrEG,IAAcC,EAAWF,EAAO,aAAY,GAAIqB,CAAU;AAChE,SAAuBlB,gBAAAA,EAAG,IAACV,GAAgB,EAAE,OAAOO,GAAQ,UAA0BG,gBAAAA,EAAAA,IAAIC,EAAI,KAAK,EAAE,GAAGH,GAAa,KAAAF,EAAG,CAAE,EAAC,CAAE;AAC/H,CAAC;AACDwB,EAAmB,cAAc;ACFjC,MAAM;AAAA,EACJ,cAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAWC;AAAA,EACX,eAAAC;AAAA,EACA,eAAAC;AACF,IAAIC,EAAwB,EAAE,KAAK,UAAU;AAClBL,EAAaM,GAAqB,QAAQ,EAAE,gBAAgB,GAAM,CAAA;AAC7F,MAAMX,KAAaK;AAAA,EACjBO;AAAAA,EACA;AAAA,EACA,EAAE,gBAAgB,GAAI;AACxB,GAEMC,KAAiBC,EAAOC,GAAiB,CAAE,GAAE,EAAE,gBAAgB,IAAM;AAC3E,SAASC,GAAoBrC,GAAO;AAClC,SAAIA,EAAM,YAAYA,EAAM,UAAgBA,EAAM,WAC9CA,EAAM,OAAasC,GAAYtC,EAAM,IAAI,IACtBK,gBAAAA,EAAG,IAACkC,IAAY,EAAE;AAC3C;AACA,SAASD,GAAYE,GAAM;AACzB,QAAMC,IAAQD,EAAK,KAAI,EAAG,MAAM,GAAG,GAC7BE,IAAYD,EAAM,CAAC,KAAK,OAAOA,EAAM,CAAC,IAAI,IAC1CE,IAAWF,EAAM,SAAS,IAAIA,EAAMA,EAAM,SAAS,CAAC,IAAI;AAC9D,SAAOC,KAAaC,IAAW,GAAGD,EAAU,OAAO,CAAC,CAAC,GAAGC,EAAS,OAAO,CAAC,CAAC,KAAKD,EAAU,OAAO,CAAC;AACnG;AACA,MAAM5C,KAAiBC;AAAA,EACrB,SAAyBC,GAAOC,GAAK;AACnC,UAAM2C,IAAShB,GAAiB,GAC1BiB,IAAahB,GAAe,GAC5B,EAAE,MAAMiB,GAAG,GAAGC,EAAM,IAAG/C;AAC7B,WAAuBK,gBAAAA,EAAG;AAAA,MACxB6B;AAAA,MACA;AAAA,QACE,KAAAjC;AAAA,QACA,GAAG8C;AAAA,QACH,WAAWC,EAAGhD,EAAM,WAAW6C,EAAW,QAAQ;AAAA,QAClD,KAAK,CAACD,EAAO,UAAU5C,EAAM,GAAG;AAAA,QAChC,UAAUqC,GAAoBrC,CAAK;AAAA,MAC3C;AAAA,IACK;AAAA,EACL;AACA,GACMO,KAAcoB;AAAA,EAClBsB;AAAAA,EACA;AAAA,EACA;AAAA,IACE,gBAAgB;AAAA,IAChB,cAAc;AAAA,MACZ,WAAW;AAAA,MACX,gBAAgB;AAAA,IACtB;AAAA,EACA;AACA,GACMV,KAAaxC;AAAA,EACjB,SAAqBC,GAAOC,GAAK;AAC/B,WAAuBI,gBAAAA,EAAG;AAAA,MACxB8B,EAAO;AAAA,MACP;AAAA,QACE,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,aAAa;AAAA,QACb,SAAS;AAAA,QACT,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAAlC;AAAA,QACA,GAAGD;AAAA,QACH,UAA0BK,gBAAAA,EAAAA,IAAI,QAAQ,EAAE,GAAG,0WAA2W,CAAA;AAAA,MAC9Z;AAAA,IACK;AAAA,EACL;AACA,GAEM6C,KAAcnD;AAAA,EAClB,SAAsBC,GAAOC,GAAK;AAChC,UAAMkD,IAASC,GAAc,EAAE,KAAK,SAAQ,CAAE,GACxC,CAACC,GAAc9B,CAAU,IAAI+B;AAAA,MACjC,MAAMH,EAAO,kBAAkBnD,CAAK;AAAA,MACpC,CAACA,GAAOmD,CAAM;AAAA,IACf;AACD,WAAuB9C,gBAAAA,EAAAA,IAAIyB,IAAe,EAAE,OAAOuB,GAAc,UAA0BhD,gBAAAA,EAAAA,IAAIkD,IAAO,EAAE,KAAK,KAAK,QAAQ,MAAM,KAAAtD,GAAK,GAAGsB,EAAY,CAAA,GAAG;AAAA,EAC3J;AACA,GCtEMiC,KAAqB,CAAC;AAAA,EAC1B,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,CAAC,gBAAgBC,IAAa;AAChC,MAA0D;AACxD,QAAM,CAACC,GAAgBC,CAAiB,IAAIC,EAAS,EAAK,GAEpDC,IAAsBC;AAAA,IAC1B,CAACC,MAAkC;AACjC,MAAAA,EAAE,gBAAgB,GACdR,KACFA,EAASC,CAAK;AAAA,IAElB;AAAA,IACA,CAACD,GAAUC,CAAK;AAAA,EAClB;AAGE,SAAAtD,gBAAAA,EAAA;AAAA,IAAC8D;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,eAAaP;AAAA,MACb,iBAAgB;AAAA,MAChB,cAAa;AAAA,MACb,QAAO;AAAA,MACP,SAAQ;AAAA,MACR,GAAG;AAAA,MACH,SAASI;AAAA,MACT,cAAc,MAAYF,EAAkB,EAAI;AAAA,MAChD,cAAc,MAAYA,EAAkB,EAAK;AAAA,MACjD,GAAG;AAAA,MACH,QAAO;AAAA,MACP,QAAQL,MAAe,OAAO,IAAI;AAAA,MAClC,aAAa;AAAA,QACX,SAAS;AAAA,MACX;AAAA,MAEA,UAAApD,gBAAAA,EAAA,IAAC+D,KAAK,SAAQ,WAAU,MAAK,oBAAmB,MAAMP,IAAiB,OAAO,KAAM,CAAA;AAAA,IAAA;AAAA,EACtF;AAEJ,GCtDaQ,IAAkB,CAAC,EAAE,aAAAC,GAAa,QAAAC,IAAS,IAAM,OAAAC,IAAQ,QAAwC;AACxG,MAAAC;AACJ,UAAQH,GAAa;AAAA,IACnB,KAAK;AACH,MAAAG,IAAWF,IAAS,OAAO;AAC3B;AAAA,IACF,KAAK;AACH,MAAAE,IAAWF,IAAS,OAAO;AAC3B;AAAA,IACF,KAAK;AACH,MAAAE,IAAWF,IAAS,OAAO;AAC3B;AAAA,IACF,KAAK;AACH,MAAAE,IAAWF,IAAS,OAAO;AAC3B;AAAA,IACF,KAAK;AACH,MAAAE,IAAWF,IAAS,QAAQ;AAC5B;AAAA,IACF,KAAK;AACH,MAAAE,IAAWF,IAAS,QAAQ;AAC5B;AAAA,IACF;AACa,MAAAE,IAAAH;AACX;AAAA,EAAA;AAGJ,SAAIE,IAAQ,MACVC,IAAWJ,EAAgB;AAAA,IACzB,aAAaI;AAAA,IACb,QAAAF;AAAA,IACA,OAAOC,IAAQ;AAAA,EAAA,CAChB,IAGIC;AACT,GCxCMC,KAA6D;AAAA,EACjE,MAAM;AAAA,IACJ,SAAS;AAAA,EACX;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,EACX;AAAA,EACA,OAAO;AAAA,IACL,SAAS;AAAA,EACX;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,EACX;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,EAAA;AAEb,GAEMC,KAA+D;AAAA,EACnE,IAAI;AAAA,IACF,SAAS;AAAA,EACX;AAAA,EACA,IAAI;AAAA,IACF,SAAS;AAAA,EACX;AAAA,EACA,IAAI;AAAA,IACF,SAAS;AAAA,EACX;AAAA,EACA,IAAI;AAAA,IACF,SAAS;AAAA,EACX;AAAA,EACA,IAAI;AAAA,IACF,aAAa;AAAA,IACb,SAAS;AAAA,EAAA;AAEb,GAEaC,KAAoBC,EAAa;AAAA,EAC5C,MAAM;AAAA,IACJ,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,cAAc;AAAA,IACd,aAAa;AAAA,IACb,gBAAgB;AAAA,EAClB;AAAA,EACA,UAAU;AAAA,IACR,MAAMF;AAAA,IACN,QAAQD;AAAA,IACR,UAAU;AAAA,MACR,MAAM,CAAC;AAAA,MACP,OAAO,CAAA;AAAA,IAAC;AAAA,EAEZ;AAAA,EACA,iBAAiB;AAAA,IACf,QAAQ;AAAA,EACV;AAAA,EACA,kBAAkB;AAAA,IAChB;AAAA,MACE,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,MAAM,CAAC,MAAM,MAAM,IAAI;AAAA,MACvB,KAAK;AAAA,QACH,SAAS;AAAA,MAAA;AAAA,IAEb;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,MAAM;AAAA,MACN,KAAK;AAAA,QACH,aAAa;AAAA,QACb,SAAS;AAAA,MAAA;AAAA,IACX;AAAA,EACF;AAEJ,CAAC,GC9GYI,KAAiD;AAAA,EAC5D,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN,GAEaC,KAA6C;AAAA,EACxD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN,GCcaC,KAAc,CAAC;AAAA,EAC1B,YAAAvB,IAAa;AAAA,EACb,UAAAwB;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,QAAAC,IAAS;AAAA,EACT,CAAC,gBAAgBvB,IAAa;AAAA,EAC9B,GAAGb;AACL,MAAmD;AAE3C,QAAAH,IADSwC,EAAU,EAAE,QAAQR,IAAmB,EAChC,EAAE,QAAAO,GAAQ,MAAM1B,GAAY,UAAU,CAAC,CAACwB,GAAU,GAClEI,IAAgB/B,EAAQ,MAAMG,MAAe,QAAQ,CAACwB,GAAU,CAACA,GAAUxB,CAAU,CAAC,GACtF6B,IAAehC,EAAQ,MAAO+B,IAAgBN,KAAiBD,IAAqB,CAACO,CAAa,CAAC;AAGvG,SAAAhF,gBAAAA,EAAA;AAAA,IAAC8D;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,eAAaP;AAAA,MACb,QAAQ0B,EAAa7B,CAAU;AAAA,MAC/B,WAAWyB;AAAA,MAEX,UAAC7E,gBAAAA,EAAA,IAAAkF,GAAA,EAAK,WAAU,iBAAgB,eAAa,GAAG3B,CAAU,UAAU,KAAKhB,GAAS,GAAGG,GAClF,UAAA,CAACsC,KAAiBJ,KACjB5E,gBAAAA,EAAA;AAAA,QAAC+D;AAAA,QAAA;AAAA,UACC,MAAMa;AAAA,UACN,SAASE,MAAW,UAAWA,IAA+B;AAAA,UAC9D,MAAM1B,MAAe,OAAO,OAAO;AAAA,QAAA;AAAA,MAAA,EAGzC,CAAA;AAAA,IAAA;AAAA,EACF;AAEJ,GC1Da+B,IAA8BzF,EAGzC,CAACC,GAAOC,MAAQI,gBAAAA,EAAAA,IAACoF,GAAO,EAAA,KAAAxF,GAAU,WAAU,iCAAiC,GAAGD,EAAO,CAAA,CAAE;AAC3FwF,EAA4B,cAAc;ACiDnC,MAAME,KAASC,EAAM;AAAA,EAC1B,CAAC;AAAA,IACC,YAAAC;AAAA,IACA,YAAAC;AAAA,IACA,UAAAZ;AAAA,IACA,MAAAzC,IAAO;AAAA,IACP,SAAAsD;AAAA,IACA,UAAApC;AAAA,IACA,WAAAqC;AAAA,IACA,kBAAAC;AAAA,IACA,aAAAC,IAAc;AAAA,IACd,MAAAC,IAAO;AAAA,IACP,KAAAC;AAAA,IACA,cAAAC;AAAA,IACA,SAAAC,IAAU;AAAA,IACV,SAAAC;AAAA,IACA,OAAA3C;AAAA,IACA,CAAC,gBAAgBC,IAAa;AAAA,IAC9B,UAAA2C;AAAA,IACA,GAAGxD;AAAA,EAAA,MACiC;AACpC,UAAM1B,IAAoCiC;AAAA,MACxC,MACE,CAAC,EAAE,UAAAiD,QACDlG,gBAAAA,EAAA;AAAA,QAACmG;AAAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,eAAa5C;AAAA,UACb,SAAAyC;AAAA,UACA,MAAAH;AAAA,UACA,aAAa,CAAC,CAACJ;AAAA,UACf,YAAAD;AAAA,UACA,SAAAC;AAAA,UACC,GAAG/C;AAAA,UAEH,UAAAwD;AAAAA,QAAA;AAAA,MACH;AAAA,MAEJ,CAAC3C,GAAYiC,GAAYC,GAAS/C,GAAMmD,GAAMG,CAAO;AAAA,IACvD,GAEMI,IAAuCnD;AAAA,MAC3C,MAAM,MAEDoD,gBAAAA,EAAA,KAAAC,YAAA,EAAA,UAAA;AAAA,QAAAJ,KAGElG,gBAAAA,MAAAuG,IAAA,EAAiB,MAAApE,GACf,UACCyC,KAAA5E,gBAAAA,EAAA;AAAA,UAAC+D;AAAA,UAAA;AAAA,YACC,MAAMa;AAAA,YACN,IAAG;AAAA,YACH,MACEiB,MAAS,OACL,OACA7B,EAAgB;AAAA,cACd,aAAa6B;AAAA,cACb,QAAQ;AAAA,cACR,OAAO;AAAA,YACR,CAAA;AAAA,UAAA;AAAA,QAAA,GAIb;AAAA,QAEDH,KAAc1F,gBAAAA,EAAA,IAAA2E,IAAA,EAAY,YAAYkB,GAAO,GAAGN,GAAY;AAAA,SAC3DU,KAAWH,MAAS9F,gBAAAA,EAAA,IAAAwG,IAAA,EAAc,KAAAV,GAAU,QAAQG,EAAS,CAAA;AAAA,MAAA,GACjE;AAAA,MAEF,CAACV,GAAYW,GAAUtB,GAAUzC,GAAMuD,GAAWG,GAAMC,GAAKG,CAAO;AAAA,IACtE,GAEMQ,IAAwCxD;AAAA,MAC5C,MACE,CAAC,EAAE,UAAAiD,QACDN,IACE5F,gBAAAA,EAAA;AAAA,QAAC0G;AAAA,QAAA;AAAA,UACC,eAAa,GAAGnD,CAAU;AAAA,UACzB,GAAGwC;AAAA,UACJ,OAAOA,GAAc,SAAS5D;AAAA,UAC9B,UAAU,CAACA,KAAQ,CAAC4D,GAAc;AAAA,UAClC,WAAWA,GAAc,aAAa;AAAA,UAEtC,UAAA/F,gBAAAA,EAAAA,IAACmF,GAA4B,EAAA,GAAGwB,EAAcd,CAAI,GAAG,GAAGc,EAAcd,CAAI,GACvE,UAAAK,EACH,CAAA;AAAA,QAAA;AAAA,MAAA,IAGDlG,gBAAAA,EAAAA,IAAAsF,EAAM,UAAN,EAAgB,UAAAY,EAAS,CAAA;AAAA,MAEhC,CAAC3C,GAAYpB,GAAMyD,GAAaC,GAAME,CAAY;AAAA,IACpD;AAEI,WAAAJ,2BAEC3E,GACC,EAAA,UAAA;AAAA,MAAChB,gBAAAA,EAAA,IAAAyG,GAAA,EACC,UAACzG,gBAAAA,EAAA,IAAAoG,GAAA,CAAc,CAAA,GACjB;AAAA,MACCT,KAAoBE,MAAS,QAC5B7F,gBAAAA,MAACmD,MAAmB,YAAY0C,GAAM,UAAAxC,GAAoB,OAAAC,EAAc,CAAA;AAAA,IAAA,GAE5E,0BAIDmD,GACC,EAAA,UAAAzG,gBAAAA,EAAA,IAACgB,KACC,UAAChB,gBAAAA,EAAA,IAAAoG,GAAA,EAAc,GACjB,EACF,CAAA;AAAA,EAAA;AAGN;","x_google_ignoreList":[0,1,2,3,4,5,6]}