@commercetools/nimbus 0.0.12-rc2 → 0.0.12-rc4

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 (473) hide show
  1. package/dist/chunks/accordion-EDJoghXQ.cjs.js +2 -0
  2. package/dist/chunks/{accordion-Be--VNW6.cjs.js.map → accordion-EDJoghXQ.cjs.js.map} +1 -1
  3. package/dist/chunks/{accordion-Drl_Y6QC.es.js → accordion-UL4pfC2d.es.js} +24 -24
  4. package/dist/chunks/{accordion-Drl_Y6QC.es.js.map → accordion-UL4pfC2d.es.js.map} +1 -1
  5. package/dist/chunks/alert-BhoRNIWA.cjs.js +2 -0
  6. package/dist/chunks/{alert-DF3J6Yj7.cjs.js.map → alert-BhoRNIWA.cjs.js.map} +1 -1
  7. package/dist/chunks/{alert-9-Hp2KQ4.es.js → alert-D-ddqYG4.es.js} +25 -26
  8. package/dist/chunks/{alert-9-Hp2KQ4.es.js.map → alert-D-ddqYG4.es.js.map} +1 -1
  9. package/dist/chunks/{avatar-DXWmY247.es.js → avatar-Bu12OMzz.es.js} +6 -6
  10. package/dist/chunks/{avatar-DXWmY247.es.js.map → avatar-Bu12OMzz.es.js.map} +1 -1
  11. package/dist/chunks/avatar-C2KIWewd.cjs.js +2 -0
  12. package/dist/chunks/{avatar-DEAravTR.cjs.js.map → avatar-C2KIWewd.cjs.js.map} +1 -1
  13. package/dist/chunks/avatar.recipe-D3--Rkmb.cjs.js +2 -0
  14. package/dist/chunks/{avatar.recipe-CQivdbFs.cjs.js.map → avatar.recipe-D3--Rkmb.cjs.js.map} +1 -1
  15. package/dist/chunks/{avatar.recipe-CxXQlkH6.es.js → avatar.recipe-DfyPWbFZ.es.js} +2 -2
  16. package/dist/chunks/{avatar.recipe-CxXQlkH6.es.js.map → avatar.recipe-DfyPWbFZ.es.js.map} +1 -1
  17. package/dist/chunks/{badge-Cg7jASs5.es.js → badge-BJd-Q81M.es.js} +5 -6
  18. package/dist/chunks/{badge-Cg7jASs5.es.js.map → badge-BJd-Q81M.es.js.map} +1 -1
  19. package/dist/chunks/badge-CCrBksXu.cjs.js +2 -0
  20. package/dist/chunks/{badge-BjhZ-byo.cjs.js.map → badge-CCrBksXu.cjs.js.map} +1 -1
  21. package/dist/chunks/box-CWni3A32.cjs.js +2 -0
  22. package/dist/chunks/box-CWni3A32.cjs.js.map +1 -0
  23. package/dist/chunks/box-DuBoAZvq.es.js +12 -0
  24. package/dist/chunks/box-DuBoAZvq.es.js.map +1 -0
  25. package/dist/chunks/{button-DNPDogwN.es.js → button-CRUdodZm.es.js} +14 -14
  26. package/dist/chunks/{button-DNPDogwN.es.js.map → button-CRUdodZm.es.js.map} +1 -1
  27. package/dist/chunks/button-CU8FW_Pl.cjs.js +2 -0
  28. package/dist/chunks/{button-BfmWlfwH.cjs.js.map → button-CU8FW_Pl.cjs.js.map} +1 -1
  29. package/dist/chunks/button.recipe-Cqkj3VMo.cjs.js +2 -0
  30. package/dist/chunks/{button.recipe-ClPhJ93N.cjs.js.map → button.recipe-Cqkj3VMo.cjs.js.map} +1 -1
  31. package/dist/chunks/{button.recipe-D9e9Gh9L.es.js → button.recipe-NdTb5f8M.es.js} +2 -2
  32. package/dist/chunks/{button.recipe-D9e9Gh9L.es.js.map → button.recipe-NdTb5f8M.es.js.map} +1 -1
  33. package/dist/chunks/calendar-DJKWldpV.cjs.js +2 -0
  34. package/dist/chunks/{calendar-BgHBd6Dh.cjs.js.map → calendar-DJKWldpV.cjs.js.map} +1 -1
  35. package/dist/chunks/{calendar-DGKSCKht.es.js → calendar-DzwFtg1t.es.js} +19 -20
  36. package/dist/chunks/{calendar-DGKSCKht.es.js.map → calendar-DzwFtg1t.es.js.map} +1 -1
  37. package/dist/chunks/{card-DX8r4prk.es.js → card-BfUdf1Fy.es.js} +23 -24
  38. package/dist/chunks/{card-DX8r4prk.es.js.map → card-BfUdf1Fy.es.js.map} +1 -1
  39. package/dist/chunks/card-DeWTV05B.cjs.js +2 -0
  40. package/dist/chunks/{card-DgvP36g1.cjs.js.map → card-DeWTV05B.cjs.js.map} +1 -1
  41. package/dist/chunks/checkbox-6nLo9Jy2.cjs.js +2 -0
  42. package/dist/chunks/{checkbox-BbdENF1i.cjs.js.map → checkbox-6nLo9Jy2.cjs.js.map} +1 -1
  43. package/dist/chunks/{checkbox-BnfwQBT0.es.js → checkbox-GmYxVrZx.es.js} +32 -32
  44. package/dist/chunks/{checkbox-BnfwQBT0.es.js.map → checkbox-GmYxVrZx.es.js.map} +1 -1
  45. package/dist/chunks/code-Dl7u63Zn.es.js +6 -0
  46. package/dist/chunks/code-Dl7u63Zn.es.js.map +1 -0
  47. package/dist/chunks/code-q31e3vT2.cjs.js +2 -0
  48. package/dist/chunks/code-q31e3vT2.cjs.js.map +1 -0
  49. package/dist/chunks/combobox-DtPDxCo3.cjs.js +2 -0
  50. package/dist/chunks/{combobox-DIKvq4tw.cjs.js.map → combobox-DtPDxCo3.cjs.js.map} +1 -1
  51. package/dist/chunks/{combobox-BS6TWlhm.es.js → combobox-gIwba2QG.es.js} +68 -68
  52. package/dist/chunks/{combobox-BS6TWlhm.es.js.map → combobox-gIwba2QG.es.js.map} +1 -1
  53. package/dist/chunks/data-table-Cpk3q34E.cjs.js +2 -0
  54. package/dist/chunks/data-table-Cpk3q34E.cjs.js.map +1 -0
  55. package/dist/chunks/{data-table-CWSmm1Cq.es.js → data-table-mXLxUWQz.es.js} +1204 -1282
  56. package/dist/chunks/data-table-mXLxUWQz.es.js.map +1 -0
  57. package/dist/chunks/date-input-D5unoyMt.es.js +16 -0
  58. package/dist/chunks/{date-input-BR6daiWa.es.js.map → date-input-D5unoyMt.es.js.map} +1 -1
  59. package/dist/chunks/date-input-DJ_aFB9i.cjs.js +2 -0
  60. package/dist/chunks/{date-input-CKu2_a2x.cjs.js.map → date-input-DJ_aFB9i.cjs.js.map} +1 -1
  61. package/dist/chunks/{date-picker-DqvZ_FI0.es.js → date-picker-CMqAI1lp.es.js} +25 -25
  62. package/dist/chunks/{date-picker-DqvZ_FI0.es.js.map → date-picker-CMqAI1lp.es.js.map} +1 -1
  63. package/dist/chunks/date-picker-f3TylaP5.cjs.js +2 -0
  64. package/dist/chunks/{date-picker-DQ6_2mzc.cjs.js.map → date-picker-f3TylaP5.cjs.js.map} +1 -1
  65. package/dist/chunks/date-range-picker-CxsPpWyX.cjs.js +2 -0
  66. package/dist/chunks/{date-range-picker-i33UHqUE.cjs.js.map → date-range-picker-CxsPpWyX.cjs.js.map} +1 -1
  67. package/dist/chunks/{date-range-picker-Dh-F7d4e.es.js → date-range-picker-Dtji64Q9.es.js} +14 -14
  68. package/dist/chunks/{date-range-picker-Dh-F7d4e.es.js.map → date-range-picker-Dtji64Q9.es.js.map} +1 -1
  69. package/dist/chunks/dialog-CVa-E9-A.cjs.js +2 -0
  70. package/dist/chunks/dialog-CVa-E9-A.cjs.js.map +1 -0
  71. package/dist/chunks/dialog-DTSuKnyk.es.js +34 -0
  72. package/dist/chunks/dialog-DTSuKnyk.es.js.map +1 -0
  73. package/dist/chunks/{divider-Cjs3ESH7.es.js → divider--BAm3ca4.es.js} +7 -8
  74. package/dist/chunks/{divider-Cjs3ESH7.es.js.map → divider--BAm3ca4.es.js.map} +1 -1
  75. package/dist/chunks/divider-BuizjeAj.cjs.js +2 -0
  76. package/dist/chunks/{divider-DU351gdE.cjs.js.map → divider-BuizjeAj.cjs.js.map} +1 -1
  77. package/dist/chunks/emotion-is-prop-valid.esm-Bb7Ou5_X.cjs.js +2 -0
  78. package/dist/chunks/emotion-is-prop-valid.esm-Bb7Ou5_X.cjs.js.map +1 -0
  79. package/dist/chunks/emotion-is-prop-valid.esm-qvxbqhmq.es.js +16 -0
  80. package/dist/chunks/emotion-is-prop-valid.esm-qvxbqhmq.es.js.map +1 -0
  81. package/dist/chunks/{extractStyleProps-BFdEZDYW.cjs.js → extractStyleProps-CZpHKp1I.cjs.js} +2 -2
  82. package/dist/chunks/{extractStyleProps-BFdEZDYW.cjs.js.map → extractStyleProps-CZpHKp1I.cjs.js.map} +1 -1
  83. package/dist/chunks/{extractStyleProps-D6vCCKog.es.js → extractStyleProps-vA4cNUoc.es.js} +2 -2
  84. package/dist/chunks/{extractStyleProps-D6vCCKog.es.js.map → extractStyleProps-vA4cNUoc.es.js.map} +1 -1
  85. package/dist/chunks/{form-field-hq4IMj9f.es.js → form-field-Dtcfgzyo.es.js} +30 -31
  86. package/dist/chunks/{form-field-hq4IMj9f.es.js.map → form-field-Dtcfgzyo.es.js.map} +1 -1
  87. package/dist/chunks/{form-field-SFG0Jvp7.cjs.js → form-field-DxcGAb23.cjs.js} +3 -3
  88. package/dist/chunks/{form-field-SFG0Jvp7.cjs.js.map → form-field-DxcGAb23.cjs.js.map} +1 -1
  89. package/dist/chunks/grid-Chuw1xje.cjs.js +2 -0
  90. package/dist/chunks/{grid-CXpKN2OR.cjs.js.map → grid-Chuw1xje.cjs.js.map} +1 -1
  91. package/dist/chunks/grid-De8qjf98.es.js +14 -0
  92. package/dist/chunks/{grid-B3Ggy_FW.es.js.map → grid-De8qjf98.es.js.map} +1 -1
  93. package/dist/chunks/{icon-BDsjJ4Zi.es.js → icon-BoRbJStV.es.js} +9 -10
  94. package/dist/chunks/{icon-BDsjJ4Zi.es.js.map → icon-BoRbJStV.es.js.map} +1 -1
  95. package/dist/chunks/icon-Cny8ZtnX.cjs.js +2 -0
  96. package/dist/chunks/{icon-DHoLo7_S.cjs.js.map → icon-Cny8ZtnX.cjs.js.map} +1 -1
  97. package/dist/chunks/{icon-button-EonZGbth.es.js → icon-button-C20Gw8gQ.es.js} +2 -2
  98. package/dist/chunks/{icon-button-EonZGbth.es.js.map → icon-button-C20Gw8gQ.es.js.map} +1 -1
  99. package/dist/chunks/{icon-button-D0NyGafI.cjs.js → icon-button-Cc0MkBbk.cjs.js} +2 -2
  100. package/dist/chunks/{icon-button-D0NyGafI.cjs.js.map → icon-button-Cc0MkBbk.cjs.js.map} +1 -1
  101. package/dist/chunks/{icon-toggle-button-CcEARpnu.es.js → icon-toggle-button-CgHQMDs3.es.js} +2 -2
  102. package/dist/chunks/{icon-toggle-button-CcEARpnu.es.js.map → icon-toggle-button-CgHQMDs3.es.js.map} +1 -1
  103. package/dist/chunks/{icon-toggle-button-yeQuEUBY.cjs.js → icon-toggle-button-D-C99Q0s.cjs.js} +2 -2
  104. package/dist/chunks/{icon-toggle-button-yeQuEUBY.cjs.js.map → icon-toggle-button-D-C99Q0s.cjs.js.map} +1 -1
  105. package/dist/chunks/image-CGOYoc2s.cjs.js +2 -0
  106. package/dist/chunks/{image-bt28epM5.cjs.js.map → image-CGOYoc2s.cjs.js.map} +1 -1
  107. package/dist/chunks/image-DRigLU80.es.js +8 -0
  108. package/dist/chunks/{image-MeWmLoV0.es.js.map → image-DRigLU80.es.js.map} +1 -1
  109. package/dist/chunks/index-C8Yrk__l.cjs.js +4 -0
  110. package/dist/chunks/{index-sFOzzmTG.cjs.js.map → index-C8Yrk__l.cjs.js.map} +1 -1
  111. package/dist/chunks/{index-Dvel3Oj5.es.js → index-jAeaCpRm.es.js} +7 -7
  112. package/dist/chunks/index-jAeaCpRm.es.js.map +1 -0
  113. package/dist/chunks/kbd-BXN9aXRE.es.js +17 -0
  114. package/dist/chunks/{kbd-Bc97Bwq3.es.js.map → kbd-BXN9aXRE.es.js.map} +1 -1
  115. package/dist/chunks/kbd-DFeaXiKY.cjs.js +2 -0
  116. package/dist/chunks/{kbd-BlZ2RGfa.cjs.js.map → kbd-DFeaXiKY.cjs.js.map} +1 -1
  117. package/dist/chunks/{kbd.recipe-BTW0MQqx.es.js → kbd.recipe-DXiyvrAP.es.js} +2 -2
  118. package/dist/chunks/{kbd.recipe-BTW0MQqx.es.js.map → kbd.recipe-DXiyvrAP.es.js.map} +1 -1
  119. package/dist/chunks/kbd.recipe-DjQgeTG_.cjs.js +2 -0
  120. package/dist/chunks/{kbd.recipe-9kxAU5ro.cjs.js.map → kbd.recipe-DjQgeTG_.cjs.js.map} +1 -1
  121. package/dist/chunks/{link-DjzrPyx3.es.js → link-CFK97sc0.es.js} +4 -4
  122. package/dist/chunks/{link-DjzrPyx3.es.js.map → link-CFK97sc0.es.js.map} +1 -1
  123. package/dist/chunks/link-DWa1zIUJ.cjs.js +2 -0
  124. package/dist/chunks/{link-DzUonoQg.cjs.js.map → link-DWa1zIUJ.cjs.js.map} +1 -1
  125. package/dist/chunks/link.recipe-Co4-fl4U.cjs.js +2 -0
  126. package/dist/chunks/{link.recipe-BfCxtKjL.cjs.js.map → link.recipe-Co4-fl4U.cjs.js.map} +1 -1
  127. package/dist/chunks/{link.recipe-BRnFQ5bP.es.js → link.recipe-pXiGIJtI.es.js} +2 -2
  128. package/dist/chunks/{link.recipe-BRnFQ5bP.es.js.map → link.recipe-pXiGIJtI.es.js.map} +1 -1
  129. package/dist/chunks/list-DJC9BmoC.cjs.js +2 -0
  130. package/dist/chunks/list-DJC9BmoC.cjs.js.map +1 -0
  131. package/dist/chunks/list-Nz5KjWzs.es.js +13 -0
  132. package/dist/chunks/list-Nz5KjWzs.es.js.map +1 -0
  133. package/dist/chunks/{loading-spinner-DuBf2cIy.es.js → loading-spinner-CvggCl-H.es.js} +6 -7
  134. package/dist/chunks/{loading-spinner-DuBf2cIy.es.js.map → loading-spinner-CvggCl-H.es.js.map} +1 -1
  135. package/dist/chunks/loading-spinner-DdYXuYkg.cjs.js +2 -0
  136. package/dist/chunks/{loading-spinner-VVQyl725.cjs.js.map → loading-spinner-DdYXuYkg.cjs.js.map} +1 -1
  137. package/dist/chunks/{menu-CKJfYhIU.es.js → menu-8g9Hn1nm.es.js} +14 -14
  138. package/dist/chunks/{menu-CKJfYhIU.es.js.map → menu-8g9Hn1nm.es.js.map} +1 -1
  139. package/dist/chunks/menu-Bm1u-R6o.cjs.js +2 -0
  140. package/dist/chunks/{menu-CImIQ6uJ.cjs.js.map → menu-Bm1u-R6o.cjs.js.map} +1 -1
  141. package/dist/chunks/{multiline-text-input-DoHeA-kt.es.js → multiline-text-input-BGnvpB1r.es.js} +12 -14
  142. package/dist/chunks/{multiline-text-input-DoHeA-kt.es.js.map → multiline-text-input-BGnvpB1r.es.js.map} +1 -1
  143. package/dist/chunks/multiline-text-input-sXIlwrvT.cjs.js +12 -0
  144. package/dist/chunks/{multiline-text-input-jdvlKAq1.cjs.js.map → multiline-text-input-sXIlwrvT.cjs.js.map} +1 -1
  145. package/dist/chunks/{nimbus-provider-DKRUbH11.es.js → nimbus-provider-CybdU89B.es.js} +4 -4
  146. package/dist/chunks/{nimbus-provider-DKRUbH11.es.js.map → nimbus-provider-CybdU89B.es.js.map} +1 -1
  147. package/dist/chunks/nimbus-provider-D3DvYEDv.cjs.js +2 -0
  148. package/dist/chunks/{nimbus-provider-CBZCiFEH.cjs.js.map → nimbus-provider-D3DvYEDv.cjs.js.map} +1 -1
  149. package/dist/chunks/number-input-CPnA0dO-.cjs.js +2 -0
  150. package/dist/chunks/{number-input-CnOvkmap.cjs.js.map → number-input-CPnA0dO-.cjs.js.map} +1 -1
  151. package/dist/chunks/{number-input-BEn83Z9q.es.js → number-input-CzObpfFa.es.js} +11 -11
  152. package/dist/chunks/{number-input-BEn83Z9q.es.js.map → number-input-CzObpfFa.es.js.map} +1 -1
  153. package/dist/chunks/{password-input-DSeCpNT-.cjs.js → password-input-BqhrDjyW.cjs.js} +2 -2
  154. package/dist/chunks/{password-input-DSeCpNT-.cjs.js.map → password-input-BqhrDjyW.cjs.js.map} +1 -1
  155. package/dist/chunks/{password-input-BGPsQ2R9.es.js → password-input-C_rdTND7.es.js} +5 -5
  156. package/dist/chunks/{password-input-BGPsQ2R9.es.js.map → password-input-C_rdTND7.es.js.map} +1 -1
  157. package/dist/chunks/progress-bar-CrS1rODC.cjs.js +2 -0
  158. package/dist/chunks/{progress-bar-CByPgKbP.cjs.js.map → progress-bar-CrS1rODC.cjs.js.map} +1 -1
  159. package/dist/chunks/{progress-bar-BsuOolTl.es.js → progress-bar-pPWJ1Sn8.es.js} +19 -19
  160. package/dist/chunks/{progress-bar-BsuOolTl.es.js.map → progress-bar-pPWJ1Sn8.es.js.map} +1 -1
  161. package/dist/chunks/radio-input-BTEXrXaF.cjs.js +2 -0
  162. package/dist/chunks/{radio-input-VMfD6a_K.cjs.js.map → radio-input-BTEXrXaF.cjs.js.map} +1 -1
  163. package/dist/chunks/{radio-input-CDYvzPq7.es.js → radio-input-OpbQD2zP.es.js} +42 -42
  164. package/dist/chunks/{radio-input-CDYvzPq7.es.js.map → radio-input-OpbQD2zP.es.js.map} +1 -1
  165. package/dist/chunks/{range-calendar-DxPBRKpW.es.js → range-calendar-BOP_J_5a.es.js} +21 -22
  166. package/dist/chunks/{range-calendar-DxPBRKpW.es.js.map → range-calendar-BOP_J_5a.es.js.map} +1 -1
  167. package/dist/chunks/range-calendar-CFotnBzs.cjs.js +2 -0
  168. package/dist/chunks/{range-calendar-CnaQY0pH.cjs.js.map → range-calendar-CFotnBzs.cjs.js.map} +1 -1
  169. package/dist/chunks/{rich-text-input-DmwKaXzi.cjs.js → rich-text-input-CItP9BzJ.cjs.js} +2 -2
  170. package/dist/chunks/{rich-text-input-DmwKaXzi.cjs.js.map → rich-text-input-CItP9BzJ.cjs.js.map} +1 -1
  171. package/dist/chunks/{rich-text-input-B6OYMXXr.es.js → rich-text-input-CgrxAPHc.es.js} +11 -11
  172. package/dist/chunks/{rich-text-input-B6OYMXXr.es.js.map → rich-text-input-CgrxAPHc.es.js.map} +1 -1
  173. package/dist/chunks/{select-X7n0xTYd.es.js → select-CAeD_ZuZ.es.js} +67 -68
  174. package/dist/chunks/{select-X7n0xTYd.es.js.map → select-CAeD_ZuZ.es.js.map} +1 -1
  175. package/dist/chunks/select-Coyt1pJN.cjs.js +2 -0
  176. package/dist/chunks/{select-DT9EbJgb.cjs.js.map → select-Coyt1pJN.cjs.js.map} +1 -1
  177. package/dist/chunks/simple-grid-Cd2MJxSX.cjs.js +2 -0
  178. package/dist/chunks/simple-grid-Cd2MJxSX.cjs.js.map +1 -0
  179. package/dist/chunks/simple-grid-DU5v66TG.es.js +15 -0
  180. package/dist/chunks/simple-grid-DU5v66TG.es.js.map +1 -0
  181. package/dist/chunks/{split-button-i2Ezbf3P.cjs.js → split-button-BYrr5vRr.cjs.js} +2 -2
  182. package/dist/chunks/{split-button-i2Ezbf3P.cjs.js.map → split-button-BYrr5vRr.cjs.js.map} +1 -1
  183. package/dist/chunks/{split-button-BWXYRDuQ.es.js → split-button-j2bgcP59.es.js} +5 -5
  184. package/dist/chunks/{split-button-BWXYRDuQ.es.js.map → split-button-j2bgcP59.es.js.map} +1 -1
  185. package/dist/chunks/stack-CIN13EDn.cjs.js +2 -0
  186. package/dist/chunks/stack-CIN13EDn.cjs.js.map +1 -0
  187. package/dist/chunks/stack-CoNreM7B.es.js +11 -0
  188. package/dist/chunks/stack-CoNreM7B.es.js.map +1 -0
  189. package/dist/chunks/switch-BgNpbn2e.cjs.js +2 -0
  190. package/dist/chunks/{switch-kNksAQM3.cjs.js.map → switch-BgNpbn2e.cjs.js.map} +1 -1
  191. package/dist/chunks/{switch-rkewogOb.es.js → switch-Cid4U3m8.es.js} +8 -8
  192. package/dist/chunks/{switch-rkewogOb.es.js.map → switch-Cid4U3m8.es.js.map} +1 -1
  193. package/dist/chunks/tag-group-B3YSTBpb.cjs.js +2 -0
  194. package/dist/chunks/{tag-group-iRBYcxt6.cjs.js.map → tag-group-B3YSTBpb.cjs.js.map} +1 -1
  195. package/dist/chunks/{tag-group-DqTm8v26.es.js → tag-group-CeNHz5QQ.es.js} +50 -50
  196. package/dist/chunks/{tag-group-DqTm8v26.es.js.map → tag-group-CeNHz5QQ.es.js.map} +1 -1
  197. package/dist/chunks/text-CCW9kDT_.cjs.js +2 -0
  198. package/dist/chunks/text-CCW9kDT_.cjs.js.map +1 -0
  199. package/dist/chunks/text-DfQpupDi.es.js +24 -0
  200. package/dist/chunks/text-DfQpupDi.es.js.map +1 -0
  201. package/dist/chunks/text-input-C2y4O13I.cjs.js +2 -0
  202. package/dist/chunks/{text-input-D7SdSWpG.cjs.js.map → text-input-C2y4O13I.cjs.js.map} +1 -1
  203. package/dist/chunks/text-input-TZXg0lEQ.es.js +18 -0
  204. package/dist/chunks/{text-input-Dinn4J2V.es.js.map → text-input-TZXg0lEQ.es.js.map} +1 -1
  205. package/dist/chunks/{time-input-Us0JugnD.es.js → time-input-CI_HoOGU.es.js} +6 -8
  206. package/dist/chunks/{time-input-Us0JugnD.es.js.map → time-input-CI_HoOGU.es.js.map} +1 -1
  207. package/dist/chunks/time-input-cHUvGWDc.cjs.js +2 -0
  208. package/dist/chunks/{time-input-BqTsxXMD.cjs.js.map → time-input-cHUvGWDc.cjs.js.map} +1 -1
  209. package/dist/chunks/toggle-button-C9ezVsSp.cjs.js +2 -0
  210. package/dist/chunks/{toggle-button-CsVyAh8N.cjs.js.map → toggle-button-C9ezVsSp.cjs.js.map} +1 -1
  211. package/dist/chunks/toggle-button-a0gCembi.es.js +29 -0
  212. package/dist/chunks/{toggle-button-RS4Z6UNN.es.js.map → toggle-button-a0gCembi.es.js.map} +1 -1
  213. package/dist/chunks/toggle-button-group-DX134q7m.cjs.js +2 -0
  214. package/dist/chunks/{toggle-button-group-LddoXszz.cjs.js.map → toggle-button-group-DX134q7m.cjs.js.map} +1 -1
  215. package/dist/chunks/{toggle-button-group-DHMnBWSg.es.js → toggle-button-group-jRdpdYyd.es.js} +14 -15
  216. package/dist/chunks/{toggle-button-group-DHMnBWSg.es.js.map → toggle-button-group-jRdpdYyd.es.js.map} +1 -1
  217. package/dist/chunks/{toolbar-DcUEC_uE.cjs.js → toolbar-CLGq6IO7.cjs.js} +2 -2
  218. package/dist/chunks/{toolbar-DcUEC_uE.cjs.js.map → toolbar-CLGq6IO7.cjs.js.map} +1 -1
  219. package/dist/chunks/{toolbar-DI1eQG-1.es.js → toolbar-hpBfKrTl.es.js} +3 -3
  220. package/dist/chunks/{toolbar-DI1eQG-1.es.js.map → toolbar-hpBfKrTl.es.js.map} +1 -1
  221. package/dist/chunks/{tooltip-CTvNYvui.es.js → tooltip-B1YdruCE.es.js} +4 -4
  222. package/dist/chunks/{tooltip-CTvNYvui.es.js.map → tooltip-B1YdruCE.es.js.map} +1 -1
  223. package/dist/chunks/tooltip-g8-hEdZp.cjs.js +2 -0
  224. package/dist/chunks/{tooltip-CIAEV4_B.cjs.js.map → tooltip-g8-hEdZp.cjs.js.map} +1 -1
  225. package/dist/chunks/{tooltip.recipe-DsVUEki2.es.js → tooltip.recipe-Cqi_tgR5.es.js} +2 -2
  226. package/dist/chunks/{tooltip.recipe-DsVUEki2.es.js.map → tooltip.recipe-Cqi_tgR5.es.js.map} +1 -1
  227. package/dist/chunks/tooltip.recipe-dx7DAJbZ.cjs.js +2 -0
  228. package/dist/chunks/{tooltip.recipe-VqGdDqQD.cjs.js.map → tooltip.recipe-dx7DAJbZ.cjs.js.map} +1 -1
  229. package/dist/components/accordion.cjs +1 -1
  230. package/dist/components/accordion.es.js +1 -1
  231. package/dist/components/alert.cjs +1 -1
  232. package/dist/components/alert.es.js +1 -1
  233. package/dist/components/avatar.cjs +1 -1
  234. package/dist/components/avatar.es.js +1 -1
  235. package/dist/components/badge.cjs +1 -1
  236. package/dist/components/badge.es.js +1 -1
  237. package/dist/components/box.cjs +1 -1
  238. package/dist/components/box.es.js +1 -1
  239. package/dist/components/button.cjs +1 -1
  240. package/dist/components/button.es.js +1 -1
  241. package/dist/components/calendar.cjs +1 -1
  242. package/dist/components/calendar.es.js +1 -1
  243. package/dist/components/card.cjs +1 -1
  244. package/dist/components/card.es.js +1 -1
  245. package/dist/components/checkbox.cjs +1 -1
  246. package/dist/components/checkbox.es.js +1 -1
  247. package/dist/components/code.cjs +1 -1
  248. package/dist/components/code.es.js +1 -1
  249. package/dist/components/combobox.cjs +1 -1
  250. package/dist/components/combobox.es.js +1 -1
  251. package/dist/components/components.cjs +1 -1
  252. package/dist/components/components.es.js +60 -60
  253. package/dist/components/data-table.cjs +1 -1
  254. package/dist/components/data-table.es.js +1 -1
  255. package/dist/components/date-input.cjs +1 -1
  256. package/dist/components/date-input.es.js +1 -1
  257. package/dist/components/date-picker.cjs +1 -1
  258. package/dist/components/date-picker.es.js +1 -1
  259. package/dist/components/date-range-picker.cjs +1 -1
  260. package/dist/components/date-range-picker.es.js +1 -1
  261. package/dist/components/dialog.cjs +1 -1
  262. package/dist/components/dialog.es.js +1 -1
  263. package/dist/components/divider.cjs +1 -1
  264. package/dist/components/divider.es.js +1 -1
  265. package/dist/components/flex.cjs +1 -1
  266. package/dist/components/flex.es.js +1 -1
  267. package/dist/components/form-field.cjs +1 -1
  268. package/dist/components/form-field.es.js +1 -1
  269. package/dist/components/grid.cjs +1 -1
  270. package/dist/components/grid.es.js +1 -1
  271. package/dist/components/heading.cjs +1 -1
  272. package/dist/components/heading.es.js +2 -2
  273. package/dist/components/icon-button.cjs +1 -1
  274. package/dist/components/icon-button.es.js +1 -1
  275. package/dist/components/icon-toggle-button.cjs +1 -1
  276. package/dist/components/icon-toggle-button.es.js +1 -1
  277. package/dist/components/icon.cjs +1 -1
  278. package/dist/components/icon.es.js +1 -1
  279. package/dist/components/image.cjs +1 -1
  280. package/dist/components/image.es.js +1 -1
  281. package/dist/components/kbd.cjs +1 -1
  282. package/dist/components/kbd.es.js +1 -1
  283. package/dist/components/link.cjs +1 -1
  284. package/dist/components/link.es.js +1 -1
  285. package/dist/components/list.cjs +1 -1
  286. package/dist/components/list.es.js +1 -1
  287. package/dist/components/loading-spinner.cjs +1 -1
  288. package/dist/components/loading-spinner.es.js +1 -1
  289. package/dist/components/multiline-text-input.cjs +1 -1
  290. package/dist/components/multiline-text-input.es.js +1 -1
  291. package/dist/components/nimbus-provider.cjs +1 -1
  292. package/dist/components/nimbus-provider.es.js +1 -1
  293. package/dist/components/number-input.cjs +1 -1
  294. package/dist/components/number-input.es.js +1 -1
  295. package/dist/components/password-input.cjs +1 -1
  296. package/dist/components/password-input.es.js +1 -1
  297. package/dist/components/popover.cjs +1 -1
  298. package/dist/components/popover.cjs.map +1 -1
  299. package/dist/components/popover.es.js +11 -12
  300. package/dist/components/popover.es.js.map +1 -1
  301. package/dist/components/progress-bar.cjs +1 -1
  302. package/dist/components/progress-bar.es.js +1 -1
  303. package/dist/components/radio-input.cjs +1 -1
  304. package/dist/components/radio-input.es.js +1 -1
  305. package/dist/components/range-calendar.cjs +1 -1
  306. package/dist/components/range-calendar.es.js +1 -1
  307. package/dist/components/rich-text-input.cjs +1 -1
  308. package/dist/components/rich-text-input.es.js +1 -1
  309. package/dist/components/select.cjs +1 -1
  310. package/dist/components/select.es.js +1 -1
  311. package/dist/components/simple-grid.cjs +1 -1
  312. package/dist/components/simple-grid.es.js +1 -1
  313. package/dist/components/split-button.cjs +1 -1
  314. package/dist/components/split-button.es.js +1 -1
  315. package/dist/components/stack.cjs +1 -1
  316. package/dist/components/stack.es.js +1 -1
  317. package/dist/components/switch.cjs +1 -1
  318. package/dist/components/switch.es.js +1 -1
  319. package/dist/components/table.cjs +1 -1
  320. package/dist/components/table.es.js +2 -2
  321. package/dist/components/tag-group.cjs +1 -1
  322. package/dist/components/tag-group.es.js +1 -1
  323. package/dist/components/text-input.cjs +1 -1
  324. package/dist/components/text-input.es.js +1 -1
  325. package/dist/components/text.cjs +1 -1
  326. package/dist/components/text.es.js +1 -1
  327. package/dist/components/time-input.cjs +1 -1
  328. package/dist/components/time-input.es.js +1 -1
  329. package/dist/components/toggle-button-group.cjs +1 -1
  330. package/dist/components/toggle-button-group.es.js +1 -1
  331. package/dist/components/toggle-button.cjs +1 -1
  332. package/dist/components/toggle-button.es.js +1 -1
  333. package/dist/components/toolbar.cjs +1 -1
  334. package/dist/components/toolbar.es.js +1 -1
  335. package/dist/components/tooltip.cjs +1 -1
  336. package/dist/components/tooltip.es.js +1 -1
  337. package/dist/components.d.ts +35 -35
  338. package/dist/data-table.d.ts +35 -35
  339. package/dist/index.cjs +1 -1
  340. package/dist/index.cjs.map +1 -1
  341. package/dist/index.d.ts +35 -35
  342. package/dist/index.es.js +54 -54
  343. package/package.json +1 -1
  344. package/dist/chunks/accordion-Be--VNW6.cjs.js +0 -2
  345. package/dist/chunks/alert-DF3J6Yj7.cjs.js +0 -2
  346. package/dist/chunks/avatar-DEAravTR.cjs.js +0 -2
  347. package/dist/chunks/avatar.recipe-CQivdbFs.cjs.js +0 -2
  348. package/dist/chunks/badge-BjhZ-byo.cjs.js +0 -2
  349. package/dist/chunks/box-BK_2R49p.es.js +0 -13
  350. package/dist/chunks/box-BK_2R49p.es.js.map +0 -1
  351. package/dist/chunks/box-BwCVnAwb.cjs.js +0 -2
  352. package/dist/chunks/box-BwCVnAwb.cjs.js.map +0 -1
  353. package/dist/chunks/button-BfmWlfwH.cjs.js +0 -2
  354. package/dist/chunks/button.recipe-ClPhJ93N.cjs.js +0 -2
  355. package/dist/chunks/calendar-BgHBd6Dh.cjs.js +0 -2
  356. package/dist/chunks/card-DgvP36g1.cjs.js +0 -2
  357. package/dist/chunks/checkbox-BbdENF1i.cjs.js +0 -2
  358. package/dist/chunks/code-C3WbF6Qh.cjs.js +0 -2
  359. package/dist/chunks/code-C3WbF6Qh.cjs.js.map +0 -1
  360. package/dist/chunks/code-DM_AtVy-.es.js +0 -8
  361. package/dist/chunks/code-DM_AtVy-.es.js.map +0 -1
  362. package/dist/chunks/combobox-DIKvq4tw.cjs.js +0 -2
  363. package/dist/chunks/config-Mt8_uyhI.cjs.js +0 -2
  364. package/dist/chunks/config-Mt8_uyhI.cjs.js.map +0 -1
  365. package/dist/chunks/config-ufbQ08Vi.es.js +0 -6
  366. package/dist/chunks/config-ufbQ08Vi.es.js.map +0 -1
  367. package/dist/chunks/create-recipe-context-CrNaylZN.es.js +0 -62
  368. package/dist/chunks/create-recipe-context-CrNaylZN.es.js.map +0 -1
  369. package/dist/chunks/create-recipe-context-bXYFTZLs.cjs.js +0 -2
  370. package/dist/chunks/create-recipe-context-bXYFTZLs.cjs.js.map +0 -1
  371. package/dist/chunks/create-slot-recipe-context--T0CaFjW.es.js +0 -104
  372. package/dist/chunks/create-slot-recipe-context--T0CaFjW.es.js.map +0 -1
  373. package/dist/chunks/create-slot-recipe-context-CimocFDH.cjs.js +0 -2
  374. package/dist/chunks/create-slot-recipe-context-CimocFDH.cjs.js.map +0 -1
  375. package/dist/chunks/data-table-CWSmm1Cq.es.js.map +0 -1
  376. package/dist/chunks/data-table-Cenvhz5D.cjs.js +0 -2
  377. package/dist/chunks/data-table-Cenvhz5D.cjs.js.map +0 -1
  378. package/dist/chunks/date-input-BR6daiWa.es.js +0 -17
  379. package/dist/chunks/date-input-CKu2_a2x.cjs.js +0 -2
  380. package/dist/chunks/date-picker-DQ6_2mzc.cjs.js +0 -2
  381. package/dist/chunks/date-range-picker-i33UHqUE.cjs.js +0 -2
  382. package/dist/chunks/dialog-BQa_NWSr.cjs.js +0 -2
  383. package/dist/chunks/dialog-BQa_NWSr.cjs.js.map +0 -1
  384. package/dist/chunks/dialog-D4u5so0e.es.js +0 -1912
  385. package/dist/chunks/dialog-D4u5so0e.es.js.map +0 -1
  386. package/dist/chunks/divider-DU351gdE.cjs.js +0 -2
  387. package/dist/chunks/empty-B5_AO6Pg.cjs.js +0 -2
  388. package/dist/chunks/empty-B5_AO6Pg.cjs.js.map +0 -1
  389. package/dist/chunks/empty-D7ZFmvo6.es.js +0 -8
  390. package/dist/chunks/empty-D7ZFmvo6.es.js.map +0 -1
  391. package/dist/chunks/factory-CVGqU9CD.cjs.js +0 -3
  392. package/dist/chunks/factory-CVGqU9CD.cjs.js.map +0 -1
  393. package/dist/chunks/factory-DmIX2puY.es.js +0 -269
  394. package/dist/chunks/factory-DmIX2puY.es.js.map +0 -1
  395. package/dist/chunks/flex-BFC_f5BH.es.js +0 -40
  396. package/dist/chunks/flex-BFC_f5BH.es.js.map +0 -1
  397. package/dist/chunks/flex-yqydM5z_.cjs.js +0 -2
  398. package/dist/chunks/flex-yqydM5z_.cjs.js.map +0 -1
  399. package/dist/chunks/grid-B3Ggy_FW.es.js +0 -14
  400. package/dist/chunks/grid-CXpKN2OR.cjs.js +0 -2
  401. package/dist/chunks/grid-item-CGwfSnm7.cjs.js +0 -2
  402. package/dist/chunks/grid-item-CGwfSnm7.cjs.js.map +0 -1
  403. package/dist/chunks/grid-item-DuAynDd1.es.js +0 -78
  404. package/dist/chunks/grid-item-DuAynDd1.es.js.map +0 -1
  405. package/dist/chunks/icon-DHoLo7_S.cjs.js +0 -2
  406. package/dist/chunks/image-B3ISQSVL.cjs.js +0 -2
  407. package/dist/chunks/image-B3ISQSVL.cjs.js.map +0 -1
  408. package/dist/chunks/image-CwcCZREa.es.js +0 -22
  409. package/dist/chunks/image-CwcCZREa.es.js.map +0 -1
  410. package/dist/chunks/image-MeWmLoV0.es.js +0 -8
  411. package/dist/chunks/image-bt28epM5.cjs.js +0 -2
  412. package/dist/chunks/index-46Tt2Ww4.es.js +0 -8
  413. package/dist/chunks/index-46Tt2Ww4.es.js.map +0 -1
  414. package/dist/chunks/index-BYEAMD8A.cjs.js +0 -2
  415. package/dist/chunks/index-BYEAMD8A.cjs.js.map +0 -1
  416. package/dist/chunks/index-Dvel3Oj5.es.js.map +0 -1
  417. package/dist/chunks/index-sFOzzmTG.cjs.js +0 -4
  418. package/dist/chunks/kbd-Bc97Bwq3.es.js +0 -16
  419. package/dist/chunks/kbd-BlZ2RGfa.cjs.js +0 -2
  420. package/dist/chunks/kbd.recipe-9kxAU5ro.cjs.js +0 -2
  421. package/dist/chunks/link-DzUonoQg.cjs.js +0 -2
  422. package/dist/chunks/link.recipe-BfCxtKjL.cjs.js +0 -2
  423. package/dist/chunks/list-BTkkDy6B.es.js +0 -23
  424. package/dist/chunks/list-BTkkDy6B.es.js.map +0 -1
  425. package/dist/chunks/list-DokC0Ks-.cjs.js +0 -2
  426. package/dist/chunks/list-DokC0Ks-.cjs.js.map +0 -1
  427. package/dist/chunks/loading-spinner-VVQyl725.cjs.js +0 -2
  428. package/dist/chunks/menu-CImIQ6uJ.cjs.js +0 -2
  429. package/dist/chunks/multiline-text-input-jdvlKAq1.cjs.js +0 -12
  430. package/dist/chunks/namespace---Td8pR2.es.js +0 -74
  431. package/dist/chunks/namespace---Td8pR2.es.js.map +0 -1
  432. package/dist/chunks/namespace-CpLmDcCq.cjs.js +0 -2
  433. package/dist/chunks/namespace-CpLmDcCq.cjs.js.map +0 -1
  434. package/dist/chunks/nimbus-provider-CBZCiFEH.cjs.js +0 -2
  435. package/dist/chunks/number-input-CnOvkmap.cjs.js +0 -2
  436. package/dist/chunks/progress-bar-CByPgKbP.cjs.js +0 -2
  437. package/dist/chunks/provider-CHFgwvsP.es.js +0 -989
  438. package/dist/chunks/provider-CHFgwvsP.es.js.map +0 -1
  439. package/dist/chunks/provider-DFlBEH6q.cjs.js +0 -16
  440. package/dist/chunks/provider-DFlBEH6q.cjs.js.map +0 -1
  441. package/dist/chunks/radio-input-VMfD6a_K.cjs.js +0 -2
  442. package/dist/chunks/range-calendar-CnaQY0pH.cjs.js +0 -2
  443. package/dist/chunks/select-DT9EbJgb.cjs.js +0 -2
  444. package/dist/chunks/simple-grid-B7BgfVAS.cjs.js +0 -2
  445. package/dist/chunks/simple-grid-B7BgfVAS.cjs.js.map +0 -1
  446. package/dist/chunks/simple-grid-C6GRMtip.es.js +0 -38
  447. package/dist/chunks/simple-grid-C6GRMtip.es.js.map +0 -1
  448. package/dist/chunks/stack-BG0j9HvT.cjs.js +0 -2
  449. package/dist/chunks/stack-BG0j9HvT.cjs.js.map +0 -1
  450. package/dist/chunks/stack-QzuqKTKb.es.js +0 -89
  451. package/dist/chunks/stack-QzuqKTKb.es.js.map +0 -1
  452. package/dist/chunks/switch-kNksAQM3.cjs.js +0 -2
  453. package/dist/chunks/tag-group-iRBYcxt6.cjs.js +0 -2
  454. package/dist/chunks/text-DSjt3Sqv.es.js +0 -26
  455. package/dist/chunks/text-DSjt3Sqv.es.js.map +0 -1
  456. package/dist/chunks/text-Dg1sFCuC.cjs.js +0 -2
  457. package/dist/chunks/text-Dg1sFCuC.cjs.js.map +0 -1
  458. package/dist/chunks/text-input-D7SdSWpG.cjs.js +0 -2
  459. package/dist/chunks/text-input-Dinn4J2V.es.js +0 -19
  460. package/dist/chunks/time-input-BqTsxXMD.cjs.js +0 -2
  461. package/dist/chunks/toggle-button-CsVyAh8N.cjs.js +0 -2
  462. package/dist/chunks/toggle-button-RS4Z6UNN.es.js +0 -30
  463. package/dist/chunks/toggle-button-group-LddoXszz.cjs.js +0 -2
  464. package/dist/chunks/tooltip-CIAEV4_B.cjs.js +0 -2
  465. package/dist/chunks/tooltip.recipe-VqGdDqQD.cjs.js +0 -2
  466. package/dist/chunks/use-recipe-DuU8En0C.es.js +0 -13
  467. package/dist/chunks/use-recipe-DuU8En0C.es.js.map +0 -1
  468. package/dist/chunks/use-recipe-pbWWLWIq.cjs.js +0 -2
  469. package/dist/chunks/use-recipe-pbWWLWIq.cjs.js.map +0 -1
  470. package/dist/chunks/walk-object-CPVtf-bb.cjs.js +0 -2
  471. package/dist/chunks/walk-object-CPVtf-bb.cjs.js.map +0 -1
  472. package/dist/chunks/walk-object-Dpb8i9wi.es.js +0 -27
  473. package/dist/chunks/walk-object-Dpb8i9wi.es.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"dialog-BQa_NWSr.cjs.js","sources":["../../../../node_modules/.pnpm/@zag-js+utils@1.22.1/node_modules/@zag-js/utils/dist/index.mjs","../../../../node_modules/.pnpm/@zag-js+dom-query@1.22.1/node_modules/@zag-js/dom-query/dist/index.mjs","../../../../node_modules/.pnpm/@zag-js+core@1.22.1/node_modules/@zag-js/core/dist/index.mjs","../../../../node_modules/.pnpm/@zag-js+types@1.22.1/node_modules/@zag-js/types/dist/index.mjs","../../../../node_modules/.pnpm/@zag-js+react@1.22.1_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@zag-js/react/dist/index.mjs","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/utils/compose-refs.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/utils/create-context.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/utils/create-split-props.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/utils/render-strategy.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/factory.js","../../../../node_modules/.pnpm/@zag-js+presence@1.22.1/node_modules/@zag-js/presence/dist/index.mjs","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/utils/use-event.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/presence/use-presence.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/dialog/use-dialog-context.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/dialog/dialog-backdrop.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/dialog/dialog-close-trigger.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/presence/use-presence-context.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/dialog/dialog-content.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/dialog/dialog-description.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/dialog/dialog-positioner.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/presence/split-presence-props.js","../../../../node_modules/.pnpm/@zag-js+anatomy@1.22.1/node_modules/@zag-js/anatomy/dist/index.mjs","../../../../node_modules/.pnpm/@zag-js+aria-hidden@1.22.1/node_modules/@zag-js/aria-hidden/dist/index.mjs","../../../../node_modules/.pnpm/@zag-js+interact-outside@1.22.1/node_modules/@zag-js/interact-outside/dist/index.mjs","../../../../node_modules/.pnpm/@zag-js+dismissable@1.22.1/node_modules/@zag-js/dismissable/dist/index.mjs","../../../../node_modules/.pnpm/@zag-js+focus-trap@1.22.1/node_modules/@zag-js/focus-trap/dist/index.mjs","../../../../node_modules/.pnpm/@zag-js+remove-scroll@1.22.1/node_modules/@zag-js/remove-scroll/dist/index.mjs","../../../../node_modules/.pnpm/@zag-js+dialog@1.22.1/node_modules/@zag-js/dialog/dist/index.mjs","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/providers/environment/use-environment-context.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/providers/locale/use-locale-context.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/dialog/use-dialog.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/dialog/dialog-root.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/dialog/dialog-title.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/dialog/dialog-trigger.js","../../../../node_modules/.pnpm/@chakra-ui+react@3.26.0_@emotion+react@11.14.0_@types+react@19.1.12_react@19.1.1__react_cde2bdb0fef9fb736bd8b62efad0d89e/node_modules/@chakra-ui/react/dist/esm/components/dialog/dialog.js","../../../../node_modules/.pnpm/@ark-ui+react@5.22.0_react-dom@19.1.1_react@19.1.1__react@19.1.1/node_modules/@ark-ui/react/dist/components/portal/portal.js","../../src/components/dialog/dialog.tsx"],"sourcesContent":["// src/array.ts\nfunction toArray(v) {\n if (v == null) return [];\n return Array.isArray(v) ? v : [v];\n}\nvar fromLength = (length) => Array.from(Array(length).keys());\nvar first = (v) => v[0];\nvar last = (v) => v[v.length - 1];\nvar isEmpty = (v) => v.length === 0;\nvar has = (v, t) => v.indexOf(t) !== -1;\nvar add = (v, ...items) => v.concat(items);\nvar remove = (v, ...items) => v.filter((t) => !items.includes(t));\nvar removeAt = (v, i) => v.filter((_, idx) => idx !== i);\nvar insertAt = (v, i, ...items) => [...v.slice(0, i), ...items, ...v.slice(i)];\nvar uniq = (v) => Array.from(new Set(v));\nvar diff = (a, b) => {\n const set = new Set(b);\n return a.filter((t) => !set.has(t));\n};\nvar addOrRemove = (v, item) => has(v, item) ? remove(v, item) : add(v, item);\nfunction clear(v) {\n while (v.length > 0) v.pop();\n return v;\n}\nfunction nextIndex(v, idx, opts = {}) {\n const { step = 1, loop = true } = opts;\n const next2 = idx + step;\n const len = v.length;\n const last2 = len - 1;\n if (idx === -1) return step > 0 ? 0 : last2;\n if (next2 < 0) return loop ? last2 : 0;\n if (next2 >= len) return loop ? 0 : idx > len ? len : idx;\n return next2;\n}\nfunction next(v, idx, opts = {}) {\n return v[nextIndex(v, idx, opts)];\n}\nfunction prevIndex(v, idx, opts = {}) {\n const { step = 1, loop = true } = opts;\n return nextIndex(v, idx, { step: -step, loop });\n}\nfunction prev(v, index, opts = {}) {\n return v[prevIndex(v, index, opts)];\n}\nfunction chunk(v, size) {\n return v.reduce((rows, value, index) => {\n if (index % size === 0) rows.push([value]);\n else last(rows)?.push(value);\n return rows;\n }, []);\n}\nfunction flatArray(arr) {\n return arr.reduce((flat, item) => {\n if (Array.isArray(item)) {\n return flat.concat(flatArray(item));\n }\n return flat.concat(item);\n }, []);\n}\nfunction partition(arr, fn) {\n return arr.reduce(\n ([pass, fail], value) => {\n if (fn(value)) pass.push(value);\n else fail.push(value);\n return [pass, fail];\n },\n [[], []]\n );\n}\n\n// src/equal.ts\nvar isArrayLike = (value) => value?.constructor.name === \"Array\";\nvar isArrayEqual = (a, b) => {\n if (a.length !== b.length) return false;\n for (let i = 0; i < a.length; i++) {\n if (!isEqual(a[i], b[i])) return false;\n }\n return true;\n};\nvar isEqual = (a, b) => {\n if (Object.is(a, b)) return true;\n if (a == null && b != null || a != null && b == null) return false;\n if (typeof a?.isEqual === \"function\" && typeof b?.isEqual === \"function\") {\n return a.isEqual(b);\n }\n if (typeof a === \"function\" && typeof b === \"function\") {\n return a.toString() === b.toString();\n }\n if (isArrayLike(a) && isArrayLike(b)) {\n return isArrayEqual(Array.from(a), Array.from(b));\n }\n if (!(typeof a === \"object\") || !(typeof b === \"object\")) return false;\n const keys = Object.keys(b ?? /* @__PURE__ */ Object.create(null));\n const length = keys.length;\n for (let i = 0; i < length; i++) {\n const hasKey = Reflect.has(a, keys[i]);\n if (!hasKey) return false;\n }\n for (let i = 0; i < length; i++) {\n const key = keys[i];\n if (!isEqual(a[key], b[key])) return false;\n }\n return true;\n};\n\n// src/guard.ts\nvar isDev = () => process.env.NODE_ENV !== \"production\";\nvar isArray = (v) => Array.isArray(v);\nvar isBoolean = (v) => v === true || v === false;\nvar isObjectLike = (v) => v != null && typeof v === \"object\";\nvar isObject = (v) => isObjectLike(v) && !isArray(v);\nvar isNumber = (v) => typeof v === \"number\" && !Number.isNaN(v);\nvar isString = (v) => typeof v === \"string\";\nvar isFunction = (v) => typeof v === \"function\";\nvar isNull = (v) => v == null;\nvar hasProp = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);\nvar baseGetTag = (v) => Object.prototype.toString.call(v);\nvar fnToString = Function.prototype.toString;\nvar objectCtorString = fnToString.call(Object);\nvar isPlainObject = (v) => {\n if (!isObjectLike(v) || baseGetTag(v) != \"[object Object]\" || isFrameworkElement(v)) return false;\n const proto = Object.getPrototypeOf(v);\n if (proto === null) return true;\n const Ctor = hasProp(proto, \"constructor\") && proto.constructor;\n return typeof Ctor == \"function\" && Ctor instanceof Ctor && fnToString.call(Ctor) == objectCtorString;\n};\nvar isReactElement = (x) => typeof x === \"object\" && x !== null && \"$$typeof\" in x && \"props\" in x;\nvar isVueElement = (x) => typeof x === \"object\" && x !== null && \"__v_isVNode\" in x;\nvar isFrameworkElement = (x) => isReactElement(x) || isVueElement(x);\n\n// src/functions.ts\nvar runIfFn = (v, ...a) => {\n const res = typeof v === \"function\" ? v(...a) : v;\n return res ?? void 0;\n};\nvar cast = (v) => v;\nvar identity = (v) => v();\nvar noop = () => {\n};\nvar callAll = (...fns) => (...a) => {\n fns.forEach(function(fn) {\n fn?.(...a);\n });\n};\nvar uuid = /* @__PURE__ */ (() => {\n let id = 0;\n return () => {\n id++;\n return id.toString(36);\n };\n})();\nfunction match(key, record, ...args) {\n if (key in record) {\n const fn = record[key];\n return isFunction(fn) ? fn(...args) : fn;\n }\n const error = new Error(`No matching key: ${JSON.stringify(key)} in ${JSON.stringify(Object.keys(record))}`);\n Error.captureStackTrace?.(error, match);\n throw error;\n}\nvar tryCatch = (fn, fallback) => {\n try {\n return fn();\n } catch (error) {\n if (error instanceof Error) {\n Error.captureStackTrace?.(error, tryCatch);\n }\n return fallback?.();\n }\n};\nfunction throttle(fn, wait = 0) {\n let lastCall = 0;\n let timeout = null;\n return ((...args) => {\n const now = Date.now();\n const timeSinceLastCall = now - lastCall;\n if (timeSinceLastCall >= wait) {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n fn(...args);\n lastCall = now;\n } else if (!timeout) {\n timeout = setTimeout(() => {\n fn(...args);\n lastCall = Date.now();\n timeout = null;\n }, wait - timeSinceLastCall);\n }\n });\n}\nfunction debounce(fn, wait = 0) {\n let timeout = null;\n return ((...args) => {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n timeout = setTimeout(() => {\n fn(...args);\n }, wait);\n });\n}\n\n// src/number.ts\nvar { floor, abs, round, min, max, pow, sign } = Math;\nvar isNaN = (v) => Number.isNaN(v);\nvar nan = (v) => isNaN(v) ? 0 : v;\nvar mod = (v, m) => (v % m + m) % m;\nvar wrap = (v, vmax) => (v % vmax + vmax) % vmax;\nvar getMinValueAtIndex = (i, v, vmin) => i === 0 ? vmin : v[i - 1];\nvar getMaxValueAtIndex = (i, v, vmax) => i === v.length - 1 ? vmax : v[i + 1];\nvar isValueAtMax = (v, vmax) => nan(v) >= vmax;\nvar isValueAtMin = (v, vmin) => nan(v) <= vmin;\nvar isValueWithinRange = (v, vmin, vmax) => {\n const value = nan(v);\n const minCheck = vmin == null || value >= vmin;\n const maxCheck = vmax == null || value <= vmax;\n return minCheck && maxCheck;\n};\nvar roundValue = (v, vmin, step) => round((nan(v) - vmin) / step) * step + vmin;\nvar clampValue = (v, vmin, vmax) => min(max(nan(v), vmin), vmax);\nvar clampPercent = (v) => clampValue(v, 0, 1);\nvar getValuePercent = (v, vmin, vmax) => (nan(v) - vmin) / (vmax - vmin);\nvar getPercentValue = (p, vmin, vmax, step) => clampValue(roundValue(p * (vmax - vmin) + vmin, vmin, step), vmin, vmax);\nvar roundToStepPrecision = (v, step) => {\n let rv = v;\n let ss = step.toString();\n let pi = ss.indexOf(\".\");\n let p = pi >= 0 ? ss.length - pi : 0;\n if (p > 0) {\n let pw = pow(10, p);\n rv = round(rv * pw) / pw;\n }\n return rv;\n};\nvar roundToDpr = (v, dpr) => typeof dpr === \"number\" ? floor(v * dpr + 0.5) / dpr : round(v);\nvar snapValueToStep = (v, vmin, vmax, step) => {\n const min2 = vmin != null ? Number(vmin) : 0;\n const max2 = Number(vmax);\n const remainder = (v - min2) % step;\n let snapped = abs(remainder) * 2 >= step ? v + sign(remainder) * (step - abs(remainder)) : v - remainder;\n snapped = roundToStepPrecision(snapped, step);\n if (!isNaN(min2) && snapped < min2) {\n snapped = min2;\n } else if (!isNaN(max2) && snapped > max2) {\n const stepsInRange = floor((max2 - min2) / step);\n const largestValidStep = min2 + stepsInRange * step;\n snapped = stepsInRange <= 0 || largestValidStep < min2 ? max2 : largestValidStep;\n }\n return roundToStepPrecision(snapped, step);\n};\nvar setValueAtIndex = (vs, i, v) => {\n if (vs[i] === v) return vs;\n return [...vs.slice(0, i), v, ...vs.slice(i + 1)];\n};\nfunction getValueSetterAtIndex(index, ctx) {\n const minValueAtIndex = getMinValueAtIndex(index, ctx.values, ctx.min);\n const maxValueAtIndex = getMaxValueAtIndex(index, ctx.values, ctx.max);\n let nextValues = ctx.values.slice();\n return function setValue(value) {\n let nextValue = snapValueToStep(value, minValueAtIndex, maxValueAtIndex, ctx.step);\n nextValues = setValueAtIndex(nextValues, index, value);\n nextValues[index] = nextValue;\n return nextValues;\n };\n}\nfunction getNextStepValue(index, ctx) {\n const nextValue = ctx.values[index] + ctx.step;\n return getValueSetterAtIndex(index, ctx)(nextValue);\n}\nfunction getPreviousStepValue(index, ctx) {\n const nextValue = ctx.values[index] - ctx.step;\n return getValueSetterAtIndex(index, ctx)(nextValue);\n}\nvar getClosestValueIndex = (vs, t) => {\n let i = vs.findIndex((v) => t - v < 0);\n if (i === 0) return i;\n if (i === -1) return vs.length - 1;\n let vLeft = vs[i - 1];\n let vRight = vs[i];\n if (abs(vLeft - t) < abs(vRight - t)) return i - 1;\n return i;\n};\nvar getClosestValue = (vs, t) => vs[getClosestValueIndex(vs, t)];\nvar getValueRanges = (vs, vmin, vmax, gap) => vs.map((v, i) => ({\n min: i === 0 ? vmin : vs[i - 1] + gap,\n max: i === vs.length - 1 ? vmax : vs[i + 1] - gap,\n value: v\n}));\nvar getValueTransformer = (va, vb) => {\n const [a, b] = va;\n const [c, d] = vb;\n return (v) => a === b || c === d ? c : c + (d - c) / (b - a) * (v - a);\n};\nvar toFixedNumber = (v, d = 0, b = 10) => {\n const pow2 = Math.pow(b, d);\n return round(v * pow2) / pow2;\n};\nvar countDecimals = (value) => {\n if (!Number.isFinite(value)) return 0;\n let e = 1, p = 0;\n while (Math.round(value * e) / e !== value) {\n e *= 10;\n p += 1;\n }\n return p;\n};\nvar decimalOp = (a, op, b) => {\n let result = op === \"+\" ? a + b : a - b;\n if (a % 1 !== 0 || b % 1 !== 0) {\n const multiplier = 10 ** Math.max(countDecimals(a), countDecimals(b));\n a = Math.round(a * multiplier);\n b = Math.round(b * multiplier);\n result = op === \"+\" ? a + b : a - b;\n result /= multiplier;\n }\n return result;\n};\nvar incrementValue = (v, s) => decimalOp(nan(v), \"+\", s);\nvar decrementValue = (v, s) => decimalOp(nan(v), \"-\", s);\nvar toPx = (v) => v != null ? `${v}px` : void 0;\n\n// src/object.ts\nfunction compact(obj) {\n if (!isPlainObject(obj) || obj === void 0) return obj;\n const keys = Reflect.ownKeys(obj).filter((key) => typeof key === \"string\");\n const filtered = {};\n for (const key of keys) {\n const value = obj[key];\n if (value !== void 0) {\n filtered[key] = compact(value);\n }\n }\n return filtered;\n}\nvar json = (v) => JSON.parse(JSON.stringify(v));\nfunction pick(obj, keys) {\n const filtered = {};\n for (const key of keys) {\n const value = obj[key];\n if (value !== void 0) {\n filtered[key] = value;\n }\n }\n return filtered;\n}\nfunction splitProps(props, keys) {\n const rest = {};\n const result = {};\n const keySet = new Set(keys);\n for (const key in props) {\n if (keySet.has(key)) {\n result[key] = props[key];\n } else {\n rest[key] = props[key];\n }\n }\n return [result, rest];\n}\nvar createSplitProps = (keys) => {\n return function split(props) {\n return splitProps(props, keys);\n };\n};\nfunction omit(obj, keys) {\n return createSplitProps(keys)(obj)[1];\n}\n\n// src/store.ts\nfunction createStore(initialState, compare = Object.is) {\n let state = { ...initialState };\n const listeners = /* @__PURE__ */ new Set();\n const subscribe = (listener) => {\n listeners.add(listener);\n return () => listeners.delete(listener);\n };\n const publish = () => {\n listeners.forEach((listener) => listener());\n };\n const get = (key) => {\n return state[key];\n };\n const set = (key, value) => {\n if (!compare(state[key], value)) {\n state[key] = value;\n publish();\n }\n };\n const update = (updates) => {\n let hasChanges = false;\n for (const key in updates) {\n const value = updates[key];\n if (value !== void 0 && !compare(state[key], value)) {\n state[key] = value;\n hasChanges = true;\n }\n }\n if (hasChanges) {\n publish();\n }\n };\n const snapshot = () => ({ ...state });\n return {\n subscribe,\n get,\n set,\n update,\n snapshot\n };\n}\n\n// src/timers.ts\nfunction setRafInterval(callback, interval) {\n let start = performance.now();\n let handle;\n function loop(now) {\n const delta = now - start;\n if (delta >= interval) {\n start = interval > 0 ? now - delta % interval : now;\n callback({ startMs: start, deltaMs: delta });\n }\n handle = requestAnimationFrame(loop);\n }\n handle = requestAnimationFrame(loop);\n return () => cancelAnimationFrame(handle);\n}\nfunction setRafTimeout(callback, delay) {\n const start = performance.now();\n let handle;\n function loop(now) {\n const delta = now - start;\n if (delta >= delay) {\n callback();\n return;\n }\n handle = requestAnimationFrame(loop);\n }\n handle = requestAnimationFrame(loop);\n return () => cancelAnimationFrame(handle);\n}\n\n// src/warning.ts\nfunction warn(...a) {\n const m = a.length === 1 ? a[0] : a[1];\n const c = a.length === 2 ? a[0] : true;\n if (c && process.env.NODE_ENV !== \"production\") {\n console.warn(m);\n }\n}\nfunction invariant(...a) {\n const m = a.length === 1 ? a[0] : a[1];\n const c = a.length === 2 ? a[0] : true;\n if (c && process.env.NODE_ENV !== \"production\") {\n throw new Error(m);\n }\n}\nfunction ensure(c, m) {\n if (c == null) throw new Error(m());\n}\nfunction ensureProps(props, keys, scope) {\n let missingKeys = [];\n for (const key of keys) {\n if (props[key] == null) missingKeys.push(key);\n }\n if (missingKeys.length > 0)\n throw new Error(`[zag-js${scope ? ` > ${scope}` : \"\"}] missing required props: ${missingKeys.join(\", \")}`);\n}\n\nexport { add, addOrRemove, callAll, cast, chunk, clampPercent, clampValue, clear, compact, createSplitProps, createStore, debounce, decrementValue, diff, ensure, ensureProps, first, flatArray, fromLength, getClosestValue, getClosestValueIndex, getMaxValueAtIndex, getMinValueAtIndex, getNextStepValue, getPercentValue, getPreviousStepValue, getValuePercent, getValueRanges, getValueSetterAtIndex, getValueTransformer, has, hasProp, identity, incrementValue, insertAt, invariant, isArray, isBoolean, isDev, isEmpty, isEqual, isFunction, isNaN, isNull, isNumber, isObject, isObjectLike, isPlainObject, isString, isValueAtMax, isValueAtMin, isValueWithinRange, json, last, match, mod, nan, next, nextIndex, noop, omit, partition, pick, prev, prevIndex, remove, removeAt, roundToDpr, roundToStepPrecision, roundValue, runIfFn, setRafInterval, setRafTimeout, setValueAtIndex, snapValueToStep, splitProps, throttle, toArray, toFixedNumber, toPx, tryCatch, uniq, uuid, warn, wrap };\n","// src/caret.ts\nfunction isCaretAtStart(input) {\n if (!input) return false;\n try {\n return input.selectionStart === 0 && input.selectionEnd === 0;\n } catch {\n return input.value === \"\";\n }\n}\nfunction setCaretToEnd(input) {\n if (!input) return;\n const start = input.selectionStart ?? 0;\n const end = input.selectionEnd ?? 0;\n if (Math.abs(end - start) !== 0) return;\n if (start !== 0) return;\n input.setSelectionRange(input.value.length, input.value.length);\n}\n\n// src/shared.ts\nvar clamp = (value) => Math.max(0, Math.min(1, value));\nvar wrap = (v, idx) => {\n return v.map((_, index) => v[(Math.max(idx, 0) + index) % v.length]);\n};\nvar pipe = (...fns) => (arg) => fns.reduce((acc, fn) => fn(acc), arg);\nvar noop = () => void 0;\nvar isObject = (v) => typeof v === \"object\" && v !== null;\nvar MAX_Z_INDEX = 2147483647;\nvar dataAttr = (guard) => guard ? \"\" : void 0;\nvar ariaAttr = (guard) => guard ? \"true\" : void 0;\n\n// src/node.ts\nvar ELEMENT_NODE = 1;\nvar DOCUMENT_NODE = 9;\nvar DOCUMENT_FRAGMENT_NODE = 11;\nvar isHTMLElement = (el) => isObject(el) && el.nodeType === ELEMENT_NODE && typeof el.nodeName === \"string\";\nvar isDocument = (el) => isObject(el) && el.nodeType === DOCUMENT_NODE;\nvar isWindow = (el) => isObject(el) && el === el.window;\nvar isVisualViewport = (el) => isObject(el) && el.constructor.name === \"VisualViewport\";\nvar getNodeName = (node) => {\n if (isHTMLElement(node)) return node.localName || \"\";\n return \"#document\";\n};\nfunction isRootElement(node) {\n return [\"html\", \"body\", \"#document\"].includes(getNodeName(node));\n}\nvar isNode = (el) => isObject(el) && el.nodeType !== void 0;\nvar isShadowRoot = (el) => isNode(el) && el.nodeType === DOCUMENT_FRAGMENT_NODE && \"host\" in el;\nvar isInputElement = (el) => isHTMLElement(el) && el.localName === \"input\";\nvar isAnchorElement = (el) => !!el?.matches(\"a[href]\");\nvar isElementVisible = (el) => {\n if (!isHTMLElement(el)) return false;\n return el.offsetWidth > 0 || el.offsetHeight > 0 || el.getClientRects().length > 0;\n};\nvar TEXTAREA_SELECT_REGEX = /(textarea|select)/;\nfunction isEditableElement(el) {\n if (el == null || !isHTMLElement(el)) return false;\n try {\n return isInputElement(el) && el.selectionStart != null || TEXTAREA_SELECT_REGEX.test(el.localName) || el.isContentEditable || el.getAttribute(\"contenteditable\") === \"true\" || el.getAttribute(\"contenteditable\") === \"\";\n } catch {\n return false;\n }\n}\nfunction contains(parent, child) {\n if (!parent || !child) return false;\n if (!isHTMLElement(parent) || !isHTMLElement(child)) return false;\n const rootNode = child.getRootNode?.();\n if (parent === child) return true;\n if (parent.contains(child)) return true;\n if (rootNode && isShadowRoot(rootNode)) {\n let next = child;\n while (next) {\n if (parent === next) return true;\n next = next.parentNode || next.host;\n }\n }\n return false;\n}\nfunction getDocument(el) {\n if (isDocument(el)) return el;\n if (isWindow(el)) return el.document;\n return el?.ownerDocument ?? document;\n}\nfunction getDocumentElement(el) {\n return getDocument(el).documentElement;\n}\nfunction getWindow(el) {\n if (isShadowRoot(el)) return getWindow(el.host);\n if (isDocument(el)) return el.defaultView ?? window;\n if (isHTMLElement(el)) return el.ownerDocument?.defaultView ?? window;\n return window;\n}\nfunction getActiveElement(rootNode) {\n let activeElement = rootNode.activeElement;\n while (activeElement?.shadowRoot) {\n const el = activeElement.shadowRoot.activeElement;\n if (el === activeElement) break;\n else activeElement = el;\n }\n return activeElement;\n}\nfunction getParentNode(node) {\n if (getNodeName(node) === \"html\") return node;\n const result = node.assignedSlot || node.parentNode || isShadowRoot(node) && node.host || getDocumentElement(node);\n return isShadowRoot(result) ? result.host : result;\n}\n\n// src/computed-style.ts\nvar styleCache = /* @__PURE__ */ new WeakMap();\nfunction getComputedStyle(el) {\n if (!styleCache.has(el)) {\n styleCache.set(el, getWindow(el).getComputedStyle(el));\n }\n return styleCache.get(el);\n}\n\n// src/data-url.ts\nfunction getDataUrl(svg, opts) {\n const { type, quality = 0.92, background } = opts;\n if (!svg) throw new Error(\"[zag-js > getDataUrl]: Could not find the svg element\");\n const win = getWindow(svg);\n const doc = win.document;\n const svgBounds = svg.getBoundingClientRect();\n const svgClone = svg.cloneNode(true);\n if (!svgClone.hasAttribute(\"viewBox\")) {\n svgClone.setAttribute(\"viewBox\", `0 0 ${svgBounds.width} ${svgBounds.height}`);\n }\n const serializer = new win.XMLSerializer();\n const source = '<?xml version=\"1.0\" standalone=\"no\"?>\\r\\n' + serializer.serializeToString(svgClone);\n const svgString = \"data:image/svg+xml;charset=utf-8,\" + encodeURIComponent(source);\n if (type === \"image/svg+xml\") {\n return Promise.resolve(svgString).then((str) => {\n svgClone.remove();\n return str;\n });\n }\n const dpr = win.devicePixelRatio || 1;\n const canvas = doc.createElement(\"canvas\");\n const image = new win.Image();\n image.src = svgString;\n canvas.width = svgBounds.width * dpr;\n canvas.height = svgBounds.height * dpr;\n const context = canvas.getContext(\"2d\");\n if (type === \"image/jpeg\" || background) {\n context.fillStyle = background || \"white\";\n context.fillRect(0, 0, canvas.width, canvas.height);\n }\n return new Promise((resolve) => {\n image.onload = () => {\n context?.drawImage(image, 0, 0, canvas.width, canvas.height);\n resolve(canvas.toDataURL(type, quality));\n svgClone.remove();\n };\n });\n}\n\n// src/platform.ts\nvar isDom = () => typeof document !== \"undefined\";\nfunction getPlatform() {\n const agent = navigator.userAgentData;\n return agent?.platform ?? navigator.platform;\n}\nfunction getUserAgent() {\n const ua2 = navigator.userAgentData;\n if (ua2 && Array.isArray(ua2.brands)) {\n return ua2.brands.map(({ brand, version }) => `${brand}/${version}`).join(\" \");\n }\n return navigator.userAgent;\n}\nvar pt = (v) => isDom() && v.test(getPlatform());\nvar ua = (v) => isDom() && v.test(getUserAgent());\nvar vn = (v) => isDom() && v.test(navigator.vendor);\nvar isTouchDevice = () => isDom() && !!navigator.maxTouchPoints;\nvar isIPhone = () => pt(/^iPhone/i);\nvar isIPad = () => pt(/^iPad/i) || isMac() && navigator.maxTouchPoints > 1;\nvar isIos = () => isIPhone() || isIPad();\nvar isApple = () => isMac() || isIos();\nvar isMac = () => pt(/^Mac/i);\nvar isSafari = () => isApple() && vn(/apple/i);\nvar isFirefox = () => ua(/Firefox/i);\nvar isChrome = () => ua(/Chrome/i);\nvar isWebKit = () => ua(/AppleWebKit/i) && !isChrome();\nvar isAndroid = () => ua(/Android/i);\n\n// src/event.ts\nfunction getBeforeInputValue(event) {\n const { selectionStart, selectionEnd, value } = event.currentTarget;\n return value.slice(0, selectionStart) + event.data + value.slice(selectionEnd);\n}\nfunction getComposedPath(event) {\n return event.composedPath?.() ?? event.nativeEvent?.composedPath?.();\n}\nfunction getEventTarget(event) {\n const composedPath = getComposedPath(event);\n return composedPath?.[0] ?? event.target;\n}\nvar isSelfTarget = (event) => {\n return contains(event.currentTarget, getEventTarget(event));\n};\nfunction isOpeningInNewTab(event) {\n const element = event.currentTarget;\n if (!element) return false;\n const validElement = element.matches(\"a[href], button[type='submit'], input[type='submit']\");\n if (!validElement) return false;\n const isMiddleClick = event.button === 1;\n const isModKeyClick = isCtrlOrMetaKey(event);\n return isMiddleClick || isModKeyClick;\n}\nfunction isDownloadingEvent(event) {\n const element = event.currentTarget;\n if (!element) return false;\n const localName = element.localName;\n if (!event.altKey) return false;\n if (localName === \"a\") return true;\n if (localName === \"button\" && element.type === \"submit\") return true;\n if (localName === \"input\" && element.type === \"submit\") return true;\n return false;\n}\nfunction isComposingEvent(event) {\n return getNativeEvent(event).isComposing || event.keyCode === 229;\n}\nfunction isKeyboardClick(e) {\n return e.detail === 0 || e.clientX === 0 && e.clientY === 0;\n}\nfunction isCtrlOrMetaKey(e) {\n if (isMac()) return e.metaKey;\n return e.ctrlKey;\n}\nfunction isPrintableKey(e) {\n return e.key.length === 1 && !e.ctrlKey && !e.metaKey;\n}\nfunction isVirtualPointerEvent(e) {\n return e.width === 0 && e.height === 0 || e.width === 1 && e.height === 1 && e.pressure === 0 && e.detail === 0 && e.pointerType === \"mouse\";\n}\nfunction isVirtualClick(e) {\n if (e.pointerType === \"\" && e.isTrusted) return true;\n if (isAndroid() && e.pointerType) {\n return e.type === \"click\" && e.buttons === 1;\n }\n return e.detail === 0 && !e.pointerType;\n}\nvar isLeftClick = (e) => e.button === 0;\nvar isContextMenuEvent = (e) => {\n return e.button === 2 || isMac() && e.ctrlKey && e.button === 0;\n};\nvar isModifierKey = (e) => e.ctrlKey || e.altKey || e.metaKey;\nvar isTouchEvent = (event) => \"touches\" in event && event.touches.length > 0;\nvar keyMap = {\n Up: \"ArrowUp\",\n Down: \"ArrowDown\",\n Esc: \"Escape\",\n \" \": \"Space\",\n \",\": \"Comma\",\n Left: \"ArrowLeft\",\n Right: \"ArrowRight\"\n};\nvar rtlKeyMap = {\n ArrowLeft: \"ArrowRight\",\n ArrowRight: \"ArrowLeft\"\n};\nfunction getEventKey(event, options = {}) {\n const { dir = \"ltr\", orientation = \"horizontal\" } = options;\n let key = event.key;\n key = keyMap[key] ?? key;\n const isRtl = dir === \"rtl\" && orientation === \"horizontal\";\n if (isRtl && key in rtlKeyMap) key = rtlKeyMap[key];\n return key;\n}\nfunction getNativeEvent(event) {\n return event.nativeEvent ?? event;\n}\nvar pageKeys = /* @__PURE__ */ new Set([\"PageUp\", \"PageDown\"]);\nvar arrowKeys = /* @__PURE__ */ new Set([\"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\"]);\nfunction getEventStep(event) {\n if (event.ctrlKey || event.metaKey) {\n return 0.1;\n } else {\n const isPageKey = pageKeys.has(event.key);\n const isSkipKey = isPageKey || event.shiftKey && arrowKeys.has(event.key);\n return isSkipKey ? 10 : 1;\n }\n}\nfunction getEventPoint(event, type = \"client\") {\n const point = isTouchEvent(event) ? event.touches[0] || event.changedTouches[0] : event;\n return { x: point[`${type}X`], y: point[`${type}Y`] };\n}\nvar addDomEvent = (target, eventName, handler, options) => {\n const node = typeof target === \"function\" ? target() : target;\n node?.addEventListener(eventName, handler, options);\n return () => {\n node?.removeEventListener(eventName, handler, options);\n };\n};\n\n// src/form.ts\nfunction getDescriptor(el, options) {\n const { type = \"HTMLInputElement\", property = \"value\" } = options;\n const proto = getWindow(el)[type].prototype;\n return Object.getOwnPropertyDescriptor(proto, property) ?? {};\n}\nfunction getElementType(el) {\n if (el.localName === \"input\") return \"HTMLInputElement\";\n if (el.localName === \"textarea\") return \"HTMLTextAreaElement\";\n if (el.localName === \"select\") return \"HTMLSelectElement\";\n}\nfunction setElementValue(el, value, property = \"value\") {\n if (!el) return;\n const type = getElementType(el);\n if (type) {\n const descriptor = getDescriptor(el, { type, property });\n descriptor.set?.call(el, value);\n }\n el.setAttribute(property, value);\n}\nfunction setElementChecked(el, checked) {\n if (!el) return;\n const descriptor = getDescriptor(el, { type: \"HTMLInputElement\", property: \"checked\" });\n descriptor.set?.call(el, checked);\n if (checked) el.setAttribute(\"checked\", \"\");\n else el.removeAttribute(\"checked\");\n}\nfunction dispatchInputValueEvent(el, options) {\n const { value, bubbles = true } = options;\n if (!el) return;\n const win = getWindow(el);\n if (!(el instanceof win.HTMLInputElement)) return;\n setElementValue(el, `${value}`);\n el.dispatchEvent(new win.Event(\"input\", { bubbles }));\n}\nfunction dispatchInputCheckedEvent(el, options) {\n const { checked, bubbles = true } = options;\n if (!el) return;\n const win = getWindow(el);\n if (!(el instanceof win.HTMLInputElement)) return;\n setElementChecked(el, checked);\n el.dispatchEvent(new win.Event(\"click\", { bubbles }));\n}\nfunction getClosestForm(el) {\n return isFormElement(el) ? el.form : el.closest(\"form\");\n}\nfunction isFormElement(el) {\n return el.matches(\"textarea, input, select, button\");\n}\nfunction trackFormReset(el, callback) {\n if (!el) return;\n const form = getClosestForm(el);\n const onReset = (e) => {\n if (e.defaultPrevented) return;\n callback();\n };\n form?.addEventListener(\"reset\", onReset, { passive: true });\n return () => form?.removeEventListener(\"reset\", onReset);\n}\nfunction trackFieldsetDisabled(el, callback) {\n const fieldset = el?.closest(\"fieldset\");\n if (!fieldset) return;\n callback(fieldset.disabled);\n const win = getWindow(fieldset);\n const obs = new win.MutationObserver(() => callback(fieldset.disabled));\n obs.observe(fieldset, {\n attributes: true,\n attributeFilter: [\"disabled\"]\n });\n return () => obs.disconnect();\n}\nfunction trackFormControl(el, options) {\n if (!el) return;\n const { onFieldsetDisabledChange, onFormReset } = options;\n const cleanups = [trackFormReset(el, onFormReset), trackFieldsetDisabled(el, onFieldsetDisabledChange)];\n return () => cleanups.forEach((cleanup) => cleanup?.());\n}\n\n// src/tabbable.ts\nvar isFrame = (el) => isHTMLElement(el) && el.tagName === \"IFRAME\";\nvar hasTabIndex = (el) => !Number.isNaN(parseInt(el.getAttribute(\"tabindex\") || \"0\", 10));\nvar hasNegativeTabIndex = (el) => parseInt(el.getAttribute(\"tabindex\") || \"0\", 10) < 0;\nvar focusableSelector = \"input:not([type='hidden']):not([disabled]), select:not([disabled]), textarea:not([disabled]), a[href], button:not([disabled]), [tabindex], iframe, object, embed, area[href], audio[controls], video[controls], [contenteditable]:not([contenteditable='false']), details > summary:first-of-type\";\nvar getFocusables = (container, includeContainer = false) => {\n if (!container) return [];\n const elements = Array.from(container.querySelectorAll(focusableSelector));\n const include = includeContainer == true || includeContainer == \"if-empty\" && elements.length === 0;\n if (include && isHTMLElement(container) && isFocusable(container)) {\n elements.unshift(container);\n }\n const focusableElements = elements.filter(isFocusable);\n focusableElements.forEach((element, i) => {\n if (isFrame(element) && element.contentDocument) {\n const frameBody = element.contentDocument.body;\n focusableElements.splice(i, 1, ...getFocusables(frameBody));\n }\n });\n return focusableElements;\n};\nfunction isFocusable(element) {\n if (!element || element.closest(\"[inert]\")) return false;\n return element.matches(focusableSelector) && isElementVisible(element);\n}\nfunction getFirstFocusable(container, includeContainer) {\n const [first] = getFocusables(container, includeContainer);\n return first || null;\n}\nfunction getTabbables(container, includeContainer) {\n if (!container) return [];\n const elements = Array.from(container.querySelectorAll(focusableSelector));\n const tabbableElements = elements.filter(isTabbable);\n if (includeContainer && isTabbable(container)) {\n tabbableElements.unshift(container);\n }\n tabbableElements.forEach((element, i) => {\n if (isFrame(element) && element.contentDocument) {\n const frameBody = element.contentDocument.body;\n const allFrameTabbable = getTabbables(frameBody);\n tabbableElements.splice(i, 1, ...allFrameTabbable);\n }\n });\n if (!tabbableElements.length && includeContainer) {\n return elements;\n }\n return tabbableElements;\n}\nfunction isTabbable(el) {\n if (el != null && el.tabIndex > 0) return true;\n return isFocusable(el) && !hasNegativeTabIndex(el);\n}\nfunction getFirstTabbable(container, includeContainer) {\n const [first] = getTabbables(container, includeContainer);\n return first || null;\n}\nfunction getLastTabbable(container, includeContainer) {\n const elements = getTabbables(container, includeContainer);\n return elements[elements.length - 1] || null;\n}\nfunction getTabbableEdges(container, includeContainer) {\n const elements = getTabbables(container, includeContainer);\n const first = elements[0] || null;\n const last = elements[elements.length - 1] || null;\n return [first, last];\n}\nfunction getNextTabbable(container, current) {\n const tabbables = getTabbables(container);\n const doc = container?.ownerDocument || document;\n const currentElement = current ?? doc.activeElement;\n if (!currentElement) return null;\n const index = tabbables.indexOf(currentElement);\n return tabbables[index + 1] || null;\n}\nfunction getTabIndex(node) {\n if (node.tabIndex < 0) {\n if ((/^(audio|video|details)$/.test(node.localName) || isEditableElement(node)) && !hasTabIndex(node)) {\n return 0;\n }\n }\n return node.tabIndex;\n}\n\n// src/initial-focus.ts\nfunction getInitialFocus(options) {\n const { root, getInitialEl, filter, enabled = true } = options;\n if (!enabled) return;\n let node = null;\n node || (node = typeof getInitialEl === \"function\" ? getInitialEl() : getInitialEl);\n node || (node = root?.querySelector(\"[data-autofocus],[autofocus]\"));\n if (!node) {\n const tabbables = getTabbables(root);\n node = filter ? tabbables.filter(filter)[0] : tabbables[0];\n }\n return node || root || void 0;\n}\nfunction isValidTabEvent(event) {\n const container = event.currentTarget;\n if (!container) return false;\n const [firstTabbable, lastTabbable] = getTabbableEdges(container);\n const doc = container.ownerDocument || document;\n if (doc.activeElement === firstTabbable && event.shiftKey) return false;\n if (doc.activeElement === lastTabbable && !event.shiftKey) return false;\n if (!firstTabbable && !lastTabbable) return false;\n return true;\n}\n\n// src/raf.ts\nfunction nextTick(fn) {\n const set = /* @__PURE__ */ new Set();\n function raf2(fn2) {\n const id = globalThis.requestAnimationFrame(fn2);\n set.add(() => globalThis.cancelAnimationFrame(id));\n }\n raf2(() => raf2(fn));\n return function cleanup() {\n set.forEach((fn2) => fn2());\n };\n}\nfunction raf(fn) {\n let cleanup;\n const id = globalThis.requestAnimationFrame(() => {\n cleanup = fn();\n });\n return () => {\n globalThis.cancelAnimationFrame(id);\n cleanup?.();\n };\n}\nfunction queueBeforeEvent(el, type, cb) {\n const cancelTimer = raf(() => {\n el.removeEventListener(type, exec, true);\n cb();\n });\n const exec = () => {\n cancelTimer();\n cb();\n };\n el.addEventListener(type, exec, { once: true, capture: true });\n return cancelTimer;\n}\n\n// src/mutation-observer.ts\nfunction observeAttributesImpl(node, options) {\n if (!node) return;\n const { attributes, callback: fn } = options;\n const win = node.ownerDocument.defaultView || window;\n const obs = new win.MutationObserver((changes) => {\n for (const change of changes) {\n if (change.type === \"attributes\" && change.attributeName && attributes.includes(change.attributeName)) {\n fn(change);\n }\n }\n });\n obs.observe(node, { attributes: true, attributeFilter: attributes });\n return () => obs.disconnect();\n}\nfunction observeAttributes(nodeOrFn, options) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = typeof nodeOrFn === \"function\" ? nodeOrFn() : nodeOrFn;\n cleanups.push(observeAttributesImpl(node, options));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\nfunction observeChildrenImpl(node, options) {\n const { callback: fn } = options;\n if (!node) return;\n const win = node.ownerDocument.defaultView || window;\n const obs = new win.MutationObserver(fn);\n obs.observe(node, { childList: true, subtree: true });\n return () => obs.disconnect();\n}\nfunction observeChildren(nodeOrFn, options) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = typeof nodeOrFn === \"function\" ? nodeOrFn() : nodeOrFn;\n cleanups.push(observeChildrenImpl(node, options));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\n\n// src/navigate.ts\nfunction clickIfLink(el) {\n const click = () => {\n const win = getWindow(el);\n el.dispatchEvent(new win.MouseEvent(\"click\"));\n };\n if (isFirefox()) {\n queueBeforeEvent(el, \"keyup\", click);\n } else {\n queueMicrotask(click);\n }\n}\n\n// src/overflow.ts\nfunction getNearestOverflowAncestor(el) {\n const parentNode = getParentNode(el);\n if (isRootElement(parentNode)) return getDocument(parentNode).body;\n if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) return parentNode;\n return getNearestOverflowAncestor(parentNode);\n}\nfunction getOverflowAncestors(el, list = []) {\n const scrollableAncestor = getNearestOverflowAncestor(el);\n const isBody = scrollableAncestor === el.ownerDocument.body;\n const win = getWindow(scrollableAncestor);\n if (isBody) {\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : []);\n }\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, []));\n}\nvar getElementRect = (el) => {\n if (isHTMLElement(el)) return el.getBoundingClientRect();\n if (isVisualViewport(el)) return { top: 0, left: 0, bottom: el.height, right: el.width };\n return { top: 0, left: 0, bottom: el.innerHeight, right: el.innerWidth };\n};\nfunction isInView(el, ancestor) {\n if (!isHTMLElement(el)) return true;\n const ancestorRect = getElementRect(ancestor);\n const elRect = el.getBoundingClientRect();\n return elRect.top >= ancestorRect.top && elRect.left >= ancestorRect.left && elRect.bottom <= ancestorRect.bottom && elRect.right <= ancestorRect.right;\n}\nvar OVERFLOW_RE = /auto|scroll|overlay|hidden|clip/;\nvar nonOverflowValues = /* @__PURE__ */ new Set([\"inline\", \"contents\"]);\nfunction isOverflowElement(el) {\n const win = getWindow(el);\n const { overflow, overflowX, overflowY, display } = win.getComputedStyle(el);\n return OVERFLOW_RE.test(overflow + overflowY + overflowX) && !nonOverflowValues.has(display);\n}\nfunction isScrollable(el) {\n return el.scrollHeight > el.clientHeight || el.scrollWidth > el.clientWidth;\n}\nfunction scrollIntoView(el, options) {\n const { rootEl, ...scrollOptions } = options || {};\n if (!el || !rootEl) return;\n if (!isOverflowElement(rootEl) || !isScrollable(rootEl)) return;\n el.scrollIntoView(scrollOptions);\n}\nfunction getScrollPosition(element) {\n if (isHTMLElement(element)) {\n return { scrollLeft: element.scrollLeft, scrollTop: element.scrollTop };\n }\n return { scrollLeft: element.scrollX, scrollTop: element.scrollY };\n}\n\n// src/point.ts\nfunction getRelativePoint(point, element) {\n const { left, top, width, height } = element.getBoundingClientRect();\n const offset = { x: point.x - left, y: point.y - top };\n const percent = { x: clamp(offset.x / width), y: clamp(offset.y / height) };\n function getPercentValue(options = {}) {\n const { dir = \"ltr\", orientation = \"horizontal\", inverted } = options;\n const invertX = typeof inverted === \"object\" ? inverted.x : inverted;\n const invertY = typeof inverted === \"object\" ? inverted.y : inverted;\n if (orientation === \"horizontal\") {\n return dir === \"rtl\" || invertX ? 1 - percent.x : percent.x;\n }\n return invertY ? 1 - percent.y : percent.y;\n }\n return { offset, percent, getPercentValue };\n}\n\n// src/pointer-lock.ts\nfunction requestPointerLock(doc, fn) {\n const body = doc.body;\n const supported = \"pointerLockElement\" in doc || \"mozPointerLockElement\" in doc;\n const isLocked = () => !!doc.pointerLockElement;\n function onPointerChange() {\n fn?.(isLocked());\n }\n function onPointerError(event) {\n if (isLocked()) fn?.(false);\n console.error(\"PointerLock error occurred:\", event);\n doc.exitPointerLock();\n }\n if (!supported) return;\n try {\n body.requestPointerLock();\n } catch {\n }\n const cleanup = [\n addDomEvent(doc, \"pointerlockchange\", onPointerChange, false),\n addDomEvent(doc, \"pointerlockerror\", onPointerError, false)\n ];\n return () => {\n cleanup.forEach((cleanup2) => cleanup2());\n doc.exitPointerLock();\n };\n}\n\n// src/text-selection.ts\nvar state = \"default\";\nvar userSelect = \"\";\nvar elementMap = /* @__PURE__ */ new WeakMap();\nfunction disableTextSelectionImpl(options = {}) {\n const { target, doc } = options;\n const docNode = doc ?? document;\n const rootEl = docNode.documentElement;\n if (isIos()) {\n if (state === \"default\") {\n userSelect = rootEl.style.webkitUserSelect;\n rootEl.style.webkitUserSelect = \"none\";\n }\n state = \"disabled\";\n } else if (target) {\n elementMap.set(target, target.style.userSelect);\n target.style.userSelect = \"none\";\n }\n return () => restoreTextSelection({ target, doc: docNode });\n}\nfunction restoreTextSelection(options = {}) {\n const { target, doc } = options;\n const docNode = doc ?? document;\n const rootEl = docNode.documentElement;\n if (isIos()) {\n if (state !== \"disabled\") return;\n state = \"restoring\";\n setTimeout(() => {\n nextTick(() => {\n if (state === \"restoring\") {\n if (rootEl.style.webkitUserSelect === \"none\") {\n rootEl.style.webkitUserSelect = userSelect || \"\";\n }\n userSelect = \"\";\n state = \"default\";\n }\n });\n }, 300);\n } else {\n if (target && elementMap.has(target)) {\n const prevUserSelect = elementMap.get(target);\n if (target.style.userSelect === \"none\") {\n target.style.userSelect = prevUserSelect ?? \"\";\n }\n if (target.getAttribute(\"style\") === \"\") {\n target.removeAttribute(\"style\");\n }\n elementMap.delete(target);\n }\n }\n}\nfunction disableTextSelection(options = {}) {\n const { defer, target, ...restOptions } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = typeof target === \"function\" ? target() : target;\n cleanups.push(disableTextSelectionImpl({ ...restOptions, target: node }));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\n\n// src/pointer-move.ts\nfunction trackPointerMove(doc, handlers) {\n const { onPointerMove, onPointerUp } = handlers;\n const handleMove = (event) => {\n const point = getEventPoint(event);\n const distance = Math.sqrt(point.x ** 2 + point.y ** 2);\n const moveBuffer = event.pointerType === \"touch\" ? 10 : 5;\n if (distance < moveBuffer) return;\n if (event.pointerType === \"mouse\" && event.button === 0) {\n onPointerUp();\n return;\n }\n onPointerMove({ point, event });\n };\n const cleanups = [\n addDomEvent(doc, \"pointermove\", handleMove, false),\n addDomEvent(doc, \"pointerup\", onPointerUp, false),\n addDomEvent(doc, \"pointercancel\", onPointerUp, false),\n addDomEvent(doc, \"contextmenu\", onPointerUp, false),\n disableTextSelection({ doc })\n ];\n return () => {\n cleanups.forEach((cleanup) => cleanup());\n };\n}\n\n// src/press.ts\nfunction trackPress(options) {\n const {\n pointerNode,\n keyboardNode = pointerNode,\n onPress,\n onPressStart,\n onPressEnd,\n isValidKey = (e) => e.key === \"Enter\"\n } = options;\n if (!pointerNode) return noop;\n const win = getWindow(pointerNode);\n const doc = getDocument(pointerNode);\n let removeStartListeners = noop;\n let removeEndListeners = noop;\n let removeAccessibleListeners = noop;\n const getInfo = (event) => ({\n point: getEventPoint(event),\n event\n });\n function startPress(event) {\n onPressStart?.(getInfo(event));\n }\n function cancelPress(event) {\n onPressEnd?.(getInfo(event));\n }\n const startPointerPress = (startEvent) => {\n removeEndListeners();\n const endPointerPress = (endEvent) => {\n const target = getEventTarget(endEvent);\n if (contains(pointerNode, target)) {\n onPress?.(getInfo(endEvent));\n } else {\n onPressEnd?.(getInfo(endEvent));\n }\n };\n const removePointerUpListener = addDomEvent(win, \"pointerup\", endPointerPress, { passive: !onPress, once: true });\n const removePointerCancelListener = addDomEvent(win, \"pointercancel\", cancelPress, {\n passive: !onPressEnd,\n once: true\n });\n removeEndListeners = pipe(removePointerUpListener, removePointerCancelListener);\n if (doc.activeElement === keyboardNode && startEvent.pointerType === \"mouse\") {\n startEvent.preventDefault();\n }\n startPress(startEvent);\n };\n const removePointerListener = addDomEvent(pointerNode, \"pointerdown\", startPointerPress, { passive: !onPressStart });\n const removeFocusListener = addDomEvent(keyboardNode, \"focus\", startAccessiblePress);\n removeStartListeners = pipe(removePointerListener, removeFocusListener);\n function startAccessiblePress() {\n const handleKeydown = (keydownEvent) => {\n if (!isValidKey(keydownEvent)) return;\n const handleKeyup = (keyupEvent) => {\n if (!isValidKey(keyupEvent)) return;\n const evt2 = new win.PointerEvent(\"pointerup\");\n const info = getInfo(evt2);\n onPress?.(info);\n onPressEnd?.(info);\n };\n removeEndListeners();\n removeEndListeners = addDomEvent(keyboardNode, \"keyup\", handleKeyup);\n const evt = new win.PointerEvent(\"pointerdown\");\n startPress(evt);\n };\n const handleBlur = () => {\n const evt = new win.PointerEvent(\"pointercancel\");\n cancelPress(evt);\n };\n const removeKeydownListener = addDomEvent(keyboardNode, \"keydown\", handleKeydown);\n const removeBlurListener = addDomEvent(keyboardNode, \"blur\", handleBlur);\n removeAccessibleListeners = pipe(removeKeydownListener, removeBlurListener);\n }\n return () => {\n removeStartListeners();\n removeEndListeners();\n removeAccessibleListeners();\n };\n}\n\n// src/proxy-tab-focus.ts\nfunction proxyTabFocusImpl(container, options = {}) {\n const { triggerElement, onFocus, onFocusEnter } = options;\n const doc = container?.ownerDocument || document;\n const body = doc.body;\n function onKeyDown(event) {\n if (event.key !== \"Tab\") return;\n let elementToFocus = null;\n const [firstTabbable, lastTabbable] = getTabbableEdges(container, true);\n const nextTabbableAfterTrigger = getNextTabbable(body, triggerElement);\n const noTabbableElements = !firstTabbable && !lastTabbable;\n if (event.shiftKey && nextTabbableAfterTrigger === doc.activeElement) {\n onFocusEnter?.();\n elementToFocus = lastTabbable;\n } else if (event.shiftKey && (doc.activeElement === firstTabbable || noTabbableElements)) {\n elementToFocus = triggerElement;\n } else if (!event.shiftKey && doc.activeElement === triggerElement) {\n onFocusEnter?.();\n elementToFocus = firstTabbable;\n } else if (!event.shiftKey && (doc.activeElement === lastTabbable || noTabbableElements)) {\n elementToFocus = nextTabbableAfterTrigger;\n }\n if (!elementToFocus) return;\n event.preventDefault();\n if (typeof onFocus === \"function\") {\n onFocus(elementToFocus);\n } else {\n elementToFocus.focus();\n }\n }\n return addDomEvent(doc, \"keydown\", onKeyDown, true);\n}\nfunction proxyTabFocus(container, options) {\n const { defer, triggerElement, ...restOptions } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = typeof container === \"function\" ? container() : container;\n const trigger = typeof triggerElement === \"function\" ? triggerElement() : triggerElement;\n cleanups.push(proxyTabFocusImpl(node, { triggerElement: trigger, ...restOptions }));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\n\n// src/query.ts\nfunction queryAll(root, selector) {\n return Array.from(root?.querySelectorAll(selector) ?? []);\n}\nfunction query(root, selector) {\n return root?.querySelector(selector) ?? null;\n}\nvar defaultItemToId = (v) => v.id;\nfunction itemById(v, id, itemToId = defaultItemToId) {\n return v.find((item) => itemToId(item) === id);\n}\nfunction indexOfId(v, id, itemToId = defaultItemToId) {\n const item = itemById(v, id, itemToId);\n return item ? v.indexOf(item) : -1;\n}\nfunction nextById(v, id, loop = true) {\n let idx = indexOfId(v, id);\n idx = loop ? (idx + 1) % v.length : Math.min(idx + 1, v.length - 1);\n return v[idx];\n}\nfunction prevById(v, id, loop = true) {\n let idx = indexOfId(v, id);\n if (idx === -1) return loop ? v[v.length - 1] : null;\n idx = loop ? (idx - 1 + v.length) % v.length : Math.max(0, idx - 1);\n return v[idx];\n}\n\n// src/resize-observer.ts\nfunction trackElementRect(elements, options) {\n const { onEntry, measure, box = \"border-box\" } = options;\n const elems = (Array.isArray(elements) ? elements : [elements]).filter(isHTMLElement);\n const win = getWindow(elems[0]);\n const trigger = (entries) => {\n const rects = elems.map((el) => measure(el));\n onEntry({ rects, entries });\n };\n trigger([]);\n const obs = new win.ResizeObserver(trigger);\n elems.forEach((el) => obs.observe(el, { box }));\n return () => obs.disconnect();\n}\n\n// src/scope.ts\nfunction createScope(methods) {\n const dom = {\n getRootNode: (ctx) => ctx.getRootNode?.() ?? document,\n getDoc: (ctx) => getDocument(dom.getRootNode(ctx)),\n getWin: (ctx) => dom.getDoc(ctx).defaultView ?? window,\n getActiveElement: (ctx) => getActiveElement(dom.getRootNode(ctx)),\n isActiveElement: (ctx, elem) => elem === dom.getActiveElement(ctx),\n getById: (ctx, id) => dom.getRootNode(ctx).getElementById(id),\n setValue: (elem, value) => {\n if (elem == null || value == null) return;\n setElementValue(elem, value.toString());\n }\n };\n return { ...dom, ...methods };\n}\n\n// src/searchable.ts\nvar sanitize = (str) => str.split(\"\").map((char) => {\n const code = char.charCodeAt(0);\n if (code > 0 && code < 128) return char;\n if (code >= 128 && code <= 255) return `/x${code.toString(16)}`.replace(\"/\", \"\\\\\");\n return \"\";\n}).join(\"\").trim();\nvar getValueText = (el) => {\n return sanitize(el.dataset?.valuetext ?? el.textContent ?? \"\");\n};\nvar match = (valueText, query2) => {\n return valueText.trim().toLowerCase().startsWith(query2.toLowerCase());\n};\nfunction getByText(v, text, currentId, itemToId = defaultItemToId) {\n const index = currentId ? indexOfId(v, currentId, itemToId) : -1;\n let items = currentId ? wrap(v, index) : v;\n const isSingleKey = text.length === 1;\n if (isSingleKey) {\n items = items.filter((item) => itemToId(item) !== currentId);\n }\n return items.find((item) => match(getValueText(item), text));\n}\n\n// src/set.ts\nfunction setAttribute(el, attr, v) {\n const prev = el.getAttribute(attr);\n const exists = prev != null;\n el.setAttribute(attr, v);\n return () => {\n if (!exists) {\n el.removeAttribute(attr);\n } else {\n el.setAttribute(attr, prev);\n }\n };\n}\nfunction setProperty(el, prop, v) {\n const exists = prop in el;\n const prev = el[prop];\n el[prop] = v;\n return () => {\n if (!exists) {\n delete el[prop];\n } else {\n el[prop] = prev;\n }\n };\n}\nfunction setStyle(el, style) {\n if (!el) return noop;\n const prev = Object.keys(style).reduce((acc, key) => {\n acc[key] = el.style.getPropertyValue(key);\n return acc;\n }, {});\n Object.assign(el.style, style);\n return () => {\n Object.assign(el.style, prev);\n if (el.style.length === 0) {\n el.removeAttribute(\"style\");\n }\n };\n}\nfunction setStyleProperty(el, prop, value) {\n if (!el) return noop;\n const prev = el.style.getPropertyValue(prop);\n el.style.setProperty(prop, value);\n return () => {\n el.style.setProperty(prop, prev);\n if (el.style.length === 0) {\n el.removeAttribute(\"style\");\n }\n };\n}\n\n// src/typeahead.ts\nfunction getByTypeaheadImpl(baseItems, options) {\n const { state: state2, activeId, key, timeout = 350, itemToId } = options;\n const search = state2.keysSoFar + key;\n const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n const query2 = isRepeated ? search[0] : search;\n let items = baseItems.slice();\n const next = getByText(items, query2, activeId, itemToId);\n function cleanup() {\n clearTimeout(state2.timer);\n state2.timer = -1;\n }\n function update(value) {\n state2.keysSoFar = value;\n cleanup();\n if (value !== \"\") {\n state2.timer = +setTimeout(() => {\n update(\"\");\n cleanup();\n }, timeout);\n }\n }\n update(search);\n return next;\n}\nvar getByTypeahead = /* @__PURE__ */ Object.assign(getByTypeaheadImpl, {\n defaultOptions: { keysSoFar: \"\", timer: -1 },\n isValidEvent: isValidTypeaheadEvent\n});\nfunction isValidTypeaheadEvent(event) {\n return event.key.length === 1 && !event.ctrlKey && !event.metaKey;\n}\n\n// src/visual-viewport.ts\nfunction trackVisualViewport(doc, fn) {\n const win = doc?.defaultView || window;\n const onResize = () => {\n fn?.(getViewportSize(win));\n };\n onResize();\n return addDomEvent(win.visualViewport ?? win, \"resize\", onResize);\n}\nfunction getViewportSize(win) {\n return {\n width: win.visualViewport?.width || win.innerWidth,\n height: win.visualViewport?.height || win.innerHeight\n };\n}\n\n// src/visually-hidden.ts\nvar visuallyHiddenStyle = {\n border: \"0\",\n clip: \"rect(0 0 0 0)\",\n height: \"1px\",\n margin: \"-1px\",\n overflow: \"hidden\",\n padding: \"0\",\n position: \"absolute\",\n width: \"1px\",\n whiteSpace: \"nowrap\",\n wordWrap: \"normal\"\n};\nfunction setVisuallyHidden(el) {\n Object.assign(el.style, visuallyHiddenStyle);\n}\n\n// src/wait-for.ts\nfunction waitForPromise(promise, controller, timeout) {\n const { signal } = controller;\n const wrappedPromise = new Promise((resolve, reject) => {\n const timeoutId = setTimeout(() => {\n reject(new Error(`Timeout of ${timeout}ms exceeded`));\n }, timeout);\n signal.addEventListener(\"abort\", () => {\n clearTimeout(timeoutId);\n reject(new Error(\"Promise aborted\"));\n });\n promise.then((result) => {\n if (!signal.aborted) {\n clearTimeout(timeoutId);\n resolve(result);\n }\n }).catch((error) => {\n if (!signal.aborted) {\n clearTimeout(timeoutId);\n reject(error);\n }\n });\n });\n const abort = () => controller.abort();\n return [wrappedPromise, abort];\n}\nfunction waitForElement(target, options) {\n const { timeout, rootNode } = options;\n const win = getWindow(rootNode);\n const doc = getDocument(rootNode);\n const controller = new win.AbortController();\n return waitForPromise(\n new Promise((resolve) => {\n const el = target();\n if (el) {\n resolve(el);\n return;\n }\n const observer = new win.MutationObserver(() => {\n const el2 = target();\n if (el2 && el2.isConnected) {\n observer.disconnect();\n resolve(el2);\n }\n });\n observer.observe(doc.body, {\n childList: true,\n subtree: true\n });\n }),\n controller,\n timeout\n );\n}\n\nexport { MAX_Z_INDEX, addDomEvent, ariaAttr, clickIfLink, contains, createScope, dataAttr, defaultItemToId, disableTextSelection, dispatchInputCheckedEvent, dispatchInputValueEvent, getActiveElement, getBeforeInputValue, getByText, getByTypeahead, getComputedStyle, getDataUrl, getDocument, getDocumentElement, getEventKey, getEventPoint, getEventStep, getEventTarget, getFirstFocusable, getFirstTabbable, getFocusables, getInitialFocus, getLastTabbable, getNativeEvent, getNearestOverflowAncestor, getNextTabbable, getNodeName, getOverflowAncestors, getParentNode, getPlatform, getRelativePoint, getScrollPosition, getTabIndex, getTabbableEdges, getTabbables, getUserAgent, getWindow, indexOfId, isAnchorElement, isAndroid, isApple, isCaretAtStart, isChrome, isComposingEvent, isContextMenuEvent, isCtrlOrMetaKey, isDocument, isDom, isDownloadingEvent, isEditableElement, isElementVisible, isFirefox, isFocusable, isHTMLElement, isIPad, isIPhone, isInView, isInputElement, isIos, isKeyboardClick, isLeftClick, isMac, isModifierKey, isNode, isOpeningInNewTab, isOverflowElement, isPrintableKey, isRootElement, isSafari, isSelfTarget, isShadowRoot, isTabbable, isTouchDevice, isTouchEvent, isValidTabEvent, isVirtualClick, isVirtualPointerEvent, isVisualViewport, isWebKit, isWindow, itemById, nextById, nextTick, observeAttributes, observeChildren, prevById, proxyTabFocus, query, queryAll, queueBeforeEvent, raf, requestPointerLock, restoreTextSelection, scrollIntoView, setAttribute, setCaretToEnd, setElementChecked, setElementValue, setProperty, setStyle, setStyleProperty, setVisuallyHidden, trackElementRect, trackFormControl, trackPointerMove, trackPress, trackVisualViewport, visuallyHiddenStyle, waitForElement, waitForPromise };\n","import { callAll, isEqual, isString } from '@zag-js/utils';\nimport { getActiveElement, getDocument } from '@zag-js/dom-query';\n\n// src/merge-props.ts\nvar clsx = (...args) => args.map((str) => str?.trim?.()).filter(Boolean).join(\" \");\nvar CSS_REGEX = /((?:--)?(?:\\w+-?)+)\\s*:\\s*([^;]*)/g;\nvar serialize = (style) => {\n const res = {};\n let match;\n while (match = CSS_REGEX.exec(style)) {\n res[match[1]] = match[2];\n }\n return res;\n};\nvar css = (a, b) => {\n if (isString(a)) {\n if (isString(b)) return `${a};${b}`;\n a = serialize(a);\n } else if (isString(b)) {\n b = serialize(b);\n }\n return Object.assign({}, a ?? {}, b ?? {});\n};\nfunction mergeProps(...args) {\n let result = {};\n for (let props of args) {\n for (let key in result) {\n if (key.startsWith(\"on\") && typeof result[key] === \"function\" && typeof props[key] === \"function\") {\n result[key] = callAll(props[key], result[key]);\n continue;\n }\n if (key === \"className\" || key === \"class\") {\n result[key] = clsx(result[key], props[key]);\n continue;\n }\n if (key === \"style\") {\n result[key] = css(result[key], props[key]);\n continue;\n }\n result[key] = props[key] !== void 0 ? props[key] : result[key];\n }\n for (let key in props) {\n if (result[key] === void 0) {\n result[key] = props[key];\n }\n }\n }\n return result;\n}\nfunction memo(getDeps, fn, opts) {\n let deps = [];\n let result;\n return (depArgs) => {\n const newDeps = getDeps(depArgs);\n const depsChanged = newDeps.length !== deps.length || newDeps.some((dep, index) => !isEqual(deps[index], dep));\n if (!depsChanged) return result;\n deps = newDeps;\n result = fn(...newDeps);\n opts?.onChange?.(result);\n return result;\n };\n}\n\n// src/create-machine.ts\nfunction createGuards() {\n return {\n and: (...guards) => {\n return function andGuard(params) {\n return guards.every((str) => params.guard(str));\n };\n },\n or: (...guards) => {\n return function orGuard(params) {\n return guards.some((str) => params.guard(str));\n };\n },\n not: (guard) => {\n return function notGuard(params) {\n return !params.guard(guard);\n };\n }\n };\n}\nfunction createMachine(config) {\n return config;\n}\nfunction setup() {\n return {\n guards: createGuards(),\n createMachine: (config) => {\n return createMachine(config);\n },\n choose: (transitions) => {\n return function chooseFn({ choose }) {\n return choose(transitions)?.actions;\n };\n }\n };\n}\n\n// src/types.ts\nvar MachineStatus = /* @__PURE__ */ ((MachineStatus2) => {\n MachineStatus2[\"NotStarted\"] = \"Not Started\";\n MachineStatus2[\"Started\"] = \"Started\";\n MachineStatus2[\"Stopped\"] = \"Stopped\";\n return MachineStatus2;\n})(MachineStatus || {});\nvar INIT_STATE = \"__init__\";\nfunction createScope(props) {\n const getRootNode = () => props.getRootNode?.() ?? document;\n const getDoc = () => getDocument(getRootNode());\n const getWin = () => getDoc().defaultView ?? window;\n const getActiveElementFn = () => getActiveElement(getRootNode());\n const isActiveElement = (elem) => elem === getActiveElementFn();\n const getById = (id) => getRootNode().getElementById(id);\n return {\n ...props,\n getRootNode,\n getDoc,\n getWin,\n getActiveElement: getActiveElementFn,\n isActiveElement,\n getById\n };\n}\n\nexport { INIT_STATE, MachineStatus, createGuards, createMachine, createScope, memo, mergeProps, setup };\n","// src/prop-types.ts\nfunction createNormalizer(fn) {\n return new Proxy({}, {\n get(_target, key) {\n if (key === \"style\")\n return (props) => {\n return fn({ style: props }).style;\n };\n return fn;\n }\n });\n}\n\n// src/create-props.ts\nvar createProps = () => (props) => Array.from(new Set(props));\n\nexport { createNormalizer, createProps };\n","\"use client\";\n\nimport { createScope, MachineStatus, INIT_STATE } from '@zag-js/core';\nexport { mergeProps } from '@zag-js/core';\nimport { compact, ensure, isFunction, warn, toArray, isString, identity } from '@zag-js/utils';\nimport * as React from 'react';\nimport { useMemo, useRef, useLayoutEffect, useEffect, useState } from 'react';\nimport { flushSync, createPortal } from 'react-dom';\nimport { createNormalizer } from '@zag-js/types';\nimport { jsx } from 'react/jsx-runtime';\n\n// src/index.ts\nvar useSafeLayoutEffect = typeof globalThis.document !== \"undefined\" ? useLayoutEffect : useEffect;\n\n// src/bindable.ts\nfunction useBindable(props) {\n const initial = props().value ?? props().defaultValue;\n const eq = props().isEqual ?? Object.is;\n const [initialValue] = useState(initial);\n const [value, setValue] = useState(initialValue);\n const controlled = props().value !== void 0;\n const valueRef = useRef(value);\n valueRef.current = controlled ? props().value : value;\n const prevValue = useRef(valueRef.current);\n useSafeLayoutEffect(() => {\n prevValue.current = valueRef.current;\n }, [value, props().value]);\n const setFn = (value2) => {\n const prev = prevValue.current;\n const next = isFunction(value2) ? value2(prev) : value2;\n if (props().debug) {\n console.log(`[bindable > ${props().debug}] setValue`, { next, prev });\n }\n if (!controlled) setValue(next);\n if (!eq(next, prev)) {\n props().onChange?.(next, prev);\n }\n };\n function get() {\n return controlled ? props().value : value;\n }\n return {\n initial: initialValue,\n ref: valueRef,\n get,\n set(value2) {\n const exec = props().sync ? flushSync : identity;\n exec(() => setFn(value2));\n },\n invoke(nextValue, prevValue2) {\n props().onChange?.(nextValue, prevValue2);\n },\n hash(value2) {\n return props().hash?.(value2) ?? String(value2);\n }\n };\n}\nuseBindable.cleanup = (fn) => {\n useEffect(() => fn, []);\n};\nuseBindable.ref = (defaultValue) => {\n const value = useRef(defaultValue);\n return {\n get: () => value.current,\n set: (next) => {\n value.current = next;\n }\n };\n};\nfunction useRefs(refs) {\n const ref = useRef(refs);\n return {\n get(key) {\n return ref.current[key];\n },\n set(key, value) {\n ref.current[key] = value;\n }\n };\n}\nvar useTrack = (deps, effect) => {\n const render = useRef(false);\n const called = useRef(false);\n useEffect(() => {\n const mounted = render.current;\n const run = mounted && called.current;\n if (run) return effect();\n called.current = true;\n }, [...(deps ?? []).map((d) => typeof d === \"function\" ? d() : d)]);\n useEffect(() => {\n render.current = true;\n return () => {\n render.current = false;\n };\n }, []);\n};\n\n// src/machine.ts\nfunction useMachine(machine, userProps = {}) {\n const scope = useMemo(() => {\n const { id, ids, getRootNode } = userProps;\n return createScope({ id, ids, getRootNode });\n }, [userProps]);\n const debug = (...args) => {\n if (machine.debug) console.log(...args);\n };\n const props = machine.props?.({ props: compact(userProps), scope }) ?? userProps;\n const prop = useProp(props);\n const context = machine.context?.({\n prop,\n bindable: useBindable,\n scope,\n flush,\n getContext() {\n return ctx;\n },\n getComputed() {\n return computed;\n },\n getRefs() {\n return refs;\n },\n getEvent() {\n return getEvent();\n }\n });\n const contextRef = useLiveRef(context);\n const ctx = {\n get(key) {\n return contextRef.current?.[key].ref.current;\n },\n set(key, value) {\n contextRef.current?.[key].set(value);\n },\n initial(key) {\n return contextRef.current?.[key].initial;\n },\n hash(key) {\n const current = contextRef.current?.[key].get();\n return contextRef.current?.[key].hash(current);\n }\n };\n const effects = useRef(/* @__PURE__ */ new Map());\n const transitionRef = useRef(null);\n const previousEventRef = useRef(null);\n const eventRef = useRef({ type: \"\" });\n const getEvent = () => ({\n ...eventRef.current,\n current() {\n return eventRef.current;\n },\n previous() {\n return previousEventRef.current;\n }\n });\n const getState = () => ({\n ...state,\n matches(...values) {\n return values.includes(state.ref.current);\n },\n hasTag(tag) {\n return !!machine.states[state.ref.current]?.tags?.includes(tag);\n }\n });\n const refs = useRefs(machine.refs?.({ prop, context: ctx }) ?? {});\n const getParams = () => ({\n state: getState(),\n context: ctx,\n event: getEvent(),\n prop,\n send,\n action,\n guard,\n track: useTrack,\n refs,\n computed,\n flush,\n scope,\n choose\n });\n const action = (keys) => {\n const strs = isFunction(keys) ? keys(getParams()) : keys;\n if (!strs) return;\n const fns = strs.map((s) => {\n const fn = machine.implementations?.actions?.[s];\n if (!fn) warn(`[zag-js] No implementation found for action \"${JSON.stringify(s)}\"`);\n return fn;\n });\n for (const fn of fns) {\n fn?.(getParams());\n }\n };\n const guard = (str) => {\n if (isFunction(str)) return str(getParams());\n return machine.implementations?.guards?.[str](getParams());\n };\n const effect = (keys) => {\n const strs = isFunction(keys) ? keys(getParams()) : keys;\n if (!strs) return;\n const fns = strs.map((s) => {\n const fn = machine.implementations?.effects?.[s];\n if (!fn) warn(`[zag-js] No implementation found for effect \"${JSON.stringify(s)}\"`);\n return fn;\n });\n const cleanups = [];\n for (const fn of fns) {\n const cleanup = fn?.(getParams());\n if (cleanup) cleanups.push(cleanup);\n }\n return () => cleanups.forEach((fn) => fn?.());\n };\n const choose = (transitions) => {\n return toArray(transitions).find((t) => {\n let result = !t.guard;\n if (isString(t.guard)) result = !!guard(t.guard);\n else if (isFunction(t.guard)) result = t.guard(getParams());\n return result;\n });\n };\n const computed = (key) => {\n ensure(machine.computed, () => `[zag-js] No computed object found on machine`);\n const fn = machine.computed[key];\n return fn({\n context: ctx,\n event: getEvent(),\n prop,\n refs,\n scope,\n computed\n });\n };\n const state = useBindable(() => ({\n defaultValue: machine.initialState({ prop }),\n onChange(nextState, prevState) {\n if (prevState) {\n const exitEffects = effects.current.get(prevState);\n exitEffects?.();\n effects.current.delete(prevState);\n }\n if (prevState) {\n action(machine.states[prevState]?.exit);\n }\n action(transitionRef.current?.actions);\n const cleanup = effect(machine.states[nextState]?.effects);\n if (cleanup) effects.current.set(nextState, cleanup);\n if (prevState === INIT_STATE) {\n action(machine.entry);\n const cleanup2 = effect(machine.effects);\n if (cleanup2) effects.current.set(INIT_STATE, cleanup2);\n }\n action(machine.states[nextState]?.entry);\n }\n }));\n const hydratedStateRef = useRef(void 0);\n const statusRef = useRef(MachineStatus.NotStarted);\n useSafeLayoutEffect(() => {\n queueMicrotask(() => {\n const started = statusRef.current === MachineStatus.Started;\n statusRef.current = MachineStatus.Started;\n debug(started ? \"rehydrating...\" : \"initializing...\");\n const initialState = hydratedStateRef.current ?? state.initial;\n state.invoke(initialState, started ? state.get() : INIT_STATE);\n });\n const fns = effects.current;\n const currentState = state.ref.current;\n return () => {\n debug(\"unmounting...\");\n hydratedStateRef.current = currentState;\n statusRef.current = MachineStatus.Stopped;\n fns.forEach((fn) => fn?.());\n effects.current = /* @__PURE__ */ new Map();\n transitionRef.current = null;\n queueMicrotask(() => {\n action(machine.exit);\n });\n };\n }, []);\n const getCurrentState = () => {\n if (\"ref\" in state) return state.ref.current;\n return state.get();\n };\n const send = (event) => {\n queueMicrotask(() => {\n if (statusRef.current !== MachineStatus.Started) return;\n previousEventRef.current = eventRef.current;\n eventRef.current = event;\n let currentState = getCurrentState();\n const transitions = (\n // @ts-ignore\n machine.states[currentState].on?.[event.type] ?? // @ts-ignore\n machine.on?.[event.type]\n );\n const transition = choose(transitions);\n if (!transition) return;\n transitionRef.current = transition;\n const target = transition.target ?? currentState;\n debug(\"transition\", event.type, transition.target || currentState, `(${transition.actions})`);\n const changed = target !== currentState;\n if (changed) {\n flushSync(() => state.set(target));\n } else if (transition.reenter && !changed) {\n state.invoke(currentState, currentState);\n } else {\n action(transition.actions ?? []);\n }\n });\n };\n machine.watch?.(getParams());\n return {\n state: getState(),\n send,\n context: ctx,\n prop,\n scope,\n refs,\n computed,\n event: getEvent(),\n getStatus: () => statusRef.current\n };\n}\nfunction useLiveRef(value) {\n const ref = useRef(value);\n ref.current = value;\n return ref;\n}\nfunction useProp(value) {\n const ref = useLiveRef(value);\n return function get(key) {\n return ref.current[key];\n };\n}\nfunction flush(fn) {\n queueMicrotask(() => {\n flushSync(() => fn());\n });\n}\nvar normalizeProps = createNormalizer((v) => v);\nvar Portal = (props) => {\n const { children, container, disabled, getRootNode } = props;\n const isServer = typeof window === \"undefined\";\n if (isServer || disabled) return /* @__PURE__ */ jsx(React.Fragment, { children });\n const doc = getRootNode?.().ownerDocument ?? document;\n const mountNode = container?.current ?? doc.body;\n return /* @__PURE__ */ jsx(React.Fragment, { children: React.Children.map(children, (child) => createPortal(child, mountNode)) });\n};\n\nexport { Portal, normalizeProps, useMachine };\n","function composeRefs(...refs) {\n return (node) => {\n const cleanUps = [];\n for (const ref of refs) {\n if (typeof ref === \"function\") {\n const cb = ref(node);\n if (typeof cb === \"function\") {\n cleanUps.push(cb);\n }\n } else if (ref) {\n ref.current = node;\n }\n }\n if (cleanUps.length) {\n return () => {\n for (const cleanUp of cleanUps) {\n cleanUp();\n }\n };\n }\n };\n}\n\nexport { composeRefs };\n","'use client';\nimport { createContext as createContext$1, useContext } from 'react';\n\nfunction getErrorMessage(hook, provider) {\n return `${hook} returned \\`undefined\\`. Seems you forgot to wrap component within ${provider}`;\n}\nfunction createContext(options = {}) {\n const {\n name,\n strict = true,\n hookName = \"useContext\",\n providerName = \"Provider\",\n errorMessage,\n defaultValue\n } = options;\n const Context = createContext$1(defaultValue);\n Context.displayName = name;\n function useContext$1() {\n const context = useContext(Context);\n if (!context && strict) {\n const error = new Error(errorMessage ?? getErrorMessage(hookName, providerName));\n error.name = \"ContextError\";\n Error.captureStackTrace?.(error, useContext$1);\n throw error;\n }\n return context;\n }\n return [Context.Provider, useContext$1, Context];\n}\n\nexport { createContext };\n","'use client';\nconst createSplitProps = () => (props, keys) => keys.reduce(\n (previousValue, currentValue) => {\n const [target, source] = previousValue;\n const key = currentValue;\n if (source[key] !== void 0) {\n target[key] = source[key];\n }\n delete source[key];\n return [target, source];\n },\n [{}, { ...props }]\n);\n\nexport { createSplitProps };\n","'use client';\nimport { createContext } from './create-context.js';\nimport { createSplitProps } from './create-split-props.js';\n\nconst [RenderStrategyPropsProvider, useRenderStrategyPropsContext] = createContext({\n name: \"RenderStrategyContext\",\n hookName: \"useRenderStrategyContext\",\n providerName: \"<RenderStrategyPropsProvider />\"\n});\nconst splitRenderStrategyProps = (props) => createSplitProps()(props, [\"lazyMount\", \"unmountOnExit\"]);\n\nexport { RenderStrategyPropsProvider, splitRenderStrategyProps, useRenderStrategyPropsContext };\n","import { mergeProps } from '@zag-js/core';\nimport { memo, forwardRef, createElement, isValidElement, Children, cloneElement } from 'react';\nimport { composeRefs } from '../utils/compose-refs.js';\n\nfunction getRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nconst withAsChild = (Component) => {\n const Comp = memo(\n forwardRef((props, ref) => {\n const { asChild, children, ...restProps } = props;\n if (!asChild) {\n return createElement(Component, { ...restProps, ref }, children);\n }\n if (!isValidElement(children)) {\n return null;\n }\n const onlyChild = Children.only(children);\n const childRef = getRef(onlyChild);\n return cloneElement(onlyChild, {\n ...mergeProps(restProps, onlyChild.props),\n ref: ref ? composeRefs(ref, childRef) : childRef\n });\n })\n );\n Comp.displayName = Component.displayName || Component.name;\n return Comp;\n};\nconst jsxFactory = () => {\n const cache = /* @__PURE__ */ new Map();\n return new Proxy(withAsChild, {\n apply(_target, _thisArg, argArray) {\n return withAsChild(argArray[0]);\n },\n get(_, element) {\n const asElement = element;\n if (!cache.has(asElement)) {\n cache.set(asElement, withAsChild(asElement));\n }\n return cache.get(asElement);\n }\n });\n};\nconst ark = jsxFactory();\n\nexport { ark, jsxFactory };\n","import { setStyle, nextTick, raf, getComputedStyle, getEventTarget } from '@zag-js/dom-query';\nimport { createMachine } from '@zag-js/core';\nimport { createProps } from '@zag-js/types';\n\n// src/presence.connect.ts\nfunction connect(service, _normalize) {\n const { state, send, context } = service;\n const present = state.matches(\"mounted\", \"unmountSuspended\");\n return {\n skip: !context.get(\"initial\"),\n present,\n setNode(node) {\n if (!node) return;\n send({ type: \"NODE.SET\", node });\n },\n unmount() {\n send({ type: \"UNMOUNT\" });\n }\n };\n}\nvar machine = createMachine({\n props({ props: props2 }) {\n return { ...props2, present: !!props2.present };\n },\n initialState({ prop }) {\n return prop(\"present\") ? \"mounted\" : \"unmounted\";\n },\n refs() {\n return {\n node: null,\n styles: null\n };\n },\n context({ bindable }) {\n return {\n unmountAnimationName: bindable(() => ({ defaultValue: null })),\n prevAnimationName: bindable(() => ({ defaultValue: null })),\n present: bindable(() => ({ defaultValue: false })),\n initial: bindable(() => ({\n sync: true,\n defaultValue: false\n }))\n };\n },\n exit: [\"clearInitial\", \"cleanupNode\"],\n watch({ track, prop, send }) {\n track([() => prop(\"present\")], () => {\n send({ type: \"PRESENCE.CHANGED\" });\n });\n },\n on: {\n \"NODE.SET\": {\n actions: [\"setupNode\"]\n },\n \"PRESENCE.CHANGED\": {\n actions: [\"setInitial\", \"syncPresence\"]\n }\n },\n states: {\n mounted: {\n on: {\n UNMOUNT: {\n target: \"unmounted\",\n actions: [\"clearPrevAnimationName\", \"invokeOnExitComplete\"]\n },\n \"UNMOUNT.SUSPEND\": {\n target: \"unmountSuspended\"\n }\n }\n },\n unmountSuspended: {\n effects: [\"trackAnimationEvents\"],\n on: {\n MOUNT: {\n target: \"mounted\",\n actions: [\"setPrevAnimationName\"]\n },\n UNMOUNT: {\n target: \"unmounted\",\n actions: [\"clearPrevAnimationName\", \"invokeOnExitComplete\"]\n }\n }\n },\n unmounted: {\n on: {\n MOUNT: {\n target: \"mounted\",\n actions: [\"setPrevAnimationName\"]\n }\n }\n }\n },\n implementations: {\n actions: {\n setInitial: ({ context }) => {\n if (context.get(\"initial\")) return;\n queueMicrotask(() => {\n context.set(\"initial\", true);\n });\n },\n clearInitial: ({ context }) => {\n context.set(\"initial\", false);\n },\n invokeOnExitComplete: ({ prop }) => {\n prop(\"onExitComplete\")?.();\n },\n setupNode: ({ refs, event }) => {\n if (refs.get(\"node\") === event.node) return;\n refs.set(\"node\", event.node);\n refs.set(\"styles\", getComputedStyle(event.node));\n },\n cleanupNode: ({ refs }) => {\n refs.set(\"node\", null);\n refs.set(\"styles\", null);\n },\n syncPresence: ({ context, refs, send, prop }) => {\n const presentProp = prop(\"present\");\n if (presentProp) {\n return send({ type: \"MOUNT\", src: \"presence.changed\" });\n }\n const node = refs.get(\"node\");\n if (!presentProp && node?.ownerDocument.visibilityState === \"hidden\") {\n return send({ type: \"UNMOUNT\", src: \"visibilitychange\" });\n }\n raf(() => {\n const animationName = getAnimationName(refs.get(\"styles\"));\n context.set(\"unmountAnimationName\", animationName);\n if (animationName === \"none\" || animationName === context.get(\"prevAnimationName\") || refs.get(\"styles\")?.display === \"none\" || refs.get(\"styles\")?.animationDuration === \"0s\") {\n send({ type: \"UNMOUNT\", src: \"presence.changed\" });\n } else {\n send({ type: \"UNMOUNT.SUSPEND\" });\n }\n });\n },\n setPrevAnimationName: ({ context, refs }) => {\n raf(() => {\n context.set(\"prevAnimationName\", getAnimationName(refs.get(\"styles\")));\n });\n },\n clearPrevAnimationName: ({ context }) => {\n context.set(\"prevAnimationName\", null);\n }\n },\n effects: {\n trackAnimationEvents: ({ context, refs, send }) => {\n const node = refs.get(\"node\");\n if (!node) return;\n const onStart = (event) => {\n const target = event.composedPath?.()?.[0] ?? event.target;\n if (target === node) {\n context.set(\"prevAnimationName\", getAnimationName(refs.get(\"styles\")));\n }\n };\n const onEnd = (event) => {\n const animationName = getAnimationName(refs.get(\"styles\"));\n const target = getEventTarget(event);\n if (target === node && animationName === context.get(\"unmountAnimationName\")) {\n send({ type: \"UNMOUNT\", src: \"animationend\" });\n }\n };\n node.addEventListener(\"animationstart\", onStart);\n node.addEventListener(\"animationcancel\", onEnd);\n node.addEventListener(\"animationend\", onEnd);\n const cleanupStyles = setStyle(node, { animationFillMode: \"forwards\" });\n return () => {\n node.removeEventListener(\"animationstart\", onStart);\n node.removeEventListener(\"animationcancel\", onEnd);\n node.removeEventListener(\"animationend\", onEnd);\n nextTick(() => cleanupStyles());\n };\n }\n }\n }\n});\nfunction getAnimationName(styles) {\n return styles?.animationName || \"none\";\n}\nvar props = createProps()([\"onExitComplete\", \"present\", \"immediate\"]);\n\nexport { connect, machine, props };\n","'use client';\nimport { useCallback, useRef } from 'react';\n\nfunction useEvent(callback, opts = {}) {\n const { sync = false } = opts;\n const callbackRef = useLatestRef(callback);\n return useCallback(\n (...args) => {\n if (sync) return queueMicrotask(() => callbackRef.current?.(...args));\n return callbackRef.current?.(...args);\n },\n [sync, callbackRef]\n );\n}\nfunction useLatestRef(value) {\n const ref = useRef(value);\n ref.current = value;\n return ref;\n}\n\nexport { useEvent };\n","'use client';\nimport * as presence from '@zag-js/presence';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport { useRef } from 'react';\nimport { useEvent } from '../../utils/use-event.js';\n\nconst usePresence = (props = {}) => {\n const { lazyMount, unmountOnExit, present, skipAnimationOnMount = false, ...rest } = props;\n const wasEverPresent = useRef(false);\n const machineProps = {\n ...rest,\n present,\n onExitComplete: useEvent(props.onExitComplete)\n };\n const service = useMachine(presence.machine, machineProps);\n const api = presence.connect(service, normalizeProps);\n if (api.present) {\n wasEverPresent.current = true;\n }\n const unmounted = !api.present && !wasEverPresent.current && lazyMount || unmountOnExit && !api.present && wasEverPresent.current;\n const getPresenceProps = () => ({\n \"data-state\": api.skip && skipAnimationOnMount ? void 0 : present ? \"open\" : \"closed\",\n hidden: !api.present\n });\n return {\n ref: api.setNode,\n getPresenceProps,\n present: api.present,\n unmounted\n };\n};\n\nexport { usePresence };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [DialogProvider, useDialogContext] = createContext({\n name: \"DialogContext\",\n hookName: \"useDialogContext\",\n providerName: \"<DialogProvider />\"\n});\n\nexport { DialogProvider, useDialogContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { composeRefs } from '../../utils/compose-refs.js';\nimport { useRenderStrategyPropsContext } from '../../utils/render-strategy.js';\nimport { ark } from '../factory.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { useDialogContext } from './use-dialog-context.js';\n\nconst DialogBackdrop = forwardRef((props, ref) => {\n const dialog = useDialogContext();\n const renderStrategyProps = useRenderStrategyPropsContext();\n const presence = usePresence({ ...renderStrategyProps, present: dialog.open });\n const mergedProps = mergeProps(dialog.getBackdropProps(), presence.getPresenceProps(), props);\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) });\n});\nDialogBackdrop.displayName = \"DialogBackdrop\";\n\nexport { DialogBackdrop };\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 { useDialogContext } from './use-dialog-context.js';\n\nconst DialogCloseTrigger = forwardRef((props, ref) => {\n const dialog = useDialogContext();\n const mergedProps = mergeProps(dialog.getCloseTriggerProps(), props);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nDialogCloseTrigger.displayName = \"DialogCloseTrigger\";\n\nexport { DialogCloseTrigger };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [PresenceProvider, usePresenceContext] = createContext({\n name: \"PresenceContext\",\n hookName: \"usePresenceContext\",\n providerName: \"<PresenceProvider />\"\n});\n\nexport { PresenceProvider, usePresenceContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { composeRefs } from '../../utils/compose-refs.js';\nimport { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useDialogContext } from './use-dialog-context.js';\n\nconst DialogContent = forwardRef((props, ref) => {\n const dialog = useDialogContext();\n const presence = usePresenceContext();\n const mergedProps = mergeProps(dialog.getContentProps(), presence.getPresenceProps(), props);\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) });\n});\nDialogContent.displayName = \"DialogContent\";\n\nexport { DialogContent };\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 { useDialogContext } from './use-dialog-context.js';\n\nconst DialogDescription = forwardRef((props, ref) => {\n const dialog = useDialogContext();\n const mergedProps = mergeProps(dialog.getDescriptionProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nDialogDescription.displayName = \"DialogDescription\";\n\nexport { DialogDescription };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useDialogContext } from './use-dialog-context.js';\n\nconst DialogPositioner = forwardRef((props, ref) => {\n const dialog = useDialogContext();\n const mergedProps = mergeProps(dialog.getPositionerProps(), props);\n const presence = usePresenceContext();\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nDialogPositioner.displayName = \"DialogPositioner\";\n\nexport { DialogPositioner };\n","'use client';\nimport { createSplitProps } from '../../utils/create-split-props.js';\n\nconst splitPresenceProps = (props) => createSplitProps()(props, [\n \"immediate\",\n \"lazyMount\",\n \"onExitComplete\",\n \"present\",\n \"skipAnimationOnMount\",\n \"unmountOnExit\"\n]);\n\nexport { splitPresenceProps };\n","// src/create-anatomy.ts\nvar createAnatomy = (name, parts = []) => ({\n parts: (...values) => {\n if (isEmpty(parts)) {\n return createAnatomy(name, values);\n }\n throw new Error(\"createAnatomy().parts(...) should only be called once. Did you mean to use .extendWith(...) ?\");\n },\n extendWith: (...values) => createAnatomy(name, [...parts, ...values]),\n omit: (...values) => createAnatomy(name, parts.filter((part) => !values.includes(part))),\n rename: (newName) => createAnatomy(newName, parts),\n keys: () => parts,\n build: () => [...new Set(parts)].reduce(\n (prev, part) => Object.assign(prev, {\n [part]: {\n selector: [\n `&[data-scope=\"${toKebabCase(name)}\"][data-part=\"${toKebabCase(part)}\"]`,\n `& [data-scope=\"${toKebabCase(name)}\"][data-part=\"${toKebabCase(part)}\"]`\n ].join(\", \"),\n attrs: { \"data-scope\": toKebabCase(name), \"data-part\": toKebabCase(part) }\n }\n }),\n {}\n )\n});\nvar toKebabCase = (value) => value.replace(/([A-Z])([A-Z])/g, \"$1-$2\").replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/[\\s_]+/g, \"-\").toLowerCase();\nvar isEmpty = (v) => v.length === 0;\n\nexport { createAnatomy };\n","// src/walk-tree-outside.ts\nvar counterMap = /* @__PURE__ */ new WeakMap();\nvar uncontrolledNodes = /* @__PURE__ */ new WeakMap();\nvar markerMap = {};\nvar lockCount = 0;\nvar unwrapHost = (node) => node && (node.host || unwrapHost(node.parentNode));\nvar correctTargets = (parent, targets) => targets.map((target) => {\n if (parent.contains(target)) return target;\n const correctedTarget = unwrapHost(target);\n if (correctedTarget && parent.contains(correctedTarget)) {\n return correctedTarget;\n }\n console.error(\"[zag-js > ariaHidden] target\", target, \"in not contained inside\", parent, \". Doing nothing\");\n return null;\n}).filter((x) => Boolean(x));\nvar ignoreableNodes = /* @__PURE__ */ new Set([\"script\", \"output\", \"status\", \"next-route-announcer\"]);\nvar isIgnoredNode = (node) => {\n if (ignoreableNodes.has(node.localName)) return true;\n if (node.role === \"status\") return true;\n if (node.hasAttribute(\"aria-live\")) return true;\n return node.matches(\"[data-live-announcer]\");\n};\nvar walkTreeOutside = (originalTarget, props) => {\n const { parentNode, markerName, controlAttribute} = props;\n const targets = correctTargets(parentNode, Array.isArray(originalTarget) ? originalTarget : [originalTarget]);\n markerMap[markerName] || (markerMap[markerName] = /* @__PURE__ */ new WeakMap());\n const markerCounter = markerMap[markerName];\n const hiddenNodes = [];\n const elementsToKeep = /* @__PURE__ */ new Set();\n const elementsToStop = new Set(targets);\n const keep = (el) => {\n if (!el || elementsToKeep.has(el)) return;\n elementsToKeep.add(el);\n keep(el.parentNode);\n };\n targets.forEach(keep);\n const deep = (parent) => {\n if (!parent || elementsToStop.has(parent)) {\n return;\n }\n Array.prototype.forEach.call(parent.children, (node) => {\n if (elementsToKeep.has(node)) {\n deep(node);\n } else {\n try {\n if (isIgnoredNode(node)) return;\n const attr = node.getAttribute(controlAttribute);\n const alreadyHidden = attr === \"true\" ;\n const counterValue = (counterMap.get(node) || 0) + 1;\n const markerValue = (markerCounter.get(node) || 0) + 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n hiddenNodes.push(node);\n if (counterValue === 1 && alreadyHidden) {\n uncontrolledNodes.set(node, true);\n }\n if (markerValue === 1) {\n node.setAttribute(markerName, \"\");\n }\n if (!alreadyHidden) {\n node.setAttribute(controlAttribute, \"true\" );\n }\n } catch (e) {\n console.error(\"[zag-js > ariaHidden] cannot operate on \", node, e);\n }\n }\n });\n };\n deep(parentNode);\n elementsToKeep.clear();\n lockCount++;\n return () => {\n hiddenNodes.forEach((node) => {\n const counterValue = counterMap.get(node) - 1;\n const markerValue = markerCounter.get(node) - 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n if (!counterValue) {\n if (!uncontrolledNodes.has(node)) {\n node.removeAttribute(controlAttribute);\n }\n uncontrolledNodes.delete(node);\n }\n if (!markerValue) {\n node.removeAttribute(markerName);\n }\n });\n lockCount--;\n if (!lockCount) {\n counterMap = /* @__PURE__ */ new WeakMap();\n counterMap = /* @__PURE__ */ new WeakMap();\n uncontrolledNodes = /* @__PURE__ */ new WeakMap();\n markerMap = {};\n }\n };\n};\n\n// src/aria-hidden.ts\nvar getParentNode = (originalTarget) => {\n const target = Array.isArray(originalTarget) ? originalTarget[0] : originalTarget;\n return target.ownerDocument.body;\n};\nvar hideOthers = (originalTarget, parentNode = getParentNode(originalTarget), markerName = \"data-aria-hidden\") => {\n if (!parentNode) return;\n return walkTreeOutside(originalTarget, {\n parentNode,\n markerName,\n controlAttribute: \"aria-hidden\"});\n};\n\n// src/index.ts\nvar raf = (fn) => {\n const frameId = requestAnimationFrame(() => fn());\n return () => cancelAnimationFrame(frameId);\n};\nfunction ariaHidden(targetsOrFn, options = {}) {\n const { defer = true } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const targets = typeof targetsOrFn === \"function\" ? targetsOrFn() : targetsOrFn;\n const elements = targets.filter(Boolean);\n if (elements.length === 0) return;\n cleanups.push(hideOthers(elements));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\n\nexport { ariaHidden };\n","import { raf, getDocument, getWindow, isShadowRoot, addDomEvent, isTouchDevice, getEventTarget, isFocusable, isContextMenuEvent, isHTMLElement, contains, getNearestOverflowAncestor } from '@zag-js/dom-query';\nimport { callAll } from '@zag-js/utils';\n\n// src/index.ts\n\n// src/frame-utils.ts\nfunction getWindowFrames(win) {\n const frames = {\n each(cb) {\n for (let i = 0; i < win.frames?.length; i += 1) {\n const frame = win.frames[i];\n if (frame) cb(frame);\n }\n },\n addEventListener(event, listener, options) {\n frames.each((frame) => {\n try {\n frame.document.addEventListener(event, listener, options);\n } catch {\n }\n });\n return () => {\n try {\n frames.removeEventListener(event, listener, options);\n } catch {\n }\n };\n },\n removeEventListener(event, listener, options) {\n frames.each((frame) => {\n try {\n frame.document.removeEventListener(event, listener, options);\n } catch {\n }\n });\n }\n };\n return frames;\n}\nfunction getParentWindow(win) {\n const parent = win.frameElement != null ? win.parent : null;\n return {\n addEventListener: (event, listener, options) => {\n try {\n parent?.addEventListener(event, listener, options);\n } catch {\n }\n return () => {\n try {\n parent?.removeEventListener(event, listener, options);\n } catch {\n }\n };\n },\n removeEventListener: (event, listener, options) => {\n try {\n parent?.removeEventListener(event, listener, options);\n } catch {\n }\n }\n };\n}\n\n// src/index.ts\nvar POINTER_OUTSIDE_EVENT = \"pointerdown.outside\";\nvar FOCUS_OUTSIDE_EVENT = \"focus.outside\";\nfunction isComposedPathFocusable(composedPath) {\n for (const node of composedPath) {\n if (isHTMLElement(node) && isFocusable(node)) return true;\n }\n return false;\n}\nvar isPointerEvent = (event) => \"clientY\" in event;\nfunction isEventPointWithin(node, event) {\n if (!isPointerEvent(event) || !node) return false;\n const rect = node.getBoundingClientRect();\n if (rect.width === 0 || rect.height === 0) return false;\n return rect.top <= event.clientY && event.clientY <= rect.top + rect.height && rect.left <= event.clientX && event.clientX <= rect.left + rect.width;\n}\nfunction isPointInRect(rect, point) {\n return rect.y <= point.y && point.y <= rect.y + rect.height && rect.x <= point.x && point.x <= rect.x + rect.width;\n}\nfunction isEventWithinScrollbar(event, ancestor) {\n if (!ancestor || !isPointerEvent(event)) return false;\n const isScrollableY = ancestor.scrollHeight > ancestor.clientHeight;\n const onScrollbarY = isScrollableY && event.clientX > ancestor.offsetLeft + ancestor.clientWidth;\n const isScrollableX = ancestor.scrollWidth > ancestor.clientWidth;\n const onScrollbarX = isScrollableX && event.clientY > ancestor.offsetTop + ancestor.clientHeight;\n const rect = {\n x: ancestor.offsetLeft,\n y: ancestor.offsetTop,\n width: ancestor.clientWidth + (isScrollableY ? 16 : 0),\n height: ancestor.clientHeight + (isScrollableX ? 16 : 0)\n };\n const point = {\n x: event.clientX,\n y: event.clientY\n };\n if (!isPointInRect(rect, point)) return false;\n return onScrollbarY || onScrollbarX;\n}\nfunction trackInteractOutsideImpl(node, options) {\n const { exclude, onFocusOutside, onPointerDownOutside, onInteractOutside, defer } = options;\n if (!node) return;\n const doc = getDocument(node);\n const win = getWindow(node);\n const frames = getWindowFrames(win);\n const parentWin = getParentWindow(win);\n function isEventOutside(event, target) {\n if (!isHTMLElement(target)) return false;\n if (!target.isConnected) return false;\n if (contains(node, target)) return false;\n if (isEventPointWithin(node, event)) return false;\n const triggerEl = doc.querySelector(`[aria-controls=\"${node.id}\"]`);\n if (triggerEl) {\n const triggerAncestor = getNearestOverflowAncestor(triggerEl);\n if (isEventWithinScrollbar(event, triggerAncestor)) return false;\n }\n const nodeAncestor = getNearestOverflowAncestor(node);\n if (isEventWithinScrollbar(event, nodeAncestor)) return false;\n return !exclude?.(target);\n }\n const pointerdownCleanups = /* @__PURE__ */ new Set();\n const isInShadowRoot = isShadowRoot(node?.getRootNode());\n function onPointerDown(event) {\n function handler(clickEvent) {\n const func = defer && !isTouchDevice() ? raf : (v) => v();\n const evt = clickEvent ?? event;\n const composedPath = evt?.composedPath?.() ?? [evt?.target];\n func(() => {\n const target = isInShadowRoot ? composedPath[0] : getEventTarget(event);\n if (!node || !isEventOutside(event, target)) return;\n if (onPointerDownOutside || onInteractOutside) {\n const handler2 = callAll(onPointerDownOutside, onInteractOutside);\n node.addEventListener(POINTER_OUTSIDE_EVENT, handler2, { once: true });\n }\n fireCustomEvent(node, POINTER_OUTSIDE_EVENT, {\n bubbles: false,\n cancelable: true,\n detail: {\n originalEvent: evt,\n contextmenu: isContextMenuEvent(evt),\n focusable: isComposedPathFocusable(composedPath),\n target\n }\n });\n });\n }\n if (event.pointerType === \"touch\") {\n pointerdownCleanups.forEach((fn) => fn());\n pointerdownCleanups.add(addDomEvent(doc, \"click\", handler, { once: true }));\n pointerdownCleanups.add(parentWin.addEventListener(\"click\", handler, { once: true }));\n pointerdownCleanups.add(frames.addEventListener(\"click\", handler, { once: true }));\n } else {\n handler();\n }\n }\n const cleanups = /* @__PURE__ */ new Set();\n const timer = setTimeout(() => {\n cleanups.add(addDomEvent(doc, \"pointerdown\", onPointerDown, true));\n cleanups.add(parentWin.addEventListener(\"pointerdown\", onPointerDown, true));\n cleanups.add(frames.addEventListener(\"pointerdown\", onPointerDown, true));\n }, 0);\n function onFocusin(event) {\n const func = defer ? raf : (v) => v();\n func(() => {\n const target = getEventTarget(event);\n if (!node || !isEventOutside(event, target)) return;\n if (onFocusOutside || onInteractOutside) {\n const handler = callAll(onFocusOutside, onInteractOutside);\n node.addEventListener(FOCUS_OUTSIDE_EVENT, handler, { once: true });\n }\n fireCustomEvent(node, FOCUS_OUTSIDE_EVENT, {\n bubbles: false,\n cancelable: true,\n detail: {\n originalEvent: event,\n contextmenu: false,\n focusable: isFocusable(target),\n target\n }\n });\n });\n }\n if (!isTouchDevice()) {\n cleanups.add(addDomEvent(doc, \"focusin\", onFocusin, true));\n cleanups.add(parentWin.addEventListener(\"focusin\", onFocusin, true));\n cleanups.add(frames.addEventListener(\"focusin\", onFocusin, true));\n }\n return () => {\n clearTimeout(timer);\n pointerdownCleanups.forEach((fn) => fn());\n cleanups.forEach((fn) => fn());\n };\n}\nfunction trackInteractOutside(nodeOrFn, options) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = typeof nodeOrFn === \"function\" ? nodeOrFn() : nodeOrFn;\n cleanups.push(trackInteractOutsideImpl(node, options));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\nfunction fireCustomEvent(el, type, init) {\n const win = el.ownerDocument.defaultView || window;\n const event = new win.CustomEvent(type, init);\n return el.dispatchEvent(event);\n}\n\nexport { trackInteractOutside };\n","import { raf, contains, getDocument, waitForElement, isHTMLElement, setStyle, addDomEvent, getEventTarget } from '@zag-js/dom-query';\nimport { trackInteractOutside } from '@zag-js/interact-outside';\nimport { isFunction, warn } from '@zag-js/utils';\n\n// src/dismissable-layer.ts\nfunction trackEscapeKeydown(node, fn) {\n const handleKeyDown = (event) => {\n if (event.key !== \"Escape\") return;\n if (event.isComposing) return;\n fn?.(event);\n };\n return addDomEvent(getDocument(node), \"keydown\", handleKeyDown, { capture: true });\n}\nvar LAYER_REQUEST_DISMISS_EVENT = \"layer:request-dismiss\";\nvar layerStack = {\n layers: [],\n branches: [],\n count() {\n return this.layers.length;\n },\n pointerBlockingLayers() {\n return this.layers.filter((layer) => layer.pointerBlocking);\n },\n topMostPointerBlockingLayer() {\n return [...this.pointerBlockingLayers()].slice(-1)[0];\n },\n hasPointerBlockingLayer() {\n return this.pointerBlockingLayers().length > 0;\n },\n isBelowPointerBlockingLayer(node) {\n const index = this.indexOf(node);\n const highestBlockingIndex = this.topMostPointerBlockingLayer() ? this.indexOf(this.topMostPointerBlockingLayer()?.node) : -1;\n return index < highestBlockingIndex;\n },\n isTopMost(node) {\n const layer = this.layers[this.count() - 1];\n return layer?.node === node;\n },\n getNestedLayers(node) {\n return Array.from(this.layers).slice(this.indexOf(node) + 1);\n },\n isInNestedLayer(node, target) {\n return this.getNestedLayers(node).some((layer) => contains(layer.node, target));\n },\n isInBranch(target) {\n return Array.from(this.branches).some((branch) => contains(branch, target));\n },\n add(layer) {\n this.layers.push(layer);\n this.syncLayerIndex();\n },\n addBranch(node) {\n this.branches.push(node);\n },\n remove(node) {\n const index = this.indexOf(node);\n if (index < 0) return;\n if (index < this.count() - 1) {\n const _layers = this.getNestedLayers(node);\n _layers.forEach((layer) => layerStack.dismiss(layer.node, node));\n }\n this.layers.splice(index, 1);\n this.syncLayerIndex();\n },\n removeBranch(node) {\n const index = this.branches.indexOf(node);\n if (index >= 0) this.branches.splice(index, 1);\n },\n syncLayerIndex() {\n this.layers.forEach((layer, index) => {\n layer.node.style.setProperty(\"--layer-index\", `${index}`);\n });\n },\n indexOf(node) {\n return this.layers.findIndex((layer) => layer.node === node);\n },\n dismiss(node, parent) {\n const index = this.indexOf(node);\n if (index === -1) return;\n const layer = this.layers[index];\n addListenerOnce(node, LAYER_REQUEST_DISMISS_EVENT, (event) => {\n layer.requestDismiss?.(event);\n if (!event.defaultPrevented) {\n layer?.dismiss();\n }\n });\n fireCustomEvent(node, LAYER_REQUEST_DISMISS_EVENT, {\n originalLayer: node,\n targetLayer: parent,\n originalIndex: index,\n targetIndex: parent ? this.indexOf(parent) : -1\n });\n this.syncLayerIndex();\n },\n clear() {\n this.remove(this.layers[0].node);\n }\n};\nfunction fireCustomEvent(el, type, detail) {\n const win = el.ownerDocument.defaultView || window;\n const event = new win.CustomEvent(type, { cancelable: true, bubbles: true, detail });\n return el.dispatchEvent(event);\n}\nfunction addListenerOnce(el, type, callback) {\n el.addEventListener(type, callback, { once: true });\n}\nvar originalBodyPointerEvents;\nfunction assignPointerEventToLayers() {\n layerStack.layers.forEach(({ node }) => {\n node.style.pointerEvents = layerStack.isBelowPointerBlockingLayer(node) ? \"none\" : \"auto\";\n });\n}\nfunction clearPointerEvent(node) {\n node.style.pointerEvents = \"\";\n}\nfunction disablePointerEventsOutside(node, persistentElements) {\n const doc = getDocument(node);\n const cleanups = [];\n if (layerStack.hasPointerBlockingLayer() && !doc.body.hasAttribute(\"data-inert\")) {\n originalBodyPointerEvents = document.body.style.pointerEvents;\n queueMicrotask(() => {\n doc.body.style.pointerEvents = \"none\";\n doc.body.setAttribute(\"data-inert\", \"\");\n });\n }\n persistentElements?.forEach((el) => {\n const [promise, abort] = waitForElement(\n () => {\n const node2 = el();\n return isHTMLElement(node2) ? node2 : null;\n },\n { timeout: 1e3 }\n );\n promise.then((el2) => cleanups.push(setStyle(el2, { pointerEvents: \"auto\" })));\n cleanups.push(abort);\n });\n return () => {\n if (layerStack.hasPointerBlockingLayer()) return;\n queueMicrotask(() => {\n doc.body.style.pointerEvents = originalBodyPointerEvents;\n doc.body.removeAttribute(\"data-inert\");\n if (doc.body.style.length === 0) doc.body.removeAttribute(\"style\");\n });\n cleanups.forEach((fn) => fn());\n };\n}\n\n// src/dismissable-layer.ts\nfunction trackDismissableElementImpl(node, options) {\n const { warnOnMissingNode = true } = options;\n if (warnOnMissingNode && !node) {\n warn(\"[@zag-js/dismissable] node is `null` or `undefined`\");\n return;\n }\n if (!node) {\n return;\n }\n const { onDismiss, onRequestDismiss, pointerBlocking, exclude: excludeContainers, debug } = options;\n const layer = { dismiss: onDismiss, node, pointerBlocking, requestDismiss: onRequestDismiss };\n layerStack.add(layer);\n assignPointerEventToLayers();\n function onPointerDownOutside(event) {\n const target = getEventTarget(event.detail.originalEvent);\n if (layerStack.isBelowPointerBlockingLayer(node) || layerStack.isInBranch(target)) return;\n options.onPointerDownOutside?.(event);\n options.onInteractOutside?.(event);\n if (event.defaultPrevented) return;\n if (debug) {\n console.log(\"onPointerDownOutside:\", event.detail.originalEvent);\n }\n onDismiss?.();\n }\n function onFocusOutside(event) {\n const target = getEventTarget(event.detail.originalEvent);\n if (layerStack.isInBranch(target)) return;\n options.onFocusOutside?.(event);\n options.onInteractOutside?.(event);\n if (event.defaultPrevented) return;\n if (debug) {\n console.log(\"onFocusOutside:\", event.detail.originalEvent);\n }\n onDismiss?.();\n }\n function onEscapeKeyDown(event) {\n if (!layerStack.isTopMost(node)) return;\n options.onEscapeKeyDown?.(event);\n if (!event.defaultPrevented && onDismiss) {\n event.preventDefault();\n onDismiss();\n }\n }\n function exclude(target) {\n if (!node) return false;\n const containers = typeof excludeContainers === \"function\" ? excludeContainers() : excludeContainers;\n const _containers = Array.isArray(containers) ? containers : [containers];\n const persistentElements = options.persistentElements?.map((fn) => fn()).filter(isHTMLElement);\n if (persistentElements) _containers.push(...persistentElements);\n return _containers.some((node2) => contains(node2, target)) || layerStack.isInNestedLayer(node, target);\n }\n const cleanups = [\n pointerBlocking ? disablePointerEventsOutside(node, options.persistentElements) : void 0,\n trackEscapeKeydown(node, onEscapeKeyDown),\n trackInteractOutside(node, { exclude, onFocusOutside, onPointerDownOutside, defer: options.defer })\n ];\n return () => {\n layerStack.remove(node);\n assignPointerEventToLayers();\n clearPointerEvent(node);\n cleanups.forEach((fn) => fn?.());\n };\n}\nfunction trackDismissableElement(nodeOrFn, options) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = isFunction(nodeOrFn) ? nodeOrFn() : nodeOrFn;\n cleanups.push(trackDismissableElementImpl(node, options));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\nfunction trackDismissableBranch(nodeOrFn, options = {}) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = isFunction(nodeOrFn) ? nodeOrFn() : nodeOrFn;\n if (!node) {\n warn(\"[@zag-js/dismissable] branch node is `null` or `undefined`\");\n return;\n }\n layerStack.addBranch(node);\n cleanups.push(() => {\n layerStack.removeBranch(node);\n });\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\n\nexport { trackDismissableBranch, trackDismissableElement };\n","import { getDocument, getTabbables, getFocusables, isTabbable, getTabIndex, addDomEvent, raf, getEventTarget, isDocument, isFocusable, getActiveElement } from '@zag-js/dom-query';\n\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nvar activeFocusTraps = {\n activateTrap(trapStack, trap) {\n if (trapStack.length > 0) {\n const activeTrap = trapStack[trapStack.length - 1];\n if (activeTrap !== trap) {\n activeTrap.pause();\n }\n }\n const trapIndex = trapStack.indexOf(trap);\n if (trapIndex === -1) {\n trapStack.push(trap);\n } else {\n trapStack.splice(trapIndex, 1);\n trapStack.push(trap);\n }\n },\n deactivateTrap(trapStack, trap) {\n const trapIndex = trapStack.indexOf(trap);\n if (trapIndex !== -1) {\n trapStack.splice(trapIndex, 1);\n }\n if (trapStack.length > 0) {\n trapStack[trapStack.length - 1].unpause();\n }\n }\n};\nvar sharedTrapStack = [];\nvar FocusTrap = class {\n constructor(elements, options) {\n __publicField(this, \"trapStack\");\n __publicField(this, \"config\");\n __publicField(this, \"doc\");\n __publicField(this, \"state\", {\n containers: [],\n containerGroups: [],\n tabbableGroups: [],\n nodeFocusedBeforeActivation: null,\n mostRecentlyFocusedNode: null,\n active: false,\n paused: false,\n delayInitialFocusTimer: void 0,\n recentNavEvent: void 0\n });\n __publicField(this, \"listenerCleanups\", []);\n __publicField(this, \"handleFocus\", (event) => {\n const target = getEventTarget(event);\n const targetContained = this.findContainerIndex(target, event) >= 0;\n if (targetContained || isDocument(target)) {\n if (targetContained) {\n this.state.mostRecentlyFocusedNode = target;\n }\n } else {\n event.stopImmediatePropagation();\n let nextNode;\n let navAcrossContainers = true;\n if (this.state.mostRecentlyFocusedNode) {\n if (getTabIndex(this.state.mostRecentlyFocusedNode) > 0) {\n const mruContainerIdx = this.findContainerIndex(this.state.mostRecentlyFocusedNode);\n const { tabbableNodes } = this.state.containerGroups[mruContainerIdx];\n if (tabbableNodes.length > 0) {\n const mruTabIdx = tabbableNodes.findIndex((node) => node === this.state.mostRecentlyFocusedNode);\n if (mruTabIdx >= 0) {\n if (this.config.isKeyForward(this.state.recentNavEvent)) {\n if (mruTabIdx + 1 < tabbableNodes.length) {\n nextNode = tabbableNodes[mruTabIdx + 1];\n navAcrossContainers = false;\n }\n } else {\n if (mruTabIdx - 1 >= 0) {\n nextNode = tabbableNodes[mruTabIdx - 1];\n navAcrossContainers = false;\n }\n }\n }\n }\n } else {\n if (!this.state.containerGroups.some((g) => g.tabbableNodes.some((n) => getTabIndex(n) > 0))) {\n navAcrossContainers = false;\n }\n }\n } else {\n navAcrossContainers = false;\n }\n if (navAcrossContainers) {\n nextNode = this.findNextNavNode({\n // move FROM the MRU node, not event-related node (which will be the node that is\n // outside the trap causing the focus escape we're trying to fix)\n target: this.state.mostRecentlyFocusedNode,\n isBackward: this.config.isKeyBackward(this.state.recentNavEvent)\n });\n }\n if (nextNode) {\n this.tryFocus(nextNode);\n } else {\n this.tryFocus(this.state.mostRecentlyFocusedNode || this.getInitialFocusNode());\n }\n }\n this.state.recentNavEvent = void 0;\n });\n __publicField(this, \"handlePointerDown\", (event) => {\n const target = getEventTarget(event);\n if (this.findContainerIndex(target, event) >= 0) {\n return;\n }\n if (valueOrHandler(this.config.clickOutsideDeactivates, event)) {\n this.deactivate({ returnFocus: this.config.returnFocusOnDeactivate });\n return;\n }\n if (valueOrHandler(this.config.allowOutsideClick, event)) {\n return;\n }\n event.preventDefault();\n });\n __publicField(this, \"handleClick\", (event) => {\n const target = getEventTarget(event);\n if (this.findContainerIndex(target, event) >= 0) {\n return;\n }\n if (valueOrHandler(this.config.clickOutsideDeactivates, event)) {\n return;\n }\n if (valueOrHandler(this.config.allowOutsideClick, event)) {\n return;\n }\n event.preventDefault();\n event.stopImmediatePropagation();\n });\n __publicField(this, \"handleTabKey\", (event) => {\n if (this.config.isKeyForward(event) || this.config.isKeyBackward(event)) {\n this.state.recentNavEvent = event;\n const isBackward = this.config.isKeyBackward(event);\n const destinationNode = this.findNextNavNode({ event, isBackward });\n if (!destinationNode) return;\n if (isTabEvent(event)) {\n event.preventDefault();\n }\n this.tryFocus(destinationNode);\n }\n });\n __publicField(this, \"handleEscapeKey\", (event) => {\n if (isEscapeEvent(event) && valueOrHandler(this.config.escapeDeactivates, event) !== false) {\n event.preventDefault();\n this.deactivate();\n }\n });\n __publicField(this, \"_mutationObserver\");\n __publicField(this, \"setupMutationObserver\", () => {\n const win = this.doc.defaultView || window;\n this._mutationObserver = new win.MutationObserver((mutations) => {\n const isFocusedNodeRemoved = mutations.some((mutation) => {\n const removedNodes = Array.from(mutation.removedNodes);\n return removedNodes.some((node) => node === this.state.mostRecentlyFocusedNode);\n });\n if (isFocusedNodeRemoved) {\n this.tryFocus(this.getInitialFocusNode());\n }\n });\n });\n __publicField(this, \"updateObservedNodes\", () => {\n this._mutationObserver?.disconnect();\n if (this.state.active && !this.state.paused) {\n this.state.containers.map((container) => {\n this._mutationObserver?.observe(container, { subtree: true, childList: true });\n });\n }\n });\n __publicField(this, \"getInitialFocusNode\", () => {\n let node = this.getNodeForOption(\"initialFocus\", { hasFallback: true });\n if (node === false) {\n return false;\n }\n if (node === void 0 || node && !isFocusable(node)) {\n if (this.findContainerIndex(this.doc.activeElement) >= 0) {\n node = this.doc.activeElement;\n } else {\n const firstTabbableGroup = this.state.tabbableGroups[0];\n const firstTabbableNode = firstTabbableGroup && firstTabbableGroup.firstTabbableNode;\n node = firstTabbableNode || this.getNodeForOption(\"fallbackFocus\");\n }\n } else if (node === null) {\n node = this.getNodeForOption(\"fallbackFocus\");\n }\n if (!node) {\n throw new Error(\"Your focus-trap needs to have at least one focusable element\");\n }\n if (!node.isConnected) {\n node = this.getNodeForOption(\"fallbackFocus\");\n }\n return node;\n });\n __publicField(this, \"tryFocus\", (node) => {\n if (node === false) return;\n if (node === getActiveElement(this.doc)) return;\n if (!node || !node.focus) {\n this.tryFocus(this.getInitialFocusNode());\n return;\n }\n node.focus({ preventScroll: !!this.config.preventScroll });\n this.state.mostRecentlyFocusedNode = node;\n if (isSelectableInput(node)) {\n node.select();\n }\n });\n __publicField(this, \"deactivate\", (deactivateOptions) => {\n if (!this.state.active) return this;\n const options = {\n onDeactivate: this.config.onDeactivate,\n onPostDeactivate: this.config.onPostDeactivate,\n checkCanReturnFocus: this.config.checkCanReturnFocus,\n ...deactivateOptions\n };\n clearTimeout(this.state.delayInitialFocusTimer);\n this.state.delayInitialFocusTimer = void 0;\n this.removeListeners();\n this.state.active = false;\n this.state.paused = false;\n this.updateObservedNodes();\n activeFocusTraps.deactivateTrap(this.trapStack, this);\n const onDeactivate = this.getOption(options, \"onDeactivate\");\n const onPostDeactivate = this.getOption(options, \"onPostDeactivate\");\n const checkCanReturnFocus = this.getOption(options, \"checkCanReturnFocus\");\n const returnFocus = this.getOption(options, \"returnFocus\", \"returnFocusOnDeactivate\");\n onDeactivate?.();\n const finishDeactivation = () => {\n delay(() => {\n if (returnFocus) {\n const returnFocusNode = this.getReturnFocusNode(this.state.nodeFocusedBeforeActivation);\n this.tryFocus(returnFocusNode);\n }\n onPostDeactivate?.();\n });\n };\n if (returnFocus && checkCanReturnFocus) {\n const returnFocusNode = this.getReturnFocusNode(this.state.nodeFocusedBeforeActivation);\n checkCanReturnFocus(returnFocusNode).then(finishDeactivation, finishDeactivation);\n return this;\n }\n finishDeactivation();\n return this;\n });\n __publicField(this, \"pause\", (pauseOptions) => {\n if (this.state.paused || !this.state.active) {\n return this;\n }\n const onPause = this.getOption(pauseOptions, \"onPause\");\n const onPostPause = this.getOption(pauseOptions, \"onPostPause\");\n this.state.paused = true;\n onPause?.();\n this.removeListeners();\n this.updateObservedNodes();\n onPostPause?.();\n return this;\n });\n __publicField(this, \"unpause\", (unpauseOptions) => {\n if (!this.state.paused || !this.state.active) {\n return this;\n }\n const onUnpause = this.getOption(unpauseOptions, \"onUnpause\");\n const onPostUnpause = this.getOption(unpauseOptions, \"onPostUnpause\");\n this.state.paused = false;\n onUnpause?.();\n this.updateTabbableNodes();\n this.addListeners();\n this.updateObservedNodes();\n onPostUnpause?.();\n return this;\n });\n __publicField(this, \"updateContainerElements\", (containerElements) => {\n this.state.containers = Array.isArray(containerElements) ? containerElements.filter(Boolean) : [containerElements].filter(Boolean);\n if (this.state.active) {\n this.updateTabbableNodes();\n }\n this.updateObservedNodes();\n return this;\n });\n __publicField(this, \"getReturnFocusNode\", (previousActiveElement) => {\n const node = this.getNodeForOption(\"setReturnFocus\", {\n params: [previousActiveElement]\n });\n return node ? node : node === false ? false : previousActiveElement;\n });\n __publicField(this, \"getOption\", (configOverrideOptions, optionName, configOptionName) => {\n return configOverrideOptions && configOverrideOptions[optionName] !== void 0 ? configOverrideOptions[optionName] : (\n // @ts-expect-error\n this.config[configOptionName || optionName]\n );\n });\n __publicField(this, \"getNodeForOption\", (optionName, { hasFallback = false, params = [] } = {}) => {\n let optionValue = this.config[optionName];\n if (typeof optionValue === \"function\") optionValue = optionValue(...params);\n if (optionValue === true) optionValue = void 0;\n if (!optionValue) {\n if (optionValue === void 0 || optionValue === false) {\n return optionValue;\n }\n throw new Error(`\\`${optionName}\\` was specified but was not a node, or did not return a node`);\n }\n let node = optionValue;\n if (typeof optionValue === \"string\") {\n try {\n node = this.doc.querySelector(optionValue);\n } catch (err) {\n throw new Error(`\\`${optionName}\\` appears to be an invalid selector; error=\"${err.message}\"`);\n }\n if (!node) {\n if (!hasFallback) {\n throw new Error(`\\`${optionName}\\` as selector refers to no known node`);\n }\n }\n }\n return node;\n });\n __publicField(this, \"findNextNavNode\", (opts) => {\n const { event, isBackward = false } = opts;\n const target = opts.target || getEventTarget(event);\n this.updateTabbableNodes();\n let destinationNode = null;\n if (this.state.tabbableGroups.length > 0) {\n const containerIndex = this.findContainerIndex(target, event);\n const containerGroup = containerIndex >= 0 ? this.state.containerGroups[containerIndex] : void 0;\n if (containerIndex < 0) {\n if (isBackward) {\n destinationNode = this.state.tabbableGroups[this.state.tabbableGroups.length - 1].lastTabbableNode;\n } else {\n destinationNode = this.state.tabbableGroups[0].firstTabbableNode;\n }\n } else if (isBackward) {\n let startOfGroupIndex = this.state.tabbableGroups.findIndex(\n ({ firstTabbableNode }) => target === firstTabbableNode\n );\n if (startOfGroupIndex < 0 && (containerGroup?.container === target || isFocusable(target) && !isTabbable(target) && !containerGroup?.nextTabbableNode(target, false))) {\n startOfGroupIndex = containerIndex;\n }\n if (startOfGroupIndex >= 0) {\n const destinationGroupIndex = startOfGroupIndex === 0 ? this.state.tabbableGroups.length - 1 : startOfGroupIndex - 1;\n const destinationGroup = this.state.tabbableGroups[destinationGroupIndex];\n destinationNode = getTabIndex(target) >= 0 ? destinationGroup.lastTabbableNode : destinationGroup.lastDomTabbableNode;\n } else if (!isTabEvent(event)) {\n destinationNode = containerGroup?.nextTabbableNode(target, false);\n }\n } else {\n let lastOfGroupIndex = this.state.tabbableGroups.findIndex(\n ({ lastTabbableNode }) => target === lastTabbableNode\n );\n if (lastOfGroupIndex < 0 && (containerGroup?.container === target || isFocusable(target) && !isTabbable(target) && !containerGroup?.nextTabbableNode(target))) {\n lastOfGroupIndex = containerIndex;\n }\n if (lastOfGroupIndex >= 0) {\n const destinationGroupIndex = lastOfGroupIndex === this.state.tabbableGroups.length - 1 ? 0 : lastOfGroupIndex + 1;\n const destinationGroup = this.state.tabbableGroups[destinationGroupIndex];\n destinationNode = getTabIndex(target) >= 0 ? destinationGroup.firstTabbableNode : destinationGroup.firstDomTabbableNode;\n } else if (!isTabEvent(event)) {\n destinationNode = containerGroup?.nextTabbableNode(target);\n }\n }\n } else {\n destinationNode = this.getNodeForOption(\"fallbackFocus\");\n }\n return destinationNode;\n });\n this.trapStack = options.trapStack || sharedTrapStack;\n const config = {\n returnFocusOnDeactivate: true,\n escapeDeactivates: true,\n delayInitialFocus: true,\n isKeyForward(e) {\n return isTabEvent(e) && !e.shiftKey;\n },\n isKeyBackward(e) {\n return isTabEvent(e) && e.shiftKey;\n },\n ...options\n };\n this.doc = config.document || getDocument(Array.isArray(elements) ? elements[0] : elements);\n this.config = config;\n this.updateContainerElements(elements);\n this.setupMutationObserver();\n }\n get active() {\n return this.state.active;\n }\n get paused() {\n return this.state.paused;\n }\n findContainerIndex(element, event) {\n const composedPath = typeof event?.composedPath === \"function\" ? event.composedPath() : void 0;\n return this.state.containerGroups.findIndex(\n ({ container, tabbableNodes }) => container.contains(element) || composedPath?.includes(container) || tabbableNodes.find((node) => node === element)\n );\n }\n updateTabbableNodes() {\n this.state.containerGroups = this.state.containers.map((container) => {\n const tabbableNodes = getTabbables(container);\n const focusableNodes = getFocusables(container);\n const firstTabbableNode = tabbableNodes.length > 0 ? tabbableNodes[0] : void 0;\n const lastTabbableNode = tabbableNodes.length > 0 ? tabbableNodes[tabbableNodes.length - 1] : void 0;\n const firstDomTabbableNode = focusableNodes.find((node) => isTabbable(node));\n const lastDomTabbableNode = focusableNodes.slice().reverse().find((node) => isTabbable(node));\n const posTabIndexesFound = !!tabbableNodes.find((node) => getTabIndex(node) > 0);\n function nextTabbableNode(node, forward = true) {\n const nodeIdx = tabbableNodes.indexOf(node);\n if (nodeIdx < 0) {\n if (forward) {\n return focusableNodes.slice(focusableNodes.indexOf(node) + 1).find((el) => isTabbable(el));\n }\n return focusableNodes.slice(0, focusableNodes.indexOf(node)).reverse().find((el) => isTabbable(el));\n }\n return tabbableNodes[nodeIdx + (forward ? 1 : -1)];\n }\n return {\n container,\n tabbableNodes,\n focusableNodes,\n posTabIndexesFound,\n firstTabbableNode,\n lastTabbableNode,\n firstDomTabbableNode,\n lastDomTabbableNode,\n nextTabbableNode\n };\n });\n this.state.tabbableGroups = this.state.containerGroups.filter((group) => group.tabbableNodes.length > 0);\n if (this.state.tabbableGroups.length <= 0 && !this.getNodeForOption(\"fallbackFocus\")) {\n throw new Error(\n \"Your focus-trap must have at least one container with at least one tabbable node in it at all times\"\n );\n }\n if (this.state.containerGroups.find((g) => g.posTabIndexesFound) && this.state.containerGroups.length > 1) {\n throw new Error(\n \"At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.\"\n );\n }\n }\n addListeners() {\n if (!this.state.active) return;\n activeFocusTraps.activateTrap(this.trapStack, this);\n this.state.delayInitialFocusTimer = this.config.delayInitialFocus ? delay(() => {\n this.tryFocus(this.getInitialFocusNode());\n }) : this.tryFocus(this.getInitialFocusNode());\n this.listenerCleanups.push(\n addDomEvent(this.doc, \"focusin\", this.handleFocus, true),\n addDomEvent(this.doc, \"mousedown\", this.handlePointerDown, { capture: true, passive: false }),\n addDomEvent(this.doc, \"touchstart\", this.handlePointerDown, { capture: true, passive: false }),\n addDomEvent(this.doc, \"click\", this.handleClick, { capture: true, passive: false }),\n addDomEvent(this.doc, \"keydown\", this.handleTabKey, { capture: true, passive: false }),\n addDomEvent(this.doc, \"keydown\", this.handleEscapeKey)\n );\n return this;\n }\n removeListeners() {\n if (!this.state.active) return;\n this.listenerCleanups.forEach((cleanup) => cleanup());\n this.listenerCleanups = [];\n return this;\n }\n activate(activateOptions) {\n if (this.state.active) {\n return this;\n }\n const onActivate = this.getOption(activateOptions, \"onActivate\");\n const onPostActivate = this.getOption(activateOptions, \"onPostActivate\");\n const checkCanFocusTrap = this.getOption(activateOptions, \"checkCanFocusTrap\");\n if (!checkCanFocusTrap) {\n this.updateTabbableNodes();\n }\n this.state.active = true;\n this.state.paused = false;\n this.state.nodeFocusedBeforeActivation = this.doc.activeElement || null;\n onActivate?.();\n const finishActivation = () => {\n if (checkCanFocusTrap) {\n this.updateTabbableNodes();\n }\n this.addListeners();\n this.updateObservedNodes();\n onPostActivate?.();\n };\n if (checkCanFocusTrap) {\n checkCanFocusTrap(this.state.containers.concat()).then(finishActivation, finishActivation);\n return this;\n }\n finishActivation();\n return this;\n }\n};\nvar isTabEvent = (event) => event.key === \"Tab\";\nvar valueOrHandler = (value, ...params) => typeof value === \"function\" ? value(...params) : value;\nvar isEscapeEvent = (event) => !event.isComposing && event.key === \"Escape\";\nvar delay = (fn) => setTimeout(fn, 0);\nvar isSelectableInput = (node) => node.localName === \"input\" && \"select\" in node && typeof node.select === \"function\";\n\n// src/index.ts\nfunction trapFocus(el, options = {}) {\n let trap;\n const cleanup = raf(() => {\n const contentEl = typeof el === \"function\" ? el() : el;\n if (!contentEl) return;\n trap = new FocusTrap(contentEl, {\n escapeDeactivates: false,\n allowOutsideClick: true,\n preventScroll: true,\n returnFocusOnDeactivate: true,\n delayInitialFocus: false,\n fallbackFocus: contentEl,\n ...options,\n document: getDocument(contentEl)\n });\n try {\n trap.activate();\n } catch {\n }\n });\n return function destroy() {\n trap?.deactivate();\n cleanup();\n };\n}\n\nexport { FocusTrap, trapFocus };\n","import { setStyleProperty, setStyle, isIos } from '@zag-js/dom-query';\n\n// src/index.ts\nvar LOCK_CLASSNAME = \"data-scroll-lock\";\nfunction getPaddingProperty(documentElement) {\n const documentLeft = documentElement.getBoundingClientRect().left;\n const scrollbarX = Math.round(documentLeft) + documentElement.scrollLeft;\n return scrollbarX ? \"paddingLeft\" : \"paddingRight\";\n}\nfunction preventBodyScroll(_document) {\n const doc = _document ?? document;\n const win = doc.defaultView ?? window;\n const { documentElement, body } = doc;\n const locked = body.hasAttribute(LOCK_CLASSNAME);\n if (locked) return;\n const scrollbarWidth = win.innerWidth - documentElement.clientWidth;\n body.setAttribute(LOCK_CLASSNAME, \"\");\n const setScrollbarWidthProperty = () => setStyleProperty(documentElement, \"--scrollbar-width\", `${scrollbarWidth}px`);\n const paddingProperty = getPaddingProperty(documentElement);\n const setBodyStyle = () => setStyle(body, {\n overflow: \"hidden\",\n [paddingProperty]: `${scrollbarWidth}px`\n });\n const setBodyStyleIOS = () => {\n const { scrollX, scrollY, visualViewport } = win;\n const offsetLeft = visualViewport?.offsetLeft ?? 0;\n const offsetTop = visualViewport?.offsetTop ?? 0;\n const restoreStyle = setStyle(body, {\n position: \"fixed\",\n overflow: \"hidden\",\n top: `${-(scrollY - Math.floor(offsetTop))}px`,\n left: `${-(scrollX - Math.floor(offsetLeft))}px`,\n right: \"0\",\n [paddingProperty]: `${scrollbarWidth}px`\n });\n return () => {\n restoreStyle?.();\n win.scrollTo({ left: scrollX, top: scrollY, behavior: \"instant\" });\n };\n };\n const cleanups = [setScrollbarWidthProperty(), isIos() ? setBodyStyleIOS() : setBodyStyle()];\n return () => {\n cleanups.forEach((fn) => fn?.());\n body.removeAttribute(LOCK_CLASSNAME);\n };\n}\n\nexport { preventBodyScroll };\n","import { createAnatomy } from '@zag-js/anatomy';\nimport { ariaHidden } from '@zag-js/aria-hidden';\nimport { createMachine } from '@zag-js/core';\nimport { trackDismissableElement } from '@zag-js/dismissable';\nimport { raf, getComputedStyle } from '@zag-js/dom-query';\nimport { trapFocus } from '@zag-js/focus-trap';\nimport { preventBodyScroll } from '@zag-js/remove-scroll';\nimport { createProps } from '@zag-js/types';\nimport { createSplitProps } from '@zag-js/utils';\n\n// src/dialog.anatomy.ts\nvar anatomy = createAnatomy(\"dialog\").parts(\n \"trigger\",\n \"backdrop\",\n \"positioner\",\n \"content\",\n \"title\",\n \"description\",\n \"closeTrigger\"\n);\nvar parts = anatomy.build();\n\n// src/dialog.dom.ts\nvar getPositionerId = (ctx) => ctx.ids?.positioner ?? `dialog:${ctx.id}:positioner`;\nvar getBackdropId = (ctx) => ctx.ids?.backdrop ?? `dialog:${ctx.id}:backdrop`;\nvar getContentId = (ctx) => ctx.ids?.content ?? `dialog:${ctx.id}:content`;\nvar getTriggerId = (ctx) => ctx.ids?.trigger ?? `dialog:${ctx.id}:trigger`;\nvar getTitleId = (ctx) => ctx.ids?.title ?? `dialog:${ctx.id}:title`;\nvar getDescriptionId = (ctx) => ctx.ids?.description ?? `dialog:${ctx.id}:description`;\nvar getCloseTriggerId = (ctx) => ctx.ids?.closeTrigger ?? `dialog:${ctx.id}:close`;\nvar getContentEl = (ctx) => ctx.getById(getContentId(ctx));\nvar getPositionerEl = (ctx) => ctx.getById(getPositionerId(ctx));\nvar getBackdropEl = (ctx) => ctx.getById(getBackdropId(ctx));\nvar getTriggerEl = (ctx) => ctx.getById(getTriggerId(ctx));\nvar getTitleEl = (ctx) => ctx.getById(getTitleId(ctx));\nvar getDescriptionEl = (ctx) => ctx.getById(getDescriptionId(ctx));\nvar getCloseTriggerEl = (ctx) => ctx.getById(getCloseTriggerId(ctx));\n\n// src/dialog.connect.ts\nfunction connect(service, normalize) {\n const { state, send, context, prop, scope } = service;\n const ariaLabel = prop(\"aria-label\");\n const open = state.matches(\"open\");\n return {\n open,\n setOpen(nextOpen) {\n const open2 = state.matches(\"open\");\n if (open2 === nextOpen) return;\n send({ type: nextOpen ? \"OPEN\" : \"CLOSE\" });\n },\n getTriggerProps() {\n return normalize.button({\n ...parts.trigger.attrs,\n dir: prop(\"dir\"),\n id: getTriggerId(scope),\n \"aria-haspopup\": \"dialog\",\n type: \"button\",\n \"aria-expanded\": open,\n \"data-state\": open ? \"open\" : \"closed\",\n \"aria-controls\": getContentId(scope),\n onClick(event) {\n if (event.defaultPrevented) return;\n send({ type: \"TOGGLE\" });\n }\n });\n },\n getBackdropProps() {\n return normalize.element({\n ...parts.backdrop.attrs,\n dir: prop(\"dir\"),\n hidden: !open,\n id: getBackdropId(scope),\n \"data-state\": open ? \"open\" : \"closed\"\n });\n },\n getPositionerProps() {\n return normalize.element({\n ...parts.positioner.attrs,\n dir: prop(\"dir\"),\n id: getPositionerId(scope),\n style: {\n pointerEvents: open ? void 0 : \"none\"\n }\n });\n },\n getContentProps() {\n const rendered = context.get(\"rendered\");\n return normalize.element({\n ...parts.content.attrs,\n dir: prop(\"dir\"),\n role: prop(\"role\"),\n hidden: !open,\n id: getContentId(scope),\n tabIndex: -1,\n \"data-state\": open ? \"open\" : \"closed\",\n \"aria-modal\": true,\n \"aria-label\": ariaLabel || void 0,\n \"aria-labelledby\": ariaLabel || !rendered.title ? void 0 : getTitleId(scope),\n \"aria-describedby\": rendered.description ? getDescriptionId(scope) : void 0\n });\n },\n getTitleProps() {\n return normalize.element({\n ...parts.title.attrs,\n dir: prop(\"dir\"),\n id: getTitleId(scope)\n });\n },\n getDescriptionProps() {\n return normalize.element({\n ...parts.description.attrs,\n dir: prop(\"dir\"),\n id: getDescriptionId(scope)\n });\n },\n getCloseTriggerProps() {\n return normalize.button({\n ...parts.closeTrigger.attrs,\n dir: prop(\"dir\"),\n id: getCloseTriggerId(scope),\n type: \"button\",\n onClick(event) {\n if (event.defaultPrevented) return;\n event.stopPropagation();\n send({ type: \"CLOSE\" });\n }\n });\n }\n };\n}\nvar machine = createMachine({\n props({ props: props2, scope }) {\n const alertDialog = props2.role === \"alertdialog\";\n const initialFocusEl = alertDialog ? () => getCloseTriggerEl(scope) : void 0;\n const modal = typeof props2.modal === \"boolean\" ? props2.modal : true;\n return {\n role: \"dialog\",\n modal,\n trapFocus: modal,\n preventScroll: modal,\n closeOnInteractOutside: !alertDialog,\n closeOnEscape: true,\n restoreFocus: true,\n initialFocusEl,\n ...props2\n };\n },\n initialState({ prop }) {\n const open = prop(\"open\") || prop(\"defaultOpen\");\n return open ? \"open\" : \"closed\";\n },\n context({ bindable }) {\n return {\n rendered: bindable(() => ({\n defaultValue: { title: true, description: true }\n }))\n };\n },\n watch({ track, action, prop }) {\n track([() => prop(\"open\")], () => {\n action([\"toggleVisibility\"]);\n });\n },\n states: {\n open: {\n entry: [\"checkRenderedElements\", \"syncZIndex\"],\n effects: [\"trackDismissableElement\", \"trapFocus\", \"preventScroll\", \"hideContentBelow\"],\n on: {\n \"CONTROLLED.CLOSE\": {\n target: \"closed\"\n },\n CLOSE: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"closed\",\n actions: [\"invokeOnClose\"]\n }\n ],\n TOGGLE: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"closed\",\n actions: [\"invokeOnClose\"]\n }\n ]\n }\n },\n closed: {\n on: {\n \"CONTROLLED.OPEN\": {\n target: \"open\"\n },\n OPEN: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"invokeOnOpen\"]\n }\n ],\n TOGGLE: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"invokeOnOpen\"]\n }\n ]\n }\n }\n },\n implementations: {\n guards: {\n isOpenControlled: ({ prop }) => prop(\"open\") != void 0\n },\n effects: {\n trackDismissableElement({ scope, send, prop }) {\n const getContentEl2 = () => getContentEl(scope);\n return trackDismissableElement(getContentEl2, {\n defer: true,\n pointerBlocking: prop(\"modal\"),\n exclude: [getTriggerEl(scope)],\n onInteractOutside(event) {\n prop(\"onInteractOutside\")?.(event);\n if (!prop(\"closeOnInteractOutside\")) {\n event.preventDefault();\n }\n },\n persistentElements: prop(\"persistentElements\"),\n onFocusOutside: prop(\"onFocusOutside\"),\n onPointerDownOutside: prop(\"onPointerDownOutside\"),\n onRequestDismiss: prop(\"onRequestDismiss\"),\n onEscapeKeyDown(event) {\n prop(\"onEscapeKeyDown\")?.(event);\n if (!prop(\"closeOnEscape\")) {\n event.preventDefault();\n }\n },\n onDismiss() {\n send({ type: \"CLOSE\", src: \"interact-outside\" });\n }\n });\n },\n preventScroll({ scope, prop }) {\n if (!prop(\"preventScroll\")) return;\n return preventBodyScroll(scope.getDoc());\n },\n trapFocus({ scope, prop }) {\n if (!prop(\"trapFocus\")) return;\n const contentEl = () => getContentEl(scope);\n return trapFocus(contentEl, {\n preventScroll: true,\n returnFocusOnDeactivate: !!prop(\"restoreFocus\"),\n initialFocus: prop(\"initialFocusEl\"),\n setReturnFocus: (el) => prop(\"finalFocusEl\")?.() ?? el\n });\n },\n hideContentBelow({ scope, prop }) {\n if (!prop(\"modal\")) return;\n const getElements = () => [getContentEl(scope)];\n return ariaHidden(getElements, { defer: true });\n }\n },\n actions: {\n checkRenderedElements({ context, scope }) {\n raf(() => {\n context.set(\"rendered\", {\n title: !!getTitleEl(scope),\n description: !!getDescriptionEl(scope)\n });\n });\n },\n syncZIndex({ scope }) {\n raf(() => {\n const contentEl = getContentEl(scope);\n if (!contentEl) return;\n const styles = getComputedStyle(contentEl);\n const elems = [getPositionerEl(scope), getBackdropEl(scope)];\n elems.forEach((node) => {\n node?.style.setProperty(\"--z-index\", styles.zIndex);\n node?.style.setProperty(\"--layer-index\", styles.getPropertyValue(\"--layer-index\"));\n });\n });\n },\n invokeOnClose({ prop }) {\n prop(\"onOpenChange\")?.({ open: false });\n },\n invokeOnOpen({ prop }) {\n prop(\"onOpenChange\")?.({ open: true });\n },\n toggleVisibility({ prop, send, event }) {\n send({\n type: prop(\"open\") ? \"CONTROLLED.OPEN\" : \"CONTROLLED.CLOSE\",\n previousEvent: event\n });\n }\n }\n }\n});\nvar props = createProps()([\n \"aria-label\",\n \"closeOnEscape\",\n \"closeOnInteractOutside\",\n \"dir\",\n \"finalFocusEl\",\n \"getRootNode\",\n \"getRootNode\",\n \"id\",\n \"id\",\n \"ids\",\n \"initialFocusEl\",\n \"modal\",\n \"onEscapeKeyDown\",\n \"onFocusOutside\",\n \"onInteractOutside\",\n \"onOpenChange\",\n \"onPointerDownOutside\",\n \"onRequestDismiss\",\n \"defaultOpen\",\n \"open\",\n \"persistentElements\",\n \"preventScroll\",\n \"restoreFocus\",\n \"role\",\n \"trapFocus\"\n]);\nvar splitProps = createSplitProps(props);\n\nexport { anatomy, connect, machine, props, splitProps };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [EnvironmentContextProvider, useEnvironmentContext] = createContext({\n name: \"EnvironmentContext\",\n hookName: \"useEnvironmentContext\",\n providerName: \"<EnvironmentProvider />\",\n strict: false,\n defaultValue: {\n getRootNode: () => document,\n getDocument: () => document,\n getWindow: () => window\n }\n});\n\nexport { EnvironmentContextProvider, useEnvironmentContext };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [LocaleContextProvider, useLocaleContext] = createContext({\n name: \"LocaleContext\",\n hookName: \"useLocaleContext\",\n providerName: \"<LocaleProvider />\",\n strict: false,\n defaultValue: { dir: \"ltr\", locale: \"en-US\" }\n});\n\nexport { LocaleContextProvider, useLocaleContext };\n","'use client';\nimport * as dialog from '@zag-js/dialog';\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 useDialog = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const machineProps = {\n id,\n getRootNode,\n dir,\n ...props\n };\n const service = useMachine(dialog.machine, machineProps);\n return dialog.connect(service, normalizeProps);\n};\n\nexport { useDialog };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { splitRenderStrategyProps, RenderStrategyPropsProvider } from '../../utils/render-strategy.js';\nimport { splitPresenceProps } from '../presence/split-presence-props.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useDialog } from './use-dialog.js';\nimport { DialogProvider } from './use-dialog-context.js';\n\nconst DialogRoot = (props) => {\n const [presenceProps, { children, ...localProps }] = splitPresenceProps(props);\n const [renderStrategyProps] = splitRenderStrategyProps(presenceProps);\n const dialog = useDialog(localProps);\n const presence = usePresence(mergeProps({ present: dialog.open }, presenceProps));\n return /* @__PURE__ */ jsx(DialogProvider, { value: dialog, children: /* @__PURE__ */ jsx(RenderStrategyPropsProvider, { value: renderStrategyProps, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presence, children }) }) });\n};\n\nexport { DialogRoot };\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 { useDialogContext } from './use-dialog-context.js';\n\nconst DialogTitle = forwardRef((props, ref) => {\n const dialog = useDialogContext();\n const mergedProps = mergeProps(dialog.getTitleProps(), props);\n return /* @__PURE__ */ jsx(ark.h2, { ...mergedProps, ref });\n});\nDialogTitle.displayName = \"DialogTitle\";\n\nexport { DialogTitle };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useDialogContext } from './use-dialog-context.js';\n\nconst DialogTrigger = forwardRef((props, ref) => {\n const dialog = useDialogContext();\n const presence = usePresenceContext();\n const mergedProps = mergeProps(\n {\n ...dialog.getTriggerProps(),\n \"aria-controls\": presence.unmounted ? void 0 : dialog.getTriggerProps()[\"aria-controls\"]\n },\n props\n );\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nDialogTrigger.displayName = \"DialogTrigger\";\n\nexport { DialogTrigger };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { Dialog, useDialogContext } from '@ark-ui/react/dialog';\nimport { forwardRef } from 'react';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { chakra } from '../../styled-system/factory.js';\n\nconst {\n withRootProvider,\n withContext,\n useStyles: useDialogStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"dialog\" });\nconst DialogRootProvider = withRootProvider(\n Dialog.RootProvider,\n {\n defaultProps: { unmountOnExit: true, lazyMount: true }\n }\n);\nconst DialogRoot = withRootProvider(Dialog.Root, {\n defaultProps: { unmountOnExit: true, lazyMount: true }\n});\nconst DialogPropsProvider = PropsProvider;\nconst DialogTrigger = withContext(\n Dialog.Trigger,\n \"trigger\",\n { forwardAsChild: true }\n);\nconst DialogPositioner = withContext(Dialog.Positioner, \"positioner\", { forwardAsChild: true });\nconst DialogContent = withContext(\n Dialog.Content,\n \"content\",\n { forwardAsChild: true }\n);\nconst DialogDescription = withContext(Dialog.Description, \"description\", { forwardAsChild: true });\nconst DialogTitle = withContext(\n Dialog.Title,\n \"title\",\n { forwardAsChild: true }\n);\nconst DialogCloseTrigger = withContext(Dialog.CloseTrigger, \"closeTrigger\", { forwardAsChild: true });\nconst DialogActionTrigger = forwardRef(function DialogActionTrigger2(props, ref) {\n const dialog = useDialogContext();\n return /* @__PURE__ */ jsx(chakra.button, { ...props, ref, onClick: () => dialog.setOpen(false) });\n});\nconst DialogBackdrop = withContext(\n Dialog.Backdrop,\n \"backdrop\",\n { forwardAsChild: true }\n);\nconst DialogBody = withContext(\n \"div\",\n \"body\"\n);\nconst DialogFooter = withContext(\n \"div\",\n \"footer\"\n);\nconst DialogHeader = withContext(\n \"div\",\n \"header\"\n);\nconst DialogContext = Dialog.Context;\n\nexport { DialogActionTrigger, DialogBackdrop, DialogBody, DialogCloseTrigger, DialogContent, DialogContext, DialogDescription, DialogFooter, DialogHeader, DialogPositioner, DialogPropsProvider, DialogRoot, DialogRootProvider, DialogTitle, DialogTrigger, useDialogStyles };\n","'use client';\nimport { jsx, Fragment } from 'react/jsx-runtime';\nimport { isShadowRoot, getDocument } from '@zag-js/dom-query';\nimport { useState, useSyncExternalStore, useEffect, Children } from 'react';\nimport { createPortal } from 'react-dom';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\n\nconst Portal = (props) => {\n const { children, disabled } = props;\n const [container, setContainer] = useState(props.container?.current);\n const isServer = useSyncExternalStore(\n subscribe,\n () => false,\n () => true\n );\n const { getRootNode } = useEnvironmentContext();\n useEffect(() => {\n setContainer(() => props.container?.current);\n }, [props.container]);\n if (isServer || disabled) return /* @__PURE__ */ jsx(Fragment, { children });\n const mountNode = container ?? getPortalNode(getRootNode);\n return /* @__PURE__ */ jsx(Fragment, { children: Children.map(children, (child) => createPortal(child, mountNode)) });\n};\nconst getPortalNode = (cb) => {\n const node = cb?.();\n const rootNode = node.getRootNode();\n if (isShadowRoot(rootNode)) return rootNode;\n return getDocument(node).body;\n};\nconst subscribe = () => () => {\n};\n\nexport { Portal };\n","import { Dialog as ChakraDialog } from \"@chakra-ui/react/dialog\";\nimport { Portal } from \"@chakra-ui/react/portal\";\n\ninterface DialogContentProps extends ChakraDialog.ContentProps {\n portalled?: boolean;\n portalRef?: React.RefObject<HTMLElement>;\n backdrop?: boolean;\n ref?: React.Ref<HTMLDivElement>;\n}\n\nconst DialogContent = function DialogContent(props: DialogContentProps) {\n const {\n children,\n portalled = true,\n portalRef,\n backdrop = true,\n ref,\n ...rest\n } = props;\n\n return (\n <Portal disabled={!portalled} container={portalRef}>\n {backdrop && <ChakraDialog.Backdrop />}\n <ChakraDialog.Positioner>\n <ChakraDialog.Content ref={ref} {...rest} asChild={false}>\n {children}\n </ChakraDialog.Content>\n </ChakraDialog.Positioner>\n </Portal>\n );\n};\n\n// Create a type-safe composite object with explicit component definitions\ninterface DialogComponents {\n Root: typeof ChakraDialog.Root;\n Trigger: typeof ChakraDialog.Trigger;\n Content: typeof DialogContent;\n Backdrop: typeof ChakraDialog.Backdrop;\n Positioner: typeof ChakraDialog.Positioner;\n Title: typeof ChakraDialog.Title;\n Description: typeof ChakraDialog.Description;\n Body: typeof ChakraDialog.Body;\n Footer: typeof ChakraDialog.Footer;\n Header: typeof ChakraDialog.Header;\n CloseTrigger: typeof ChakraDialog.CloseTrigger;\n ActionTrigger: typeof ChakraDialog.ActionTrigger;\n}\n\n/**\n * # Dialog\n *\n * displays a dialog\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/feedback/dialog}\n *\n * @experimental This component is experimental and may change or be removed in future versions.\n */\n// Export the Dialog composite with proper typing\nexport const Dialog: DialogComponents = {\n Root: ChakraDialog.Root,\n Trigger: ChakraDialog.Trigger,\n Content: DialogContent,\n Backdrop: ChakraDialog.Backdrop,\n Positioner: ChakraDialog.Positioner,\n Title: ChakraDialog.Title,\n Description: ChakraDialog.Description,\n Body: ChakraDialog.Body,\n Footer: ChakraDialog.Footer,\n Header: ChakraDialog.Header,\n CloseTrigger: ChakraDialog.CloseTrigger,\n ActionTrigger: ChakraDialog.ActionTrigger,\n};\n"],"names":["toArray","v","isObjectLike","isString","isFunction","hasProp","obj","prop","baseGetTag","fnToString","objectCtorString","isPlainObject","isFrameworkElement","proto","Ctor","isReactElement","x","isVueElement","identity","callAll","fns","a","fn","compact","keys","key","filtered","value","warn","m","ensure","c","noop","isObject","ELEMENT_NODE","DOCUMENT_NODE","DOCUMENT_FRAGMENT_NODE","isHTMLElement","el","isDocument","isWindow","getNodeName","node","isRootElement","isNode","isShadowRoot","isInputElement","isElementVisible","TEXTAREA_SELECT_REGEX","isEditableElement","contains","parent","child","rootNode","next","getDocument","getDocumentElement","getWindow","getActiveElement","activeElement","getParentNode","result","styleCache","getComputedStyle","isDom","getPlatform","pt","isTouchDevice","isIPhone","isIPad","isMac","isIos","getComposedPath","event","getEventTarget","isContextMenuEvent","addDomEvent","target","eventName","handler","options","isFrame","hasTabIndex","hasNegativeTabIndex","focusableSelector","getFocusables","container","includeContainer","elements","isFocusable","focusableElements","element","frameBody","getTabbables","tabbableElements","isTabbable","i","allFrameTabbable","getTabIndex","nextTick","set","raf2","fn2","id","raf","cleanup","getNearestOverflowAncestor","parentNode","isOverflowElement","OVERFLOW_RE","nonOverflowValues","win","overflow","overflowX","overflowY","display","setStyle","style","prev","acc","setStyleProperty","waitForPromise","promise","controller","timeout","signal","resolve","reject","timeoutId","error","waitForElement","doc","observer","el2","clsx","args","str","CSS_REGEX","serialize","res","match","css","b","mergeProps","props","MachineStatus","MachineStatus2","INIT_STATE","createScope","getRootNode","getDoc","getWin","getActiveElementFn","elem","createNormalizer","_target","useSafeLayoutEffect","useLayoutEffect","useEffect","useBindable","initial","eq","initialValue","useState","setValue","controlled","valueRef","useRef","prevValue","setFn","value2","get","flushSync","nextValue","prevValue2","defaultValue","useRefs","refs","ref","useTrack","deps","effect","render","called","d","useMachine","machine","userProps","scope","useMemo","ids","debug","useProp","context","flush","ctx","computed","getEvent","contextRef","useLiveRef","current","effects","transitionRef","previousEventRef","eventRef","getState","state","values","tag","getParams","send","action","guard","choose","strs","s","cleanups","transitions","t","nextState","prevState","cleanup2","hydratedStateRef","statusRef","started","initialState","currentState","getCurrentState","transition","changed","normalizeProps","composeRefs","cleanUps","cb","cleanUp","getErrorMessage","hook","provider","createContext","name","strict","hookName","providerName","errorMessage","Context","createContext$1","useContext$1","useContext","createSplitProps","previousValue","currentValue","source","RenderStrategyPropsProvider","useRenderStrategyPropsContext","splitRenderStrategyProps","getRef","getter","mayWarn","withAsChild","Component","Comp","memo","forwardRef","asChild","children","restProps","createElement","isValidElement","onlyChild","Children","childRef","cloneElement","jsxFactory","cache","_thisArg","argArray","_","asElement","ark","connect","service","_normalize","present","props2","bindable","track","presentProp","animationName","getAnimationName","onStart","onEnd","cleanupStyles","styles","useEvent","callback","opts","sync","callbackRef","useLatestRef","useCallback","usePresence","lazyMount","unmountOnExit","skipAnimationOnMount","rest","wasEverPresent","machineProps","presence.machine","api","presence.connect","unmounted","getPresenceProps","DialogProvider","useDialogContext","DialogBackdrop","dialog","renderStrategyProps","presence","mergedProps","jsx","DialogCloseTrigger","PresenceProvider","usePresenceContext","DialogContent","DialogDescription","DialogPositioner","splitPresenceProps","createAnatomy","parts","isEmpty","part","newName","toKebabCase","counterMap","uncontrolledNodes","markerMap","lockCount","unwrapHost","correctTargets","targets","correctedTarget","ignoreableNodes","isIgnoredNode","walkTreeOutside","originalTarget","markerName","controlAttribute","markerCounter","hiddenNodes","elementsToKeep","elementsToStop","keep","deep","alreadyHidden","counterValue","markerValue","e","hideOthers","frameId","ariaHidden","targetsOrFn","defer","func","getWindowFrames","frames","frame","listener","getParentWindow","POINTER_OUTSIDE_EVENT","FOCUS_OUTSIDE_EVENT","isComposedPathFocusable","composedPath","isPointerEvent","isEventPointWithin","rect","isPointInRect","point","isEventWithinScrollbar","ancestor","isScrollableY","onScrollbarY","isScrollableX","onScrollbarX","trackInteractOutsideImpl","exclude","onFocusOutside","onPointerDownOutside","onInteractOutside","parentWin","isEventOutside","triggerEl","triggerAncestor","nodeAncestor","pointerdownCleanups","isInShadowRoot","onPointerDown","clickEvent","evt","handler2","fireCustomEvent","timer","onFocusin","trackInteractOutside","nodeOrFn","type","init","trackEscapeKeydown","handleKeyDown","LAYER_REQUEST_DISMISS_EVENT","layerStack","layer","index","highestBlockingIndex","branch","addListenerOnce","detail","originalBodyPointerEvents","assignPointerEventToLayers","clearPointerEvent","disablePointerEventsOutside","persistentElements","abort","node2","trackDismissableElementImpl","warnOnMissingNode","onDismiss","onRequestDismiss","pointerBlocking","excludeContainers","onEscapeKeyDown","containers","_containers","trackDismissableElement","__defProp","__defNormalProp","__publicField","activeFocusTraps","trapStack","trap","activeTrap","trapIndex","sharedTrapStack","FocusTrap","targetContained","nextNode","navAcrossContainers","mruContainerIdx","tabbableNodes","mruTabIdx","g","n","valueOrHandler","isBackward","destinationNode","isTabEvent","isEscapeEvent","mutations","mutation","firstTabbableGroup","isSelectableInput","deactivateOptions","onDeactivate","onPostDeactivate","checkCanReturnFocus","returnFocus","finishDeactivation","delay","returnFocusNode","pauseOptions","onPause","onPostPause","unpauseOptions","onUnpause","onPostUnpause","containerElements","previousActiveElement","configOverrideOptions","optionName","configOptionName","hasFallback","params","optionValue","err","containerIndex","containerGroup","startOfGroupIndex","firstTabbableNode","destinationGroupIndex","destinationGroup","lastOfGroupIndex","lastTabbableNode","config","focusableNodes","firstDomTabbableNode","lastDomTabbableNode","posTabIndexesFound","nextTabbableNode","forward","nodeIdx","group","activateOptions","onActivate","onPostActivate","checkCanFocusTrap","finishActivation","trapFocus","contentEl","LOCK_CLASSNAME","getPaddingProperty","documentElement","documentLeft","preventBodyScroll","_document","body","scrollbarWidth","setScrollbarWidthProperty","paddingProperty","setBodyStyle","setBodyStyleIOS","scrollX","scrollY","visualViewport","offsetLeft","offsetTop","restoreStyle","anatomy","getPositionerId","getBackdropId","getContentId","getTriggerId","getTitleId","getDescriptionId","getCloseTriggerId","getContentEl","getPositionerEl","getBackdropEl","getTriggerEl","getTitleEl","getDescriptionEl","getCloseTriggerEl","normalize","ariaLabel","open","nextOpen","rendered","alertDialog","initialFocusEl","modal","EnvironmentContextProvider","useEnvironmentContext","LocaleContextProvider","useLocaleContext","useDialog","useId","dir","dialog.machine","dialog.connect","DialogRoot","presenceProps","localProps","DialogTitle","DialogTrigger","withRootProvider","withContext","createSlotRecipeContext","Dialog.Root","Dialog.Trigger","Dialog.Positioner","Dialog.Content","Dialog.Description","Dialog.Title","Dialog.CloseTrigger","DialogActionTrigger","chakra","Dialog.Backdrop","DialogBody","DialogFooter","DialogHeader","Portal","disabled","setContainer","isServer","useSyncExternalStore","subscribe","Fragment","mountNode","getPortalNode","createPortal","portalled","portalRef","backdrop","ChakraDialog.Backdrop","ChakraDialog.Positioner","ChakraDialog.Content","Dialog","ChakraDialog.Root","ChakraDialog.Trigger","ChakraDialog.Title","ChakraDialog.Description","ChakraDialog.Body","ChakraDialog.Footer","ChakraDialog.Header","ChakraDialog.CloseTrigger","ChakraDialog.ActionTrigger"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35]}