agim-cli 1.2.152 → 1.2.153

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 (188) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/dist/web/public/assets/{a2a-DZL1sgVk.js → a2a-CIxNaIdE.js} +2 -2
  3. package/dist/web/public/assets/{a2a-DZL1sgVk.js.map → a2a-CIxNaIdE.js.map} +1 -1
  4. package/dist/web/public/assets/{activity-BsCuSHQd.js → activity-CrnWHC2j.js} +2 -2
  5. package/dist/web/public/assets/{activity-BsCuSHQd.js.map → activity-CrnWHC2j.js.map} +1 -1
  6. package/dist/web/public/assets/{admins-CyG_mVaa.js → admins-5BTRCU9u.js} +2 -2
  7. package/dist/web/public/assets/{admins-CyG_mVaa.js.map → admins-5BTRCU9u.js.map} +1 -1
  8. package/dist/web/public/assets/{agents-D2wSzcVZ.js → agents-B-s9gngh.js} +2 -2
  9. package/dist/web/public/assets/{agents-D2wSzcVZ.js.map → agents-B-s9gngh.js.map} +1 -1
  10. package/dist/web/public/assets/{approvals-C3uNQTdL.js → approvals-BSX2lsqu.js} +2 -2
  11. package/dist/web/public/assets/{approvals-C3uNQTdL.js.map → approvals-BSX2lsqu.js.map} +1 -1
  12. package/dist/web/public/assets/{arrow-down-CppegASc.js → arrow-down-D3lWOftw.js} +2 -2
  13. package/dist/web/public/assets/{arrow-down-CppegASc.js.map → arrow-down-D3lWOftw.js.map} +1 -1
  14. package/dist/web/public/assets/{arrow-up-8NH41ZQX.js → arrow-up-BGsin7FN.js} +2 -2
  15. package/dist/web/public/assets/{arrow-up-8NH41ZQX.js.map → arrow-up-BGsin7FN.js.map} +1 -1
  16. package/dist/web/public/assets/{asks-DiT_eq2x.js → asks-DfLaW3gA.js} +2 -2
  17. package/dist/web/public/assets/{asks-DiT_eq2x.js.map → asks-DfLaW3gA.js.map} +1 -1
  18. package/dist/web/public/assets/{audit-0T4jT2G0.js → audit-BWlwMCTk.js} +2 -2
  19. package/dist/web/public/assets/{audit-0T4jT2G0.js.map → audit-BWlwMCTk.js.map} +1 -1
  20. package/dist/web/public/assets/{bell-BoZsoN58.js → bell-Bf-FDztO.js} +2 -2
  21. package/dist/web/public/assets/{bell-BoZsoN58.js.map → bell-Bf-FDztO.js.map} +1 -1
  22. package/dist/web/public/assets/{bgjobs-DbHdPyhE.js → bgjobs-6dDxfEi7.js} +2 -2
  23. package/dist/web/public/assets/{bgjobs-DbHdPyhE.js.map → bgjobs-6dDxfEi7.js.map} +1 -1
  24. package/dist/web/public/assets/{brain-D-zbPJ7o.js → brain-Dl0NIztX.js} +2 -2
  25. package/dist/web/public/assets/{brain-D-zbPJ7o.js.map → brain-Dl0NIztX.js.map} +1 -1
  26. package/dist/web/public/assets/{briefcase-D3jWpfeB.js → briefcase-Bl6rZAmJ.js} +2 -2
  27. package/dist/web/public/assets/{briefcase-D3jWpfeB.js.map → briefcase-Bl6rZAmJ.js.map} +1 -1
  28. package/dist/web/public/assets/{chat-DrYeCiFH.js → chat-Cu8-EeJt.js} +2 -2
  29. package/dist/web/public/assets/{chat-DrYeCiFH.js.map → chat-Cu8-EeJt.js.map} +1 -1
  30. package/dist/web/public/assets/{chevron-left-D6-MKmUs.js → chevron-left-BtG3MZQX.js} +2 -2
  31. package/dist/web/public/assets/{chevron-left-D6-MKmUs.js.map → chevron-left-BtG3MZQX.js.map} +1 -1
  32. package/dist/web/public/assets/{chevron-right-CHtA6f0-.js → chevron-right-FytmF5Sd.js} +2 -2
  33. package/dist/web/public/assets/{chevron-right-CHtA6f0-.js.map → chevron-right-FytmF5Sd.js.map} +1 -1
  34. package/dist/web/public/assets/{circle-check-B9adx56J.js → circle-check-DggvG9Xs.js} +2 -2
  35. package/dist/web/public/assets/{circle-check-B9adx56J.js.map → circle-check-DggvG9Xs.js.map} +1 -1
  36. package/dist/web/public/assets/{circle-check-big-E1qhYcsu.js → circle-check-big-J5lVPTDz.js} +2 -2
  37. package/dist/web/public/assets/{circle-check-big-E1qhYcsu.js.map → circle-check-big-J5lVPTDz.js.map} +1 -1
  38. package/dist/web/public/assets/{circle-x-xB2tQMGw.js → circle-x-pYYyY1z2.js} +2 -2
  39. package/dist/web/public/assets/{circle-x-xB2tQMGw.js.map → circle-x-pYYyY1z2.js.map} +1 -1
  40. package/dist/web/public/assets/{clock-DFU9E0F0.js → clock-CQy6p5uP.js} +2 -2
  41. package/dist/web/public/assets/{clock-DFU9E0F0.js.map → clock-CQy6p5uP.js.map} +1 -1
  42. package/dist/web/public/assets/{confirm-dialog-C1w1040N.js → confirm-dialog-B3jno5Pb.js} +2 -2
  43. package/dist/web/public/assets/{confirm-dialog-C1w1040N.js.map → confirm-dialog-B3jno5Pb.js.map} +1 -1
  44. package/dist/web/public/assets/{copy-UOTkO-2l.js → copy-BK_JexVU.js} +2 -2
  45. package/dist/web/public/assets/{copy-UOTkO-2l.js.map → copy-BK_JexVU.js.map} +1 -1
  46. package/dist/web/public/assets/{data-table-CBTDQyFx.js → data-table-C3oIPQ_B.js} +2 -2
  47. package/dist/web/public/assets/{data-table-CBTDQyFx.js.map → data-table-C3oIPQ_B.js.map} +1 -1
  48. package/dist/web/public/assets/dialog-nb4ANHd4.js +2 -0
  49. package/dist/web/public/assets/dialog-nb4ANHd4.js.map +1 -0
  50. package/dist/web/public/assets/{download-BzDp4OCu.js → download-DtvF6Ngb.js} +2 -2
  51. package/dist/web/public/assets/{download-BzDp4OCu.js.map → download-DtvF6Ngb.js.map} +1 -1
  52. package/dist/web/public/assets/{email-BDd0tUm1.js → email-6PldVxPe.js} +2 -2
  53. package/dist/web/public/assets/{email-BDd0tUm1.js.map → email-6PldVxPe.js.map} +1 -1
  54. package/dist/web/public/assets/{empty-state-CKPzKsI5.js → empty-state-esNZG4Xa.js} +2 -2
  55. package/dist/web/public/assets/{empty-state-CKPzKsI5.js.map → empty-state-esNZG4Xa.js.map} +1 -1
  56. package/dist/web/public/assets/{external-link-Cx0ulEkb.js → external-link-Bzl-4lM6.js} +2 -2
  57. package/dist/web/public/assets/{external-link-Cx0ulEkb.js.map → external-link-Bzl-4lM6.js.map} +1 -1
  58. package/dist/web/public/assets/{eye-D9PD2xVj.js → eye-Cpc4c8vR.js} +2 -2
  59. package/dist/web/public/assets/{eye-D9PD2xVj.js.map → eye-Cpc4c8vR.js.map} +1 -1
  60. package/dist/web/public/assets/{facts-CRpGEODt.js → facts-CAc-sdKE.js} +2 -2
  61. package/dist/web/public/assets/{facts-CRpGEODt.js.map → facts-CAc-sdKE.js.map} +1 -1
  62. package/dist/web/public/assets/{goals-pyF71sFT.js → goals-iarR52LZ.js} +2 -2
  63. package/dist/web/public/assets/{goals-pyF71sFT.js.map → goals-iarR52LZ.js.map} +1 -1
  64. package/dist/web/public/assets/{health-_YLm7LIW.js → health-DPiNRwJP.js} +2 -2
  65. package/dist/web/public/assets/{health-_YLm7LIW.js.map → health-DPiNRwJP.js.map} +1 -1
  66. package/dist/web/public/assets/{heart-pulse-DyxG9jqH.js → heart-pulse-DTcvh4ER.js} +2 -2
  67. package/dist/web/public/assets/{heart-pulse-DyxG9jqH.js.map → heart-pulse-DTcvh4ER.js.map} +1 -1
  68. package/dist/web/public/assets/{heartbeat-bZfXp6Vm.js → heartbeat-B8tcKFzJ.js} +2 -2
  69. package/dist/web/public/assets/{heartbeat-bZfXp6Vm.js.map → heartbeat-B8tcKFzJ.js.map} +1 -1
  70. package/dist/web/public/assets/{hot-CSwCgYXw.js → hot-CqLT7AGh.js} +2 -2
  71. package/dist/web/public/assets/{hot-CSwCgYXw.js.map → hot-CqLT7AGh.js.map} +1 -1
  72. package/dist/web/public/assets/{index-D5DvetP5.js → index-BjUyDXLb.js} +30 -30
  73. package/dist/web/public/assets/index-BjUyDXLb.js.map +1 -0
  74. package/dist/web/public/assets/{injection-CYjttllI.js → injection-U1ms-Jjs.js} +2 -2
  75. package/dist/web/public/assets/{injection-CYjttllI.js.map → injection-U1ms-Jjs.js.map} +1 -1
  76. package/dist/web/public/assets/{installed-C6eNPXLl.js → installed-8FN6LLKG.js} +2 -2
  77. package/dist/web/public/assets/{installed-C6eNPXLl.js.map → installed-8FN6LLKG.js.map} +1 -1
  78. package/dist/web/public/assets/{jobs-CKQvijeH.js → jobs-B-MU_dkD.js} +2 -2
  79. package/dist/web/public/assets/{jobs-CKQvijeH.js.map → jobs-B-MU_dkD.js.map} +1 -1
  80. package/dist/web/public/assets/{layout-2S0YMTH_.js → layout-BVI4tkRG.js} +2 -2
  81. package/dist/web/public/assets/{layout-2S0YMTH_.js.map → layout-BVI4tkRG.js.map} +1 -1
  82. package/dist/web/public/assets/{layout-C9vch6up.js → layout-BgmJrSOb.js} +2 -2
  83. package/dist/web/public/assets/{layout-C9vch6up.js.map → layout-BgmJrSOb.js.map} +1 -1
  84. package/dist/web/public/assets/{layout-BQGP-bci.js → layout-CnddsqFT.js} +2 -2
  85. package/dist/web/public/assets/{layout-BQGP-bci.js.map → layout-CnddsqFT.js.map} +1 -1
  86. package/dist/web/public/assets/{layout-Y4GA9SyV.js → layout-DMOpWAPw.js} +2 -2
  87. package/dist/web/public/assets/{layout-Y4GA9SyV.js.map → layout-DMOpWAPw.js.map} +1 -1
  88. package/dist/web/public/assets/{layout-C4RTH7Mc.js → layout-DfE74Z47.js} +2 -2
  89. package/dist/web/public/assets/{layout-C4RTH7Mc.js.map → layout-DfE74Z47.js.map} +1 -1
  90. package/dist/web/public/assets/{llm-CJvopUnt.js → llm-5HpT83y2.js} +2 -2
  91. package/dist/web/public/assets/{llm-CJvopUnt.js.map → llm-5HpT83y2.js.map} +1 -1
  92. package/dist/web/public/assets/{loader-circle-CgLbYd3g.js → loader-circle-MnTMknNl.js} +2 -2
  93. package/dist/web/public/assets/{loader-circle-CgLbYd3g.js.map → loader-circle-MnTMknNl.js.map} +1 -1
  94. package/dist/web/public/assets/{map-pin-CdHDC52F.js → map-pin-BA0GTiIe.js} +2 -2
  95. package/dist/web/public/assets/{map-pin-CdHDC52F.js.map → map-pin-BA0GTiIe.js.map} +1 -1
  96. package/dist/web/public/assets/{mcp-SI73JwZR.js → mcp-C71xI5JH.js} +2 -2
  97. package/dist/web/public/assets/{mcp-SI73JwZR.js.map → mcp-C71xI5JH.js.map} +1 -1
  98. package/dist/web/public/assets/memos-BAuv2jwD.js +12 -0
  99. package/dist/web/public/assets/memos-BAuv2jwD.js.map +1 -0
  100. package/dist/web/public/assets/{messengers-CUz9DXB5.js → messengers-CmW1ts2s.js} +2 -2
  101. package/dist/web/public/assets/{messengers-CUz9DXB5.js.map → messengers-CmW1ts2s.js.map} +1 -1
  102. package/dist/web/public/assets/{mobile-CrdzyGXr.js → mobile-DpxLpRIf.js} +2 -2
  103. package/dist/web/public/assets/{mobile-CrdzyGXr.js.map → mobile-DpxLpRIf.js.map} +1 -1
  104. package/dist/web/public/assets/{native-agent-g8BpqzAo.js → native-agent-CNUBixLm.js} +2 -2
  105. package/dist/web/public/assets/{native-agent-g8BpqzAo.js.map → native-agent-CNUBixLm.js.map} +1 -1
  106. package/dist/web/public/assets/{network-DcpeRx8a.js → network-DVRgX5Mm.js} +2 -2
  107. package/dist/web/public/assets/{network-DcpeRx8a.js.map → network-DVRgX5Mm.js.map} +1 -1
  108. package/dist/web/public/assets/{outbox-uR6crgVJ.js → outbox-C8Gc0aa0.js} +2 -2
  109. package/dist/web/public/assets/{outbox-uR6crgVJ.js.map → outbox-C8Gc0aa0.js.map} +1 -1
  110. package/dist/web/public/assets/{pagination-CxK3lTYb.js → pagination-BWgXaluu.js} +2 -2
  111. package/dist/web/public/assets/{pagination-CxK3lTYb.js.map → pagination-BWgXaluu.js.map} +1 -1
  112. package/dist/web/public/assets/{persona-B1k5tc4U.js → persona--zQXx4oA.js} +2 -2
  113. package/dist/web/public/assets/{persona-B1k5tc4U.js.map → persona--zQXx4oA.js.map} +1 -1
  114. package/dist/web/public/assets/{plans-BWQSahSt.js → plans-mluEj2nt.js} +2 -2
  115. package/dist/web/public/assets/{plans-BWQSahSt.js.map → plans-mluEj2nt.js.map} +1 -1
  116. package/dist/web/public/assets/{play-D2VxB3QN.js → play-BLIwYTvQ.js} +2 -2
  117. package/dist/web/public/assets/{play-D2VxB3QN.js.map → play-BLIwYTvQ.js.map} +1 -1
  118. package/dist/web/public/assets/{plus-_XZVk5F_.js → plus-BOfhZkjh.js} +2 -2
  119. package/dist/web/public/assets/{plus-_XZVk5F_.js.map → plus-BOfhZkjh.js.map} +1 -1
  120. package/dist/web/public/assets/{policy-D77IdVzS.js → policy-C8CPYuH5.js} +2 -2
  121. package/dist/web/public/assets/{policy-D77IdVzS.js.map → policy-C8CPYuH5.js.map} +1 -1
  122. package/dist/web/public/assets/{qr-code-glvcd_3g.js → qr-code-CfdRXZZD.js} +2 -2
  123. package/dist/web/public/assets/{qr-code-glvcd_3g.js.map → qr-code-CfdRXZZD.js.map} +1 -1
  124. package/dist/web/public/assets/{refresh-ccw-MfejQvU6.js → refresh-ccw--XT-lrCo.js} +2 -2
  125. package/dist/web/public/assets/{refresh-ccw-MfejQvU6.js.map → refresh-ccw--XT-lrCo.js.map} +1 -1
  126. package/dist/web/public/assets/{reminders-CtKa3ECr.js → reminders-DJkMBSTZ.js} +2 -2
  127. package/dist/web/public/assets/{reminders-CtKa3ECr.js.map → reminders-DJkMBSTZ.js.map} +1 -1
  128. package/dist/web/public/assets/{save-Cha8EnUJ.js → save-9sLkRauh.js} +2 -2
  129. package/dist/web/public/assets/{save-Cha8EnUJ.js.map → save-9sLkRauh.js.map} +1 -1
  130. package/dist/web/public/assets/{schedules-CuQgG6hz.js → schedules-BEqyQYLb.js} +2 -2
  131. package/dist/web/public/assets/{schedules-CuQgG6hz.js.map → schedules-BEqyQYLb.js.map} +1 -1
  132. package/dist/web/public/assets/{search-BpyL8Spy.js → search-D4CzBwIp.js} +2 -2
  133. package/dist/web/public/assets/{search-BpyL8Spy.js.map → search-D4CzBwIp.js.map} +1 -1
  134. package/dist/web/public/assets/{search-BJqFnKP5.js → search-aWQWrzh3.js} +2 -2
  135. package/dist/web/public/assets/{search-BJqFnKP5.js.map → search-aWQWrzh3.js.map} +1 -1
  136. package/dist/web/public/assets/{security-Cw_yJiDX.js → security-B7KXMgM3.js} +2 -2
  137. package/dist/web/public/assets/{security-Cw_yJiDX.js.map → security-B7KXMgM3.js.map} +1 -1
  138. package/dist/web/public/assets/{service-CgSHzzZ2.js → service-1ZeT0cRY.js} +2 -2
  139. package/dist/web/public/assets/{service-CgSHzzZ2.js.map → service-1ZeT0cRY.js.map} +1 -1
  140. package/dist/web/public/assets/{shield-alert-C_TX7BBD.js → shield-alert-BJKgUDEG.js} +2 -2
  141. package/dist/web/public/assets/{shield-alert-C_TX7BBD.js.map → shield-alert-BJKgUDEG.js.map} +1 -1
  142. package/dist/web/public/assets/{status-badge-CLMCkv6R.js → status-badge-DJgvgFQk.js} +2 -2
  143. package/dist/web/public/assets/{status-badge-CLMCkv6R.js.map → status-badge-DJgvgFQk.js.map} +1 -1
  144. package/dist/web/public/assets/{subtasks-BpXUesU9.js → subtasks-Cq0R4U6Z.js} +2 -2
  145. package/dist/web/public/assets/{subtasks-BpXUesU9.js.map → subtasks-Cq0R4U6Z.js.map} +1 -1
  146. package/dist/web/public/assets/{table-B-dheE8t.js → table-CVYTRwUs.js} +2 -2
  147. package/dist/web/public/assets/{table-B-dheE8t.js.map → table-CVYTRwUs.js.map} +1 -1
  148. package/dist/web/public/assets/{topn-CIXROr87.js → topn--vv790Oy.js} +2 -2
  149. package/dist/web/public/assets/{topn-CIXROr87.js.map → topn--vv790Oy.js.map} +1 -1
  150. package/dist/web/public/assets/{trash-2-CiJPCsGG.js → trash-2-CeN2btBl.js} +2 -2
  151. package/dist/web/public/assets/{trash-2-CiJPCsGG.js.map → trash-2-CeN2btBl.js.map} +1 -1
  152. package/dist/web/public/assets/{use-agim-skills-DDOG9Vno.js → use-agim-skills-D5JvyrxB.js} +2 -2
  153. package/dist/web/public/assets/{use-agim-skills-DDOG9Vno.js.map → use-agim-skills-D5JvyrxB.js.map} +1 -1
  154. package/dist/web/public/assets/{use-background-tasks-BT6BkFMM.js → use-background-tasks-C6zGANI5.js} +2 -2
  155. package/dist/web/public/assets/{use-background-tasks-BT6BkFMM.js.map → use-background-tasks-C6zGANI5.js.map} +1 -1
  156. package/dist/web/public/assets/{use-llm-admin-C5QwblGu.js → use-llm-admin-CdqRAs0I.js} +2 -2
  157. package/dist/web/public/assets/{use-llm-admin-C5QwblGu.js.map → use-llm-admin-CdqRAs0I.js.map} +1 -1
  158. package/dist/web/public/assets/{use-memory-BaQLelYY.js → use-memory-Bg-C6FxV.js} +2 -2
  159. package/dist/web/public/assets/{use-memory-BaQLelYY.js.map → use-memory-Bg-C6FxV.js.map} +1 -1
  160. package/dist/web/public/assets/{use-observability-DiJjq_81.js → use-observability-CiyMLYeG.js} +2 -2
  161. package/dist/web/public/assets/{use-observability-DiJjq_81.js.map → use-observability-CiyMLYeG.js.map} +1 -1
  162. package/dist/web/public/assets/{use-settings-CTuwZEdY.js → use-settings-S6mSC9nP.js} +2 -2
  163. package/dist/web/public/assets/{use-settings-CTuwZEdY.js.map → use-settings-S6mSC9nP.js.map} +1 -1
  164. package/dist/web/public/assets/{use-workspace-42B5n8Aa.js → use-workspace-DRkCOO8P.js} +2 -2
  165. package/dist/web/public/assets/{use-workspace-42B5n8Aa.js.map → use-workspace-DRkCOO8P.js.map} +1 -1
  166. package/dist/web/public/assets/{useQuery-BLyYPRRA.js → useQuery-CvEVNuvH.js} +2 -2
  167. package/dist/web/public/assets/{useQuery-BLyYPRRA.js.map → useQuery-CvEVNuvH.js.map} +1 -1
  168. package/dist/web/public/assets/{vector-BlyEjpL_.js → vector-BlXq3jJE.js} +2 -2
  169. package/dist/web/public/assets/{vector-BlyEjpL_.js.map → vector-BlXq3jJE.js.map} +1 -1
  170. package/dist/web/public/assets/{viewer-nKB1rvkV.js → viewer-Daxh0dV4.js} +2 -2
  171. package/dist/web/public/assets/{viewer-nKB1rvkV.js.map → viewer-Daxh0dV4.js.map} +1 -1
  172. package/dist/web/public/assets/{workspace-C5xO2uoT.js → workspace-BO51vrkT.js} +2 -2
  173. package/dist/web/public/assets/{workspace-C5xO2uoT.js.map → workspace-BO51vrkT.js.map} +1 -1
  174. package/dist/web/public/assets/{workspaces-BncBOneY.js → workspaces-Chonjr-v.js} +2 -2
  175. package/dist/web/public/assets/{workspaces-BncBOneY.js.map → workspaces-Chonjr-v.js.map} +1 -1
  176. package/dist/web/public/assets/{x-De6HR8Q5.js → x-Dv1gbRhw.js} +2 -2
  177. package/dist/web/public/assets/{x-De6HR8Q5.js.map → x-Dv1gbRhw.js.map} +1 -1
  178. package/dist/web/public/index.html +1 -1
  179. package/dist/web/server.d.ts +2 -0
  180. package/dist/web/server.d.ts.map +1 -1
  181. package/dist/web/server.js +11 -1
  182. package/dist/web/server.js.map +1 -1
  183. package/package.json +1 -1
  184. package/dist/web/public/assets/dialog-CqBNfrYQ.js +0 -6
  185. package/dist/web/public/assets/dialog-CqBNfrYQ.js.map +0 -1
  186. package/dist/web/public/assets/index-D5DvetP5.js.map +0 -1
  187. package/dist/web/public/assets/memos-B-5cdUp2.js +0 -12
  188. package/dist/web/public/assets/memos-B-5cdUp2.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agim-cli",
3
- "version": "1.2.152",
3
+ "version": "1.2.153",
4
4
  "description": "Agim (阿吉姆) — universal messenger-to-agent bridge. Connect WeChat / Feishu / DingTalk / Email to Claude Code / Codex / OpenCode, or any custom agent via ACP. Installs the `agim` command.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +0,0 @@
1
- import{z as X,j as n,v as h,G as C,H as q,P as m,w as p,s as J,x as R,J as K,Q,M as Y,U as Z,V as ee,X as te,a1 as oe,c as u}from"./index-D5DvetP5.js";import{r as i}from"./react-DlP5eolq.js";import{X as ae}from"./x-De6HR8Q5.js";var D="Dialog",[E]=J(D),[ne,d]=E(D),j=e=>{const{__scopeDialog:t,children:o,open:r,defaultOpen:s,onOpenChange:a,modal:c=!0}=e,l=i.useRef(null),g=i.useRef(null),[v,N]=X({prop:r,defaultProp:s??!1,onChange:a,caller:D});return n.jsx(ne,{scope:t,triggerRef:l,contentRef:g,contentId:h(),titleId:h(),descriptionId:h(),open:v,onOpenChange:N,onOpenToggle:i.useCallback(()=>N(U=>!U),[N]),modal:c,children:o})};j.displayName=D;var P="DialogTrigger",se=i.forwardRef((e,t)=>{const{__scopeDialog:o,...r}=e,s=d(P,o),a=R(t,s.triggerRef);return n.jsx(m.button,{type:"button","aria-haspopup":"dialog","aria-expanded":s.open,"aria-controls":s.open?s.contentId:void 0,"data-state":b(s.open),...r,ref:a,onClick:p(e.onClick,s.onOpenToggle)})});se.displayName=P;var y="DialogPortal",[re,O]=E(y,{forceMount:void 0}),w=e=>{const{__scopeDialog:t,forceMount:o,children:r,container:s}=e,a=d(y,t);return n.jsx(re,{scope:t,forceMount:o,children:i.Children.map(r,c=>n.jsx(C,{present:o||a.open,children:n.jsx(q,{asChild:!0,container:s,children:c})}))})};w.displayName=y;var x="DialogOverlay",I=i.forwardRef((e,t)=>{const o=O(x,e.__scopeDialog),{forceMount:r=o.forceMount,...s}=e,a=d(x,e.__scopeDialog);return a.modal?n.jsx(C,{present:r||a.open,children:n.jsx(le,{...s,ref:t})}):null});I.displayName=x;var ie=te("DialogOverlay.RemoveScroll"),le=i.forwardRef((e,t)=>{const{__scopeDialog:o,...r}=e,s=d(x,o);return n.jsx(Q,{as:ie,allowPinchZoom:!0,shards:[s.contentRef],children:n.jsx(m.div,{"data-state":b(s.open),...r,ref:t,style:{pointerEvents:"auto",...r.style}})})}),f="DialogContent",A=i.forwardRef((e,t)=>{const o=O(f,e.__scopeDialog),{forceMount:r=o.forceMount,...s}=e,a=d(f,e.__scopeDialog);return n.jsx(C,{present:r||a.open,children:a.modal?n.jsx(ce,{...s,ref:t}):n.jsx(de,{...s,ref:t})})});A.displayName=f;var ce=i.forwardRef((e,t)=>{const o=d(f,e.__scopeDialog),r=i.useRef(null),s=R(t,o.contentRef,r);return i.useEffect(()=>{const a=r.current;if(a)return K(a)},[]),n.jsx(T,{...e,ref:s,trapFocus:o.open,disableOutsidePointerEvents:o.open,onCloseAutoFocus:p(e.onCloseAutoFocus,a=>{a.preventDefault(),o.triggerRef.current?.focus()}),onPointerDownOutside:p(e.onPointerDownOutside,a=>{const c=a.detail.originalEvent,l=c.button===0&&c.ctrlKey===!0;(c.button===2||l)&&a.preventDefault()}),onFocusOutside:p(e.onFocusOutside,a=>a.preventDefault())})}),de=i.forwardRef((e,t)=>{const o=d(f,e.__scopeDialog),r=i.useRef(!1),s=i.useRef(!1);return n.jsx(T,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:a=>{e.onCloseAutoFocus?.(a),a.defaultPrevented||(r.current||o.triggerRef.current?.focus(),a.preventDefault()),r.current=!1,s.current=!1},onInteractOutside:a=>{e.onInteractOutside?.(a),a.defaultPrevented||(r.current=!0,a.detail.originalEvent.type==="pointerdown"&&(s.current=!0));const c=a.target;o.triggerRef.current?.contains(c)&&a.preventDefault(),a.detail.originalEvent.type==="focusin"&&s.current&&a.preventDefault()}})}),T=i.forwardRef((e,t)=>{const{__scopeDialog:o,trapFocus:r,onOpenAutoFocus:s,onCloseAutoFocus:a,...c}=e,l=d(f,o),g=i.useRef(null),v=R(t,g);return Y(),n.jsxs(n.Fragment,{children:[n.jsx(Z,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:s,onUnmountAutoFocus:a,children:n.jsx(ee,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionId,"aria-labelledby":l.titleId,"data-state":b(l.open),...c,ref:v,onDismiss:()=>l.onOpenChange(!1)})}),n.jsxs(n.Fragment,{children:[n.jsx(ue,{titleId:l.titleId}),n.jsx(ge,{contentRef:g,descriptionId:l.descriptionId})]})]})}),_="DialogTitle",M=i.forwardRef((e,t)=>{const{__scopeDialog:o,...r}=e,s=d(_,o);return n.jsx(m.h2,{id:s.titleId,...r,ref:t})});M.displayName=_;var F="DialogDescription",S=i.forwardRef((e,t)=>{const{__scopeDialog:o,...r}=e,s=d(F,o);return n.jsx(m.p,{id:s.descriptionId,...r,ref:t})});S.displayName=F;var W="DialogClose",$=i.forwardRef((e,t)=>{const{__scopeDialog:o,...r}=e,s=d(W,o);return n.jsx(m.button,{type:"button",...r,ref:t,onClick:p(e.onClick,()=>s.onOpenChange(!1))})});$.displayName=W;function b(e){return e?"open":"closed"}var k="DialogTitleWarning",[Ee,G]=oe(k,{contentName:f,titleName:_,docsSlug:"dialog"}),ue=({titleId:e})=>{const t=G(k),o=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
2
-
3
- If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
4
-
5
- For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return i.useEffect(()=>{e&&(document.getElementById(e)||console.error(o))},[o,e]),null},fe="DialogDescriptionWarning",ge=({contentRef:e,descriptionId:t})=>{const r=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${G(fe).contentName}}.`;return i.useEffect(()=>{const s=e.current?.getAttribute("aria-describedby");t&&s&&(document.getElementById(t)||console.warn(r))},[r,e,t]),null},pe=j,me=w,L=I,z=A,H=M,B=S,xe=$;const je=pe,De=me,V=i.forwardRef(({className:e,...t},o)=>n.jsx(L,{ref:o,className:u("fixed inset-0 z-50 bg-black/50 backdrop-blur-sm","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));V.displayName=L.displayName;const ve=i.forwardRef(({className:e,children:t,...o},r)=>n.jsxs(De,{children:[n.jsx(V,{}),n.jsxs(z,{ref:r,className:u("fixed left-[50%] top-[50%] z-50 grid w-full max-w-[calc(100vw-2rem)] sm:max-w-lg","translate-x-[-50%] translate-y-[-50%] gap-4","border border-border bg-surface p-4 shadow-lg","rounded-lg","max-h-[85dvh] overflow-y-auto pb-[calc(env(safe-area-inset-bottom)+1.5rem)]","duration-200","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%]","data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]",e),...o,children:[t,n.jsx(xe,{className:u("absolute right-4 top-4 rounded-md p-1","text-text-dim hover:bg-surface-hover hover:text-text","focus:outline-none focus:ring-2 focus:ring-accent","tap-target","disabled:pointer-events-none"),"aria-label":"Close",children:n.jsx(ae,{className:"h-4 w-4"})})]})]}));ve.displayName=z.displayName;const Ne=({className:e,...t})=>n.jsx("div",{className:u("flex flex-col gap-1.5 text-left",e),...t});Ne.displayName="DialogHeader";const he=({className:e,...t})=>n.jsx("div",{className:u("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",e),...t});he.displayName="DialogFooter";const Ce=i.forwardRef(({className:e,...t},o)=>n.jsx(H,{ref:o,className:u("text-lg font-semibold leading-snug",e),...t}));Ce.displayName=H.displayName;const Re=i.forwardRef(({className:e,...t},o)=>n.jsx(B,{ref:o,className:u("text-sm text-text-dim",e),...t}));Re.displayName=B.displayName;export{je as D,ve as a,Ne as b,Ce as c,Re as d,he as e};
6
- //# sourceMappingURL=dialog-CqBNfrYQ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dialog-CqBNfrYQ.js","sources":["../../node_modules/@radix-ui/react-dialog/dist/index.mjs","../../src/components/ui/dialog.tsx"],"sourcesContent":["\"use client\";\n\n// src/dialog.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContext, createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { hideOthers } from \"aria-hidden\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar DIALOG_NAME = \"Dialog\";\nvar [createDialogContext, createDialogScope] = createContextScope(DIALOG_NAME);\nvar [DialogProvider, useDialogContext] = createDialogContext(DIALOG_NAME);\nvar Dialog = (props) => {\n const {\n __scopeDialog,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n modal = true\n } = props;\n const triggerRef = React.useRef(null);\n const contentRef = React.useRef(null);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: DIALOG_NAME\n });\n return /* @__PURE__ */ jsx(\n DialogProvider,\n {\n scope: __scopeDialog,\n triggerRef,\n contentRef,\n contentId: useId(),\n titleId: useId(),\n descriptionId: useId(),\n open,\n onOpenChange: setOpen,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n modal,\n children\n }\n );\n};\nDialog.displayName = DIALOG_NAME;\nvar TRIGGER_NAME = \"DialogTrigger\";\nvar DialogTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...triggerProps } = props;\n const context = useDialogContext(TRIGGER_NAME, __scopeDialog);\n const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": context.open,\n \"aria-controls\": context.open ? context.contentId : void 0,\n \"data-state\": getState(context.open),\n ...triggerProps,\n ref: composedTriggerRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n }\n);\nDialogTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"DialogPortal\";\nvar [PortalProvider, usePortalContext] = createDialogContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar DialogPortal = (props) => {\n const { __scopeDialog, forceMount, children, container } = props;\n const context = useDialogContext(PORTAL_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeDialog, forceMount, children: React.Children.map(children, (child) => /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children: child }) })) });\n};\nDialogPortal.displayName = PORTAL_NAME;\nvar OVERLAY_NAME = \"DialogOverlay\";\nvar DialogOverlay = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(OVERLAY_NAME, props.__scopeDialog);\n const { forceMount = portalContext.forceMount, ...overlayProps } = props;\n const context = useDialogContext(OVERLAY_NAME, props.__scopeDialog);\n return context.modal ? /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(DialogOverlayImpl, { ...overlayProps, ref: forwardedRef }) }) : null;\n }\n);\nDialogOverlay.displayName = OVERLAY_NAME;\nvar Slot = createSlot(\"DialogOverlay.RemoveScroll\");\nvar DialogOverlayImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...overlayProps } = props;\n const context = useDialogContext(OVERLAY_NAME, __scopeDialog);\n return (\n // Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`\n // ie. when `Overlay` and `Content` are siblings\n /* @__PURE__ */ jsx(RemoveScroll, { as: Slot, allowPinchZoom: true, shards: [context.contentRef], children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(context.open),\n ...overlayProps,\n ref: forwardedRef,\n style: { pointerEvents: \"auto\", ...overlayProps.style }\n }\n ) })\n );\n }\n);\nvar CONTENT_NAME = \"DialogContent\";\nvar DialogContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeDialog);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: context.modal ? /* @__PURE__ */ jsx(DialogContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(DialogContentNonModal, { ...contentProps, ref: forwardedRef }) });\n }\n);\nDialogContent.displayName = CONTENT_NAME;\nvar DialogContentModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, context.contentRef, contentRef);\n React.useEffect(() => {\n const content = contentRef.current;\n if (content) return hideOthers(content);\n }, []);\n return /* @__PURE__ */ jsx(\n DialogContentImpl,\n {\n ...props,\n ref: composedRefs,\n trapFocus: context.open,\n disableOutsidePointerEvents: context.open,\n onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event) => {\n event.preventDefault();\n context.triggerRef.current?.focus();\n }),\n onPointerDownOutside: composeEventHandlers(props.onPointerDownOutside, (event) => {\n const originalEvent = event.detail.originalEvent;\n const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n const isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n if (isRightClick) event.preventDefault();\n }),\n onFocusOutside: composeEventHandlers(\n props.onFocusOutside,\n (event) => event.preventDefault()\n )\n }\n );\n }\n);\nvar DialogContentNonModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n const hasInteractedOutsideRef = React.useRef(false);\n const hasPointerDownOutsideRef = React.useRef(false);\n return /* @__PURE__ */ jsx(\n DialogContentImpl,\n {\n ...props,\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n onCloseAutoFocus: (event) => {\n props.onCloseAutoFocus?.(event);\n if (!event.defaultPrevented) {\n if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();\n event.preventDefault();\n }\n hasInteractedOutsideRef.current = false;\n hasPointerDownOutsideRef.current = false;\n },\n onInteractOutside: (event) => {\n props.onInteractOutside?.(event);\n if (!event.defaultPrevented) {\n hasInteractedOutsideRef.current = true;\n if (event.detail.originalEvent.type === \"pointerdown\") {\n hasPointerDownOutsideRef.current = true;\n }\n }\n const target = event.target;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n if (targetIsTrigger) event.preventDefault();\n if (event.detail.originalEvent.type === \"focusin\" && hasPointerDownOutsideRef.current) {\n event.preventDefault();\n }\n }\n }\n );\n }\n);\nvar DialogContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, trapFocus, onOpenAutoFocus, onCloseAutoFocus, ...contentProps } = props;\n const context = useDialogContext(CONTENT_NAME, __scopeDialog);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, contentRef);\n useFocusGuards();\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n loop: true,\n trapped: trapFocus,\n onMountAutoFocus: onOpenAutoFocus,\n onUnmountAutoFocus: onCloseAutoFocus,\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n role: \"dialog\",\n id: context.contentId,\n \"aria-describedby\": context.descriptionId,\n \"aria-labelledby\": context.titleId,\n \"data-state\": getState(context.open),\n ...contentProps,\n ref: composedRefs,\n onDismiss: () => context.onOpenChange(false)\n }\n )\n }\n ),\n /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(TitleWarning, { titleId: context.titleId }),\n /* @__PURE__ */ jsx(DescriptionWarning, { contentRef, descriptionId: context.descriptionId })\n ] })\n ] });\n }\n);\nvar TITLE_NAME = \"DialogTitle\";\nvar DialogTitle = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...titleProps } = props;\n const context = useDialogContext(TITLE_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(Primitive.h2, { id: context.titleId, ...titleProps, ref: forwardedRef });\n }\n);\nDialogTitle.displayName = TITLE_NAME;\nvar DESCRIPTION_NAME = \"DialogDescription\";\nvar DialogDescription = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...descriptionProps } = props;\n const context = useDialogContext(DESCRIPTION_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(Primitive.p, { id: context.descriptionId, ...descriptionProps, ref: forwardedRef });\n }\n);\nDialogDescription.displayName = DESCRIPTION_NAME;\nvar CLOSE_NAME = \"DialogClose\";\nvar DialogClose = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...closeProps } = props;\n const context = useDialogContext(CLOSE_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n ...closeProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, () => context.onOpenChange(false))\n }\n );\n }\n);\nDialogClose.displayName = CLOSE_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar TITLE_WARNING_NAME = \"DialogTitleWarning\";\nvar [WarningProvider, useWarningContext] = createContext(TITLE_WARNING_NAME, {\n contentName: CONTENT_NAME,\n titleName: TITLE_NAME,\n docsSlug: \"dialog\"\n});\nvar TitleWarning = ({ titleId }) => {\n const titleWarningContext = useWarningContext(TITLE_WARNING_NAME);\n const MESSAGE = `\\`${titleWarningContext.contentName}\\` requires a \\`${titleWarningContext.titleName}\\` for the component to be accessible for screen reader users.\n\nIf you want to hide the \\`${titleWarningContext.titleName}\\`, you can wrap it with our VisuallyHidden component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/${titleWarningContext.docsSlug}`;\n React.useEffect(() => {\n if (titleId) {\n const hasTitle = document.getElementById(titleId);\n if (!hasTitle) console.error(MESSAGE);\n }\n }, [MESSAGE, titleId]);\n return null;\n};\nvar DESCRIPTION_WARNING_NAME = \"DialogDescriptionWarning\";\nvar DescriptionWarning = ({ contentRef, descriptionId }) => {\n const descriptionWarningContext = useWarningContext(DESCRIPTION_WARNING_NAME);\n const MESSAGE = `Warning: Missing \\`Description\\` or \\`aria-describedby={undefined}\\` for {${descriptionWarningContext.contentName}}.`;\n React.useEffect(() => {\n const describedById = contentRef.current?.getAttribute(\"aria-describedby\");\n if (descriptionId && describedById) {\n const hasDescription = document.getElementById(descriptionId);\n if (!hasDescription) console.warn(MESSAGE);\n }\n }, [MESSAGE, contentRef, descriptionId]);\n return null;\n};\nvar Root = Dialog;\nvar Trigger = DialogTrigger;\nvar Portal = DialogPortal;\nvar Overlay = DialogOverlay;\nvar Content = DialogContent;\nvar Title = DialogTitle;\nvar Description = DialogDescription;\nvar Close = DialogClose;\nexport {\n Close,\n Content,\n Description,\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n Overlay,\n Portal,\n Root,\n Title,\n Trigger,\n WarningProvider,\n createDialogScope\n};\n//# sourceMappingURL=index.mjs.map\n","/**\n * Dialog — modal overlay backed by Radix Dialog primitive.\n * Use this for: tool approval, confirm-delete, job detail drawer's\n * mobile fallback, form modals.\n *\n * Mobile-aware: padding-bottom honors safe-area, content is scrollable\n * within 90dvh max-height so the soft keyboard doesn't clip Confirm\n * buttons on phones.\n */\n\nimport * as React from 'react'\nimport * as DialogPrimitive from '@radix-ui/react-dialog'\nimport { X } from 'lucide-react'\nimport { cn } from '@/lib/utils'\n\nconst Dialog = DialogPrimitive.Root\nconst DialogTrigger = DialogPrimitive.Trigger\nconst DialogPortal = DialogPrimitive.Portal\nconst DialogClose = DialogPrimitive.Close\n\nconst DialogOverlay = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Overlay\n ref={ref}\n className={cn(\n 'fixed inset-0 z-50 bg-black/50 backdrop-blur-sm',\n 'data-[state=open]:animate-in data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',\n className,\n )}\n {...props}\n />\n))\nDialogOverlay.displayName = DialogPrimitive.Overlay.displayName\n\nconst DialogContent = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>\n>(({ className, children, ...props }, ref) => (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Content\n ref={ref}\n className={cn(\n 'fixed left-[50%] top-[50%] z-50 grid w-full max-w-[calc(100vw-2rem)] sm:max-w-lg',\n 'translate-x-[-50%] translate-y-[-50%] gap-4',\n 'border border-border bg-surface p-4 shadow-lg',\n 'rounded-lg',\n // pb-safe alone gives ~34px for the home-indicator, but iOS Safari\n // can slide the URL bar back in on tap and eat another ~50px of\n // viewport. Reserve a generous floor so the last action button\n // never lands under the toolbar.\n 'max-h-[85dvh] overflow-y-auto pb-[calc(env(safe-area-inset-bottom)+1.5rem)]',\n 'duration-200',\n 'data-[state=open]:animate-in data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',\n 'data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95',\n 'data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%]',\n 'data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]',\n className,\n )}\n {...props}\n >\n {children}\n <DialogPrimitive.Close\n className={cn(\n 'absolute right-4 top-4 rounded-md p-1',\n 'text-text-dim hover:bg-surface-hover hover:text-text',\n 'focus:outline-none focus:ring-2 focus:ring-accent',\n 'tap-target',\n 'disabled:pointer-events-none',\n )}\n aria-label=\"Close\"\n >\n <X className=\"h-4 w-4\" />\n </DialogPrimitive.Close>\n </DialogPrimitive.Content>\n </DialogPortal>\n))\nDialogContent.displayName = DialogPrimitive.Content.displayName\n\nconst DialogHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>): JSX.Element => (\n <div\n className={cn('flex flex-col gap-1.5 text-left', className)}\n {...props}\n />\n)\nDialogHeader.displayName = 'DialogHeader'\n\nconst DialogFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>): JSX.Element => (\n <div\n className={cn(\n 'flex flex-col-reverse gap-2 sm:flex-row sm:justify-end',\n className,\n )}\n {...props}\n />\n)\nDialogFooter.displayName = 'DialogFooter'\n\nconst DialogTitle = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Title\n ref={ref}\n className={cn('text-lg font-semibold leading-snug', className)}\n {...props}\n />\n))\nDialogTitle.displayName = DialogPrimitive.Title.displayName\n\nconst DialogDescription = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Description\n ref={ref}\n className={cn('text-sm text-text-dim', className)}\n {...props}\n />\n))\nDialogDescription.displayName = DialogPrimitive.Description.displayName\n\nexport {\n Dialog,\n DialogPortal,\n DialogOverlay,\n DialogTrigger,\n DialogClose,\n DialogContent,\n DialogHeader,\n DialogFooter,\n DialogTitle,\n DialogDescription,\n}\n"],"names":["DIALOG_NAME","createDialogContext","createContextScope","DialogProvider","useDialogContext","Dialog","props","__scopeDialog","children","openProp","defaultOpen","onOpenChange","modal","triggerRef","React.useRef","contentRef","open","setOpen","useControllableState","jsx","useId","React.useCallback","prevOpen","TRIGGER_NAME","DialogTrigger","React.forwardRef","forwardedRef","triggerProps","context","composedTriggerRef","useComposedRefs","Primitive","getState","composeEventHandlers","PORTAL_NAME","PortalProvider","usePortalContext","DialogPortal","forceMount","container","React.Children","child","Presence","PortalPrimitive","OVERLAY_NAME","DialogOverlay","portalContext","overlayProps","DialogOverlayImpl","Slot","createSlot","RemoveScroll","CONTENT_NAME","DialogContent","contentProps","DialogContentModal","DialogContentNonModal","composedRefs","React.useEffect","content","hideOthers","DialogContentImpl","event","originalEvent","ctrlLeftClick","hasInteractedOutsideRef","hasPointerDownOutsideRef","target","trapFocus","onOpenAutoFocus","onCloseAutoFocus","useFocusGuards","jsxs","Fragment","FocusScope","DismissableLayer","TitleWarning","DescriptionWarning","TITLE_NAME","DialogTitle","titleProps","DESCRIPTION_NAME","DialogDescription","descriptionProps","CLOSE_NAME","DialogClose","closeProps","TITLE_WARNING_NAME","WarningProvider","useWarningContext","createContext","titleId","titleWarningContext","MESSAGE","DESCRIPTION_WARNING_NAME","descriptionId","describedById","Root","Portal","Overlay","Content","Title","Description","Close","DialogPrimitive.Root","DialogPrimitive.Portal","className","ref","DialogPrimitive.Overlay","cn","DialogPrimitive.Content","DialogPrimitive.Close","X","DialogHeader","DialogFooter","DialogPrimitive.Title","DialogPrimitive.Description"],"mappings":"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","x_google_ignoreList":[0]}