@alfadocs/ui-kit 1.58.0 → 1.59.0

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 (349) hide show
  1. package/dist/_chunks/{actions-cell-renderer-Dj1ZkvJj.js → actions-cell-renderer-KoO3EYrZ.js} +4 -4
  2. package/dist/_chunks/{agenda-tray-ZKhDxlfw.js → agenda-tray-D3GH9t3T.js} +3 -3
  3. package/dist/_chunks/{ai-credits-notice-ktklr8fy.js → ai-credits-notice-DAxBt_wr.js} +11 -11
  4. package/dist/_chunks/{ai-permission-notice-DyuEGwAt.js → ai-permission-notice-htJegWcH.js} +2 -2
  5. package/dist/_chunks/{ai-prompt-input-Beh-O_rJ.js → ai-prompt-input-DRNqTCSK.js} +3 -3
  6. package/dist/_chunks/{alia-sidebar-dybRpWml.js → alia-sidebar-bMVUsMmJ.js} +8 -8
  7. package/dist/_chunks/{anamnesis-card-BSlAhaoG.js → anamnesis-card-Bh7Tg6i-.js} +3 -3
  8. package/dist/_chunks/{anamnesis-summary-card-2YfIYY2j.js → anamnesis-summary-card-cCj7LPh3.js} +2 -2
  9. package/dist/_chunks/{anamnesis-summary-rows-M-FUkw9p.js → anamnesis-summary-rows-D9cFUeXk.js} +12 -12
  10. package/dist/_chunks/{antenatal-schedule-timeline-Kf2Yg8uo.js → antenatal-schedule-timeline-CfNFrej5.js} +2 -2
  11. package/dist/_chunks/{appointment-card-Dh3fAcyf.js → appointment-card-BXQUZlAJ.js} +2 -2
  12. package/dist/_chunks/{appointment-peek-WvNbE4JG.js → appointment-peek-drkQF54M.js} +4 -4
  13. package/dist/_chunks/{appointment-timeline-Z0494xO-.js → appointment-timeline-C3mTzaUm.js} +5 -5
  14. package/dist/_chunks/{appointment-tray-CyI_p3zU.js → appointment-tray-CUBBT4mL.js} +4 -4
  15. package/dist/_chunks/{audio-recorder-DWKKjGPt.js → audio-recorder-B1TpJoMu.js} +4 -4
  16. package/dist/_chunks/{balance-badge-cell-CGoJZlKf.js → balance-badge-cell-BC92nTi9.js} +5 -5
  17. package/dist/_chunks/{bishop-score-BxA20j9T.js → bishop-score-BOjlxLzL.js} +4 -4
  18. package/dist/_chunks/{bmi-calculator-C0UTxB7R.js → bmi-calculator-JNiTHdYJ.js} +3 -3
  19. package/dist/_chunks/{booking-CiFSAMR-.js → booking-BdWwr_NM.js} +7 -7
  20. package/dist/_chunks/{button-Bn16lcFM.js → button-CnUVJg1Y.js} +71 -61
  21. package/dist/_chunks/{button-group-CWlwR-A5.js → button-group-DLqAoowT.js} +73 -73
  22. package/dist/_chunks/{calculator-dialog-CzQv03p0.js → calculator-dialog-BUfaWqvu.js} +2 -2
  23. package/dist/_chunks/{calendar-6-24PQ1u.js → calendar-KihOHLCs.js} +2 -2
  24. package/dist/_chunks/{calendar-workspace-DNHzjG7O.js → calendar-workspace-DD378Xg8.js} +26 -26
  25. package/dist/_chunks/{card-DMO2nkt4.js → card-BA4Ig_kn.js} +9 -8
  26. package/dist/_chunks/{care-plan-card-DxrRLRdW.js → care-plan-card-Cd1En8-p.js} +2 -2
  27. package/dist/_chunks/{care-plan-entry-card-0rpR-4Te.js → care-plan-entry-card-FIYdF44t.js} +2 -2
  28. package/dist/_chunks/{care-plan-header-BMwZIgHJ.js → care-plan-header-DgPAJWS4.js} +2 -2
  29. package/dist/_chunks/{carousel.agent-D3xthzTf.js → carousel.agent-C7MXzwUi.js} +2 -2
  30. package/dist/_chunks/{chart-ZMkX-Gqy.js → chart-0jK6B2ry.js} +407 -393
  31. package/dist/_chunks/{chat-input-PtrSu1ZC.js → chat-input-1c4k4-uk.js} +2 -2
  32. package/dist/_chunks/{chat-message-CmGUcajG.js → chat-message-Bv9eW1NW.js} +3 -3
  33. package/dist/_chunks/{clinical-note-card-hx939bvw.js → clinical-note-card-L6FVM9Gx.js} +2 -2
  34. package/dist/_chunks/{code-block-BQgK70mO.js → code-block-DWVvOrUF.js} +2 -2
  35. package/dist/_chunks/{connection-status-ncTjUPt6.js → connection-status-D-Zeqpr3.js} +4 -4
  36. package/dist/_chunks/{contact-card-fHBMwEsx.js → contact-card-C8rEsC4Q.js} +2 -2
  37. package/dist/_chunks/{contact-profile-card-CMyBYgRR.js → contact-profile-card-DJe2ld0g.js} +3 -3
  38. package/dist/_chunks/{control-room-rail-CJ85HkS2.js → control-room-rail-DgS2snUz.js} +3 -3
  39. package/dist/_chunks/{copy-field-CvTIuA_p.js → copy-field-CY1f0k7O.js} +2 -2
  40. package/dist/_chunks/{cycle-calculator-Cww9DzIa.js → cycle-calculator-sOOESGEG.js} +3 -3
  41. package/dist/_chunks/{dashboard-grid-Cs7cJAsA.js → dashboard-grid-SAGjktTs.js} +2 -2
  42. package/dist/_chunks/{data-table-Yn5xiGzs.js → data-table-DjDuXaQB.js} +10 -10
  43. package/dist/_chunks/{data-table-tabs-CHYAAeHy.js → data-table-tabs-BsCll8sH.js} +3 -3
  44. package/dist/_chunks/{description-list-DkLeHiew.js → description-list-ZWlFfbOy.js} +2 -2
  45. package/dist/_chunks/{dev-bypass-button-BhGn6evf.js → dev-bypass-button-m-eXU2PU.js} +2 -2
  46. package/dist/_chunks/{dialog-Dn-iQ0Jp.js → dialog-D6fkpRc4.js} +72 -61
  47. package/dist/_chunks/{document-preview-CHGGG0l_.js → document-preview-E6od-Yy0.js} +4 -4
  48. package/dist/_chunks/{document-scanner-CQS9kv84.js → document-scanner-DDOMMswN.js} +2 -2
  49. package/dist/_chunks/{dropdown-menu-BQSNVp4x.js → dropdown-menu-D1we7oAY.js} +134 -133
  50. package/dist/_chunks/{due-date-calculator-D_qFUiHp.js → due-date-calculator-rtMADvJ8.js} +4 -4
  51. package/dist/_chunks/{editable-currency-cell-renderer-CmYcMuwi.js → editable-currency-cell-renderer-DTtF6IIr.js} +3 -3
  52. package/dist/_chunks/{editable-description-DuJlvltc.js → editable-description-CriawIum.js} +3 -3
  53. package/dist/_chunks/{editor-overlay-NMxzcO6J.js → editor-overlay-CbFUYsVk.js} +2 -2
  54. package/dist/_chunks/{empty-state-gNG3qYCX.js → empty-state-BN_R5AzQ.js} +61 -59
  55. package/dist/_chunks/{entity-summary-CWcCSThK.js → entity-summary-CoCUJe3N.js} +4 -4
  56. package/dist/_chunks/{error-boundary-ChowhO6w.js → error-boundary-BlwcM1KR.js} +2 -2
  57. package/dist/_chunks/{error-page-CpuYbpOB.js → error-page-B0ER6tPK.js} +2 -2
  58. package/dist/_chunks/{face-scheme-DSKDdIsb.js → face-scheme-BunF1rjI.js} +6 -6
  59. package/dist/_chunks/{fetal-weight-BWaqqjea.js → fetal-weight-67yvef3S.js} +3 -3
  60. package/dist/_chunks/{field-array-BO-kaKFK.js → field-array-BVitwPIt.js} +3 -3
  61. package/dist/_chunks/{file-manager-DEtkQR1F.js → file-manager-YXtUu76I.js} +8 -8
  62. package/dist/_chunks/{finished-terminal-CPSDrIMB.js → finished-terminal-DdLHDe_5.js} +3 -3
  63. package/dist/_chunks/{fiscal-code-input-DesSQ6Fh.js → fiscal-code-input-Dsa1M6VK.js} +2 -2
  64. package/dist/_chunks/{forgot-password-form-CEqOmNuX.js → forgot-password-form-C2ibWCZT.js} +3 -3
  65. package/dist/_chunks/{freemium-paywall-DIKuhX8b.js → freemium-paywall-C8CXWbhO.js} +27 -27
  66. package/dist/_chunks/{gestational-age-calculator-CZi43xKG.js → gestational-age-calculator-DT8XDFVK.js} +5 -5
  67. package/dist/_chunks/{hcg-doubling-Ccvh7OaU.js → hcg-doubling-BxggoYNV.js} +3 -3
  68. package/dist/_chunks/{header-B9552pLh.js → header-C0XQZtu6.js} +2 -2
  69. package/dist/_chunks/{header-settings-BMcCx2LC.js → header-settings-BJ6M2p9Q.js} +4 -4
  70. package/dist/_chunks/{heatmap-DiyOSQk9.js → heatmap-COoukTUe.js} +6 -6
  71. package/dist/_chunks/{help-me-write-templates-CM1p6qkm.js → help-me-write-templates-DpcMweG1.js} +6 -6
  72. package/dist/_chunks/{hover-card-U_ZYoh1n.js → hover-card-s2qD4RAz.js} +2 -2
  73. package/dist/_chunks/{icon-button-COX76Jdj.js → icon-button-CsOGhuRB.js} +2 -2
  74. package/dist/_chunks/{icon-button-group-C5hhI-R5.js → icon-button-group-Cap4-Idv.js} +3 -3
  75. package/dist/_chunks/{icon-picker-rOFTawXk.js → icon-picker-BbO2FB4y.js} +3 -3
  76. package/dist/_chunks/{image-cropper-D0kkQ4lG.js → image-cropper-DXqCUezS.js} +2 -2
  77. package/dist/_chunks/{info-tip-CJpNpzZe.js → info-tip-CJqR9fhi.js} +2 -2
  78. package/dist/_chunks/{insert-result-C1C2OCc3.js → insert-result-BUEtHFMg.js} +2 -2
  79. package/dist/_chunks/{key-value-pair-BNNITp6S.js → key-value-pair-BN5lWXcB.js} +2 -2
  80. package/dist/_chunks/{kit-extensions-DYVxWcqv.js → kit-extensions-BVtvnev_.js} +6 -6
  81. package/dist/_chunks/{link-cell-renderer-C1wOyxDF.js → link-cell-renderer-BZmRw_Yi.js} +5 -5
  82. package/dist/_chunks/{locale-picker-BGfrZyTw.js → locale-picker-DVWHnuDN.js} +3 -3
  83. package/dist/_chunks/{login-dev-card-CIim81VB.js → login-dev-card-DQioAtdz.js} +3 -3
  84. package/dist/_chunks/{map-view-CO2v0hfp.js → map-view-9Ro_P8O8.js} +2 -2
  85. package/dist/_chunks/{marketplace-app-shell-CSDmGLPW.js → marketplace-app-shell-DnuHxuoE.js} +8 -8
  86. package/dist/_chunks/{message-card-DVo8-dOm.js → message-card-BNoaKInS.js} +3 -3
  87. package/dist/_chunks/{message-tray-DmU0poD7.js → message-tray-D4R0boMJ.js} +4 -4
  88. package/dist/_chunks/{muscle-scheme-BDgIaGeW.js → muscle-scheme-YoN3rYXV.js} +2 -2
  89. package/dist/_chunks/{notes-panel-DHLHsxpW.js → notes-panel-0Wots8rp.js} +7 -7
  90. package/dist/_chunks/{notification-card-BGCIL6Mu.js → notification-card-DRLmYlL8.js} +3 -3
  91. package/dist/_chunks/{notification-tray-DPU-Xg0i.js → notification-tray-qrSc9Fcs.js} +4 -4
  92. package/dist/_chunks/{operator-hero-Dyd2IGbR.js → operator-hero-C_Khr5IU.js} +2 -2
  93. package/dist/_chunks/{optical-prescription-Do6e3wfs.js → optical-prescription-B0ap3kGl.js} +3 -3
  94. package/dist/_chunks/{pagination-BR1_GfD_.js → pagination-DvKGrsXu.js} +146 -142
  95. package/dist/_chunks/{panel-subview-D4o6ar6_.js → panel-subview-Bs0WhwR9.js} +2 -2
  96. package/dist/_chunks/{patient-details-BCaVuaXz.js → patient-details-C6buDwuI.js} +4 -4
  97. package/dist/_chunks/{patient-field-row-jcRSTrp4.js → patient-field-row-CKb4FIaM.js} +7 -7
  98. package/dist/_chunks/{patient-search-D5xlXmd2.js → patient-search-Cgv8Pjsc.js} +4 -4
  99. package/dist/_chunks/{patient-summary-card-kQIfPQOE.js → patient-summary-card-DWx0emu2.js} +6 -6
  100. package/dist/_chunks/{payment-automation-upsell-C4wHOxsp.js → payment-automation-upsell-BAJwtVCs.js} +3 -3
  101. package/dist/_chunks/{payment-request-card-DAniJNLX.js → payment-request-card-BNiZqIzT.js} +4 -4
  102. package/dist/_chunks/{periodontal-chart-DD5C0M3l.js → periodontal-chart-DMWiP5Ti.js} +2 -2
  103. package/dist/_chunks/{periodontal-chart-card-CxdXvsPU.js → periodontal-chart-card-D2ZFjN7G.js} +3 -3
  104. package/dist/_chunks/{periodontal-diagnosis-D-PJv7KS.js → periodontal-diagnosis-6wybid_W.js} +2 -2
  105. package/dist/_chunks/{periodontal-risk-chart-D3DjIymT.js → periodontal-risk-chart-CgLwBj5c.js} +2 -2
  106. package/dist/_chunks/{popover-BG75rYjN.js → popover-CltTC2Rg.js} +2 -2
  107. package/dist/_chunks/popup-region-qz_5_A0V.js +79 -0
  108. package/dist/_chunks/{practice-profile-hero-C8RPACCi.js → practice-profile-hero-DPbvYfCs.js} +2 -2
  109. package/dist/_chunks/{practice-results-D07wgCqV.js → practice-results-PINvX-1g.js} +6 -6
  110. package/dist/_chunks/{pregnancy-dating-BFzv9g1N.js → pregnancy-dating-BNSWXA0p.js} +5 -5
  111. package/dist/_chunks/{pregnancy-weight-gain-CUUrBTBo.js → pregnancy-weight-gain-CI7R6sA6.js} +3 -3
  112. package/dist/_chunks/{privacy-lock-WkUgwIj_.js → privacy-lock-CqLxFiLE.js} +3 -3
  113. package/dist/_chunks/{privacy-mask-ChIjELJC.js → privacy-mask-CUnJv35j.js} +3 -3
  114. package/dist/_chunks/{product-hub-panel-DCYX0rPG.js → product-hub-panel-MbiHZwjC.js} +3 -3
  115. package/dist/_chunks/{public-header.agent-C1SlVSYt.js → public-header.agent-1MZVDYY1.js} +3 -3
  116. package/dist/_chunks/{radiograph-panel.agent-DyqbTECc.js → radiograph-panel.agent-CpKvvZIU.js} +6 -6
  117. package/dist/_chunks/{registration-form-DrSR9Sjk.js → registration-form-JYravsvu.js} +5 -5
  118. package/dist/_chunks/{reviews-panel-CDcK6W3b.js → reviews-panel-B1Xirvh4.js} +5 -5
  119. package/dist/_chunks/{rich-text-editor-UgXri8h6.js → rich-text-editor-CZXnqI3-.js} +10 -10
  120. package/dist/_chunks/{section-card-ChJdOlBU.js → section-card-D5nWiTcK.js} +2 -2
  121. package/dist/_chunks/{select-Ce5RMk93.js → select-k4gBdS8N.js} +249 -224
  122. package/dist/_chunks/{session-countdown-CBINYw8H.js → session-countdown-DAyI9Wye.js} +2 -2
  123. package/dist/_chunks/{sheet-Dtjk0CVv.js → sheet-D_bERXP2.js} +7 -7
  124. package/dist/_chunks/{sidebar-D4Wllqfz.js → sidebar-D_S2-SXH.js} +969 -833
  125. package/dist/_chunks/{sign-in-with-alfadocs-button-D91_x8DX.js → sign-in-with-alfadocs-button-WfdfqQ8O.js} +2 -2
  126. package/dist/_chunks/{signature-request-dAVgE0_5.js → signature-request-BZIs36nH.js} +6 -6
  127. package/dist/_chunks/{signed-out-frame-DOJpobp8.js → signed-out-frame-BR5sJSNX.js} +3 -3
  128. package/dist/_chunks/{slot-grid-sVZriOiQ.js → slot-grid-JU--9C6W.js} +4 -4
  129. package/dist/_chunks/{streaming-text-BKZmbW1Q.js → streaming-text-COuXesoR.js} +2 -2
  130. package/dist/_chunks/{tab-bar-Bm-rJB7Y.js → tab-bar-5GppbMGc.js} +2 -2
  131. package/dist/_chunks/{tabs-I2wf_nC7.js → tabs-2x3L13jn.js} +3 -3
  132. package/dist/_chunks/{task-card-BMXMh3uE.js → task-card-D9ngXO7p.js} +2 -2
  133. package/dist/_chunks/{task-editor-BflEZmcF.js → task-editor-B7xb-mMs.js} +8 -8
  134. package/dist/_chunks/{task-tray-DsBO-AaP.js → task-tray-BAW_wbTO.js} +4 -4
  135. package/dist/_chunks/{tasks-panel-CdgZQQgG.js → tasks-panel-DQvN3TiB.js} +7 -7
  136. package/dist/_chunks/{theme-toggle-PpFcFoYK.js → theme-toggle-CfjLDUfK.js} +4 -4
  137. package/dist/_chunks/{timeline-DG8wAlAx.js → timeline-DEIuHrWz.js} +2 -2
  138. package/dist/_chunks/{toast-CPqguP7G.js → toast-2y0czYHr.js} +2 -2
  139. package/dist/_chunks/{token-insert-menu-B-pWFDKX.js → token-insert-menu-BzNAHiND.js} +3 -3
  140. package/dist/_chunks/{tool-rail-CTq1KwxW.js → tool-rail-DQ5qTv4l.js} +2 -2
  141. package/dist/_chunks/{tooth-scheme-BAO_voUO.js → tooth-scheme-CLyS9UUW.js} +3 -3
  142. package/dist/_chunks/{unit-converter-DS4UB_59.js → unit-converter-W62N99Mw.js} +3 -3
  143. package/dist/_chunks/{use-appointment-details-read-izwoXh-G.js → use-appointment-details-read-Ba1DBPr7.js} +16 -16
  144. package/dist/_chunks/{voice-control-panel-an-bpQfF.js → voice-control-panel-p7WMTj4D.js} +5 -5
  145. package/dist/_chunks/{warning-stack-ubD0IZCy.js → warning-stack-DGPuJNVD.js} +3 -3
  146. package/dist/_chunks/{widget-picker-DlJOgYrZ.js → widget-picker-CkhoG4Rj.js} +2 -2
  147. package/dist/_chunks/{workflow-map-Demlpy39.js → workflow-map-DFuVff8U.js} +7 -7
  148. package/dist/_chunks/{workflow-status-BT27_fQp.js → workflow-status-Dc_CyEz5.js} +2 -2
  149. package/dist/agent-catalog.json +1 -1
  150. package/dist/components/_shared/popup-region.d.ts +28 -0
  151. package/dist/components/agenda-tray/index.js +1 -1
  152. package/dist/components/ai-credits-notice/index.js +1 -1
  153. package/dist/components/ai-permission-notice/index.js +1 -1
  154. package/dist/components/ai-prompt-input/index.js +1 -1
  155. package/dist/components/anamnesis-card/index.js +1 -1
  156. package/dist/components/anamnesis-summary-card/index.js +1 -1
  157. package/dist/components/appointment-card/index.js +2 -2
  158. package/dist/components/appointment-details-panel/index.js +1 -1
  159. package/dist/components/appointment-peek/index.js +1 -1
  160. package/dist/components/appointment-timeline/index.js +1 -1
  161. package/dist/components/audio-recorder/index.js +1 -1
  162. package/dist/components/bishop-score/index.js +1 -1
  163. package/dist/components/bmi-calculator/index.js +1 -1
  164. package/dist/components/booking/index.js +1 -1
  165. package/dist/components/button/index.js +2 -2
  166. package/dist/components/button-group/index.js +1 -1
  167. package/dist/components/calculator-dialog/index.js +1 -1
  168. package/dist/components/calendar/index.js +1 -1
  169. package/dist/components/card/index.js +1 -1
  170. package/dist/components/care-plan-card/index.js +1 -1
  171. package/dist/components/care-plan-entry-card/index.js +1 -1
  172. package/dist/components/care-plan-header/index.js +1 -1
  173. package/dist/components/carousel/index.js +1 -1
  174. package/dist/components/chart/index.js +1 -1
  175. package/dist/components/chat-input/index.js +1 -1
  176. package/dist/components/chat-message/index.js +1 -1
  177. package/dist/components/clinical-note-card/index.js +1 -1
  178. package/dist/components/connection-status/index.js +1 -1
  179. package/dist/components/contact-card/index.js +1 -1
  180. package/dist/components/contact-profile-card/index.js +1 -1
  181. package/dist/components/control-room-rail/index.js +1 -1
  182. package/dist/components/copy-field/index.js +1 -1
  183. package/dist/components/cycle-calculator/index.js +1 -1
  184. package/dist/components/dashboard-grid/index.js +1 -1
  185. package/dist/components/data-table/index.js +4 -4
  186. package/dist/components/data-table-tabs/index.js +1 -1
  187. package/dist/components/description-list/index.js +1 -1
  188. package/dist/components/dev-bypass-button/index.js +1 -1
  189. package/dist/components/dialog/index.js +1 -1
  190. package/dist/components/document-preview/index.js +1 -1
  191. package/dist/components/document-scanner/index.js +1 -1
  192. package/dist/components/dropdown-menu/index.js +1 -1
  193. package/dist/components/due-date-calculator/index.js +2 -2
  194. package/dist/components/editable-description/index.js +1 -1
  195. package/dist/components/editor-overlay/index.js +1 -1
  196. package/dist/components/empty-state/empty-state.d.ts +8 -0
  197. package/dist/components/empty-state/index.d.ts +1 -1
  198. package/dist/components/empty-state/index.js +1 -1
  199. package/dist/components/entity-summary/index.js +1 -1
  200. package/dist/components/error-boundary/index.js +1 -1
  201. package/dist/components/face-scheme/index.js +1 -1
  202. package/dist/components/fetal-weight/index.js +1 -1
  203. package/dist/components/field-array/index.js +1 -1
  204. package/dist/components/file-manager/index.js +1 -1
  205. package/dist/components/finished-terminal/index.js +1 -1
  206. package/dist/components/fiscal-code-input/index.js +1 -1
  207. package/dist/components/freemium-paywall/index.js +1 -1
  208. package/dist/components/gestational-age-calculator/index.js +1 -1
  209. package/dist/components/hcg-doubling/index.js +1 -1
  210. package/dist/components/header/index.js +1 -1
  211. package/dist/components/header-settings/index.js +1 -1
  212. package/dist/components/heatmap/index.js +1 -1
  213. package/dist/components/hover-card/index.js +1 -1
  214. package/dist/components/icon-button/index.js +1 -1
  215. package/dist/components/icon-button-group/index.js +1 -1
  216. package/dist/components/icon-picker/index.js +1 -1
  217. package/dist/components/image-cropper/index.js +1 -1
  218. package/dist/components/info-tip/index.js +1 -1
  219. package/dist/components/key-value-pair/index.js +1 -1
  220. package/dist/components/locale-picker/index.js +1 -1
  221. package/dist/components/map-view/index.js +1 -1
  222. package/dist/components/message-card/index.js +1 -1
  223. package/dist/components/message-tray/index.js +1 -1
  224. package/dist/components/muscle-scheme/index.js +1 -1
  225. package/dist/components/notes-panel/index.js +1 -1
  226. package/dist/components/notification-card/index.js +1 -1
  227. package/dist/components/notification-tray/index.js +1 -1
  228. package/dist/components/operator-hero/index.js +1 -1
  229. package/dist/components/optical-prescription/index.js +1 -1
  230. package/dist/components/pagination/index.js +1 -1
  231. package/dist/components/panel-subview/index.js +1 -1
  232. package/dist/components/patient-details/index.js +1 -1
  233. package/dist/components/patient-search/index.js +1 -1
  234. package/dist/components/patient-summary-card/index.js +1 -1
  235. package/dist/components/patient-table/index.js +1 -1
  236. package/dist/components/payment-card/index.js +1 -1
  237. package/dist/components/periodontal-chart/index.js +1 -1
  238. package/dist/components/periodontal-chart-card/index.js +1 -1
  239. package/dist/components/periodontal-diagnosis/index.js +1 -1
  240. package/dist/components/periodontal-risk-chart/index.js +1 -1
  241. package/dist/components/popover/index.js +1 -1
  242. package/dist/components/practice-profile-hero/index.js +1 -1
  243. package/dist/components/practice-results/index.js +1 -1
  244. package/dist/components/pregnancy-dating/index.js +1 -1
  245. package/dist/components/pregnancy-weight-gain/index.js +1 -1
  246. package/dist/components/privacy-lock/index.js +1 -1
  247. package/dist/components/product-hub-tray/index.js +1 -1
  248. package/dist/components/public-header/index.js +1 -1
  249. package/dist/components/radiograph-panel/index.js +1 -1
  250. package/dist/components/reviews-panel/index.js +1 -1
  251. package/dist/components/rich-text-editor/index.js +2 -2
  252. package/dist/components/section-card/index.js +1 -1
  253. package/dist/components/select/index.js +1 -1
  254. package/dist/components/select/select.d.ts +1 -1
  255. package/dist/components/session-countdown/index.js +1 -1
  256. package/dist/components/sheet/index.js +1 -1
  257. package/dist/components/sidebar/index.js +1 -1
  258. package/dist/components/sidebar/sidebar.d.ts +14 -0
  259. package/dist/components/sign-in-with-alfadocs-button/index.js +1 -1
  260. package/dist/components/skeleton-scheme/index.js +1 -1
  261. package/dist/components/slot-grid/index.js +1 -1
  262. package/dist/components/streaming-text/index.js +1 -1
  263. package/dist/components/tab-bar/index.js +1 -1
  264. package/dist/components/tabs/index.js +1 -1
  265. package/dist/components/task-card/index.js +1 -1
  266. package/dist/components/task-editor/index.js +1 -1
  267. package/dist/components/task-tray/index.js +1 -1
  268. package/dist/components/tasks-panel/index.js +1 -1
  269. package/dist/components/theme-toggle/index.js +1 -1
  270. package/dist/components/timeline/index.js +1 -1
  271. package/dist/components/toast/index.js +1 -1
  272. package/dist/components/token-insert-menu/index.js +1 -1
  273. package/dist/components/tool-rail/index.js +1 -1
  274. package/dist/components/tooth-scheme/index.js +1 -1
  275. package/dist/components/unit-converter/index.js +1 -1
  276. package/dist/components/voice-control-panel/index.js +1 -1
  277. package/dist/components/warning-stack/index.js +1 -1
  278. package/dist/components/widget-picker/index.js +1 -1
  279. package/dist/components/workflow/index.js +1 -1
  280. package/dist/components/workflow-status/index.js +1 -1
  281. package/dist/i18n/locales/ar.d.ts +5 -0
  282. package/dist/i18n/locales/ar.js +6 -1
  283. package/dist/i18n/locales/de.d.ts +5 -0
  284. package/dist/i18n/locales/de.js +6 -1
  285. package/dist/i18n/locales/el.d.ts +5 -0
  286. package/dist/i18n/locales/el.js +6 -1
  287. package/dist/i18n/locales/en.d.ts +5 -0
  288. package/dist/i18n/locales/en.js +6 -1
  289. package/dist/i18n/locales/es.d.ts +5 -0
  290. package/dist/i18n/locales/es.js +6 -1
  291. package/dist/i18n/locales/fr.d.ts +5 -0
  292. package/dist/i18n/locales/fr.js +6 -1
  293. package/dist/i18n/locales/hi.d.ts +5 -0
  294. package/dist/i18n/locales/hi.js +6 -1
  295. package/dist/i18n/locales/it.d.ts +5 -0
  296. package/dist/i18n/locales/it.js +6 -1
  297. package/dist/i18n/locales/ja.d.ts +5 -0
  298. package/dist/i18n/locales/ja.js +6 -1
  299. package/dist/i18n/locales/nl.d.ts +5 -0
  300. package/dist/i18n/locales/nl.js +6 -1
  301. package/dist/i18n/locales/pl.d.ts +5 -0
  302. package/dist/i18n/locales/pl.js +6 -1
  303. package/dist/i18n/locales/pt.d.ts +5 -0
  304. package/dist/i18n/locales/pt.js +6 -1
  305. package/dist/i18n/locales/ro.d.ts +5 -0
  306. package/dist/i18n/locales/ro.js +6 -1
  307. package/dist/i18n/locales/ru.d.ts +5 -0
  308. package/dist/i18n/locales/ru.js +6 -1
  309. package/dist/i18n/locales/sq.d.ts +5 -0
  310. package/dist/i18n/locales/sq.js +6 -1
  311. package/dist/i18n/locales/sv.d.ts +5 -0
  312. package/dist/i18n/locales/sv.js +6 -1
  313. package/dist/i18n/locales/tr.d.ts +5 -0
  314. package/dist/i18n/locales/tr.js +6 -1
  315. package/dist/i18n/locales/zh.d.ts +5 -0
  316. package/dist/i18n/locales/zh.js +6 -1
  317. package/dist/index.js +141 -141
  318. package/dist/locales/ar.json +6 -1
  319. package/dist/locales/de.json +6 -1
  320. package/dist/locales/el.json +6 -1
  321. package/dist/locales/en.json +6 -1
  322. package/dist/locales/es.json +6 -1
  323. package/dist/locales/fr.json +6 -1
  324. package/dist/locales/hi.json +6 -1
  325. package/dist/locales/it.json +6 -1
  326. package/dist/locales/ja.json +6 -1
  327. package/dist/locales/nl.json +6 -1
  328. package/dist/locales/pl.json +6 -1
  329. package/dist/locales/pt.json +6 -1
  330. package/dist/locales/ro.json +6 -1
  331. package/dist/locales/ru.json +6 -1
  332. package/dist/locales/sq.json +6 -1
  333. package/dist/locales/sv.json +6 -1
  334. package/dist/locales/tr.json +6 -1
  335. package/dist/locales/zh.json +6 -1
  336. package/dist/patterns/alia-assistant/index.js +1 -1
  337. package/dist/patterns/anamnesis/index.js +1 -1
  338. package/dist/patterns/calendar/index.js +1 -1
  339. package/dist/patterns/error-page/index.js +1 -1
  340. package/dist/patterns/forgot-password-form/index.js +1 -1
  341. package/dist/patterns/help-me-write-templates/index.js +1 -1
  342. package/dist/patterns/login-form/index.js +1 -1
  343. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  344. package/dist/patterns/payment-automation-upsell/index.js +1 -1
  345. package/dist/patterns/registration-form/index.js +1 -1
  346. package/dist/patterns/signature-request/index.js +1 -1
  347. package/dist/patterns/signed-out-frame/index.js +1 -1
  348. package/dist/tokens.css +6 -3
  349. package/package.json +1 -1
@@ -1,48 +1,48 @@
1
- import { jsxs as h, Fragment as xe, jsx as r } from "react/jsx-runtime";
2
- import { useId as ye, useState as re, useRef as F, useCallback as L, useEffect as ne, useMemo as he, createContext as ce, useContext as ue, forwardRef as H } from "react";
3
- import * as pe from "@radix-ui/react-dialog";
4
- import * as Se from "@radix-ui/react-collapsible";
5
- import * as be from "@radix-ui/react-accordion";
6
- import * as E from "@radix-ui/react-tooltip";
7
- import { a as Xe } from "./accordion-Ch3xp0mX.js";
8
- import { S as We } from "./scroll-area-CY5SLYNw.js";
9
- import { Slot as Ze } from "@radix-ui/react-slot";
10
- import { c as ee } from "./index-D2ZczOXr.js";
11
- import { useTranslation as de } from "react-i18next";
12
- import { u as Je } from "./registry-DvAUVLHh.js";
13
- import { u as Qe } from "./use-edge-resize-DHbyQwu8.js";
14
- import { c as es } from "./compose-refs-C0k0tdqF.js";
15
- import { a as ss, b as ts, d as ns } from "./input-surface-iBmxVBfr.js";
16
- import { u as rs } from "./use-isomorphic-layout-effect-BGfaCOP1.js";
17
- import { i as as } from "./is-development-CLUAnsU7.js";
18
- import { X as is } from "./x-B5YnXwCz.js";
1
+ import { jsxs as x, Fragment as ye, jsx as s } from "react/jsx-runtime";
2
+ import { useId as fe, useState as se, useRef as V, useCallback as B, useEffect as ee, useMemo as xe, createContext as le, useContext as ce, forwardRef as $, isValidElement as Ze } from "react";
3
+ import * as ge from "@radix-ui/react-dialog";
4
+ import * as Ne from "@radix-ui/react-collapsible";
5
+ import * as he from "@radix-ui/react-accordion";
6
+ import * as C from "@radix-ui/react-tooltip";
7
+ import { a as Je } from "./accordion-Ch3xp0mX.js";
8
+ import { S as Qe } from "./scroll-area-CY5SLYNw.js";
9
+ import { Slot as Le, Slottable as es } from "@radix-ui/react-slot";
10
+ import { c as te } from "./index-D2ZczOXr.js";
11
+ import { useTranslation as ue } from "react-i18next";
12
+ import { u as ss } from "./registry-DvAUVLHh.js";
13
+ import { u as ts } from "./use-edge-resize-DHbyQwu8.js";
14
+ import { c as rs } from "./compose-refs-C0k0tdqF.js";
15
+ import { a as ns, b as as, d as is } from "./input-surface-iBmxVBfr.js";
16
+ import { u as os } from "./use-isomorphic-layout-effect-BGfaCOP1.js";
17
+ import { i as ds } from "./is-development-CLUAnsU7.js";
18
+ import { X as cs } from "./x-B5YnXwCz.js";
19
19
  import { c as Me } from "./createLucideIcon-DhHxpK9K.js";
20
- import { G as os } from "./grip-vertical-onSb1JXO.js";
20
+ import { G as ls } from "./grip-vertical-onSb1JXO.js";
21
21
  import { C as we } from "./chevron-right-I9AeSxH2.js";
22
- import { S as ds } from "./star-Bf9L2Uot.js";
23
- import { T as ls } from "./trending-up-C_luYBzS.js";
22
+ import { S as us } from "./star-Bf9L2Uot.js";
23
+ import { T as ms } from "./trending-up-C_luYBzS.js";
24
24
  /**
25
25
  * @license lucide-react v1.22.0 - ISC
26
26
  *
27
27
  * This source code is licensed under the ISC license.
28
28
  * See the LICENSE file in the root directory of this source tree.
29
29
  */
30
- const cs = [
30
+ const fs = [
31
31
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
32
32
  ["path", { d: "M9 3v18", key: "fh3hqa" }],
33
33
  ["path", { d: "m16 15-3-3 3-3", key: "14y99z" }]
34
- ], us = Me("panel-left-close", cs);
34
+ ], ps = Me("panel-left-close", fs);
35
35
  /**
36
36
  * @license lucide-react v1.22.0 - ISC
37
37
  *
38
38
  * This source code is licensed under the ISC license.
39
39
  * See the LICENSE file in the root directory of this source tree.
40
40
  */
41
- const ms = [
41
+ const vs = [
42
42
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
43
43
  ["path", { d: "M9 3v18", key: "fh3hqa" }],
44
44
  ["path", { d: "m14 9 3 3-3 3", key: "8010ee" }]
45
- ], fs = Me("panel-left-open", ms), ps = {
45
+ ], gs = Me("panel-left-open", vs), bs = {
46
46
  id: "sidebar",
47
47
  capabilities: ["expand"],
48
48
  state: {
@@ -77,130 +77,130 @@ const ms = [
77
77
  description: "Each Sidebar.Item emits its `navId` prop as data-nav-id. Agents activate a nav item via native click on the matching anchor."
78
78
  }
79
79
  }
80
- }, Ne = ce({
80
+ }, ze = le({
81
81
  enabled: !1,
82
82
  move: null
83
- }), Ce = () => ue(Ne), _e = ce(null), oe = (e, t) => e.sectionId === t.sectionId && e.index === t.index, Be = "[data-sidebar-item-id]", Fe = "[data-sidebar-section-id]";
84
- function le(e, t) {
83
+ }), Se = () => ce(ze), Be = le(null), de = (e, r) => e.sectionId === r.sectionId && e.index === r.index, Fe = "[data-sidebar-item-id]", He = "[data-sidebar-section-id]";
84
+ function me(e, r) {
85
85
  var a;
86
- const s = (a = e.parentElement) == null ? void 0 : a.closest(Fe);
87
- return s && t.contains(s) ? s.dataset.sidebarSectionId ?? null : null;
86
+ const t = (a = e.parentElement) == null ? void 0 : a.closest(He);
87
+ return t && r.contains(t) ? t.dataset.sidebarSectionId ?? null : null;
88
88
  }
89
- function vs(e, t) {
90
- var c;
91
- const s = e.querySelector("[data-sidebar-body]") ?? e, a = Array.from(
92
- s.querySelectorAll(`${Fe},${Be}`)
93
- ), i = /* @__PURE__ */ new Map([[null, []]]), u = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Map();
89
+ function hs(e, r) {
90
+ var m;
91
+ const t = e.querySelector("[data-sidebar-body]") ?? e, a = Array.from(
92
+ t.querySelectorAll(`${He},${Fe}`)
93
+ ), i = /* @__PURE__ */ new Map([[null, []]]), c = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Map();
94
94
  let p = null;
95
95
  for (const l of a) {
96
- const v = l.dataset.sidebarSectionId;
97
- if (v !== void 0) {
98
- i.set(v, []), u.set(v, l.dataset.sidebarSectionOpen !== "false"), o.set(v, l.dataset.sidebarSectionLabel ?? "");
96
+ const g = l.dataset.sidebarSectionId;
97
+ if (g !== void 0) {
98
+ i.set(g, []), c.set(g, l.dataset.sidebarSectionOpen !== "false"), o.set(g, l.dataset.sidebarSectionLabel ?? "");
99
99
  continue;
100
100
  }
101
- if (l.dataset.sidebarItemId === t) {
101
+ if (l.dataset.sidebarItemId === r) {
102
102
  p = l;
103
103
  continue;
104
104
  }
105
- const y = le(l, s);
106
- (c = i.get(y)) == null || c.push(l);
105
+ const h = me(l, t);
106
+ (m = i.get(h)) == null || m.push(l);
107
107
  }
108
108
  if (!p) return null;
109
- const m = (l) => {
110
- var v;
111
- return (((v = i.get(l)) == null ? void 0 : v.length) ?? 0) + 1;
112
- }, g = [], I = i.get(null) ?? [], N = I.length === 0 && le(p, s) === null;
109
+ const u = (l) => {
110
+ var g;
111
+ return (((g = i.get(l)) == null ? void 0 : g.length) ?? 0) + 1;
112
+ }, v = [], I = i.get(null) ?? [], z = I.length === 0 && me(p, t) === null;
113
113
  for (const l of a) {
114
- const v = l.dataset.sidebarSectionId;
115
- if (v !== void 0) {
116
- const w = i.get(v) ?? [];
117
- (!u.get(v) || w.length === 0) && g.push({
118
- sectionId: v,
114
+ const g = l.dataset.sidebarSectionId;
115
+ if (g !== void 0) {
116
+ const w = i.get(g) ?? [];
117
+ (!c.get(g) || w.length === 0) && v.push({
118
+ sectionId: g,
119
119
  index: w.length,
120
- total: m(v),
121
- indicator: { kind: "section", sectionId: v }
120
+ total: u(g),
121
+ indicator: { kind: "section", sectionId: g }
122
122
  });
123
123
  continue;
124
124
  }
125
125
  if (l === p) {
126
- N && g.push({
126
+ z && v.push({
127
127
  sectionId: null,
128
128
  index: 0,
129
129
  total: 1,
130
- indicator: { kind: "item", itemId: t, edge: "before" }
130
+ indicator: { kind: "item", itemId: r, edge: "before" }
131
131
  });
132
132
  continue;
133
133
  }
134
- const y = le(l, s);
135
- if (y !== null && !u.get(y)) continue;
136
- const A = i.get(y) ?? [], D = A.indexOf(l), T = l.dataset.sidebarItemId ?? "";
137
- g.push({
138
- sectionId: y,
139
- index: D,
140
- total: m(y),
141
- indicator: { kind: "item", itemId: T, edge: "before" }
142
- }), D === A.length - 1 && g.push({
143
- sectionId: y,
144
- index: D + 1,
145
- total: m(y),
146
- indicator: { kind: "item", itemId: T, edge: "after" }
134
+ const h = me(l, t);
135
+ if (h !== null && !c.get(h)) continue;
136
+ const D = i.get(h) ?? [], R = D.indexOf(l), j = l.dataset.sidebarItemId ?? "";
137
+ v.push({
138
+ sectionId: h,
139
+ index: R,
140
+ total: u(h),
141
+ indicator: { kind: "item", itemId: j, edge: "before" }
142
+ }), R === D.length - 1 && v.push({
143
+ sectionId: h,
144
+ index: R + 1,
145
+ total: u(h),
146
+ indicator: { kind: "item", itemId: j, edge: "after" }
147
147
  });
148
148
  }
149
- I.length === 0 && !N && g.push({
149
+ I.length === 0 && !z && v.push({
150
150
  sectionId: null,
151
151
  index: 0,
152
152
  total: 1,
153
153
  indicator: { kind: "list" }
154
154
  });
155
- const k = le(p, s), R = (i.get(k) ?? []).filter(
155
+ const N = me(p, t), A = (i.get(N) ?? []).filter(
156
156
  (l) => l.compareDocumentPosition(p) & Node.DOCUMENT_POSITION_FOLLOWING
157
157
  ).length;
158
158
  return {
159
- places: g,
160
- originIndex: g.findIndex(
161
- (l) => oe(l, { sectionId: k, index: R })
159
+ places: v,
160
+ originIndex: v.findIndex(
161
+ (l) => de(l, { sectionId: N, index: A })
162
162
  ),
163
- emptySectionIds: [...i.entries()].filter(([l, v]) => l !== null && u.get(l) && !v.length).map(([l]) => l),
164
- listEmpty: I.length === 0 && !N,
163
+ emptySectionIds: [...i.entries()].filter(([l, g]) => l !== null && c.get(l) && !g.length).map(([l]) => l),
164
+ listEmpty: I.length === 0 && !z,
165
165
  sectionLabels: o
166
166
  };
167
167
  }
168
- function gs(e, t) {
169
- const s = e.querySelector("[data-sidebar-body]") ?? e, a = le(t, s), i = Array.from(s.querySelectorAll(Be)).filter(
170
- (u) => u !== t && le(u, s) === a && u.compareDocumentPosition(t) & Node.DOCUMENT_POSITION_FOLLOWING
168
+ function xs(e, r) {
169
+ const t = e.querySelector("[data-sidebar-body]") ?? e, a = me(r, t), i = Array.from(t.querySelectorAll(Fe)).filter(
170
+ (c) => c !== r && me(c, t) === a && c.compareDocumentPosition(r) & Node.DOCUMENT_POSITION_FOLLOWING
171
171
  ).length;
172
172
  return { sectionId: a, index: i };
173
173
  }
174
- function He(e, t) {
174
+ function Ue(e, r) {
175
175
  var a;
176
- const { indicator: s } = t;
177
- return s.kind === "item" ? e.querySelector(
178
- `[data-sidebar-item-id="${CSS.escape(s.itemId)}"]`
179
- ) : s.kind === "list" ? e.querySelector("[data-sidebar-drop-zone-list]") : e.querySelector(
180
- `[data-sidebar-drop-zone="${CSS.escape(s.sectionId)}"]`
176
+ const { indicator: t } = r;
177
+ return t.kind === "item" ? e.querySelector(
178
+ `[data-sidebar-item-id="${CSS.escape(t.itemId)}"]`
179
+ ) : t.kind === "list" ? e.querySelector("[data-sidebar-drop-zone-list]") : e.querySelector(
180
+ `[data-sidebar-drop-zone="${CSS.escape(t.sectionId)}"]`
181
181
  ) ?? ((a = e.querySelector(
182
- `[data-sidebar-section-id="${CSS.escape(s.sectionId)}"]`
182
+ `[data-sidebar-section-id="${CSS.escape(t.sectionId)}"]`
183
183
  )) == null ? void 0 : a.querySelector("[data-sidebar-section-heading]")) ?? null;
184
184
  }
185
- function bs(e, t) {
185
+ function ys(e, r) {
186
186
  var a;
187
- const s = (a = He(e, t)) == null ? void 0 : a.getBoundingClientRect();
188
- return s ? t.indicator.kind === "item" ? t.indicator.edge === "before" ? s.top : s.bottom : s.top + s.height / 2 : t.indicator.kind === "item" ? Number.POSITIVE_INFINITY : e.getBoundingClientRect().bottom;
187
+ const t = (a = Ue(e, r)) == null ? void 0 : a.getBoundingClientRect();
188
+ return t ? r.indicator.kind === "item" ? r.indicator.edge === "before" ? t.top : t.bottom : t.top + t.height / 2 : r.indicator.kind === "item" ? Number.POSITIVE_INFINITY : e.getBoundingClientRect().bottom;
189
189
  }
190
- const hs = 450, xs = 6, ys = 5e3, Ie = 48, ws = 14;
191
- function Ss({
190
+ const ws = 450, Ss = 6, Ns = 5e3, Ie = 48, Is = 14;
191
+ function zs({
192
192
  onMoveItem: e,
193
- enabled: t,
194
- rootRef: s,
193
+ enabled: r,
194
+ rootRef: t,
195
195
  quietFocusRef: a
196
196
  }) {
197
- const { t: i } = de("ui"), u = ye(), [o, p] = re(null), m = F(null), g = F([]), I = F(/* @__PURE__ */ new Map()), N = F(/* @__PURE__ */ new Map()), k = F(null), R = F(e);
198
- R.current = e;
199
- const c = F(null), l = F(null), v = L((n) => {
200
- m.current = n, p(n);
201
- }, []), [y, A] = re(""), D = F(!1), T = L((n) => {
202
- D.current = !D.current, A(D.current ? n : `${n}​`);
203
- }, []), w = L(
197
+ const { t: i } = ue("ui"), c = fe(), [o, p] = se(null), u = V(null), v = V([]), I = V(/* @__PURE__ */ new Map()), z = V(/* @__PURE__ */ new Map()), N = V(null), A = V(e);
198
+ A.current = e;
199
+ const m = V(null), l = V(null), g = B((n) => {
200
+ u.current = n, p(n);
201
+ }, []), [h, D] = se(""), R = V(!1), j = B((n) => {
202
+ R.current = !R.current, D(R.current ? n : `${n}​`);
203
+ }, []), w = B(
204
204
  (n) => n.sectionId === null ? i("navigation.sidebar.move.inList", {
205
205
  position: n.index + 1,
206
206
  total: n.total
@@ -210,126 +210,126 @@ function Ss({
210
210
  total: n.total
211
211
  }),
212
212
  [i]
213
- ), O = L(
214
- (n, f, x) => {
215
- var te;
216
- const d = s.current;
213
+ ), F = B(
214
+ (n, y, T) => {
215
+ var X;
216
+ const d = t.current;
217
217
  if (!d) return !1;
218
- const S = vs(d, n);
219
- if (!S || S.originIndex < 0) return !1;
220
- g.current = S.places, I.current = S.sectionLabels;
221
- const B = S.places[S.originIndex], Z = x.getAttribute("aria-label") ?? ((te = x.textContent) == null ? void 0 : te.trim()) ?? "";
222
- return v({
218
+ const b = hs(d, n);
219
+ if (!b || b.originIndex < 0) return !1;
220
+ v.current = b.places, I.current = b.sectionLabels;
221
+ const S = b.places[b.originIndex], M = T.getAttribute("aria-label") ?? ((X = T.textContent) == null ? void 0 : X.trim()) ?? "";
222
+ return g({
223
223
  itemId: n,
224
- label: Z,
225
- via: f,
226
- origin: B,
227
- target: B,
228
- emptySectionIds: S.emptySectionIds,
229
- listEmpty: S.listEmpty
230
- }), T(
224
+ label: M,
225
+ via: y,
226
+ origin: S,
227
+ target: S,
228
+ emptySectionIds: b.emptySectionIds,
229
+ listEmpty: b.listEmpty
230
+ }), j(
231
231
  i("navigation.sidebar.move.pickedUp", {
232
- item: Z,
233
- place: w(B)
232
+ item: M,
233
+ place: w(S)
234
234
  })
235
235
  ), !0;
236
236
  },
237
- [s, v, T, i, w]
238
- ), z = L(
239
- (n, f) => {
240
- const x = m.current;
241
- !x || oe(x.target, n) || (v({ ...x, target: n }), f && (T(w(n)), requestAnimationFrame(() => {
242
- var S, B;
243
- const d = s.current;
244
- d && ((B = (S = He(d, n)) == null ? void 0 : S.scrollIntoView) == null || B.call(S, { block: "nearest" }));
237
+ [t, g, j, i, w]
238
+ ), E = B(
239
+ (n, y) => {
240
+ const T = u.current;
241
+ !T || de(T.target, n) || (g({ ...T, target: n }), y && (j(w(n)), requestAnimationFrame(() => {
242
+ var b, S;
243
+ const d = t.current;
244
+ d && ((S = (b = Ue(d, n)) == null ? void 0 : b.scrollIntoView) == null || S.call(b, { block: "nearest" }));
245
245
  })));
246
246
  },
247
- [v, T, w, s]
248
- ), P = L(() => {
249
- var B, Z;
250
- const n = m.current;
247
+ [g, j, w, t]
248
+ ), H = B(() => {
249
+ var S, M;
250
+ const n = u.current;
251
251
  if (!n) return;
252
- v(null), g.current = [];
253
- const { itemId: f, origin: x, target: d, label: S } = n;
254
- oe(x, d) || (k.current = {
255
- itemId: f,
252
+ g(null), v.current = [];
253
+ const { itemId: y, origin: T, target: d, label: b } = n;
254
+ de(T, d) || (N.current = {
255
+ itemId: y,
256
256
  sectionId: d.sectionId,
257
257
  index: d.index,
258
- until: Date.now() + ys
259
- }, d.sectionId !== null && ((B = N.current.get(d.sectionId)) == null || B()), (Z = R.current) == null || Z.call(R, {
260
- itemId: f,
258
+ until: Date.now() + Ns
259
+ }, d.sectionId !== null && ((S = z.current.get(d.sectionId)) == null || S()), (M = A.current) == null || M.call(A, {
260
+ itemId: y,
261
261
  toSectionId: d.sectionId,
262
262
  index: d.index
263
- })), T(
263
+ })), j(
264
264
  i("navigation.sidebar.move.dropped", {
265
- item: S,
265
+ item: b,
266
266
  place: w(d)
267
267
  })
268
268
  );
269
- }, [v, T, i, w]), j = L(() => {
270
- const n = m.current;
271
- n && (v(null), g.current = [], T(
269
+ }, [g, j, i, w]), O = B(() => {
270
+ const n = u.current;
271
+ n && (g(null), v.current = [], j(
272
272
  i("navigation.sidebar.move.cancelled", {
273
273
  item: n.label,
274
274
  place: w(n.origin)
275
275
  })
276
276
  ));
277
- }, [v, T, i, w]), X = L(
278
- (n, f) => {
279
- const x = m.current, d = !n.altKey && !n.ctrlKey && !n.metaKey && !n.shiftKey;
280
- if (!x) {
281
- n.key === " " && d && !n.repeat && (n.preventDefault(), O(f, "keyboard", n.currentTarget));
277
+ }, [g, j, i, w]), _ = B(
278
+ (n, y) => {
279
+ const T = u.current, d = !n.altKey && !n.ctrlKey && !n.metaKey && !n.shiftKey;
280
+ if (!T) {
281
+ n.key === " " && d && !n.repeat && (n.preventDefault(), F(y, "keyboard", n.currentTarget));
282
282
  return;
283
283
  }
284
- if (x.itemId !== f || x.via !== "keyboard") return;
285
- const S = g.current, B = S.findIndex((te) => oe(te, x.target)), Z = (te) => {
286
- const me = S[Math.max(0, Math.min(S.length - 1, te))];
287
- me && z(me, !0);
284
+ if (T.itemId !== y || T.via !== "keyboard") return;
285
+ const b = v.current, S = b.findIndex((X) => de(X, T.target)), M = (X) => {
286
+ const ae = b[Math.max(0, Math.min(b.length - 1, X))];
287
+ ae && E(ae, !0);
288
288
  };
289
289
  switch (n.key) {
290
290
  case "ArrowDown":
291
- n.preventDefault(), Z(B + 1);
291
+ n.preventDefault(), M(S + 1);
292
292
  break;
293
293
  case "ArrowUp":
294
- n.preventDefault(), Z(B - 1);
294
+ n.preventDefault(), M(S - 1);
295
295
  break;
296
296
  case "Home":
297
- n.preventDefault(), Z(0);
297
+ n.preventDefault(), M(0);
298
298
  break;
299
299
  case "End":
300
- n.preventDefault(), Z(S.length - 1);
300
+ n.preventDefault(), M(b.length - 1);
301
301
  break;
302
302
  case " ":
303
303
  case "Enter":
304
- n.preventDefault(), n.repeat || P();
304
+ n.preventDefault(), n.repeat || H();
305
305
  break;
306
306
  case "Escape":
307
- n.preventDefault(), n.stopPropagation(), j();
307
+ n.preventDefault(), n.stopPropagation(), O();
308
308
  break;
309
309
  case "Tab":
310
- j();
310
+ O();
311
311
  break;
312
312
  }
313
313
  },
314
- [O, z, P, j]
315
- ), U = L(
314
+ [F, E, H, O]
315
+ ), P = B(
316
316
  (n) => {
317
- const f = m.current;
318
- (f == null ? void 0 : f.via) === "keyboard" && f.itemId === n && j();
317
+ const y = u.current;
318
+ (y == null ? void 0 : y.via) === "keyboard" && y.itemId === n && O();
319
319
  },
320
- [j]
321
- ), b = L(() => {
322
- var f;
323
- const n = c.current;
324
- n != null && n.timer && clearTimeout(n.timer), n != null && n.frame && cancelAnimationFrame(n.frame), c.current = null, (f = l.current) == null || f.call(l), l.current = null;
325
- }, []), M = L(
326
- (n, f) => {
327
- if (m.current || c.current || !n.isPrimary || n.button !== 0) return;
328
- const x = n.pointerType === "touch", d = {
320
+ [O]
321
+ ), f = B(() => {
322
+ var y;
323
+ const n = m.current;
324
+ n != null && n.timer && clearTimeout(n.timer), n != null && n.frame && cancelAnimationFrame(n.frame), m.current = null, (y = l.current) == null || y.call(l), l.current = null;
325
+ }, []), Y = B(
326
+ (n, y) => {
327
+ if (u.current || m.current || !n.isPrimary || n.button !== 0) return;
328
+ const T = n.pointerType === "touch", d = {
329
329
  pointerId: n.pointerId,
330
- itemId: f,
330
+ itemId: y,
331
331
  node: n.currentTarget,
332
- touch: x,
332
+ touch: T,
333
333
  startX: n.clientX,
334
334
  startY: n.clientY,
335
335
  dragging: !1,
@@ -337,171 +337,171 @@ function Ss({
337
337
  lastY: n.clientY,
338
338
  frame: 0
339
339
  };
340
- c.current = d;
341
- const S = () => {
342
- var C, J;
343
- if (!O(d.itemId, "pointer", d.node)) {
344
- b();
340
+ m.current = d;
341
+ const b = () => {
342
+ var k, Z;
343
+ if (!F(d.itemId, "pointer", d.node)) {
344
+ f();
345
345
  return;
346
346
  }
347
- d.dragging = !0, (J = (C = window.getSelection) == null ? void 0 : C.call(window)) == null || J.removeAllRanges();
348
- }, B = (C) => {
349
- const J = s.current;
350
- if (!J) return;
351
- let Q = null, fe = Number.POSITIVE_INFINITY;
352
- for (const ae of g.current) {
353
- const ie = Math.abs(bs(J, ae) - C);
354
- ie < fe && (Q = ae, fe = ie);
347
+ d.dragging = !0, (Z = (k = window.getSelection) == null ? void 0 : k.call(window)) == null || Z.removeAllRanges();
348
+ }, S = (k) => {
349
+ const Z = t.current;
350
+ if (!Z) return;
351
+ let J = null, ve = Number.POSITIVE_INFINITY;
352
+ for (const ie of v.current) {
353
+ const oe = Math.abs(ys(Z, ie) - k);
354
+ oe < ve && (J = ie, ve = oe);
355
355
  }
356
- Q && z(Q, !1);
357
- }, Z = () => {
358
- var De, Ae;
356
+ J && E(J, !1);
357
+ }, M = () => {
358
+ var De, Pe;
359
359
  if (d.frame = 0, !d.dragging) return;
360
- const C = (Ae = (De = s.current) == null ? void 0 : De.querySelector("[data-sidebar-body]")) == null ? void 0 : Ae.closest("[data-radix-scroll-area-viewport]");
361
- if (!C) return;
362
- const J = C.getBoundingClientRect(), Q = J.top + Ie - d.lastY, fe = d.lastY - (J.bottom - Ie), ae = Math.max(Q, fe);
363
- if (ae <= 0) return;
364
- const ie = Math.ceil(ws * Math.min(1, ae / Ie)), ge = C.scrollTop;
365
- C.scrollTop += Q > 0 ? -ie : ie, C.scrollTop !== ge && (B(d.lastY), d.frame = requestAnimationFrame(Z));
366
- }, te = (C) => {
367
- if (C.pointerId === d.pointerId) {
360
+ const k = (Pe = (De = t.current) == null ? void 0 : De.querySelector("[data-sidebar-body]")) == null ? void 0 : Pe.closest("[data-radix-scroll-area-viewport]");
361
+ if (!k) return;
362
+ const Z = k.getBoundingClientRect(), J = Z.top + Ie - d.lastY, ve = d.lastY - (Z.bottom - Ie), ie = Math.max(J, ve);
363
+ if (ie <= 0) return;
364
+ const oe = Math.ceil(Is * Math.min(1, ie / Ie)), be = k.scrollTop;
365
+ k.scrollTop += J > 0 ? -oe : oe, k.scrollTop !== be && (S(d.lastY), d.frame = requestAnimationFrame(M));
366
+ }, X = (k) => {
367
+ if (k.pointerId === d.pointerId) {
368
368
  if (!d.dragging) {
369
369
  if (Math.hypot(
370
- C.clientX - d.startX,
371
- C.clientY - d.startY
372
- ) < xs) return;
370
+ k.clientX - d.startX,
371
+ k.clientY - d.startY
372
+ ) < Ss) return;
373
373
  if (d.touch) {
374
- b();
374
+ f();
375
375
  return;
376
376
  }
377
- if (S(), !d.dragging) return;
377
+ if (b(), !d.dragging) return;
378
378
  }
379
- d.lastY = C.clientY, B(C.clientY), d.frame || (d.frame = requestAnimationFrame(Z));
379
+ d.lastY = k.clientY, S(k.clientY), d.frame || (d.frame = requestAnimationFrame(M));
380
380
  }
381
- }, me = (C) => {
382
- var ie;
383
- if (C.pointerId !== d.pointerId) return;
384
- const J = d.dragging;
385
- if (b(), !J) return;
386
- const Q = (ie = s.current) == null ? void 0 : ie.getBoundingClientRect();
387
- if (!Q || C.clientX < Q.left || C.clientX > Q.right || C.clientY < Q.top || C.clientY > Q.bottom) {
388
- j();
381
+ }, ae = (k) => {
382
+ var oe;
383
+ if (k.pointerId !== d.pointerId) return;
384
+ const Z = d.dragging;
385
+ if (f(), !Z) return;
386
+ const J = (oe = t.current) == null ? void 0 : oe.getBoundingClientRect();
387
+ if (!J || k.clientX < J.left || k.clientX > J.right || k.clientY < J.top || k.clientY > J.bottom) {
388
+ O();
389
389
  return;
390
390
  }
391
- P();
392
- const ae = (ge) => {
393
- ge.preventDefault(), ge.stopPropagation();
391
+ H();
392
+ const ie = (be) => {
393
+ be.preventDefault(), be.stopPropagation();
394
394
  };
395
- window.addEventListener("click", ae, {
395
+ window.addEventListener("click", ie, {
396
396
  capture: !0,
397
397
  once: !0
398
- }), setTimeout(() => window.removeEventListener("click", ae, !0), 0);
399
- }, ke = (C) => {
400
- if (C.pointerId !== d.pointerId) return;
401
- const J = d.dragging;
402
- b(), J && j();
403
- }, Te = (C) => C.preventDefault(), Ee = (C) => {
404
- C.key !== "Escape" || !d.dragging || (C.preventDefault(), b(), j());
398
+ }), setTimeout(() => window.removeEventListener("click", ie, !0), 0);
399
+ }, Te = (k) => {
400
+ if (k.pointerId !== d.pointerId) return;
401
+ const Z = d.dragging;
402
+ f(), Z && O();
403
+ }, ke = (k) => k.preventDefault(), Ee = (k) => {
404
+ k.key !== "Escape" || !d.dragging || (k.preventDefault(), f(), O());
405
405
  };
406
- window.addEventListener("pointermove", te), window.addEventListener("pointerup", me), window.addEventListener("pointercancel", ke), window.addEventListener("keydown", Ee, !0), x && (window.addEventListener("contextmenu", Te, !0), d.timer = setTimeout(() => {
407
- d.timer = null, S();
408
- }, hs)), l.current = () => {
409
- window.removeEventListener("pointermove", te), window.removeEventListener("pointerup", me), window.removeEventListener("pointercancel", ke), window.removeEventListener("keydown", Ee, !0), window.removeEventListener("contextmenu", Te, !0);
406
+ window.addEventListener("pointermove", X), window.addEventListener("pointerup", ae), window.addEventListener("pointercancel", Te), window.addEventListener("keydown", Ee, !0), T && (window.addEventListener("contextmenu", ke, !0), d.timer = setTimeout(() => {
407
+ d.timer = null, b();
408
+ }, ws)), l.current = () => {
409
+ window.removeEventListener("pointermove", X), window.removeEventListener("pointerup", ae), window.removeEventListener("pointercancel", Te), window.removeEventListener("keydown", Ee, !0), window.removeEventListener("contextmenu", ke, !0);
410
410
  };
411
411
  },
412
- [O, z, P, j, b, s]
412
+ [F, E, H, O, f, t]
413
413
  );
414
- ne(() => b, [b]);
415
- const Y = F(null), q = L((n) => {
416
- var f;
417
- (f = c.current) != null && f.dragging && n.preventDefault();
418
- }, []), V = L(
414
+ ee(() => f, [f]);
415
+ const W = V(null), q = B((n) => {
416
+ var y;
417
+ (y = m.current) != null && y.dragging && n.preventDefault();
418
+ }, []), K = B(
419
419
  (n) => {
420
- var f;
421
- Y.current !== n && ((f = Y.current) == null || f.removeEventListener("touchmove", q), Y.current = n, n == null || n.addEventListener("touchmove", q, { passive: !1 }));
420
+ var y;
421
+ W.current !== n && ((y = W.current) == null || y.removeEventListener("touchmove", q), W.current = n, n == null || n.addEventListener("touchmove", q, { passive: !1 }));
422
422
  },
423
423
  [q]
424
- ), W = F(t);
425
- W.current = t;
426
- const K = L(
427
- (n) => V(n && W.current ? n : null),
428
- [V]
424
+ ), re = V(r);
425
+ re.current = r;
426
+ const ne = B(
427
+ (n) => K(n && re.current ? n : null),
428
+ [K]
429
429
  );
430
- ne(() => {
431
- V(t ? s.current : null);
432
- }, [t, V, s]), ne(() => () => V(null), [V]), ne(() => {
433
- !t && m.current && j();
434
- }, [t, j]);
435
- const _ = L((n, f) => (N.current.set(n, f), () => {
436
- N.current.get(n) === f && N.current.delete(n);
437
- }), []), $ = L(() => {
438
- const n = k.current, f = s.current;
439
- if (!n || !f) return;
430
+ ee(() => {
431
+ K(r ? t.current : null);
432
+ }, [r, K, t]), ee(() => () => K(null), [K]), ee(() => {
433
+ !r && u.current && O();
434
+ }, [r, O]);
435
+ const L = B((n, y) => (z.current.set(n, y), () => {
436
+ z.current.get(n) === y && z.current.delete(n);
437
+ }), []), U = B(() => {
438
+ const n = N.current, y = t.current;
439
+ if (!n || !y) return;
440
440
  if (Date.now() > n.until) {
441
- k.current = null;
441
+ N.current = null;
442
442
  return;
443
443
  }
444
- const x = f.querySelector(
444
+ const T = y.querySelector(
445
445
  `[data-sidebar-item-id="${CSS.escape(n.itemId)}"]`
446
446
  );
447
- if (!x) return;
448
- const d = document.activeElement, S = d !== null && d !== document.body && d !== x;
449
- if (!oe(gs(f, x), n)) {
450
- S && (k.current = null);
447
+ if (!T) return;
448
+ const d = document.activeElement, b = d !== null && d !== document.body && d !== T;
449
+ if (!de(xs(y, T), n)) {
450
+ b && (N.current = null);
451
451
  return;
452
452
  }
453
- k.current = null, !(d === x || S) && (a.current = !0, x.focus(), a.current = !1);
454
- }, [s, a]);
453
+ N.current = null, !(d === T || b) && (a.current = !0, T.focus(), a.current = !1);
454
+ }, [t, a]);
455
455
  return {
456
- context: he(
457
- () => t ? {
458
- enabled: t,
459
- instructionsId: u,
456
+ context: xe(
457
+ () => r ? {
458
+ enabled: r,
459
+ instructionsId: c,
460
460
  move: o,
461
- onItemKeyDown: X,
462
- onItemPointerDown: M,
463
- onItemBlur: U,
464
- registerSection: _
465
- } : { enabled: !1, move: null, registerSection: _ },
461
+ onItemKeyDown: _,
462
+ onItemPointerDown: Y,
463
+ onItemBlur: P,
464
+ registerSection: L
465
+ } : { enabled: !1, move: null, registerSection: L },
466
466
  [
467
- t,
468
- u,
467
+ r,
468
+ c,
469
469
  o,
470
- X,
471
- M,
472
- U,
473
- _
470
+ _,
471
+ Y,
472
+ P,
473
+ L
474
474
  ]
475
475
  ),
476
- message: y,
477
- instructionsId: u,
478
- restoreFocus: $,
479
- touchGuardRef: K,
476
+ message: h,
477
+ instructionsId: c,
478
+ restoreFocus: U,
479
+ touchGuardRef: ne,
480
480
  /** True while any move runs: Escape cancels it, not the drawer. */
481
- cancelIfMoving: () => m.current ? (j(), !0) : !1
481
+ cancelIfMoving: () => u.current ? (O(), !0) : !1
482
482
  };
483
483
  }
484
- const ze = ce({
484
+ const Ce = le({
485
485
  mode: "expanded",
486
486
  density: "default"
487
- }), G = () => ue(ze), Ue = "ui.sidebar.state";
488
- function Is(e) {
487
+ }), G = () => ce(Ce), Ve = "ui.sidebar.state";
488
+ function Cs(e) {
489
489
  if (typeof window > "u") return e;
490
490
  try {
491
- const t = window.localStorage.getItem(Ue);
492
- if (t === "expanded" || t === "icon" || t === "overlay") return t;
491
+ const r = window.localStorage.getItem(Ve);
492
+ if (r === "expanded" || r === "icon" || r === "overlay") return r;
493
493
  } catch {
494
494
  }
495
495
  return e;
496
496
  }
497
- function Ns(e) {
497
+ function js(e) {
498
498
  if (!(typeof window > "u"))
499
499
  try {
500
- window.localStorage.setItem(Ue, e);
500
+ window.localStorage.setItem(Ve, e);
501
501
  } catch {
502
502
  }
503
503
  }
504
- const Pe = ee(
504
+ const Oe = te(
505
505
  [
506
506
  "ds:flex ds:flex-col",
507
507
  // `--sidebar-surface`: the page background in light mode (white-on-white
@@ -543,7 +543,7 @@ const Pe = ee(
543
543
  },
544
544
  defaultVariants: { mode: "expanded", density: "default" }
545
545
  }
546
- ), zs = 192, Cs = 384, js = 248, ks = [
546
+ ), Ts = 192, ks = 384, Es = 248, Ds = [
547
547
  "ds:absolute ds:[inset-block:0] ds:end-0 ds:z-[2]",
548
548
  "ds:w-[var(--resizable-handle-size)]",
549
549
  "ds:cursor-col-resize ds:select-none ds:touch-none",
@@ -557,69 +557,69 @@ const Pe = ee(
557
557
  "ds:before:[inset-block:0]",
558
558
  "ds:before:[inline-size:var(--min-target-size)]",
559
559
  "ds:before:[inset-inline:calc(0px_-_(var(--min-target-size)_-_var(--resizable-handle-size))_/_2)]"
560
- ].join(" "), Ts = H(
560
+ ].join(" "), Ps = $(
561
561
  ({
562
562
  state: e,
563
- defaultState: t = "expanded",
564
- onStateChange: s,
563
+ defaultState: r = "expanded",
564
+ onStateChange: t,
565
565
  density: a = "default",
566
566
  open: i,
567
- onOpenChange: u,
567
+ onOpenChange: c,
568
568
  resizable: o = !1,
569
569
  onMoveItem: p,
570
- "aria-label": m,
571
- className: g,
570
+ "aria-label": u,
571
+ className: v,
572
572
  children: I,
573
- id: N,
574
- ...k
575
- }, R) => {
576
- const { t: c } = de("ui"), l = e !== void 0, [v, y] = re(
577
- () => Is(t)
578
- ), A = l ? e : v;
579
- ne(() => {
580
- l || Ns(v);
581
- }, [v, l]);
582
- const D = L(
583
- (_) => {
584
- l || y(_), s == null || s(_);
573
+ id: z,
574
+ ...N
575
+ }, A) => {
576
+ const { t: m } = ue("ui"), l = e !== void 0, [g, h] = se(
577
+ () => Cs(r)
578
+ ), D = l ? e : g;
579
+ ee(() => {
580
+ l || js(g);
581
+ }, [g, l]);
582
+ const R = B(
583
+ (L) => {
584
+ l || h(L), t == null || t(L);
585
585
  },
586
- [l, s]
587
- ), T = m ?? c("navigation.sidebar.label"), w = ye(), O = N ?? w, z = F(A);
588
- ne(() => {
589
- z.current = A;
590
- }, [A]);
591
- const P = he(
586
+ [l, t]
587
+ ), j = u ?? m("navigation.sidebar.label"), w = fe(), F = z ?? w, E = V(D);
588
+ ee(() => {
589
+ E.current = D;
590
+ }, [D]);
591
+ const H = xe(
592
592
  () => ({
593
- getIsCollapsed: () => z.current !== "expanded",
593
+ getIsCollapsed: () => E.current !== "expanded",
594
594
  toggleCollapsed: () => {
595
- const _ = z.current === "expanded" ? "icon" : "expanded";
596
- D(_);
595
+ const L = E.current === "expanded" ? "icon" : "expanded";
596
+ R(L);
597
597
  }
598
598
  }),
599
- [D]
599
+ [R]
600
600
  );
601
- Je(ps, P, N);
602
- const j = F(null), X = F(null), U = F(!1), { separatorProps: b, isResizing: M } = Qe({
601
+ ss(bs, H, z);
602
+ const O = V(null), _ = V(null), P = V(!1), { separatorProps: f, isResizing: Y } = ts({
603
603
  edge: "inline-end",
604
- targetRef: j,
604
+ targetRef: O,
605
605
  cssProperty: "--sidebar-modern-expanded-size",
606
- minSize: zs,
607
- maxSize: Cs,
608
- defaultSize: js,
609
- disabled: !o || A !== "expanded"
610
- }), Y = o && A === "expanded", q = Ss({
606
+ minSize: Ts,
607
+ maxSize: ks,
608
+ defaultSize: Es,
609
+ disabled: !o || D !== "expanded"
610
+ }), W = o && D === "expanded", q = zs({
611
611
  onMoveItem: p,
612
- enabled: p !== void 0 && A !== "icon",
613
- rootRef: j,
614
- quietFocusRef: U
615
- }), { touchGuardRef: V } = q, W = he(
616
- () => es(R, j, V),
617
- [R, V]
612
+ enabled: p !== void 0 && D !== "icon",
613
+ rootRef: O,
614
+ quietFocusRef: P
615
+ }), { touchGuardRef: K } = q, re = xe(
616
+ () => rs(A, O, K),
617
+ [A, K]
618
618
  );
619
- rs(() => q.restoreFocus());
620
- const K = p !== void 0 ? /* @__PURE__ */ h(xe, { children: [
621
- /* @__PURE__ */ r("span", { id: q.instructionsId, hidden: !0, children: c("navigation.sidebar.move.instructions") }),
622
- /* @__PURE__ */ r(
619
+ os(() => q.restoreFocus());
620
+ const ne = p !== void 0 ? /* @__PURE__ */ x(ye, { children: [
621
+ /* @__PURE__ */ s("span", { id: q.instructionsId, hidden: !0, children: m("navigation.sidebar.move.instructions") }),
622
+ /* @__PURE__ */ s(
623
623
  "span",
624
624
  {
625
625
  role: "status",
@@ -630,19 +630,19 @@ const Pe = ee(
630
630
  }
631
631
  )
632
632
  ] }) : null;
633
- return A === "overlay" ? /* @__PURE__ */ r(
634
- ze.Provider,
633
+ return D === "overlay" ? /* @__PURE__ */ s(
634
+ Ce.Provider,
635
635
  {
636
636
  value: {
637
637
  mode: "overlay",
638
638
  density: a,
639
- transitionTo: D,
640
- navElementId: O,
641
- quietFocusRef: U
639
+ transitionTo: R,
640
+ navElementId: F,
641
+ quietFocusRef: P
642
642
  },
643
- children: /* @__PURE__ */ r(E.Provider, { delayDuration: 300, children: /* @__PURE__ */ r(pe.Root, { open: i, onOpenChange: u, children: /* @__PURE__ */ h(pe.Portal, { children: [
644
- /* @__PURE__ */ r(
645
- pe.Overlay,
643
+ children: /* @__PURE__ */ s(C.Provider, { delayDuration: 300, children: /* @__PURE__ */ s(ge.Root, { open: i, onOpenChange: c, children: /* @__PURE__ */ x(ge.Portal, { children: [
644
+ /* @__PURE__ */ s(
645
+ ge.Overlay,
646
646
  {
647
647
  className: [
648
648
  "ds:fixed ds:inset-0 ds:z-[var(--z-modal-backdrop)]",
@@ -653,26 +653,26 @@ const Pe = ee(
653
653
  ].join(" ")
654
654
  }
655
655
  ),
656
- /* @__PURE__ */ h(
657
- pe.Content,
656
+ /* @__PURE__ */ x(
657
+ ge.Content,
658
658
  {
659
- onOpenAutoFocus: (_) => {
660
- var se;
661
- X.current = document.activeElement instanceof HTMLElement ? document.activeElement : null;
662
- const $ = (se = j.current) == null ? void 0 : se.querySelector(
659
+ onOpenAutoFocus: (L) => {
660
+ var Q;
661
+ _.current = document.activeElement instanceof HTMLElement ? document.activeElement : null;
662
+ const U = (Q = O.current) == null ? void 0 : Q.querySelector(
663
663
  '[aria-current="page"]'
664
664
  );
665
- U.current = !0, $ == null || $.focus(), U.current = !1, $ && document.activeElement === $ && _.preventDefault();
665
+ P.current = !0, U == null || U.focus(), P.current = !1, U && document.activeElement === U && L.preventDefault();
666
666
  },
667
- onCloseAutoFocus: (_) => {
668
- var se;
669
- const $ = document.activeElement;
670
- $ && $ !== document.body || (se = X.current) != null && se.isConnected && (_.preventDefault(), X.current.focus());
667
+ onCloseAutoFocus: (L) => {
668
+ var Q;
669
+ const U = document.activeElement;
670
+ U && U !== document.body || (Q = _.current) != null && Q.isConnected && (L.preventDefault(), _.current.focus());
671
671
  },
672
- onEscapeKeyDown: (_) => {
673
- q.cancelIfMoving() && _.preventDefault();
672
+ onEscapeKeyDown: (L) => {
673
+ q.cancelIfMoving() && L.preventDefault();
674
674
  },
675
- "aria-label": T,
675
+ "aria-label": j,
676
676
  className: [
677
677
  "ds:fixed ds:z-[var(--z-modal)]",
678
678
  // `start-0`/`top-0` — the `inset-inline-start-0` /
@@ -680,36 +680,36 @@ const Pe = ee(
680
680
  // utilities and compiled to nothing.
681
681
  "ds:start-0 ds:top-0",
682
682
  "ds:h-dvh",
683
- Pe({ mode: "overlay", density: a }),
683
+ Oe({ mode: "overlay", density: a }),
684
684
  "ds:data-[state=open]:animate-in ds:data-[state=closed]:animate-out",
685
685
  "ds:data-[state=open]:slide-in-from-left ds:data-[state=closed]:slide-out-to-left",
686
686
  "ds:rtl:data-[state=open]:slide-in-from-right ds:rtl:data-[state=closed]:slide-out-to-right",
687
687
  "ds:motion-reduce:animate-none",
688
688
  "ds:focus:outline-none",
689
- g ?? ""
689
+ v ?? ""
690
690
  ].filter(Boolean).join(" "),
691
691
  children: [
692
- /* @__PURE__ */ h(
692
+ /* @__PURE__ */ x(
693
693
  "nav",
694
694
  {
695
- ref: W,
696
- id: O,
697
- "aria-label": T,
695
+ ref: re,
696
+ id: F,
697
+ "aria-label": j,
698
698
  "data-component": "sidebar",
699
- "data-component-id": N,
699
+ "data-component-id": z,
700
700
  className: "ds:flex ds:flex-col ds:h-full",
701
- ...k,
701
+ ...N,
702
702
  children: [
703
- /* @__PURE__ */ r(Ne.Provider, { value: q.context, children: I }),
704
- K
703
+ /* @__PURE__ */ s(ze.Provider, { value: q.context, children: I }),
704
+ ne
705
705
  ]
706
706
  }
707
707
  ),
708
- /* @__PURE__ */ r(pe.Close, { asChild: !0, children: /* @__PURE__ */ r(
708
+ /* @__PURE__ */ s(ge.Close, { asChild: !0, children: /* @__PURE__ */ s(
709
709
  "button",
710
710
  {
711
711
  type: "button",
712
- "aria-label": c("navigation.sidebar.close"),
712
+ "aria-label": m("navigation.sidebar.close"),
713
713
  className: [
714
714
  "ds:absolute ds:top-[var(--spacing-sm)] ds:end-[var(--spacing-sm)]",
715
715
  "ds:inline-flex ds:items-center ds:justify-center",
@@ -719,7 +719,7 @@ const Pe = ee(
719
719
  "ds:focus-visible:outline-solid ds:focus-visible:outline-[var(--ring)]",
720
720
  "ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]"
721
721
  ].join(" "),
722
- children: /* @__PURE__ */ r(is, { "aria-hidden": "true", className: "ds:size-4" })
722
+ children: /* @__PURE__ */ s(cs, { "aria-hidden": "true", className: "ds:size-4" })
723
723
  }
724
724
  ) })
725
725
  ]
@@ -727,43 +727,43 @@ const Pe = ee(
727
727
  )
728
728
  ] }) }) })
729
729
  }
730
- ) : /* @__PURE__ */ r(
731
- ze.Provider,
730
+ ) : /* @__PURE__ */ s(
731
+ Ce.Provider,
732
732
  {
733
733
  value: {
734
- mode: A,
734
+ mode: D,
735
735
  density: a,
736
- transitionTo: D,
737
- navElementId: O,
738
- quietFocusRef: U
736
+ transitionTo: R,
737
+ navElementId: F,
738
+ quietFocusRef: P
739
739
  },
740
- children: /* @__PURE__ */ r(E.Provider, { delayDuration: 300, children: /* @__PURE__ */ h(
740
+ children: /* @__PURE__ */ s(C.Provider, { delayDuration: 300, children: /* @__PURE__ */ x(
741
741
  "nav",
742
742
  {
743
- ref: W,
744
- id: O,
745
- "aria-label": T,
743
+ ref: re,
744
+ id: F,
745
+ "aria-label": j,
746
746
  "data-component": "sidebar",
747
- "data-component-id": N,
748
- "data-mode": A,
747
+ "data-component-id": z,
748
+ "data-mode": D,
749
749
  "data-density": a,
750
- "data-resizing": M ? "" : void 0,
750
+ "data-resizing": Y ? "" : void 0,
751
751
  className: [
752
- Pe({ mode: A, density: a }),
752
+ Oe({ mode: D, density: a }),
753
753
  a === "compact" ? "ds:density-compact" : "",
754
- g ?? ""
754
+ v ?? ""
755
755
  ].filter(Boolean).join(" "),
756
- ...k,
756
+ ...N,
757
757
  children: [
758
- /* @__PURE__ */ r(Ne.Provider, { value: q.context, children: I }),
759
- K,
760
- Y ? /* @__PURE__ */ r(
758
+ /* @__PURE__ */ s(ze.Provider, { value: q.context, children: I }),
759
+ ne,
760
+ W ? /* @__PURE__ */ s(
761
761
  "div",
762
762
  {
763
- ...b,
764
- "aria-label": c("navigation.sidebar.resize"),
765
- "data-resizing": M ? "" : void 0,
766
- className: ks
763
+ ...f,
764
+ "aria-label": m("navigation.sidebar.resize"),
765
+ "data-resizing": Y ? "" : void 0,
766
+ className: Ds
767
767
  }
768
768
  ) : null
769
769
  ]
@@ -773,13 +773,13 @@ const Pe = ee(
773
773
  );
774
774
  }
775
775
  );
776
- Ts.displayName = "Sidebar";
777
- const Es = H(({ className: e, ...t }, s) => {
776
+ Ps.displayName = "Sidebar";
777
+ const Os = $(({ className: e, ...r }, t) => {
778
778
  const { mode: a } = G();
779
- return /* @__PURE__ */ r(
779
+ return /* @__PURE__ */ s(
780
780
  "div",
781
781
  {
782
- ref: s,
782
+ ref: t,
783
783
  className: [
784
784
  "ds:relative ds:flex ds:items-center ds:gap-[var(--spacing-xs)]",
785
785
  "ds:min-h-[var(--min-target-size)]",
@@ -798,12 +798,12 @@ const Es = H(({ className: e, ...t }, s) => {
798
798
  "ds:shadow-[var(--shadow-chrome-down)]",
799
799
  e ?? ""
800
800
  ].filter(Boolean).join(" "),
801
- ...t
801
+ ...r
802
802
  }
803
803
  );
804
804
  });
805
- Es.displayName = "SidebarHeader";
806
- const Ye = ee(
805
+ Os.displayName = "SidebarHeader";
806
+ const Ye = te(
807
807
  [
808
808
  "ds:min-h-[var(--min-target-size)] ds:rounded-[var(--radius-sm)]",
809
809
  "ds:border ds:border-dashed ds:border-[color:var(--border)]"
@@ -817,15 +817,15 @@ const Ye = ee(
817
817
  },
818
818
  defaultVariants: { active: !1 }
819
819
  }
820
- ), Ds = H(
821
- ({ className: e, children: t, ...s }, a) => {
822
- const { navElementId: i } = G(), { enabled: u, move: o } = Ce(), p = u && (o != null && o.listEmpty) ? /* @__PURE__ */ r(
820
+ ), As = $(
821
+ ({ className: e, children: r, ...t }, a) => {
822
+ const { navElementId: i } = G(), { enabled: c, move: o } = Se(), p = c && (o != null && o.listEmpty) ? /* @__PURE__ */ s(
823
823
  "div",
824
824
  {
825
825
  "aria-hidden": "true",
826
826
  "data-sidebar-drop-zone-list": "",
827
827
  className: Ye({
828
- active: o.target.indicator.kind === "list" && !oe(o.target, o.origin)
828
+ active: o.target.indicator.kind === "list" && !de(o.target, o.origin)
829
829
  })
830
830
  }
831
831
  ) : null;
@@ -836,21 +836,21 @@ const Ye = ee(
836
836
  // fills the column and bounds the height; the layout `className` lands on the
837
837
  // body box (the ScrollArea root). Padding + `ref` + div props go on the inner
838
838
  // content div so the scrollbar sits flush at the inline-end edge.
839
- /* @__PURE__ */ r(
840
- We,
839
+ /* @__PURE__ */ s(
840
+ Qe,
841
841
  {
842
842
  orientation: "vertical",
843
843
  ...i ? { role: "group", "aria-labelledby": i } : {},
844
844
  className: ["ds:flex-1 ds:min-h-0", e ?? ""].filter(Boolean).join(" "),
845
- children: /* @__PURE__ */ h(
845
+ children: /* @__PURE__ */ x(
846
846
  "div",
847
847
  {
848
848
  ref: a,
849
849
  "data-sidebar-body": "",
850
850
  className: "ds:ps-[var(--spacing-xs)] ds:pe-[var(--spacing-xs)] ds:py-[var(--spacing-sm)]",
851
- ...s,
851
+ ...t,
852
852
  children: [
853
- t,
853
+ r,
854
854
  p
855
855
  ]
856
856
  }
@@ -860,13 +860,13 @@ const Ye = ee(
860
860
  );
861
861
  }
862
862
  );
863
- Ds.displayName = "SidebarBody";
864
- const As = H(({ className: e, ...t }, s) => {
863
+ As.displayName = "SidebarBody";
864
+ const Rs = $(({ className: e, ...r }, t) => {
865
865
  const { mode: a } = G();
866
- return /* @__PURE__ */ r(
866
+ return /* @__PURE__ */ s(
867
867
  "div",
868
868
  {
869
- ref: s,
869
+ ref: t,
870
870
  className: [
871
871
  "ds:relative ds:flex ds:items-center ds:gap-[var(--spacing-xs)]",
872
872
  // Icon-rail is 64px — two 44×44 controls can't sit side-by-side,
@@ -880,27 +880,30 @@ const As = H(({ className: e, ...t }, s) => {
880
880
  "ds:shadow-[var(--shadow-chrome-up)]",
881
881
  e ?? ""
882
882
  ].filter(Boolean).join(" "),
883
- ...t
883
+ ...r
884
884
  }
885
885
  );
886
886
  });
887
- As.displayName = "SidebarFooter";
888
- const Ps = [
887
+ Rs.displayName = "SidebarFooter";
888
+ const _s = [
889
889
  "ds:group/section-label ds:flex ds:w-full ds:items-center",
890
+ // A full target, 44px (48px accessible): the row gains height, the text
891
+ // keeps its size, and no hit area overlaps the items around it.
892
+ "ds:min-h-[var(--min-target-size)]",
890
893
  "type-eyebrow",
891
894
  "ds:text-[var(--muted-foreground)]",
892
895
  "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]",
893
896
  "ds:py-[var(--spacing-xs)]",
894
- "ds:hover:text-[var(--foreground)]",
897
+ "ds:hover:text-[var(--foreground)] ds:data-[holds-current]:text-[var(--foreground)]",
895
898
  "ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid",
896
899
  "ds:focus-visible:outline-[var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
897
900
  "ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none"
898
- ].join(" "), Re = [
901
+ ].join(" "), Ae = [
899
902
  "ds:inline-flex ds:shrink-0 ds:items-center ds:justify-center",
900
903
  "ds:size-4",
901
904
  "ds:text-[var(--accent)]",
902
905
  "ds:me-[var(--spacing-xs)]"
903
- ].join(" "), Oe = ee(
906
+ ].join(" "), Re = te(
904
907
  "ds:flex ds:items-center ds:rounded-[var(--radius-sm)]",
905
908
  {
906
909
  variants: {
@@ -911,71 +914,127 @@ const Ps = [
911
914
  },
912
915
  defaultVariants: { dropInto: !1 }
913
916
  }
914
- ), Rs = [
917
+ ), Ls = [
915
918
  "ds:flex ds:shrink-0 ds:items-center",
916
919
  "ds:[&>*]:min-w-[var(--min-target-size)] ds:[&>*]:min-h-[var(--min-target-size)]"
917
- ].join(" "), qe = ce(!1), Ve = H(
920
+ ].join(" "), Ms = [
921
+ "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)] ds:py-[var(--spacing-xs)] type-meta ds:text-[color:var(--muted-foreground)]",
922
+ "ds:[[data-sidebar-section-items]:not(:empty)~&]:hidden"
923
+ ].join(" "), Bs = [
924
+ "ds:[&:has(+[data-sidebar-item])]:[border-block-end:var(--border-width-hairline)_solid_var(--border)]",
925
+ "ds:[&:has(+[data-sidebar-item])]:pb-[var(--spacing-xs)]",
926
+ "ds:[&:has(+[data-sidebar-item])]:mb-[var(--spacing-xs)]"
927
+ ].join(" "), $e = le(null), Fs = [
928
+ "ds:size-2 ds:shrink-0 ds:me-[var(--spacing-xs)] ds:rounded-[var(--radius-full)]",
929
+ "ds:bg-[var(--primary)] ds:border-[length:var(--border-width-sm)] ds:border-[color:var(--primary)]"
930
+ ].join(" "), Hs = "ds:min-w-0 ds:line-clamp-2 ds:[overflow-wrap:anywhere]";
931
+ function Us({
932
+ name: e,
933
+ nameRef: r,
934
+ children: t
935
+ }) {
936
+ const { navElementId: a, quietFocusRef: i } = G(), { move: c } = Se();
937
+ if (a === void 0) return t;
938
+ const o = (p) => {
939
+ const u = r.current;
940
+ (!(u != null && u.scrollHeight > u.clientHeight) || i != null && i.current || c !== null) && p.preventDefault();
941
+ };
942
+ return /* @__PURE__ */ x(C.Root, { children: [
943
+ /* @__PURE__ */ s(
944
+ C.Trigger,
945
+ {
946
+ asChild: !0,
947
+ onPointerMove: o,
948
+ onFocus: o,
949
+ children: t
950
+ }
951
+ ),
952
+ /* @__PURE__ */ s(C.Portal, { children: /* @__PURE__ */ x(
953
+ C.Content,
954
+ {
955
+ side: "right",
956
+ sideOffset: 6,
957
+ className: pe,
958
+ children: [
959
+ e,
960
+ /* @__PURE__ */ s(C.Arrow, { className: "ds:fill-[var(--foreground)]" })
961
+ ]
962
+ }
963
+ ) })
964
+ ] });
965
+ }
966
+ const qe = le(!1), Ge = $(
918
967
  ({
919
968
  label: e,
920
- icon: t,
921
- collapsible: s = !0,
969
+ icon: r,
970
+ collapsible: t = !0,
922
971
  defaultOpen: a = !0,
923
972
  open: i,
924
- onOpenChange: u,
973
+ onOpenChange: c,
925
974
  sectionId: o,
926
975
  actions: p,
927
- className: m,
928
- children: g,
976
+ className: u,
977
+ children: v,
929
978
  ...I
930
- }, N) => {
931
- const { t: k } = de("ui"), { mode: R } = G(), c = R === "icon", l = ye(), v = s && !c && !!e, [y, A] = re(a), D = i ?? y, T = F(D);
932
- T.current = D;
933
- const w = L(
934
- (K) => {
935
- i === void 0 && A(K), u == null || u(K);
979
+ }, z) => {
980
+ const { t: N } = ue("ui"), { mode: A } = G(), m = A === "icon", l = fe(), g = fe(), h = V(null), [D, R] = se(
981
+ () => /* @__PURE__ */ new Set()
982
+ ), j = B((d, b) => {
983
+ R((S) => {
984
+ if (S.has(d) === b) return S;
985
+ const M = new Set(S);
986
+ return b ? M.add(d) : M.delete(d), M;
987
+ });
988
+ }, []), w = t && !m && !!e, [F, E] = se(a), H = i ?? F, O = V(H);
989
+ O.current = H;
990
+ const _ = B(
991
+ (d) => {
992
+ i === void 0 && E(d), c == null || c(d);
936
993
  },
937
- [i, u]
938
- ), { enabled: O, move: z, registerSection: P } = Ce(), j = ue(qe);
939
- ne(() => {
940
- O && o === void 0 && !j && as() && console.warn(
994
+ [i, c]
995
+ ), { enabled: P, move: f, registerSection: Y } = Se(), W = ce(qe);
996
+ ee(() => {
997
+ P && o === void 0 && !W && ds() && console.warn(
941
998
  `SidebarSection "${e ?? ""}": moves are on but it has no sectionId, so its items cannot move.`
942
999
  );
943
- }, [O, o, j, e]), ne(() => {
944
- if (!(o === void 0 || !P))
945
- return P(o, () => {
946
- T.current || w(!0);
1000
+ }, [P, o, W, e]), ee(() => {
1001
+ if (!(o === void 0 || !Y))
1002
+ return Y(o, () => {
1003
+ O.current || _(!0);
947
1004
  });
948
- }, [o, P, w]);
949
- const X = O && z !== null && o !== void 0, U = X && z.target.indicator.kind === "section" && z.target.indicator.sectionId === o && !oe(z.target, z.origin), b = X && z.emptySectionIds.includes(o) ? /* @__PURE__ */ r(
1005
+ }, [o, Y, _]);
1006
+ const q = P && f !== null && o !== void 0, K = q && f.target.indicator.kind === "section" && f.target.indicator.sectionId === o && !de(f.target, f.origin), re = q && f.emptySectionIds.includes(o) ? /* @__PURE__ */ s(
950
1007
  "div",
951
1008
  {
952
1009
  "aria-hidden": "true",
953
1010
  "data-sidebar-drop-zone": o,
954
- className: Ye({ active: U })
1011
+ className: Ye({ active: K })
955
1012
  }
956
- ) : null, M = o !== void 0 ? {
1013
+ ) : null, ne = o !== void 0 ? {
957
1014
  "data-sidebar-section-id": o,
958
1015
  "data-sidebar-section-label": e ?? "",
959
- "data-sidebar-section-open": String(!v || D)
960
- } : {}, Y = p && !c ? /* @__PURE__ */ r(
1016
+ "data-sidebar-section-open": String(!w || H)
1017
+ } : {}, L = p && !m ? /* @__PURE__ */ s(
961
1018
  "span",
962
1019
  {
963
1020
  role: "group",
964
- "aria-label": e ? k("navigation.sidebar.sectionActions", { section: e }) : void 0,
965
- className: Rs,
1021
+ "aria-label": e ? N("navigation.sidebar.sectionActions", { section: e }) : void 0,
1022
+ className: Ls,
966
1023
  children: p
967
1024
  }
968
- ) : null, q = /* @__PURE__ */ h(_e.Provider, { value: { sectionId: o }, children: [
969
- g,
970
- b
971
- ] }), V = [
1025
+ ) : null, U = w && !H && D.size > 0, Q = e && !m ? /* @__PURE__ */ s("p", { "data-sidebar-section-empty": "", className: Ms, children: N(P && o !== void 0 ? "navigation.sidebar.section.emptyMove" : "navigation.sidebar.section.empty") }) : null, n = /* @__PURE__ */ s(Be.Provider, { value: { sectionId: o }, children: /* @__PURE__ */ x($e.Provider, { value: j, children: [
1026
+ /* @__PURE__ */ s("div", { "data-sidebar-section-items": "", className: "ds:contents", children: v }),
1027
+ Q,
1028
+ re
1029
+ ] }) }), y = [
972
1030
  "ds:flex ds:flex-col",
973
1031
  "ds:gap-[var(--spacing-xs)]",
974
1032
  "ds:mt-[var(--spacing-sm)]",
975
- m ?? ""
1033
+ Bs,
1034
+ u ?? ""
976
1035
  ].filter(Boolean).join(" ");
977
- if (!v) {
978
- const K = !!e || !!t, _ = e ? { role: "group", "aria-labelledby": l } : {}, $ = K ? /* @__PURE__ */ h(
1036
+ if (!w) {
1037
+ const d = !!e || !!r, b = e ? { role: "group", "aria-labelledby": l } : {}, S = d ? /* @__PURE__ */ x(
979
1038
  "span",
980
1039
  {
981
1040
  className: [
@@ -984,85 +1043,112 @@ const Ps = [
984
1043
  "ds:text-[var(--muted-foreground)]",
985
1044
  "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]",
986
1045
  "ds:py-[var(--spacing-xs)]",
987
- Y ? "ds:min-w-0 ds:flex-1" : "",
988
- c && !t ? "ds:sr-only" : ""
1046
+ L ? "ds:min-w-0 ds:flex-1" : "",
1047
+ m && !r ? "ds:sr-only" : ""
989
1048
  ].filter(Boolean).join(" "),
990
1049
  children: [
991
- t ? /* @__PURE__ */ r("span", { "aria-hidden": "true", className: Re, children: t }) : null,
992
- e ? /* @__PURE__ */ r("span", { id: l, className: c ? "ds:sr-only" : "", children: e }) : null
1050
+ r ? /* @__PURE__ */ s("span", { "aria-hidden": "true", className: Ae, children: r }) : null,
1051
+ e ? /* @__PURE__ */ s("span", { id: l, className: m ? "ds:sr-only" : "", children: e }) : null
993
1052
  ]
994
1053
  }
995
1054
  ) : null;
996
- return /* @__PURE__ */ h(
1055
+ return /* @__PURE__ */ x(
997
1056
  "div",
998
1057
  {
999
- ref: N,
1000
- className: V,
1001
- ..._,
1002
- ...M,
1058
+ ref: z,
1059
+ className: y,
1060
+ ...b,
1061
+ ...ne,
1003
1062
  ...I,
1004
1063
  children: [
1005
- Y ? /* @__PURE__ */ h(
1064
+ L ? /* @__PURE__ */ x(
1006
1065
  "div",
1007
1066
  {
1008
1067
  "data-sidebar-section-heading": "",
1009
- className: Oe(),
1068
+ className: Re(),
1010
1069
  children: [
1011
- $,
1012
- Y
1070
+ S,
1071
+ L
1013
1072
  ]
1014
1073
  }
1015
- ) : $,
1016
- q
1074
+ ) : S,
1075
+ n
1017
1076
  ]
1018
1077
  }
1019
1078
  );
1020
1079
  }
1021
- const W = "section";
1022
- return /* @__PURE__ */ r(
1023
- be.Root,
1080
+ const T = "section";
1081
+ return /* @__PURE__ */ s(
1082
+ he.Root,
1024
1083
  {
1025
1084
  type: "single",
1026
1085
  collapsible: !0,
1027
- value: D ? W : "",
1028
- onValueChange: (K) => w(K === W),
1086
+ value: H ? T : "",
1087
+ onValueChange: (d) => _(d === T),
1029
1088
  asChild: !0,
1030
- children: /* @__PURE__ */ r("div", { ref: N, className: V, ...M, ...I, children: /* @__PURE__ */ h(be.Item, { value: W, children: [
1031
- /* @__PURE__ */ h(
1089
+ children: /* @__PURE__ */ s("div", { ref: z, className: y, ...ne, ...I, children: /* @__PURE__ */ x(he.Item, { value: T, children: [
1090
+ /* @__PURE__ */ x(
1032
1091
  "div",
1033
1092
  {
1034
1093
  "data-sidebar-section-heading": "",
1035
- className: Oe({
1036
- dropInto: U && !D
1094
+ className: Re({
1095
+ dropInto: K && !H
1037
1096
  }),
1038
1097
  children: [
1039
- /* @__PURE__ */ r(be.Header, { className: "ds:flex ds:min-w-0 ds:flex-1", children: /* @__PURE__ */ h(be.Trigger, { className: Ps, children: [
1040
- t ? /* @__PURE__ */ r("span", { "aria-hidden": "true", className: Re, children: t }) : null,
1041
- /* @__PURE__ */ r("span", { className: "ds:flex-1 ds:text-start", children: e }),
1042
- /* @__PURE__ */ r(
1043
- we,
1044
- {
1045
- "aria-hidden": "true",
1046
- className: "ds:size-3 ds:transition-transform ds:group-data-[state=open]/section-label:rotate-90 ds:rtl:-scale-x-100 ds:motion-reduce:transition-none"
1047
- }
1048
- )
1049
- ] }) }),
1050
- Y
1098
+ /* @__PURE__ */ s(Us, { name: e ?? "", nameRef: h, children: /* @__PURE__ */ s("div", { className: "ds:flex ds:min-w-0 ds:flex-1", children: /* @__PURE__ */ s(he.Header, { className: "ds:flex ds:min-w-0 ds:flex-1", children: /* @__PURE__ */ x(
1099
+ he.Trigger,
1100
+ {
1101
+ className: _s,
1102
+ "data-holds-current": U ? "" : void 0,
1103
+ "aria-describedby": U ? g : void 0,
1104
+ children: [
1105
+ r ? /* @__PURE__ */ s("span", { "aria-hidden": "true", className: Ae, children: r }) : null,
1106
+ /* @__PURE__ */ s(
1107
+ "span",
1108
+ {
1109
+ ref: h,
1110
+ className: `ds:flex-1 ds:text-start ${Hs}`,
1111
+ children: e
1112
+ }
1113
+ ),
1114
+ U ? /* @__PURE__ */ s(
1115
+ "span",
1116
+ {
1117
+ "aria-hidden": "true",
1118
+ "data-sidebar-section-current": "",
1119
+ className: Fs
1120
+ }
1121
+ ) : null,
1122
+ /* @__PURE__ */ s(
1123
+ we,
1124
+ {
1125
+ "aria-hidden": "true",
1126
+ className: "ds:size-3 ds:shrink-0 ds:transition-transform ds:group-data-[state=open]/section-label:rotate-90 ds:rtl:-scale-x-100 ds:motion-reduce:transition-none"
1127
+ }
1128
+ )
1129
+ ]
1130
+ }
1131
+ ) }) }) }),
1132
+ L,
1133
+ U ? (
1134
+ // Hidden, yet still the fold button's description.
1135
+ /* @__PURE__ */ s("span", { id: g, hidden: !0, children: N("navigation.sidebar.section.containsCurrent") })
1136
+ ) : null
1051
1137
  ]
1052
1138
  }
1053
1139
  ),
1054
- /* @__PURE__ */ r(
1055
- Xe,
1140
+ /* @__PURE__ */ s(
1141
+ Je,
1056
1142
  {
1057
1143
  role: "group",
1058
1144
  "aria-label": e,
1059
- forceMount: O ? !0 : void 0,
1145
+ forceMount: !0,
1060
1146
  className: [
1061
1147
  "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)] ds:[&>div]:contents",
1062
1148
  // Force-mounted content is never hidden by Radix: do it here.
1063
- O ? "ds:data-[state=closed]:hidden" : ""
1064
- ].filter(Boolean).join(" "),
1065
- children: q
1149
+ "ds:data-[state=closed]:hidden"
1150
+ ].join(" "),
1151
+ children: n
1066
1152
  }
1067
1153
  )
1068
1154
  ] }) })
@@ -1070,8 +1156,8 @@ const Ps = [
1070
1156
  );
1071
1157
  }
1072
1158
  );
1073
- Ve.displayName = "SidebarSection";
1074
- const Os = [
1159
+ Ge.displayName = "SidebarSection";
1160
+ const Vs = [
1075
1161
  "ds:group ds:flex ds:w-full ds:items-center ds:gap-[var(--spacing-sm)]",
1076
1162
  "ds:min-h-[var(--min-target-size)]",
1077
1163
  "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]",
@@ -1082,48 +1168,48 @@ const Os = [
1082
1168
  "ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid",
1083
1169
  "ds:focus-visible:outline-[var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
1084
1170
  "ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none"
1085
- ].join(" "), Ls = H(
1171
+ ].join(" "), Ys = $(
1086
1172
  ({
1087
1173
  label: e,
1088
- icon: t,
1089
- children: s,
1174
+ icon: r,
1175
+ children: t,
1090
1176
  className: a,
1091
1177
  defaultOpen: i,
1092
- open: u,
1178
+ open: c,
1093
1179
  onOpenChange: o,
1094
1180
  ...p
1095
- }, m) => {
1096
- const { mode: g } = G();
1097
- return /* @__PURE__ */ h(
1098
- Se.Root,
1181
+ }, u) => {
1182
+ const { mode: v } = G();
1183
+ return /* @__PURE__ */ x(
1184
+ Ne.Root,
1099
1185
  {
1100
- ref: m,
1186
+ ref: u,
1101
1187
  defaultOpen: i,
1102
- open: u,
1188
+ open: c,
1103
1189
  onOpenChange: o,
1104
1190
  className: a,
1105
1191
  ...p,
1106
1192
  children: [
1107
- /* @__PURE__ */ h(Se.Trigger, { className: Os, children: [
1108
- t ? /* @__PURE__ */ r(
1193
+ /* @__PURE__ */ x(Ne.Trigger, { className: Vs, children: [
1194
+ r ? /* @__PURE__ */ s(
1109
1195
  "span",
1110
1196
  {
1111
1197
  "aria-hidden": "true",
1112
1198
  className: "ds:inline-flex ds:items-center ds:text-[var(--accent)]",
1113
- children: t
1199
+ children: r
1114
1200
  }
1115
1201
  ) : null,
1116
- /* @__PURE__ */ r(
1202
+ /* @__PURE__ */ s(
1117
1203
  "span",
1118
1204
  {
1119
1205
  className: [
1120
1206
  "ds:flex-1 ds:text-start",
1121
- g === "icon" ? "ds:sr-only" : ""
1207
+ v === "icon" ? "ds:sr-only" : ""
1122
1208
  ].join(" "),
1123
1209
  children: e
1124
1210
  }
1125
1211
  ),
1126
- g !== "icon" ? /* @__PURE__ */ r(
1212
+ v !== "icon" ? /* @__PURE__ */ s(
1127
1213
  we,
1128
1214
  {
1129
1215
  "aria-hidden": "true",
@@ -1131,8 +1217,8 @@ const Os = [
1131
1217
  }
1132
1218
  ) : null
1133
1219
  ] }),
1134
- /* @__PURE__ */ r(
1135
- Se.Content,
1220
+ /* @__PURE__ */ s(
1221
+ Ne.Content,
1136
1222
  {
1137
1223
  className: [
1138
1224
  "ds:overflow-hidden",
@@ -1140,7 +1226,7 @@ const Os = [
1140
1226
  "ds:motion-reduce:animate-none",
1141
1227
  "ds:ps-[var(--spacing-md)]"
1142
1228
  ].join(" "),
1143
- children: s
1229
+ children: t
1144
1230
  }
1145
1231
  )
1146
1232
  ]
@@ -1148,14 +1234,14 @@ const Os = [
1148
1234
  );
1149
1235
  }
1150
1236
  );
1151
- Ls.displayName = "SidebarGroup";
1152
- const ve = [
1237
+ Ys.displayName = "SidebarGroup";
1238
+ const pe = [
1153
1239
  "ds:z-[var(--z-tooltip)] ds:max-w-[16rem]",
1154
1240
  "ds:rounded-[var(--radius-sm)]",
1155
1241
  "ds:bg-[var(--foreground)] ds:text-[var(--background)]",
1156
1242
  "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)] ds:py-[var(--spacing-xs)] ds:text-[length:var(--font-size-xs)]",
1157
1243
  "ds:animate-in ds:fade-in ds:zoom-in-95 ds:motion-reduce:animate-none"
1158
- ].join(" "), Ms = ee(
1244
+ ].join(" "), $s = te(
1159
1245
  [
1160
1246
  // Every row is a pin-hover parent so inline pin / reorder affordances can
1161
1247
  // fade in on hover of the whole row — keep `group/item` on this selector.
@@ -1216,12 +1302,12 @@ const ve = [
1216
1302
  isActive: !1
1217
1303
  }
1218
1304
  }
1219
- ), Le = [
1305
+ ), _e = [
1220
1306
  "ds:before:pointer-events-none ds:before:absolute ds:before:start-0 ds:before:end-0",
1221
1307
  "ds:before:h-[length:var(--focus-ring-width)] ds:before:content-['']",
1222
1308
  "ds:before:rounded-[var(--radius-full)] ds:before:bg-[var(--primary)]",
1223
1309
  "ds:forced-colors:before:bg-[CanvasText]"
1224
- ].join(" "), _s = ee("", {
1310
+ ].join(" "), qs = te("", {
1225
1311
  variants: {
1226
1312
  movable: {
1227
1313
  true: "ds:select-none ds:[-webkit-touch-callout:none]",
@@ -1229,151 +1315,158 @@ const ve = [
1229
1315
  },
1230
1316
  moving: { true: "ds:opacity-60", false: "" },
1231
1317
  drop: {
1232
- before: `${Le} ds:before:top-[calc(var(--spacing-xs)/-2)] ds:before:-translate-y-1/2`,
1233
- after: `${Le} ds:before:bottom-[calc(var(--spacing-xs)/-2)] ds:before:translate-y-1/2`,
1318
+ before: `${_e} ds:before:top-[calc(var(--spacing-xs)/-2)] ds:before:-translate-y-1/2`,
1319
+ after: `${_e} ds:before:bottom-[calc(var(--spacing-xs)/-2)] ds:before:translate-y-1/2`,
1234
1320
  none: ""
1235
1321
  }
1236
1322
  },
1237
1323
  defaultVariants: { movable: !1, moving: !1, drop: "none" }
1238
- }), $e = ce(null), Ge = H(
1324
+ }), Ke = le(null), Xe = $(
1239
1325
  ({
1240
1326
  asChild: e = !1,
1241
- isActive: t = !1,
1242
- navId: s,
1327
+ isActive: r = !1,
1328
+ navId: t,
1243
1329
  isPinned: a = !1,
1244
1330
  onPinChange: i,
1245
- pinLabel: u,
1331
+ pinLabel: c,
1246
1332
  className: o,
1247
1333
  children: p,
1248
- "aria-label": m,
1249
- "aria-describedby": g,
1334
+ "aria-label": u,
1335
+ "aria-describedby": v,
1250
1336
  onKeyDown: I,
1251
- onPointerDown: N,
1252
- onBlur: k,
1253
- ...R
1254
- }, c) => {
1255
- const { mode: l, density: v, quietFocusRef: y, navElementId: A } = G(), D = e ? Ze : "a", T = i !== void 0 && l !== "icon", w = Ce(), O = ue(_e), z = w.enabled && l !== "icon" && s !== void 0 && (O === null || O.sectionId !== void 0) ? s : void 0, P = w.move, j = P && !oe(P.target, P.origin) ? P.target : null, X = z !== void 0 && (j == null ? void 0 : j.indicator.kind) === "item" && j.indicator.itemId === z ? j.indicator.edge : "none", U = z !== void 0 ? {
1256
- "data-sidebar-item-id": z,
1257
- "data-moving": (P == null ? void 0 : P.itemId) === z ? "" : void 0,
1337
+ onPointerDown: z,
1338
+ onBlur: N,
1339
+ ...A
1340
+ }, m) => {
1341
+ const { mode: l, density: g, quietFocusRef: h, navElementId: D } = G(), R = e ? Le : "a", j = i !== void 0 && l !== "icon", w = Se(), F = ce(Be), E = ce($e), H = fe(), O = r || A["aria-current"] === "page";
1342
+ ee(() => {
1343
+ if (E)
1344
+ return E(H, O), () => E(H, !1);
1345
+ }, [E, H, O]);
1346
+ const _ = w.enabled && l !== "icon" && t !== void 0 && (F === null || F.sectionId !== void 0) ? t : void 0, P = w.move, f = P && !de(P.target, P.origin) ? P.target : null, Y = _ !== void 0 && (f == null ? void 0 : f.indicator.kind) === "item" && f.indicator.itemId === _ ? f.indicator.edge : "none", W = _ !== void 0 ? {
1347
+ "data-sidebar-item-id": _,
1348
+ "data-moving": (P == null ? void 0 : P.itemId) === _ ? "" : void 0,
1258
1349
  // A link would otherwise start the browser's own link drag.
1259
1350
  draggable: !1,
1260
- "aria-describedby": [g, w.instructionsId].filter(Boolean).join(" "),
1351
+ "aria-describedby": [v, w.instructionsId].filter(Boolean).join(" "),
1261
1352
  // An image inside the item would start its own native drag.
1262
- onDragStart: (f) => f.preventDefault(),
1263
- onKeyDown: (f) => {
1264
- var d, S;
1265
- I == null || I(f);
1266
- const x = f.key === "Escape" && ((d = w.move) == null ? void 0 : d.itemId) === z;
1267
- (!f.defaultPrevented || x) && ((S = w.onItemKeyDown) == null || S.call(w, f, z));
1353
+ onDragStart: (b) => b.preventDefault(),
1354
+ onKeyDown: (b) => {
1355
+ var M, X;
1356
+ I == null || I(b);
1357
+ const S = b.key === "Escape" && ((M = w.move) == null ? void 0 : M.itemId) === _;
1358
+ (!b.defaultPrevented || S) && ((X = w.onItemKeyDown) == null || X.call(w, b, _));
1268
1359
  },
1269
- onPointerDown: (f) => {
1270
- var x;
1271
- N == null || N(f), (x = w.onItemPointerDown) == null || x.call(w, f, z);
1360
+ onPointerDown: (b) => {
1361
+ var S;
1362
+ z == null || z(b), (S = w.onItemPointerDown) == null || S.call(w, b, _);
1272
1363
  },
1273
- onBlur: (f) => {
1274
- var x;
1275
- k == null || k(f), (x = w.onItemBlur) == null || x.call(w, z);
1364
+ onBlur: (b) => {
1365
+ var S;
1366
+ N == null || N(b), (S = w.onItemBlur) == null || S.call(w, _);
1276
1367
  }
1277
1368
  } : {
1278
1369
  // Keys left out when unset: an undefined one would override the
1279
1370
  // tooltip's own description through Slot.
1280
- ...g !== void 0 ? { "aria-describedby": g } : {},
1371
+ ...v !== void 0 ? { "aria-describedby": v } : {},
1281
1372
  ...I ? { onKeyDown: I } : {},
1282
- ...N ? { onPointerDown: N } : {},
1283
- ...k ? { onBlur: k } : {}
1284
- }, b = _s({
1285
- movable: z !== void 0,
1286
- moving: P !== null && P.itemId === z,
1287
- drop: X
1288
- }), [M, Y] = re(null), q = l === "icon" && m != null && M ? `${m}, ${M}` : m, V = /* @__PURE__ */ r(
1289
- D,
1373
+ ...z ? { onPointerDown: z } : {},
1374
+ ...N ? { onBlur: N } : {}
1375
+ }, q = qs({
1376
+ movable: _ !== void 0,
1377
+ moving: P !== null && P.itemId === _,
1378
+ drop: Y
1379
+ }), [K, re] = se(null), ne = l === "icon" && u != null && K ? `${u}, ${K}` : u, L = /* @__PURE__ */ s(
1380
+ R,
1290
1381
  {
1291
- ref: c,
1292
- "aria-current": t ? "page" : void 0,
1293
- "aria-label": q,
1294
- "data-nav-id": s,
1295
- className: Ms({
1382
+ ref: m,
1383
+ "aria-current": r ? "page" : void 0,
1384
+ "aria-label": ne,
1385
+ "data-nav-id": t,
1386
+ "data-sidebar-item": j ? void 0 : "",
1387
+ className: $s({
1296
1388
  mode: l,
1297
- density: v,
1298
- isActive: t,
1299
- className: [T ? "ds:flex-1 ds:min-w-0" : o, b].filter(Boolean).join(" ")
1389
+ density: g,
1390
+ isActive: r,
1391
+ className: [j ? "ds:flex-1 ds:min-w-0" : o, q].filter(Boolean).join(" ")
1300
1392
  }),
1301
- ...U,
1302
- ...R,
1393
+ ...W,
1394
+ ...A,
1303
1395
  children: p
1304
1396
  }
1305
- ), W = T ? /* @__PURE__ */ h(
1397
+ ), U = j ? /* @__PURE__ */ x(
1306
1398
  "div",
1307
1399
  {
1400
+ "data-sidebar-item": "",
1308
1401
  className: [
1309
1402
  "ds:group/item ds:flex ds:items-center ds:gap-[var(--spacing-2xs)]",
1310
1403
  o ?? ""
1311
1404
  ].filter(Boolean).join(" "),
1312
1405
  children: [
1313
- V,
1314
- /* @__PURE__ */ r(
1406
+ L,
1407
+ /* @__PURE__ */ s(
1315
1408
  je,
1316
1409
  {
1317
1410
  isPinned: a,
1318
- label: u ?? m ?? "",
1411
+ label: c ?? u ?? "",
1319
1412
  onPinChange: i
1320
1413
  }
1321
1414
  )
1322
1415
  ]
1323
1416
  }
1324
- ) : V, K = F(null), [_, $] = re(), se = (f) => {
1325
- var S, B;
1326
- const x = (S = K.current) == null ? void 0 : S.querySelector(
1417
+ ) : L, Q = V(null), [n, y] = se(), T = (b) => {
1418
+ var X, ae;
1419
+ const S = (X = Q.current) == null ? void 0 : X.querySelector(
1327
1420
  "[data-sidebar-item-label]"
1328
1421
  );
1329
- if (!(x != null && x.scrollWidth > x.clientWidth) || y != null && y.current || w.move !== null) {
1330
- f.preventDefault();
1422
+ if (!(S != null && S.scrollWidth > S.clientWidth) || h != null && h.current || w.move !== null) {
1423
+ b.preventDefault();
1331
1424
  return;
1332
1425
  }
1333
- $(((B = x.textContent) == null ? void 0 : B.trim()) || void 0);
1334
- }, n = l !== "icon" && A !== void 0 ? /* @__PURE__ */ h(E.Root, { children: [
1335
- /* @__PURE__ */ r(
1336
- E.Trigger,
1426
+ y(((ae = S.textContent) == null ? void 0 : ae.trim()) || void 0);
1427
+ }, d = l !== "icon" && D !== void 0 ? /* @__PURE__ */ x(C.Root, { children: [
1428
+ /* @__PURE__ */ s(
1429
+ C.Trigger,
1337
1430
  {
1338
1431
  asChild: !0,
1339
- ref: K,
1340
- onPointerMove: se,
1341
- onFocus: se,
1342
- children: W
1432
+ ref: Q,
1433
+ onPointerMove: T,
1434
+ onFocus: T,
1435
+ children: U
1343
1436
  }
1344
1437
  ),
1345
- /* @__PURE__ */ r(E.Portal, { children: /* @__PURE__ */ h(
1346
- E.Content,
1438
+ /* @__PURE__ */ s(C.Portal, { children: /* @__PURE__ */ x(
1439
+ C.Content,
1347
1440
  {
1348
1441
  side: "right",
1349
1442
  sideOffset: 6,
1350
- className: ve,
1443
+ className: pe,
1351
1444
  children: [
1352
- m ?? _,
1353
- /* @__PURE__ */ r(E.Arrow, { className: "ds:fill-[var(--foreground)]" })
1445
+ u ?? n,
1446
+ /* @__PURE__ */ s(C.Arrow, { className: "ds:fill-[var(--foreground)]" })
1354
1447
  ]
1355
1448
  }
1356
1449
  ) })
1357
- ] }) : l === "icon" && m ? /* @__PURE__ */ h(E.Root, { children: [
1358
- /* @__PURE__ */ r(E.Trigger, { asChild: !0, children: W }),
1359
- /* @__PURE__ */ r(E.Portal, { children: /* @__PURE__ */ h(
1360
- E.Content,
1450
+ ] }) : l === "icon" && u ? /* @__PURE__ */ x(C.Root, { children: [
1451
+ /* @__PURE__ */ s(C.Trigger, { asChild: !0, children: U }),
1452
+ /* @__PURE__ */ s(C.Portal, { children: /* @__PURE__ */ x(
1453
+ C.Content,
1361
1454
  {
1362
1455
  side: "right",
1363
1456
  sideOffset: 6,
1364
- className: ve,
1457
+ className: pe,
1365
1458
  children: [
1366
- m,
1367
- /* @__PURE__ */ r(E.Arrow, { className: "ds:fill-[var(--foreground)]" })
1459
+ u,
1460
+ /* @__PURE__ */ s(C.Arrow, { className: "ds:fill-[var(--foreground)]" })
1368
1461
  ]
1369
1462
  }
1370
1463
  ) })
1371
- ] }) : W;
1372
- return /* @__PURE__ */ r($e.Provider, { value: Y, children: n });
1464
+ ] }) : U;
1465
+ return /* @__PURE__ */ s(Ke.Provider, { value: re, children: d });
1373
1466
  }
1374
1467
  );
1375
- Ge.displayName = "SidebarItem";
1376
- const Bs = H(({ className: e, children: t, ...s }, a) => /* @__PURE__ */ r(
1468
+ Xe.displayName = "SidebarItem";
1469
+ const Gs = $(({ className: e, children: r, ...t }, a) => /* @__PURE__ */ s(
1377
1470
  "span",
1378
1471
  {
1379
1472
  ref: a,
@@ -1390,14 +1483,14 @@ const Bs = H(({ className: e, children: t, ...s }, a) => /* @__PURE__ */ r(
1390
1483
  "ds:group-aria-[current=page]/item:text-[var(--primary-foreground)]",
1391
1484
  e ?? ""
1392
1485
  ].filter(Boolean).join(" "),
1393
- ...s,
1394
- children: t
1486
+ ...t,
1487
+ children: r
1395
1488
  }
1396
1489
  ));
1397
- Bs.displayName = "SidebarItemIcon";
1398
- const Fs = H(({ className: e, children: t, ...s }, a) => {
1490
+ Gs.displayName = "SidebarItemIcon";
1491
+ const Ks = $(({ className: e, children: r, ...t }, a) => {
1399
1492
  const { mode: i } = G();
1400
- return /* @__PURE__ */ r(
1493
+ return /* @__PURE__ */ s(
1401
1494
  "span",
1402
1495
  {
1403
1496
  ref: a,
@@ -1409,27 +1502,27 @@ const Fs = H(({ className: e, children: t, ...s }, a) => {
1409
1502
  i === "icon" ? "ds:sr-only" : "",
1410
1503
  e ?? ""
1411
1504
  ].filter(Boolean).join(" "),
1412
- ...s,
1413
- children: t
1505
+ ...t,
1506
+ children: r
1414
1507
  }
1415
1508
  );
1416
1509
  });
1417
- Fs.displayName = "SidebarItemLabel";
1418
- const Hs = H(({ className: e, children: t, ...s }, a) => {
1419
- const { mode: i } = G(), u = i === "icon", o = ue($e);
1420
- return ne(() => {
1421
- if (!o || !u) return;
1422
- const p = t == null || t === !1 ? null : String(t).trim() || null;
1510
+ Ks.displayName = "SidebarItemLabel";
1511
+ const Xs = $(({ className: e, children: r, ...t }, a) => {
1512
+ const { mode: i } = G(), c = i === "icon", o = ce(Ke);
1513
+ return ee(() => {
1514
+ if (!o || !c) return;
1515
+ const p = r == null || r === !1 ? null : String(r).trim() || null;
1423
1516
  return o(p), () => o(null);
1424
- }, [o, t, u]), /* @__PURE__ */ r(
1517
+ }, [o, r, c]), /* @__PURE__ */ s(
1425
1518
  "span",
1426
1519
  {
1427
1520
  ref: a,
1428
- "aria-hidden": u ? "true" : void 0,
1521
+ "aria-hidden": c ? "true" : void 0,
1429
1522
  className: [
1430
1523
  "ds:inline-flex ds:items-center ds:justify-center",
1431
1524
  "ds:font-[var(--font-weight-semibold)]",
1432
- u ? [
1525
+ c ? [
1433
1526
  "ds:absolute ds:top-[2px] ds:end-[2px]",
1434
1527
  "ds:min-w-0 ds:size-[10px] ds:ps-0 ds:pe-0",
1435
1528
  "ds:rounded-[var(--radius-full)]",
@@ -1445,13 +1538,13 @@ const Hs = H(({ className: e, children: t, ...s }, a) => {
1445
1538
  ].join(" "),
1446
1539
  e ?? ""
1447
1540
  ].filter(Boolean).join(" "),
1448
- ...s,
1449
- children: t
1541
+ ...t,
1542
+ children: r
1450
1543
  }
1451
1544
  );
1452
1545
  });
1453
- Hs.displayName = "SidebarItemBadge";
1454
- const Us = ee(
1546
+ Xs.displayName = "SidebarItemBadge";
1547
+ const Ws = te(
1455
1548
  [
1456
1549
  "ds:flex ds:items-center",
1457
1550
  "ds:text-[var(--foreground)]",
@@ -1486,9 +1579,9 @@ const Us = ee(
1486
1579
  // hover keeps the fill solid over a brand-tinted parent. 32px clears
1487
1580
  // WCAG 2.5.8 (24px AA).
1488
1581
  field: [
1489
- ss.sm,
1490
- ts.sm,
1491
1582
  ns.sm,
1583
+ as.sm,
1584
+ is.sm,
1492
1585
  "ds:gap-3",
1493
1586
  "ds:rounded-[var(--radius-sm)]",
1494
1587
  "ds:border ds:border-[color:var(--control-border)] ds:bg-[var(--input)]",
@@ -1499,19 +1592,19 @@ const Us = ee(
1499
1592
  },
1500
1593
  defaultVariants: { variant: "ghost" }
1501
1594
  }
1502
- ), Ys = H(
1503
- ({ logo: e, name: t, showChevron: s = !0, variant: a = "ghost", className: i, ...u }, o) => {
1504
- const { mode: p } = G(), m = p !== "icon";
1505
- return /* @__PURE__ */ h(
1595
+ ), Zs = $(
1596
+ ({ logo: e, name: r, showChevron: t = !0, variant: a = "ghost", className: i, ...c }, o) => {
1597
+ const { mode: p } = G(), u = p !== "icon";
1598
+ return /* @__PURE__ */ x(
1506
1599
  "button",
1507
1600
  {
1508
1601
  ref: o,
1509
1602
  type: "button",
1510
- "aria-label": t,
1511
- className: [Us({ variant: a }), i].filter(Boolean).join(" "),
1512
- ...u,
1603
+ "aria-label": r,
1604
+ className: [Ws({ variant: a }), i].filter(Boolean).join(" "),
1605
+ ...c,
1513
1606
  children: [
1514
- /* @__PURE__ */ r(
1607
+ /* @__PURE__ */ s(
1515
1608
  "span",
1516
1609
  {
1517
1610
  "aria-hidden": "true",
@@ -1519,9 +1612,9 @@ const Us = ee(
1519
1612
  children: e
1520
1613
  }
1521
1614
  ),
1522
- m ? /* @__PURE__ */ h(xe, { children: [
1523
- /* @__PURE__ */ r("span", { className: "ds:truncate ds:flex-1 ds:text-start ds:max-w-[var(--header-workspace-max-inline-size)]", children: t }),
1524
- s ? /* @__PURE__ */ r(
1615
+ u ? /* @__PURE__ */ x(ye, { children: [
1616
+ /* @__PURE__ */ s("span", { className: "ds:truncate ds:flex-1 ds:text-start ds:max-w-[var(--header-workspace-max-inline-size)]", children: r }),
1617
+ t ? /* @__PURE__ */ s(
1525
1618
  we,
1526
1619
  {
1527
1620
  "aria-hidden": "true",
@@ -1534,19 +1627,28 @@ const Us = ee(
1534
1627
  );
1535
1628
  }
1536
1629
  );
1537
- Ys.displayName = "SidebarWorkspaceSwitcher";
1538
- const qs = ee(
1630
+ Zs.displayName = "SidebarWorkspaceSwitcher";
1631
+ const Js = te(
1539
1632
  [
1540
1633
  "ds:flex ds:items-center ds:justify-center ds:gap-[var(--spacing-xs)]",
1541
1634
  "ds:min-h-[var(--min-target-size)]",
1542
1635
  "ds:rounded-[var(--radius-md)]",
1543
- "ds:bg-[var(--primary)] ds:text-[var(--primary-foreground)]",
1636
+ "ds:bg-[var(--primary)] ds:!text-[var(--primary-foreground)] ds:no-underline",
1544
1637
  "ds:font-[var(--font-weight-semibold)] ds:text-[length:var(--font-size-sm)]",
1545
1638
  "ds:hover:bg-[var(--primary-hover)]",
1546
1639
  "ds:transition-colors ds:motion-reduce:transition-none",
1547
1640
  "ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid",
1548
1641
  "ds:focus-visible:outline-[var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
1549
- "ds:forced-colors:focus-visible:outline-[CanvasText]"
1642
+ "ds:forced-colors:focus-visible:outline-[CanvasText]",
1643
+ // Disabled: the fill and contents fade, not the element, so its focus
1644
+ // ring keeps full contrast. No hover; still focusable.
1645
+ "ds:aria-disabled:bg-[var(--primary)]/50 ds:aria-disabled:hover:bg-[var(--primary)]/50 ds:aria-disabled:cursor-not-allowed ds:aria-disabled:[&>*]:opacity-50",
1646
+ "ds:forced-colors:aria-disabled:!text-[GrayText]",
1647
+ // The current page: an inner ring (a border in forced colours, which drop
1648
+ // shadows) and an underlined label when shown.
1649
+ "ds:aria-[current=page]:shadow-[inset_0_0_0_var(--border-width-md)_var(--primary-foreground)]",
1650
+ "ds:forced-colors:aria-[current=page]:border-[length:var(--border-width-md)] ds:forced-colors:aria-[current=page]:border-solid ds:forced-colors:aria-[current=page]:border-[color:CanvasText]",
1651
+ "ds:aria-[current=page]:[&_[data-sidebar-primary-label]]:underline ds:aria-[current=page]:[&_[data-sidebar-primary-label]]:underline-offset-[var(--spacing-xs)]"
1550
1652
  ].join(" "),
1551
1653
  {
1552
1654
  variants: {
@@ -1560,50 +1662,84 @@ const qs = ee(
1560
1662
  },
1561
1663
  defaultVariants: { mode: "expanded" }
1562
1664
  }
1563
- ), Vs = H(({ icon: e, label: t, shortcut: s, className: a, ...i }, u) => {
1564
- const { mode: o } = G(), p = o !== "icon", m = /* @__PURE__ */ h(
1565
- "button",
1566
- {
1567
- ref: u,
1568
- type: "button",
1569
- "aria-label": t,
1570
- "aria-keyshortcuts": s,
1571
- className: [qs({ mode: o }), a].filter(Boolean).join(" "),
1572
- ...i,
1573
- children: [
1574
- /* @__PURE__ */ r(
1575
- "span",
1576
- {
1577
- "aria-hidden": "true",
1578
- className: "ds:inline-flex ds:size-4 ds:items-center ds:justify-center",
1579
- children: e
1580
- }
1581
- ),
1582
- p ? /* @__PURE__ */ h(xe, { children: [
1583
- /* @__PURE__ */ r("span", { className: "ds:truncate", children: t }),
1584
- s ? /* @__PURE__ */ r("kbd", { className: "ds:ms-auto ds:text-[length:var(--font-size-xs)] ds:font-[family-name:var(--font-mono)] ds:opacity-80", children: s }) : null
1585
- ] }) : null
1586
- ]
1587
- }
1588
- );
1589
- return p ? m : /* @__PURE__ */ h(E.Root, { children: [
1590
- /* @__PURE__ */ r(E.Trigger, { asChild: !0, children: m }),
1591
- /* @__PURE__ */ r(E.Portal, { children: /* @__PURE__ */ h(
1592
- E.Content,
1665
+ ), Qs = $(
1666
+ ({
1667
+ icon: e,
1668
+ label: r,
1669
+ shortcut: t,
1670
+ asChild: a = !1,
1671
+ isActive: i = !1,
1672
+ disabled: c = !1,
1673
+ className: o,
1674
+ children: p,
1675
+ onClickCapture: u,
1676
+ onAuxClickCapture: v,
1677
+ ...I
1678
+ }, z) => {
1679
+ const { mode: N } = G(), A = N !== "icon", m = (E) => {
1680
+ c && (E.preventDefault(), E.stopPropagation());
1681
+ }, l = a && c, g = l ? "a" : a ? Le : "button", h = l && Ze(p) ? p.props : {}, D = Object.fromEntries(
1682
+ Object.entries(h).filter(([E]) => E.startsWith("data-"))
1683
+ ), R = l ? { role: "link", tabIndex: 0 } : a ? {} : { type: "button" }, j = /* @__PURE__ */ s(
1684
+ "span",
1593
1685
  {
1594
- side: "right",
1595
- sideOffset: 6,
1596
- className: ve,
1686
+ "aria-hidden": "true",
1687
+ className: "ds:inline-flex ds:size-4 ds:items-center ds:justify-center",
1688
+ children: e
1689
+ }
1690
+ ), w = A ? /* @__PURE__ */ x(ye, { children: [
1691
+ /* @__PURE__ */ s("span", { "data-sidebar-primary-label": "", className: "ds:truncate", children: r }),
1692
+ t && !c ? /* @__PURE__ */ s("kbd", { className: "ds:ms-auto ds:text-[length:var(--font-size-xs)] ds:font-[family-name:var(--font-mono)] ds:opacity-80", children: t }) : null
1693
+ ] }) : null, F = /* @__PURE__ */ x(
1694
+ g,
1695
+ {
1696
+ ref: z,
1697
+ ...R,
1698
+ ...D,
1699
+ "aria-label": r,
1700
+ "aria-keyshortcuts": c ? void 0 : t,
1701
+ "aria-current": i ? "page" : void 0,
1702
+ "aria-disabled": c ? !0 : void 0,
1703
+ className: [
1704
+ Js({ mode: N }),
1705
+ typeof h.className == "string" ? h.className : "",
1706
+ o
1707
+ ].filter(Boolean).join(" "),
1708
+ onClickCapture: (E) => {
1709
+ if (c) return m(E);
1710
+ u == null || u(E);
1711
+ },
1712
+ onAuxClickCapture: (E) => {
1713
+ if (c) return m(E);
1714
+ v == null || v(E);
1715
+ },
1716
+ ...I,
1597
1717
  children: [
1598
- t,
1599
- /* @__PURE__ */ r(E.Arrow, { className: "ds:fill-[var(--foreground)]" })
1718
+ j,
1719
+ a && !c ? /* @__PURE__ */ s(es, { children: p }) : null,
1720
+ w
1600
1721
  ]
1601
1722
  }
1602
- ) })
1603
- ] });
1604
- });
1605
- Vs.displayName = "SidebarPrimaryAction";
1606
- const $s = [
1723
+ );
1724
+ return A ? F : /* @__PURE__ */ x(C.Root, { children: [
1725
+ /* @__PURE__ */ s(C.Trigger, { asChild: !0, children: F }),
1726
+ /* @__PURE__ */ s(C.Portal, { children: /* @__PURE__ */ x(
1727
+ C.Content,
1728
+ {
1729
+ side: "right",
1730
+ sideOffset: 6,
1731
+ className: pe,
1732
+ children: [
1733
+ r,
1734
+ /* @__PURE__ */ s(C.Arrow, { className: "ds:fill-[var(--foreground)]" })
1735
+ ]
1736
+ }
1737
+ ) })
1738
+ ] });
1739
+ }
1740
+ );
1741
+ Qs.displayName = "SidebarPrimaryAction";
1742
+ const et = [
1607
1743
  "ds:inline-flex ds:items-center ds:justify-center ds:shrink-0",
1608
1744
  "ds:size-6 ds:rounded-[var(--radius-sm)]",
1609
1745
  // Lift above the Sidebar's opt-in resize handle (z-[2]). When `resizable`,
@@ -1627,25 +1763,25 @@ const $s = [
1627
1763
  "ds:forced-colors:focus-visible:outline-[CanvasText]",
1628
1764
  "ds:transition-[color,opacity,background-color] ds:duration-[var(--animation-duration)]",
1629
1765
  "ds:motion-reduce:transition-none"
1630
- ].join(" "), je = H(
1631
- ({ isPinned: e, onPinChange: t, label: s, className: a, onClick: i, ...u }, o) => {
1632
- const { t: p } = de("ui"), { mode: m } = G();
1633
- if (m === "icon") return null;
1634
- const g = e ? p("navigation.sidebar.unpinItem", "Unpin {{label}}", { label: s }) : p("navigation.sidebar.pinItem", "Pin {{label}}", { label: s });
1635
- return /* @__PURE__ */ r(
1766
+ ].join(" "), je = $(
1767
+ ({ isPinned: e, onPinChange: r, label: t, className: a, onClick: i, ...c }, o) => {
1768
+ const { t: p } = ue("ui"), { mode: u } = G();
1769
+ if (u === "icon") return null;
1770
+ const v = e ? p("navigation.sidebar.unpinItem", "Unpin {{label}}", { label: t }) : p("navigation.sidebar.pinItem", "Pin {{label}}", { label: t });
1771
+ return /* @__PURE__ */ s(
1636
1772
  "button",
1637
1773
  {
1638
1774
  ref: o,
1639
1775
  type: "button",
1640
- "aria-label": g,
1776
+ "aria-label": v,
1641
1777
  "aria-pressed": e,
1642
- className: [$s, a].filter(Boolean).join(" "),
1778
+ className: [et, a].filter(Boolean).join(" "),
1643
1779
  onClick: (I) => {
1644
- I.preventDefault(), I.stopPropagation(), t == null || t(!e), i == null || i(I);
1780
+ I.preventDefault(), I.stopPropagation(), r == null || r(!e), i == null || i(I);
1645
1781
  },
1646
- ...u,
1647
- children: /* @__PURE__ */ r(
1648
- ds,
1782
+ ...c,
1783
+ children: /* @__PURE__ */ s(
1784
+ us,
1649
1785
  {
1650
1786
  "aria-hidden": "true",
1651
1787
  className: "ds:size-4",
@@ -1657,31 +1793,31 @@ const $s = [
1657
1793
  }
1658
1794
  );
1659
1795
  je.displayName = "SidebarPinButton";
1660
- const Ke = ce(null), Gs = () => ue(Ke), Ks = H(
1661
- ({ heading: e, emptyMessage: t, onReorder: s, className: a, children: i, ...u }, o) => {
1662
- const { t: p } = de("ui"), m = e ?? p("navigation.sidebar.favorites", "Favourites"), g = Array.isArray(i) ? i.filter(Boolean) : i ? [i] : [], I = g.length, N = I > 0, [k, R] = re(null), [c, l] = re(""), v = F(!1), y = L((D) => {
1663
- v.current = !v.current, l(v.current ? D : `${D}​`);
1664
- }, []), A = he(
1665
- () => ({ onReorder: s, count: I, dragSource: k, setDragSource: R, announce: y }),
1666
- [s, I, k, y]
1796
+ const We = le(null), st = () => ce(We), tt = $(
1797
+ ({ heading: e, emptyMessage: r, onReorder: t, className: a, children: i, ...c }, o) => {
1798
+ const { t: p } = ue("ui"), u = e ?? p("navigation.sidebar.favorites", "Favourites"), v = Array.isArray(i) ? i.filter(Boolean) : i ? [i] : [], I = v.length, z = I > 0, [N, A] = se(null), [m, l] = se(""), g = V(!1), h = B((R) => {
1799
+ g.current = !g.current, l(g.current ? R : `${R}​`);
1800
+ }, []), D = xe(
1801
+ () => ({ onReorder: t, count: I, dragSource: N, setDragSource: A, announce: h }),
1802
+ [t, I, N, h]
1667
1803
  );
1668
- return !N && !t ? null : /* @__PURE__ */ r(Ke.Provider, { value: A, children: /* @__PURE__ */ r(qe.Provider, { value: !0, children: /* @__PURE__ */ h(
1669
- Ve,
1804
+ return !z && !r ? null : /* @__PURE__ */ s(We.Provider, { value: D, children: /* @__PURE__ */ s(qe.Provider, { value: !0, children: /* @__PURE__ */ x(
1805
+ Ge,
1670
1806
  {
1671
1807
  ref: o,
1672
- label: m,
1808
+ label: u,
1673
1809
  className: a,
1674
- ...u,
1810
+ ...c,
1675
1811
  children: [
1676
- N ? g : /* @__PURE__ */ r("p", { className: "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)] type-meta ds:text-[color:var(--muted-foreground)]", children: t }),
1677
- /* @__PURE__ */ r("span", { role: "status", "aria-live": "polite", className: "ds:sr-only", children: c })
1812
+ z ? v : /* @__PURE__ */ s("p", { className: "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)] type-meta ds:text-[color:var(--muted-foreground)]", children: r }),
1813
+ /* @__PURE__ */ s("span", { role: "status", "aria-live": "polite", className: "ds:sr-only", children: m })
1678
1814
  ]
1679
1815
  }
1680
1816
  ) }) });
1681
1817
  }
1682
1818
  );
1683
- Ks.displayName = "SidebarFavorites";
1684
- const Xs = ee(
1819
+ tt.displayName = "SidebarFavorites";
1820
+ const rt = te(
1685
1821
  [
1686
1822
  "ds:group/item ds:relative ds:flex ds:items-center ds:gap-[var(--spacing-2xs)]",
1687
1823
  "ds:rounded-[var(--radius-sm)]",
@@ -1700,7 +1836,7 @@ const Xs = ee(
1700
1836
  },
1701
1837
  defaultVariants: { dragging: !1, dropTarget: !1 }
1702
1838
  }
1703
- ), Ws = [
1839
+ ), nt = [
1704
1840
  "ds:inline-flex ds:items-center ds:justify-center ds:shrink-0",
1705
1841
  "ds:size-6 ds:rounded-[var(--radius-sm)]",
1706
1842
  "ds:cursor-grab ds:active:cursor-grabbing",
@@ -1714,93 +1850,93 @@ const Xs = ee(
1714
1850
  "ds:focus-visible:outline-[var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
1715
1851
  "ds:forced-colors:focus-visible:outline-[CanvasText]",
1716
1852
  "ds:transition-[color,opacity,background-color] ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none"
1717
- ].join(" "), Zs = H(
1853
+ ].join(" "), at = $(
1718
1854
  ({
1719
1855
  index: e,
1720
- isActive: t = !1,
1721
- asChild: s = !1,
1856
+ isActive: r = !1,
1857
+ asChild: t = !1,
1722
1858
  reorderLabel: a,
1723
1859
  isPinned: i = !1,
1724
- onPinChange: u,
1860
+ onPinChange: c,
1725
1861
  pinLabel: o,
1726
1862
  "aria-label": p,
1727
- className: m,
1728
- children: g,
1863
+ className: u,
1864
+ children: v,
1729
1865
  ...I
1730
- }, N) => {
1731
- const { t: k } = de("ui"), { mode: R } = G(), c = Gs(), [l, v] = re(!1), y = !!(c != null && c.onReorder) && R !== "icon", A = a ?? p ?? "", D = ye(), T = (b, M) => {
1732
- if (!(c != null && c.onReorder)) return;
1733
- const Y = Math.max(0, Math.min(c.count - 1, M));
1734
- Y !== b && (c.onReorder(b, Y), c.announce(
1735
- k(
1866
+ }, z) => {
1867
+ const { t: N } = ue("ui"), { mode: A } = G(), m = st(), [l, g] = se(!1), h = !!(m != null && m.onReorder) && A !== "icon", D = a ?? p ?? "", R = fe(), j = (f, Y) => {
1868
+ if (!(m != null && m.onReorder)) return;
1869
+ const W = Math.max(0, Math.min(m.count - 1, Y));
1870
+ W !== f && (m.onReorder(f, W), m.announce(
1871
+ N(
1736
1872
  "navigation.sidebar.reorderAnnounce",
1737
1873
  "{{label}} moved to position {{to}} of {{total}}",
1738
- { label: A, to: Y + 1, total: c.count }
1874
+ { label: D, to: W + 1, total: m.count }
1739
1875
  )
1740
1876
  ));
1741
- }, w = (b) => {
1742
- y && (b.altKey && b.key === "ArrowUp" ? (b.preventDefault(), T(e, e - 1)) : b.altKey && b.key === "ArrowDown" ? (b.preventDefault(), T(e, e + 1)) : b.key === "Home" && b.altKey ? (b.preventDefault(), T(e, 0)) : b.key === "End" && b.altKey && (b.preventDefault(), T(e, c.count - 1)));
1743
- }, O = (b) => {
1744
- y && (c == null || c.setDragSource(e), b.dataTransfer && (b.dataTransfer.effectAllowed = "move", b.dataTransfer.setData("ds:text/plain", String(e))));
1745
- }, z = () => {
1746
- c == null || c.setDragSource(null), v(!1);
1747
- }, P = (b) => {
1748
- !y || (c == null ? void 0 : c.dragSource) === null || (b.preventDefault(), b.dataTransfer && (b.dataTransfer.dropEffect = "move"), v(!0));
1749
- }, j = () => v(!1), X = (b) => {
1750
- if (!y) return;
1751
- b.preventDefault();
1752
- const M = c == null ? void 0 : c.dragSource;
1753
- v(!1), !(M == null || M === e) && T(M, e);
1754
- }, U = (c == null ? void 0 : c.dragSource) === e;
1755
- return /* @__PURE__ */ h(
1877
+ }, w = (f) => {
1878
+ h && (f.altKey && f.key === "ArrowUp" ? (f.preventDefault(), j(e, e - 1)) : f.altKey && f.key === "ArrowDown" ? (f.preventDefault(), j(e, e + 1)) : f.key === "Home" && f.altKey ? (f.preventDefault(), j(e, 0)) : f.key === "End" && f.altKey && (f.preventDefault(), j(e, m.count - 1)));
1879
+ }, F = (f) => {
1880
+ h && (m == null || m.setDragSource(e), f.dataTransfer && (f.dataTransfer.effectAllowed = "move", f.dataTransfer.setData("ds:text/plain", String(e))));
1881
+ }, E = () => {
1882
+ m == null || m.setDragSource(null), g(!1);
1883
+ }, H = (f) => {
1884
+ !h || (m == null ? void 0 : m.dragSource) === null || (f.preventDefault(), f.dataTransfer && (f.dataTransfer.dropEffect = "move"), g(!0));
1885
+ }, O = () => g(!1), _ = (f) => {
1886
+ if (!h) return;
1887
+ f.preventDefault();
1888
+ const Y = m == null ? void 0 : m.dragSource;
1889
+ g(!1), !(Y == null || Y === e) && j(Y, e);
1890
+ }, P = (m == null ? void 0 : m.dragSource) === e;
1891
+ return /* @__PURE__ */ x(
1756
1892
  "div",
1757
1893
  {
1758
- className: Xs({
1759
- dragging: U,
1760
- dropTarget: l && !U
1894
+ className: rt({
1895
+ dragging: P,
1896
+ dropTarget: l && !P
1761
1897
  }),
1762
- draggable: y || void 0,
1763
- onDragStart: y ? O : void 0,
1764
- onDragEnd: y ? z : void 0,
1765
- onDragOver: P,
1766
- onDragLeave: j,
1767
- onDrop: X,
1898
+ draggable: h || void 0,
1899
+ onDragStart: h ? F : void 0,
1900
+ onDragEnd: h ? E : void 0,
1901
+ onDragOver: H,
1902
+ onDragLeave: O,
1903
+ onDrop: _,
1768
1904
  children: [
1769
- /* @__PURE__ */ r(
1770
- Ge,
1905
+ /* @__PURE__ */ s(
1906
+ Xe,
1771
1907
  {
1772
- ref: N,
1773
- isActive: t,
1774
- asChild: s,
1908
+ ref: z,
1909
+ isActive: r,
1910
+ asChild: t,
1775
1911
  "aria-label": p,
1776
- "aria-describedby": y ? D : void 0,
1777
- draggable: y ? !1 : void 0,
1778
- className: [y ? "ds:flex-1 ds:min-w-0" : "", m ?? ""].filter(Boolean).join(" "),
1912
+ "aria-describedby": h ? R : void 0,
1913
+ draggable: h ? !1 : void 0,
1914
+ className: [h ? "ds:flex-1 ds:min-w-0" : "", u ?? ""].filter(Boolean).join(" "),
1779
1915
  ...I,
1780
- children: g
1916
+ children: v
1781
1917
  }
1782
1918
  ),
1783
- y ? /* @__PURE__ */ r(
1919
+ h ? /* @__PURE__ */ s(
1784
1920
  "button",
1785
1921
  {
1786
1922
  type: "button",
1787
- id: D,
1788
- "aria-label": k(
1923
+ id: R,
1924
+ "aria-label": N(
1789
1925
  "navigation.sidebar.reorderHandle",
1790
1926
  "Reorder {{label}}. Press Alt + Up or Alt + Down to move.",
1791
- { label: A }
1927
+ { label: D }
1792
1928
  ),
1793
- className: Ws,
1929
+ className: nt,
1794
1930
  onKeyDown: w,
1795
- children: /* @__PURE__ */ r(os, { "aria-hidden": "true", className: "ds:size-4" })
1931
+ children: /* @__PURE__ */ s(ls, { "aria-hidden": "true", className: "ds:size-4" })
1796
1932
  }
1797
1933
  ) : null,
1798
- u && R !== "icon" ? /* @__PURE__ */ r(
1934
+ c && A !== "icon" ? /* @__PURE__ */ s(
1799
1935
  je,
1800
1936
  {
1801
1937
  isPinned: i,
1802
1938
  label: o ?? p ?? "",
1803
- onPinChange: u
1939
+ onPinChange: c
1804
1940
  }
1805
1941
  ) : null
1806
1942
  ]
@@ -1808,8 +1944,8 @@ const Xs = ee(
1808
1944
  );
1809
1945
  }
1810
1946
  );
1811
- Zs.displayName = "SidebarFavoriteItem";
1812
- const Js = ee(
1947
+ at.displayName = "SidebarFavoriteItem";
1948
+ const it = te(
1813
1949
  [
1814
1950
  "ds:flex ds:items-center ds:gap-[var(--spacing-sm)]",
1815
1951
  "ds:min-h-[var(--min-target-size)]",
@@ -1822,18 +1958,18 @@ const Js = ee(
1822
1958
  "ds:forced-colors:focus-visible:outline-[CanvasText]",
1823
1959
  "ds:no-underline"
1824
1960
  ].join(" ")
1825
- ), Qs = H(({ avatar: e, name: t, subtitle: s, subtitleLabel: a, className: i, ...u }, o) => {
1826
- const { mode: p } = G(), m = p !== "icon", g = typeof s == "string" ? s : a;
1827
- return /* @__PURE__ */ h(
1961
+ ), ot = $(({ avatar: e, name: r, subtitle: t, subtitleLabel: a, className: i, ...c }, o) => {
1962
+ const { mode: p } = G(), u = p !== "icon", v = typeof t == "string" ? t : a;
1963
+ return /* @__PURE__ */ x(
1828
1964
  "button",
1829
1965
  {
1830
1966
  ref: o,
1831
1967
  type: "button",
1832
- "aria-label": g ? `${t}, ${g}` : t,
1833
- className: [Js(), i].filter(Boolean).join(" "),
1834
- ...u,
1968
+ "aria-label": v ? `${r}, ${v}` : r,
1969
+ className: [it(), i].filter(Boolean).join(" "),
1970
+ ...c,
1835
1971
  children: [
1836
- /* @__PURE__ */ r(
1972
+ /* @__PURE__ */ s(
1837
1973
  "span",
1838
1974
  {
1839
1975
  "aria-hidden": "true",
@@ -1841,16 +1977,16 @@ const Js = ee(
1841
1977
  children: e
1842
1978
  }
1843
1979
  ),
1844
- m ? /* @__PURE__ */ h("span", { className: "ds:flex-1 ds:min-w-0 ds:text-start", children: [
1845
- /* @__PURE__ */ r("span", { className: "ds:block ds:truncate type-label", children: t }),
1846
- s ? typeof s == "string" ? /* @__PURE__ */ r("span", { className: "ds:block ds:truncate type-meta ds:text-[color:var(--muted-foreground)]", children: s }) : /* @__PURE__ */ r("span", { className: "ds:flex ds:items-center ds:gap-[length:var(--spacing-xs)] ds:min-w-0 type-meta ds:text-[color:var(--muted-foreground)]", children: s }) : null
1980
+ u ? /* @__PURE__ */ x("span", { className: "ds:flex-1 ds:min-w-0 ds:text-start", children: [
1981
+ /* @__PURE__ */ s("span", { className: "ds:block ds:truncate type-label", children: r }),
1982
+ t ? typeof t == "string" ? /* @__PURE__ */ s("span", { className: "ds:block ds:truncate type-meta ds:text-[color:var(--muted-foreground)]", children: t }) : /* @__PURE__ */ s("span", { className: "ds:flex ds:items-center ds:gap-[length:var(--spacing-xs)] ds:min-w-0 type-meta ds:text-[color:var(--muted-foreground)]", children: t }) : null
1847
1983
  ] }) : null
1848
1984
  ]
1849
1985
  }
1850
1986
  );
1851
1987
  });
1852
- Qs.displayName = "SidebarProfilePill";
1853
- const et = [
1988
+ ot.displayName = "SidebarProfilePill";
1989
+ const dt = [
1854
1990
  "ds:inline-flex ds:items-center ds:justify-center ds:shrink-0",
1855
1991
  "ds:min-w-[var(--min-target-size)] ds:min-h-[var(--min-target-size)]",
1856
1992
  "ds:rounded-[var(--radius-sm)]",
@@ -1860,32 +1996,32 @@ const et = [
1860
1996
  "ds:focus-visible:outline-[var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
1861
1997
  "ds:forced-colors:focus-visible:outline-[CanvasText]",
1862
1998
  "ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none"
1863
- ].join(" "), st = H(({ className: e, "aria-label": t, onClick: s, ...a }, i) => {
1864
- const { t: u } = de("ui"), { mode: o, density: p, transitionTo: m } = G();
1999
+ ].join(" "), ct = $(({ className: e, "aria-label": r, onClick: t, ...a }, i) => {
2000
+ const { t: c } = ue("ui"), { mode: o, density: p, transitionTo: u } = G();
1865
2001
  if (o === "overlay") return null;
1866
- const g = o === "expanded", I = g ? [
2002
+ const v = o === "expanded", I = v ? [
1867
2003
  "ds:justify-start",
1868
2004
  p === "compact" ? "ds:ps-[var(--spacing-xs)]" : "ds:ps-[var(--spacing-sm)]"
1869
- ].join(" ") : "ds:justify-center", N = t ?? (g ? u("navigation.sidebar.collapse", "Collapse sidebar") : u("navigation.sidebar.expand", "Expand sidebar")), k = /* @__PURE__ */ r(
2005
+ ].join(" ") : "ds:justify-center", z = r ?? (v ? c("navigation.sidebar.collapse", "Collapse sidebar") : c("navigation.sidebar.expand", "Expand sidebar")), N = /* @__PURE__ */ s(
1870
2006
  "button",
1871
2007
  {
1872
2008
  ref: i,
1873
2009
  type: "button",
1874
- "aria-label": N,
1875
- "aria-expanded": g,
1876
- onClick: (R) => {
1877
- m == null || m(g ? "icon" : "expanded"), s == null || s(R);
2010
+ "aria-label": z,
2011
+ "aria-expanded": v,
2012
+ onClick: (A) => {
2013
+ u == null || u(v ? "icon" : "expanded"), t == null || t(A);
1878
2014
  },
1879
- className: [et, I, e].filter(Boolean).join(" "),
2015
+ className: [dt, I, e].filter(Boolean).join(" "),
1880
2016
  ...a,
1881
- children: /* @__PURE__ */ r("span", { className: "ds:inline-flex ds:size-5 ds:shrink-0 ds:items-center ds:justify-center", children: g ? /* @__PURE__ */ r(
1882
- us,
2017
+ children: /* @__PURE__ */ s("span", { className: "ds:inline-flex ds:size-5 ds:shrink-0 ds:items-center ds:justify-center", children: v ? /* @__PURE__ */ s(
2018
+ ps,
1883
2019
  {
1884
2020
  "aria-hidden": "true",
1885
2021
  className: "ds:size-4 ds:rtl:-scale-x-100"
1886
2022
  }
1887
- ) : /* @__PURE__ */ r(
1888
- fs,
2023
+ ) : /* @__PURE__ */ s(
2024
+ gs,
1889
2025
  {
1890
2026
  "aria-hidden": "true",
1891
2027
  className: "ds:size-4 ds:rtl:-scale-x-100"
@@ -1893,24 +2029,24 @@ const et = [
1893
2029
  ) })
1894
2030
  }
1895
2031
  );
1896
- return /* @__PURE__ */ h(E.Root, { children: [
1897
- /* @__PURE__ */ r(E.Trigger, { asChild: !0, children: k }),
1898
- /* @__PURE__ */ r(E.Portal, { children: /* @__PURE__ */ h(
1899
- E.Content,
2032
+ return /* @__PURE__ */ x(C.Root, { children: [
2033
+ /* @__PURE__ */ s(C.Trigger, { asChild: !0, children: N }),
2034
+ /* @__PURE__ */ s(C.Portal, { children: /* @__PURE__ */ x(
2035
+ C.Content,
1900
2036
  {
1901
2037
  side: o === "icon" ? "right" : "top",
1902
2038
  sideOffset: 6,
1903
- className: ve,
2039
+ className: pe,
1904
2040
  children: [
1905
- N,
1906
- /* @__PURE__ */ r(E.Arrow, { className: "ds:fill-[var(--foreground)]" })
2041
+ z,
2042
+ /* @__PURE__ */ s(C.Arrow, { className: "ds:fill-[var(--foreground)]" })
1907
2043
  ]
1908
2044
  }
1909
2045
  ) })
1910
2046
  ] });
1911
2047
  });
1912
- st.displayName = "SidebarCollapseTrigger";
1913
- const tt = ee(
2048
+ ct.displayName = "SidebarCollapseTrigger";
2049
+ const lt = te(
1914
2050
  [
1915
2051
  "ds:flex ds:items-center ds:gap-[var(--spacing-sm)]",
1916
2052
  "ds:rounded-[var(--radius-md)]",
@@ -1941,20 +2077,20 @@ const tt = ee(
1941
2077
  },
1942
2078
  defaultVariants: { mode: "expanded" }
1943
2079
  }
1944
- ), nt = H(({ title: e, description: t, icon: s, className: a, ...i }, u) => {
1945
- const { mode: o } = G(), p = o === "icon", m = (
2080
+ ), ut = $(({ title: e, description: r, icon: t, className: a, ...i }, c) => {
2081
+ const { mode: o } = G(), p = o === "icon", u = (
1946
2082
  // aria-label only in icon mode (where the copy is hidden) — in
1947
2083
  // expanded mode the accessible name comes from the visible contents
1948
2084
  // so the description isn't excluded from it.
1949
- /* @__PURE__ */ h(
2085
+ /* @__PURE__ */ x(
1950
2086
  "a",
1951
2087
  {
1952
- ref: u,
2088
+ ref: c,
1953
2089
  "aria-label": p ? e : void 0,
1954
- className: tt({ mode: o, className: a }),
2090
+ className: lt({ mode: o, className: a }),
1955
2091
  ...i,
1956
2092
  children: [
1957
- /* @__PURE__ */ r(
2093
+ /* @__PURE__ */ s(
1958
2094
  "span",
1959
2095
  {
1960
2096
  "aria-hidden": "true",
@@ -1963,19 +2099,19 @@ const tt = ee(
1963
2099
  "ds:rounded-[var(--radius-sm)]",
1964
2100
  "ds:bg-[var(--accent)] ds:text-[var(--accent-foreground)]"
1965
2101
  ].join(" "),
1966
- children: s ?? /* @__PURE__ */ r(ls, { className: "ds:size-4" })
2102
+ children: t ?? /* @__PURE__ */ s(ms, { className: "ds:size-4" })
1967
2103
  }
1968
2104
  ),
1969
- p ? null : /* @__PURE__ */ h(xe, { children: [
1970
- /* @__PURE__ */ h("span", { className: "ds:flex-1 ds:min-w-0 ds:text-start", children: [
1971
- /* @__PURE__ */ r("span", { className: "ds:block ds:line-clamp-2 type-label", children: e }),
1972
- t ? (
2105
+ p ? null : /* @__PURE__ */ x(ye, { children: [
2106
+ /* @__PURE__ */ x("span", { className: "ds:flex-1 ds:min-w-0 ds:text-start", children: [
2107
+ /* @__PURE__ */ s("span", { className: "ds:block ds:line-clamp-2 type-label", children: e }),
2108
+ r ? (
1973
2109
  // Foreground (not muted) on the tinted surface — the gradient
1974
2110
  // stops leave muted text short of AA in both colour schemes.
1975
- /* @__PURE__ */ r("span", { className: "ds:block ds:line-clamp-2 type-meta", children: t })
2111
+ /* @__PURE__ */ s("span", { className: "ds:block ds:line-clamp-2 type-meta", children: r })
1976
2112
  ) : null
1977
2113
  ] }),
1978
- /* @__PURE__ */ r(
2114
+ /* @__PURE__ */ s(
1979
2115
  we,
1980
2116
  {
1981
2117
  "aria-hidden": "true",
@@ -1987,43 +2123,43 @@ const tt = ee(
1987
2123
  }
1988
2124
  )
1989
2125
  );
1990
- return p ? /* @__PURE__ */ h(E.Root, { children: [
1991
- /* @__PURE__ */ r(E.Trigger, { asChild: !0, children: m }),
1992
- /* @__PURE__ */ r(E.Portal, { children: /* @__PURE__ */ h(
1993
- E.Content,
2126
+ return p ? /* @__PURE__ */ x(C.Root, { children: [
2127
+ /* @__PURE__ */ s(C.Trigger, { asChild: !0, children: u }),
2128
+ /* @__PURE__ */ s(C.Portal, { children: /* @__PURE__ */ x(
2129
+ C.Content,
1994
2130
  {
1995
2131
  side: "right",
1996
2132
  sideOffset: 6,
1997
- className: ve,
2133
+ className: pe,
1998
2134
  children: [
1999
2135
  e,
2000
- /* @__PURE__ */ r(E.Arrow, { className: "ds:fill-[var(--foreground)]" })
2136
+ /* @__PURE__ */ s(C.Arrow, { className: "ds:fill-[var(--foreground)]" })
2001
2137
  ]
2002
2138
  }
2003
2139
  ) })
2004
- ] }) : m;
2140
+ ] }) : u;
2005
2141
  });
2006
- nt.displayName = "SidebarUpgradeChip";
2142
+ ut.displayName = "SidebarUpgradeChip";
2007
2143
  export {
2008
- Ts as S,
2009
- Ds as a,
2010
- st as b,
2011
- Zs as c,
2012
- Ks as d,
2013
- As as e,
2014
- Ls as f,
2015
- Es as g,
2016
- Ge as h,
2017
- Hs as i,
2018
- Bs as j,
2019
- Fs as k,
2144
+ Ps as S,
2145
+ As as a,
2146
+ ct as b,
2147
+ at as c,
2148
+ tt as d,
2149
+ Rs as e,
2150
+ Ys as f,
2151
+ Os as g,
2152
+ Xe as h,
2153
+ Xs as i,
2154
+ Gs as j,
2155
+ Ks as k,
2020
2156
  je as l,
2021
- Vs as m,
2022
- Qs as n,
2023
- Ve as o,
2024
- nt as p,
2025
- Ys as q,
2026
- ps as s,
2157
+ Qs as m,
2158
+ ot as n,
2159
+ Ge as o,
2160
+ ut as p,
2161
+ Zs as q,
2162
+ bs as s,
2027
2163
  G as u
2028
2164
  };
2029
- //# sourceMappingURL=sidebar-D4Wllqfz.js.map
2165
+ //# sourceMappingURL=sidebar-D_S2-SXH.js.map