@alfadocs/ui-kit-debug 1.34.0 → 1.36.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 (588) hide show
  1. package/dist/_chunks/{actions-cell-renderer-yy03OgRL.js → actions-cell-renderer-CUn1pqEq.js} +3 -3
  2. package/dist/_chunks/{actions-cell-renderer-yy03OgRL.js.map → actions-cell-renderer-CUn1pqEq.js.map} +1 -1
  3. package/dist/_chunks/{agenda-card-DVz3jwTf.js → agenda-card-DyQtHb9z.js} +2 -2
  4. package/dist/_chunks/{agenda-card-DVz3jwTf.js.map → agenda-card-DyQtHb9z.js.map} +1 -1
  5. package/dist/_chunks/{agenda-tray-1oDWCJdB.js → agenda-tray-DYGCTIWB.js} +3 -3
  6. package/dist/_chunks/{agenda-tray-1oDWCJdB.js.map → agenda-tray-DYGCTIWB.js.map} +1 -1
  7. package/dist/_chunks/{ai-consent-banner-OggpS5hW.js → ai-consent-banner-De4gzSBZ.js} +4 -4
  8. package/dist/_chunks/{ai-consent-banner-OggpS5hW.js.map → ai-consent-banner-De4gzSBZ.js.map} +1 -1
  9. package/dist/_chunks/{ai-prompt-input-Dt7tpCBh.js → ai-prompt-input-DdxlaI7q.js} +2 -2
  10. package/dist/_chunks/{ai-prompt-input-Dt7tpCBh.js.map → ai-prompt-input-DdxlaI7q.js.map} +1 -1
  11. package/dist/_chunks/{alert-CiJT540z.js → alert-CiQ5Pa3Q.js} +2 -2
  12. package/dist/_chunks/{alert-CiJT540z.js.map → alert-CiQ5Pa3Q.js.map} +1 -1
  13. package/dist/_chunks/{alia-sidebar-D18kp3p9.js → alia-sidebar-B6bXlZZk.js} +6 -6
  14. package/dist/_chunks/{alia-sidebar-D18kp3p9.js.map → alia-sidebar-B6bXlZZk.js.map} +1 -1
  15. package/dist/_chunks/{anamnesis-card-NTi4LLzI.js → anamnesis-card-DGwINeNn.js} +3 -3
  16. package/dist/_chunks/{anamnesis-card-NTi4LLzI.js.map → anamnesis-card-DGwINeNn.js.map} +1 -1
  17. package/dist/_chunks/{anamnesis-summary-card-DGVKBQoq.js → anamnesis-summary-card-GYHa7VGp.js} +3 -3
  18. package/dist/_chunks/{anamnesis-summary-card-DGVKBQoq.js.map → anamnesis-summary-card-GYHa7VGp.js.map} +1 -1
  19. package/dist/_chunks/{anamnesis-summary-rows-BYgyp_i2.js → anamnesis-summary-rows-Cxtgo2ok.js} +12 -12
  20. package/dist/_chunks/{anamnesis-summary-rows-BYgyp_i2.js.map → anamnesis-summary-rows-Cxtgo2ok.js.map} +1 -1
  21. package/dist/_chunks/{antenatal-schedule-timeline-sXfIp5lp.js → antenatal-schedule-timeline-CXk_tzWG.js} +2 -2
  22. package/dist/_chunks/{antenatal-schedule-timeline-sXfIp5lp.js.map → antenatal-schedule-timeline-CXk_tzWG.js.map} +1 -1
  23. package/dist/_chunks/appointment-card-WsDGBBut.js +425 -0
  24. package/dist/_chunks/appointment-card-WsDGBBut.js.map +1 -0
  25. package/dist/_chunks/appointment-timeline-ByfovxqR.js +449 -0
  26. package/dist/_chunks/appointment-timeline-ByfovxqR.js.map +1 -0
  27. package/dist/_chunks/{appointment-tray-6rg071CL.js → appointment-tray-D6UyJHej.js} +3 -3
  28. package/dist/_chunks/{appointment-tray-6rg071CL.js.map → appointment-tray-D6UyJHej.js.map} +1 -1
  29. package/dist/_chunks/arrow-right-KsIrLdt0.js +15 -0
  30. package/dist/_chunks/arrow-right-KsIrLdt0.js.map +1 -0
  31. package/dist/_chunks/{audio-recorder-11wClczr.js → audio-recorder-BlQBC7N_.js} +3 -3
  32. package/dist/_chunks/{audio-recorder-11wClczr.js.map → audio-recorder-BlQBC7N_.js.map} +1 -1
  33. package/dist/_chunks/{badge-sTusUqZD.js → badge-BudgzTe_.js} +2 -2
  34. package/dist/_chunks/{badge-sTusUqZD.js.map → badge-BudgzTe_.js.map} +1 -1
  35. package/dist/_chunks/{balance-badge-cell-DhBtFRoW.js → balance-badge-cell-B0Z8Dwn8.js} +6 -6
  36. package/dist/_chunks/{balance-badge-cell-DhBtFRoW.js.map → balance-badge-cell-B0Z8Dwn8.js.map} +1 -1
  37. package/dist/_chunks/{bishop-score-CAl7C5hm.js → bishop-score-D5b8tktp.js} +2 -2
  38. package/dist/_chunks/{bishop-score-CAl7C5hm.js.map → bishop-score-D5b8tktp.js.map} +1 -1
  39. package/dist/_chunks/{bmi-calculator-Dwkih9a4.js → bmi-calculator-dOKP-vW4.js} +4 -4
  40. package/dist/_chunks/{bmi-calculator-Dwkih9a4.js.map → bmi-calculator-dOKP-vW4.js.map} +1 -1
  41. package/dist/_chunks/{booking-BqkEtsKx.js → booking-Dp-9qR6F.js} +9 -9
  42. package/dist/_chunks/{booking-BqkEtsKx.js.map → booking-Dp-9qR6F.js.map} +1 -1
  43. package/dist/_chunks/button-group-QmN1VdUW.js +307 -0
  44. package/dist/_chunks/button-group-QmN1VdUW.js.map +1 -0
  45. package/dist/_chunks/{calendar-Dgvl5L4T.js → calendar-7GAUlsNO.js} +3 -3
  46. package/dist/_chunks/{calendar-Dgvl5L4T.js.map → calendar-7GAUlsNO.js.map} +1 -1
  47. package/dist/_chunks/{calendar-event-card-DSh-69HT.js → calendar-event-card-DKUnT9Be.js} +91 -134
  48. package/dist/_chunks/calendar-event-card-DKUnT9Be.js.map +1 -0
  49. package/dist/_chunks/{calendar-workspace-4NH1Z47_.js → calendar-workspace-Duv_5B4j.js} +2494 -2415
  50. package/dist/_chunks/calendar-workspace-Duv_5B4j.js.map +1 -0
  51. package/dist/_chunks/{care-plan-card-CZW476Kg.js → care-plan-card-COFOI-fI.js} +5 -5
  52. package/dist/_chunks/{care-plan-card-CZW476Kg.js.map → care-plan-card-COFOI-fI.js.map} +1 -1
  53. package/dist/_chunks/{care-plan-entry-card-BMUYagEw.js → care-plan-entry-card-BOKn0KW-.js} +6 -6
  54. package/dist/_chunks/{care-plan-entry-card-BMUYagEw.js.map → care-plan-entry-card-BOKn0KW-.js.map} +1 -1
  55. package/dist/_chunks/{care-plan-header-B5CBE0zu.js → care-plan-header-CbuOuVBw.js} +4 -4
  56. package/dist/_chunks/{care-plan-header-B5CBE0zu.js.map → care-plan-header-CbuOuVBw.js.map} +1 -1
  57. package/dist/_chunks/{carousel.agent-CLxdHEBP.js → carousel.agent-Dv4a4M8L.js} +2 -2
  58. package/dist/_chunks/{carousel.agent-CLxdHEBP.js.map → carousel.agent-Dv4a4M8L.js.map} +1 -1
  59. package/dist/_chunks/{chart-C6eHTxkO.js → chart-iWl76PXv.js} +3 -3
  60. package/dist/_chunks/{chart-C6eHTxkO.js.map → chart-iWl76PXv.js.map} +1 -1
  61. package/dist/_chunks/{chat-input-BsB5Umpj.js → chat-input-qM5QpUSq.js} +2 -2
  62. package/dist/_chunks/{chat-input-BsB5Umpj.js.map → chat-input-qM5QpUSq.js.map} +1 -1
  63. package/dist/_chunks/{chat-message-C-8UU2av.js → chat-message-RniXtrCH.js} +2 -2
  64. package/dist/_chunks/{chat-message-C-8UU2av.js.map → chat-message-RniXtrCH.js.map} +1 -1
  65. package/dist/_chunks/{checkbox-BuZ1u__2.js → checkbox-CZkipDn7.js} +2 -2
  66. package/dist/_chunks/{checkbox-BuZ1u__2.js.map → checkbox-CZkipDn7.js.map} +1 -1
  67. package/dist/_chunks/{checkbox-group-CfqMv57d.js → checkbox-group-DomUzpkF.js} +2 -2
  68. package/dist/_chunks/{checkbox-group-CfqMv57d.js.map → checkbox-group-DomUzpkF.js.map} +1 -1
  69. package/dist/_chunks/clinical-note-card-DdsGYMmI.js +325 -0
  70. package/dist/_chunks/clinical-note-card-DdsGYMmI.js.map +1 -0
  71. package/dist/_chunks/{code-block-BIkpRLkl.js → code-block-uVjNSI9g.js} +2 -2
  72. package/dist/_chunks/{code-block-BIkpRLkl.js.map → code-block-uVjNSI9g.js.map} +1 -1
  73. package/dist/_chunks/{connection-status-DRZIcMqM.js → connection-status-OEsWjmRk.js} +3 -3
  74. package/dist/_chunks/{connection-status-DRZIcMqM.js.map → connection-status-OEsWjmRk.js.map} +1 -1
  75. package/dist/_chunks/{contact-profile-card-DSI9uumA.js → contact-profile-card--My1H2UD.js} +3 -3
  76. package/dist/_chunks/{contact-profile-card-DSI9uumA.js.map → contact-profile-card--My1H2UD.js.map} +1 -1
  77. package/dist/_chunks/{control-room-rail-5MbhjsxN.js → control-room-rail-Ds45_g4f.js} +4 -4
  78. package/dist/_chunks/{control-room-rail-5MbhjsxN.js.map → control-room-rail-Ds45_g4f.js.map} +1 -1
  79. package/dist/_chunks/{counter-dRlTNC_y.js → counter-WsvRuum1.js} +50 -15
  80. package/dist/_chunks/counter-WsvRuum1.js.map +1 -0
  81. package/dist/_chunks/{cycle-calculator-DVgxBfP0.js → cycle-calculator-BJeaXiZv.js} +3 -3
  82. package/dist/_chunks/{cycle-calculator-DVgxBfP0.js.map → cycle-calculator-BJeaXiZv.js.map} +1 -1
  83. package/dist/_chunks/{dashboard-grid-BFtdHqfn.js → dashboard-grid-B23BFzRl.js} +2 -2
  84. package/dist/_chunks/{dashboard-grid-BFtdHqfn.js.map → dashboard-grid-B23BFzRl.js.map} +1 -1
  85. package/dist/_chunks/{data-table-DC96JJIq.js → data-table-BYGK-gUJ.js} +6 -6
  86. package/dist/_chunks/{data-table-DC96JJIq.js.map → data-table-BYGK-gUJ.js.map} +1 -1
  87. package/dist/_chunks/{data-table-tabs-DVIFkqx_.js → data-table-tabs-BMR0zsVQ.js} +3 -3
  88. package/dist/_chunks/{data-table-tabs-DVIFkqx_.js.map → data-table-tabs-BMR0zsVQ.js.map} +1 -1
  89. package/dist/_chunks/{date-picker-B6NW_PS5.js → date-picker-6tFnKFty.js} +14 -14
  90. package/dist/_chunks/{date-picker-B6NW_PS5.js.map → date-picker-6tFnKFty.js.map} +1 -1
  91. package/dist/_chunks/{dependent-selector-yTKKsuc9.js → dependent-selector-BHDP0nBB.js} +3 -3
  92. package/dist/_chunks/{dependent-selector-yTKKsuc9.js.map → dependent-selector-BHDP0nBB.js.map} +1 -1
  93. package/dist/_chunks/{description-list-CjJqR8WK.js → description-list-C1RXMDZ_.js} +2 -2
  94. package/dist/_chunks/{description-list-CjJqR8WK.js.map → description-list-C1RXMDZ_.js.map} +1 -1
  95. package/dist/_chunks/{document-preview-BrhMHNh8.js → document-preview-DsEyRcNd.js} +4 -4
  96. package/dist/_chunks/{document-preview-BrhMHNh8.js.map → document-preview-DsEyRcNd.js.map} +1 -1
  97. package/dist/_chunks/{document-scanner-C5Vrbu21.js → document-scanner-CbWVtm7u.js} +53 -52
  98. package/dist/_chunks/{document-scanner-C5Vrbu21.js.map → document-scanner-CbWVtm7u.js.map} +1 -1
  99. package/dist/_chunks/{due-date-calculator-CxgK8vzt.js → due-date-calculator-Dhc9Ljkb.js} +6 -6
  100. package/dist/_chunks/{due-date-calculator-CxgK8vzt.js.map → due-date-calculator-Dhc9Ljkb.js.map} +1 -1
  101. package/dist/_chunks/{editable-currency-cell-renderer-B7TVZ5ZJ.js → editable-currency-cell-renderer-D7blbDFY.js} +4 -4
  102. package/dist/_chunks/{editable-currency-cell-renderer-B7TVZ5ZJ.js.map → editable-currency-cell-renderer-D7blbDFY.js.map} +1 -1
  103. package/dist/_chunks/{editor-overlay-DEc5yYwo.js → editor-overlay-8fKAcRsm.js} +2 -2
  104. package/dist/_chunks/{editor-overlay-DEc5yYwo.js.map → editor-overlay-8fKAcRsm.js.map} +1 -1
  105. package/dist/_chunks/{entity-card-DmrgYSEX.js → entity-card-I-Gio5wo.js} +36 -32
  106. package/dist/_chunks/entity-card-I-Gio5wo.js.map +1 -0
  107. package/dist/_chunks/{entity-summary-5o768XLU.js → entity-summary-BbW0mIzU.js} +4 -4
  108. package/dist/_chunks/{entity-summary-5o768XLU.js.map → entity-summary-BbW0mIzU.js.map} +1 -1
  109. package/dist/_chunks/{face-scheme-l-CQyLs-.js → face-scheme-uFvhqz6h.js} +4 -4
  110. package/dist/_chunks/{face-scheme-l-CQyLs-.js.map → face-scheme-uFvhqz6h.js.map} +1 -1
  111. package/dist/_chunks/{fetal-weight-Dqy0T1fP.js → fetal-weight-C6SxchOv.js} +2 -2
  112. package/dist/_chunks/{fetal-weight-Dqy0T1fP.js.map → fetal-weight-C6SxchOv.js.map} +1 -1
  113. package/dist/_chunks/{field-array-BjkXZzSr.js → field-array-C9dmRaIM.js} +2 -2
  114. package/dist/_chunks/{field-array-BjkXZzSr.js.map → field-array-C9dmRaIM.js.map} +1 -1
  115. package/dist/_chunks/{file-manager-CI2Qn8qW.js → file-manager-DvkFgj7d.js} +7 -7
  116. package/dist/_chunks/{file-manager-CI2Qn8qW.js.map → file-manager-DvkFgj7d.js.map} +1 -1
  117. package/dist/_chunks/{file-upload-CwxdqkMK.js → file-upload-BDpb08GM.js} +71 -78
  118. package/dist/_chunks/file-upload-BDpb08GM.js.map +1 -0
  119. package/dist/_chunks/{fiscal-code-input-B_nYMSEM.js → fiscal-code-input-CkwIdB1y.js} +2 -2
  120. package/dist/_chunks/{fiscal-code-input-B_nYMSEM.js.map → fiscal-code-input-CkwIdB1y.js.map} +1 -1
  121. package/dist/_chunks/{freemium-paywall-DrXzYfv-.js → freemium-paywall-BqGk_SBU.js} +2 -2
  122. package/dist/_chunks/{freemium-paywall-DrXzYfv-.js.map → freemium-paywall-BqGk_SBU.js.map} +1 -1
  123. package/dist/_chunks/{gestational-age-calculator-CZHVrERT.js → gestational-age-calculator-DDOGaPvg.js} +6 -6
  124. package/dist/_chunks/{gestational-age-calculator-CZHVrERT.js.map → gestational-age-calculator-DDOGaPvg.js.map} +1 -1
  125. package/dist/_chunks/{hcg-doubling-C2fQxfXd.js → hcg-doubling-Bb_n6tEa.js} +2 -2
  126. package/dist/_chunks/{hcg-doubling-C2fQxfXd.js.map → hcg-doubling-Bb_n6tEa.js.map} +1 -1
  127. package/dist/_chunks/{header-DUXRIPyM.js → header-BZ4pZlJV.js} +2 -2
  128. package/dist/_chunks/{header-DUXRIPyM.js.map → header-BZ4pZlJV.js.map} +1 -1
  129. package/dist/_chunks/{header-settings-DvjZNMhD.js → header-settings-B8mLc03Q.js} +4 -4
  130. package/dist/_chunks/{header-settings-DvjZNMhD.js.map → header-settings-B8mLc03Q.js.map} +1 -1
  131. package/dist/_chunks/hover-card-Bcku1GQu.js +511 -0
  132. package/dist/_chunks/hover-card-Bcku1GQu.js.map +1 -0
  133. package/dist/_chunks/{icon-button-DA2CAGHZ.js → icon-button-8xqRnkdG.js} +2 -2
  134. package/dist/_chunks/{icon-button-DA2CAGHZ.js.map → icon-button-8xqRnkdG.js.map} +1 -1
  135. package/dist/_chunks/{icon-button-group-VCCod3Hz.js → icon-button-group-Dj6CRoYR.js} +2 -2
  136. package/dist/_chunks/{icon-button-group-VCCod3Hz.js.map → icon-button-group-Dj6CRoYR.js.map} +1 -1
  137. package/dist/_chunks/{icon-picker-DOa89vn3.js → icon-picker-CTWzlHJr.js} +2 -2
  138. package/dist/_chunks/{icon-picker-DOa89vn3.js.map → icon-picker-CTWzlHJr.js.map} +1 -1
  139. package/dist/_chunks/{info-tip-CADik6WN.js → info-tip-ey_Pon2y.js} +2 -2
  140. package/dist/_chunks/{info-tip-CADik6WN.js.map → info-tip-ey_Pon2y.js.map} +1 -1
  141. package/dist/_chunks/{key-value-pair-BIBdZBLg.js → key-value-pair-DczGb4yz.js} +42 -41
  142. package/dist/_chunks/key-value-pair-DczGb4yz.js.map +1 -0
  143. package/dist/_chunks/{link-cell-renderer-BEpMNtAa.js → link-cell-renderer-BNa8x6oJ.js} +6 -6
  144. package/dist/_chunks/{link-cell-renderer-BEpMNtAa.js.map → link-cell-renderer-BNa8x6oJ.js.map} +1 -1
  145. package/dist/_chunks/loader-circle-BECIU_8N.js +12 -0
  146. package/dist/_chunks/loader-circle-BECIU_8N.js.map +1 -0
  147. package/dist/_chunks/{locale-picker-CwFtqSkt.js → locale-picker-BLeHbFSc.js} +3 -3
  148. package/dist/_chunks/{locale-picker-CwFtqSkt.js.map → locale-picker-BLeHbFSc.js.map} +1 -1
  149. package/dist/_chunks/{marketplace-app-shell-CK_ND8Tr.js → marketplace-app-shell-BwH6Aruw.js} +6 -6
  150. package/dist/_chunks/{marketplace-app-shell-CK_ND8Tr.js.map → marketplace-app-shell-BwH6Aruw.js.map} +1 -1
  151. package/dist/_chunks/{message-card-BUMv16un.js → message-card-Dm5Xshup.js} +2 -2
  152. package/dist/_chunks/{message-card-BUMv16un.js.map → message-card-Dm5Xshup.js.map} +1 -1
  153. package/dist/_chunks/{message-tray-0zsv27xX.js → message-tray-BcLyaO-G.js} +3 -3
  154. package/dist/_chunks/{message-tray-0zsv27xX.js.map → message-tray-BcLyaO-G.js.map} +1 -1
  155. package/dist/_chunks/{multi-select-DYOvx2SJ.js → multi-select-CtPd7g4x.js} +15 -15
  156. package/dist/_chunks/{multi-select-DYOvx2SJ.js.map → multi-select-CtPd7g4x.js.map} +1 -1
  157. package/dist/_chunks/note-attachment-CwDir3kK.js +124 -0
  158. package/dist/_chunks/note-attachment-CwDir3kK.js.map +1 -0
  159. package/dist/_chunks/note-timeline-CXfSV3yX.js +231 -0
  160. package/dist/_chunks/note-timeline-CXfSV3yX.js.map +1 -0
  161. package/dist/_chunks/{notes-panel-BjLt-kiP.js → notes-panel-Co8D3uDd.js} +7 -7
  162. package/dist/_chunks/{notes-panel-BjLt-kiP.js.map → notes-panel-Co8D3uDd.js.map} +1 -1
  163. package/dist/_chunks/{notification-card-CtrzoTUO.js → notification-card-ChcK9Wat.js} +2 -2
  164. package/dist/_chunks/{notification-card-CtrzoTUO.js.map → notification-card-ChcK9Wat.js.map} +1 -1
  165. package/dist/_chunks/{notification-tray-BiRzXHDf.js → notification-tray-CJ8jOe-U.js} +4 -4
  166. package/dist/_chunks/{notification-tray-BiRzXHDf.js.map → notification-tray-CJ8jOe-U.js.map} +1 -1
  167. package/dist/_chunks/{operator-hero-D7-iiFQ9.js → operator-hero-XIdwDmN2.js} +3 -3
  168. package/dist/_chunks/{operator-hero-D7-iiFQ9.js.map → operator-hero-XIdwDmN2.js.map} +1 -1
  169. package/dist/_chunks/{optical-prescription-DUJOhKz_.js → optical-prescription-cphK41eP.js} +2 -2
  170. package/dist/_chunks/{optical-prescription-DUJOhKz_.js.map → optical-prescription-cphK41eP.js.map} +1 -1
  171. package/dist/_chunks/panel-header-D_mTdhUp.js +128 -0
  172. package/dist/_chunks/panel-header-D_mTdhUp.js.map +1 -0
  173. package/dist/_chunks/patient-details-f7SSXkTJ.js +371 -0
  174. package/dist/_chunks/patient-details-f7SSXkTJ.js.map +1 -0
  175. package/dist/_chunks/patient-field-row-BQZoP4m2.js +787 -0
  176. package/dist/_chunks/patient-field-row-BQZoP4m2.js.map +1 -0
  177. package/dist/_chunks/{patient-search-HeEUB-_X.js → patient-search-D08b6jgj.js} +2 -2
  178. package/dist/_chunks/{patient-search-HeEUB-_X.js.map → patient-search-D08b6jgj.js.map} +1 -1
  179. package/dist/_chunks/patient-summary-card-Bz7KdUin.js +533 -0
  180. package/dist/_chunks/patient-summary-card-Bz7KdUin.js.map +1 -0
  181. package/dist/_chunks/{payment-automation-upsell-DwQW2fRp.js → payment-automation-upsell-BLTdE2em.js} +50 -59
  182. package/dist/_chunks/payment-automation-upsell-BLTdE2em.js.map +1 -0
  183. package/dist/_chunks/{payment-form-Ds1I9KqB.js → payment-form-BHMDqW9C.js} +2 -2
  184. package/dist/_chunks/{payment-form-Ds1I9KqB.js.map → payment-form-BHMDqW9C.js.map} +1 -1
  185. package/dist/_chunks/{payment-request-card-lmKLwsDs.js → payment-request-card-BxcdvxKR.js} +6 -6
  186. package/dist/_chunks/{payment-request-card-lmKLwsDs.js.map → payment-request-card-BxcdvxKR.js.map} +1 -1
  187. package/dist/_chunks/{pdf-viewer-DUIsV9s5.js → pdf-viewer-DUKdn5iq.js} +2 -2
  188. package/dist/_chunks/{pdf-viewer-DUIsV9s5.js.map → pdf-viewer-DUKdn5iq.js.map} +1 -1
  189. package/dist/_chunks/{periodontal-chart-B9fphroR.js → periodontal-chart-BF_e3wZp.js} +2 -2
  190. package/dist/_chunks/{periodontal-chart-B9fphroR.js.map → periodontal-chart-BF_e3wZp.js.map} +1 -1
  191. package/dist/_chunks/{periodontal-chart-card-qEZPXj83.js → periodontal-chart-card-BJEuJuzh.js} +3 -3
  192. package/dist/_chunks/{periodontal-chart-card-qEZPXj83.js.map → periodontal-chart-card-BJEuJuzh.js.map} +1 -1
  193. package/dist/_chunks/{periodontal-diagnosis-lEwA8wqX.js → periodontal-diagnosis-C7pfPOct.js} +5 -5
  194. package/dist/_chunks/{periodontal-diagnosis-lEwA8wqX.js.map → periodontal-diagnosis-C7pfPOct.js.map} +1 -1
  195. package/dist/_chunks/{periodontal-risk-chart-0x7KVZjL.js → periodontal-risk-chart-B2tNFa15.js} +2 -2
  196. package/dist/_chunks/{periodontal-risk-chart-0x7KVZjL.js.map → periodontal-risk-chart-B2tNFa15.js.map} +1 -1
  197. package/dist/_chunks/{permission-matrix-BIJrGEmz.js → permission-matrix-VdAXjjHU.js} +3 -3
  198. package/dist/_chunks/{permission-matrix-BIJrGEmz.js.map → permission-matrix-VdAXjjHU.js.map} +1 -1
  199. package/dist/_chunks/{popover-DP6WCVwm.js → popover-DzR5QYxp.js} +24 -24
  200. package/dist/_chunks/{popover-DP6WCVwm.js.map → popover-DzR5QYxp.js.map} +1 -1
  201. package/dist/_chunks/{practice-profile-hero-DQyDvpJL.js → practice-profile-hero-DxoLlQr5.js} +2 -2
  202. package/dist/_chunks/{practice-profile-hero-DQyDvpJL.js.map → practice-profile-hero-DxoLlQr5.js.map} +1 -1
  203. package/dist/_chunks/{practice-results-kayDEorM.js → practice-results-DOcORTkP.js} +4 -4
  204. package/dist/_chunks/{practice-results-kayDEorM.js.map → practice-results-DOcORTkP.js.map} +1 -1
  205. package/dist/_chunks/{pregnancy-dating-n5j5dAKy.js → pregnancy-dating-nV1_S6w0.js} +6 -6
  206. package/dist/_chunks/{pregnancy-dating-n5j5dAKy.js.map → pregnancy-dating-nV1_S6w0.js.map} +1 -1
  207. package/dist/_chunks/{pregnancy-weight-gain-D5A8vPjj.js → pregnancy-weight-gain-tRecShAD.js} +4 -4
  208. package/dist/_chunks/{pregnancy-weight-gain-D5A8vPjj.js.map → pregnancy-weight-gain-tRecShAD.js.map} +1 -1
  209. package/dist/_chunks/{privacy-lock-CkAUo6Dz.js → privacy-lock-Be39vQUN.js} +2 -2
  210. package/dist/_chunks/{privacy-lock-CkAUo6Dz.js.map → privacy-lock-Be39vQUN.js.map} +1 -1
  211. package/dist/_chunks/{product-hub-panel-BScCotGD.js → product-hub-panel-C0TO69P7.js} +2 -2
  212. package/dist/_chunks/{product-hub-panel-BScCotGD.js.map → product-hub-panel-C0TO69P7.js.map} +1 -1
  213. package/dist/_chunks/{public-header.agent-kth2SdXn.js → public-header.agent-Bl1KFwSE.js} +3 -3
  214. package/dist/_chunks/{public-header.agent-kth2SdXn.js.map → public-header.agent-Bl1KFwSE.js.map} +1 -1
  215. package/dist/_chunks/{radio-DNRe6H_8.js → radio-6fml-pWk.js} +2 -2
  216. package/dist/_chunks/{radio-DNRe6H_8.js.map → radio-6fml-pWk.js.map} +1 -1
  217. package/dist/_chunks/{radio-group-DyVBgnA3.js → radio-group-CIjmyioi.js} +3 -3
  218. package/dist/_chunks/{radio-group-DyVBgnA3.js.map → radio-group-CIjmyioi.js.map} +1 -1
  219. package/dist/_chunks/{radiograph-panel.agent-o4jwEJPC.js → radiograph-panel.agent-k0G7JuoM.js} +6 -6
  220. package/dist/_chunks/{radiograph-panel.agent-o4jwEJPC.js.map → radiograph-panel.agent-k0G7JuoM.js.map} +1 -1
  221. package/dist/_chunks/{reviews-panel-BKHEfqVQ.js → reviews-panel-BaHZb_ai.js} +3 -3
  222. package/dist/_chunks/{reviews-panel-BKHEfqVQ.js.map → reviews-panel-BaHZb_ai.js.map} +1 -1
  223. package/dist/_chunks/{rich-text-editor-CCI-Y3DN.js → rich-text-editor-BTXlorm5.js} +7 -7
  224. package/dist/_chunks/{rich-text-editor-CCI-Y3DN.js.map → rich-text-editor-BTXlorm5.js.map} +1 -1
  225. package/dist/_chunks/{search-bar-CJj6sI9m.js → search-bar-CCmViqaa.js} +46 -46
  226. package/dist/_chunks/{search-bar-CJj6sI9m.js.map → search-bar-CCmViqaa.js.map} +1 -1
  227. package/dist/_chunks/section-card.agent-W18CHEgX.js +74 -0
  228. package/dist/_chunks/section-card.agent-W18CHEgX.js.map +1 -0
  229. package/dist/_chunks/{sheet-BSznOyJs.js → sheet-hm04DGFd.js} +2 -2
  230. package/dist/_chunks/{sheet-BSznOyJs.js.map → sheet-hm04DGFd.js.map} +1 -1
  231. package/dist/_chunks/{sign-document-jF4fZDJ5.js → sign-document-CRQuAn4W.js} +2 -2
  232. package/dist/_chunks/{sign-document-jF4fZDJ5.js.map → sign-document-CRQuAn4W.js.map} +1 -1
  233. package/dist/_chunks/{signature-request-vihDT8On.js → signature-request-Dej2g86d.js} +5 -5
  234. package/dist/_chunks/{signature-request-vihDT8On.js.map → signature-request-Dej2g86d.js.map} +1 -1
  235. package/dist/_chunks/{signature-status-chip-T5fyS-k9.js → signature-status-chip-D4NsrdeI.js} +3 -3
  236. package/dist/_chunks/{signature-status-chip-T5fyS-k9.js.map → signature-status-chip-D4NsrdeI.js.map} +1 -1
  237. package/dist/_chunks/{slot-grid-BuZOKfcd.js → slot-grid-8Ko6thzz.js} +2 -2
  238. package/dist/_chunks/{slot-grid-BuZOKfcd.js.map → slot-grid-8Ko6thzz.js.map} +1 -1
  239. package/dist/_chunks/{streaming-text-CvsjIQ7S.js → streaming-text-DjFqLSt_.js} +2 -2
  240. package/dist/_chunks/{streaming-text-CvsjIQ7S.js.map → streaming-text-DjFqLSt_.js.map} +1 -1
  241. package/dist/_chunks/{tab-bar-DvFJIQfL.js → tab-bar-rDkLiaA6.js} +2 -2
  242. package/dist/_chunks/{tab-bar-DvFJIQfL.js.map → tab-bar-rDkLiaA6.js.map} +1 -1
  243. package/dist/_chunks/{tag-3wgkwwDB.js → tag-Ci3xJPcH.js} +2 -2
  244. package/dist/_chunks/{tag-3wgkwwDB.js.map → tag-Ci3xJPcH.js.map} +1 -1
  245. package/dist/_chunks/{task-tray-COo-RlDv.js → task-tray-wl9eti6J.js} +2 -2
  246. package/dist/_chunks/{task-tray-COo-RlDv.js.map → task-tray-wl9eti6J.js.map} +1 -1
  247. package/dist/_chunks/{tasks-panel-DLKpSNoE.js → tasks-panel-BDNB7hsZ.js} +5 -5
  248. package/dist/_chunks/{tasks-panel-DLKpSNoE.js.map → tasks-panel-BDNB7hsZ.js.map} +1 -1
  249. package/dist/_chunks/{theme-toggle-uEwoKjl3.js → theme-toggle-CMz8YfC1.js} +3 -3
  250. package/dist/_chunks/{theme-toggle-uEwoKjl3.js.map → theme-toggle-CMz8YfC1.js.map} +1 -1
  251. package/dist/_chunks/{timeline-Bs9Erxlo.js → timeline-61AihzYz.js} +47 -47
  252. package/dist/_chunks/timeline-61AihzYz.js.map +1 -0
  253. package/dist/_chunks/{toast-YZz2sBzB.js → toast-8jqtbfAB.js} +2 -2
  254. package/dist/_chunks/{toast-YZz2sBzB.js.map → toast-8jqtbfAB.js.map} +1 -1
  255. package/dist/_chunks/{tool-rail-ONaV-Nzz.js → tool-rail-Bq5eiFMG.js} +3 -3
  256. package/dist/_chunks/{tool-rail-ONaV-Nzz.js.map → tool-rail-Bq5eiFMG.js.map} +1 -1
  257. package/dist/_chunks/{tooltip-DvmfrNvB.js → tooltip-Cp-PLePW.js} +41 -41
  258. package/dist/_chunks/tooltip-Cp-PLePW.js.map +1 -0
  259. package/dist/_chunks/{tooth-scheme-Qe7LO5Di.js → tooth-scheme-BWkYxxjR.js} +3 -3
  260. package/dist/_chunks/{tooth-scheme-Qe7LO5Di.js.map → tooth-scheme-BWkYxxjR.js.map} +1 -1
  261. package/dist/_chunks/{transaction-chip-DJCstquX.js → transaction-chip-Dth1nThY.js} +49 -48
  262. package/dist/_chunks/{transaction-chip-DJCstquX.js.map → transaction-chip-Dth1nThY.js.map} +1 -1
  263. package/dist/_chunks/{transcript-panel-BGkEhvHO.js → transcript-panel-u2HHxZB6.js} +2 -2
  264. package/dist/_chunks/{transcript-panel-BGkEhvHO.js.map → transcript-panel-u2HHxZB6.js.map} +1 -1
  265. package/dist/_chunks/user-x-DYszNtIg.js +45 -0
  266. package/dist/_chunks/user-x-DYszNtIg.js.map +1 -0
  267. package/dist/_chunks/{warning-stack-DQz0Jyir.js → warning-stack-BW5Dwb3z.js} +3 -3
  268. package/dist/_chunks/{warning-stack-DQz0Jyir.js.map → warning-stack-BW5Dwb3z.js.map} +1 -1
  269. package/dist/_chunks/{widget-picker-DvUkBemi.js → widget-picker-B1sj6uyf.js} +2 -2
  270. package/dist/_chunks/{widget-picker-DvUkBemi.js.map → widget-picker-B1sj6uyf.js.map} +1 -1
  271. package/dist/_chunks/{workflow-map-dNzJjBWG.js → workflow-map-D-LEni11.js} +5 -5
  272. package/dist/_chunks/{workflow-map-dNzJjBWG.js.map → workflow-map-D-LEni11.js.map} +1 -1
  273. package/dist/_chunks/workflow-status-xeaJTzD3.js +476 -0
  274. package/dist/_chunks/workflow-status-xeaJTzD3.js.map +1 -0
  275. package/dist/agent-catalog.json +185 -1
  276. package/dist/agent-i18n/en.json +27 -0
  277. package/dist/components/_shared/entity-card/entity-card.d.ts +44 -0
  278. package/dist/components/_shared/entity-card/entity-card.d.ts.map +1 -1
  279. package/dist/components/_shared/entity-card/index.d.ts +1 -1
  280. package/dist/components/_shared/entity-card/index.d.ts.map +1 -1
  281. package/dist/components/_shared/note-attachment.d.ts +41 -0
  282. package/dist/components/_shared/note-attachment.d.ts.map +1 -0
  283. package/dist/components/_shared/note-markdown.d.ts +3 -0
  284. package/dist/components/_shared/note-markdown.d.ts.map +1 -0
  285. package/dist/components/_shared/patient-field-row.d.ts +40 -0
  286. package/dist/components/_shared/patient-field-row.d.ts.map +1 -0
  287. package/dist/components/agenda-card/index.js +1 -1
  288. package/dist/components/agenda-tray/index.js +1 -1
  289. package/dist/components/ai-consent-banner/index.js +1 -1
  290. package/dist/components/ai-prompt-input/index.js +1 -1
  291. package/dist/components/alert/index.js +1 -1
  292. package/dist/components/anamnesis-card/index.js +1 -1
  293. package/dist/components/anamnesis-summary-card/index.js +1 -1
  294. package/dist/components/appointment-card/appointment-card.d.ts +36 -1
  295. package/dist/components/appointment-card/appointment-card.d.ts.map +1 -1
  296. package/dist/components/appointment-card/index.js +2 -2
  297. package/dist/components/appointment-timeline/appointment-timeline.d.ts +6 -0
  298. package/dist/components/appointment-timeline/appointment-timeline.d.ts.map +1 -1
  299. package/dist/components/appointment-timeline/index.js +1 -1
  300. package/dist/components/audio-recorder/index.js +1 -1
  301. package/dist/components/badge/index.js +1 -1
  302. package/dist/components/bishop-score/index.js +1 -1
  303. package/dist/components/bmi-calculator/index.js +1 -1
  304. package/dist/components/booking/index.js +1 -1
  305. package/dist/components/button/index.js +1 -1
  306. package/dist/components/button-group/button-group.d.ts +20 -0
  307. package/dist/components/button-group/button-group.d.ts.map +1 -1
  308. package/dist/components/button-group/index.js +1 -1
  309. package/dist/components/calendar/index.js +1 -1
  310. package/dist/components/calendar-event-card/index.js +1 -1
  311. package/dist/components/care-plan-card/index.js +1 -1
  312. package/dist/components/care-plan-entry-card/index.js +1 -1
  313. package/dist/components/care-plan-header/index.js +1 -1
  314. package/dist/components/carousel/index.js +1 -1
  315. package/dist/components/chart/index.js +1 -1
  316. package/dist/components/chat-input/index.js +1 -1
  317. package/dist/components/chat-message/index.js +1 -1
  318. package/dist/components/checkbox/index.js +1 -1
  319. package/dist/components/checkbox-group/index.js +1 -1
  320. package/dist/components/clinical-note-card/clinical-note-card.d.ts +2 -34
  321. package/dist/components/clinical-note-card/clinical-note-card.d.ts.map +1 -1
  322. package/dist/components/clinical-note-card/index.js +1 -1
  323. package/dist/components/connection-status/index.js +1 -1
  324. package/dist/components/contact-profile-card/index.js +1 -1
  325. package/dist/components/control-room-rail/index.js +1 -1
  326. package/dist/components/counter/counter.d.ts +6 -0
  327. package/dist/components/counter/counter.d.ts.map +1 -1
  328. package/dist/components/counter/index.js +1 -1
  329. package/dist/components/cycle-calculator/index.js +1 -1
  330. package/dist/components/dashboard-grid/index.js +1 -1
  331. package/dist/components/data-table/index.js +4 -4
  332. package/dist/components/data-table-tabs/index.js +1 -1
  333. package/dist/components/date-picker/index.js +1 -1
  334. package/dist/components/dependent-selector/index.js +1 -1
  335. package/dist/components/description-list/index.js +1 -1
  336. package/dist/components/document-preview/index.js +1 -1
  337. package/dist/components/document-scanner/index.js +1 -1
  338. package/dist/components/due-date-calculator/index.js +2 -2
  339. package/dist/components/editor-overlay/index.js +1 -1
  340. package/dist/components/entity-summary/index.js +1 -1
  341. package/dist/components/face-scheme/index.js +1 -1
  342. package/dist/components/fetal-weight/index.js +1 -1
  343. package/dist/components/field-array/index.js +1 -1
  344. package/dist/components/file-manager/index.js +1 -1
  345. package/dist/components/file-upload/index.js +1 -1
  346. package/dist/components/fiscal-code-input/index.js +1 -1
  347. package/dist/components/freemium-paywall/index.js +1 -1
  348. package/dist/components/gestational-age-calculator/index.js +1 -1
  349. package/dist/components/hcg-doubling/index.js +1 -1
  350. package/dist/components/header/index.js +1 -1
  351. package/dist/components/header-settings/index.js +1 -1
  352. package/dist/components/hover-card/hover-card.agent.d.ts +4 -0
  353. package/dist/components/hover-card/hover-card.agent.d.ts.map +1 -0
  354. package/dist/components/hover-card/hover-card.d.ts +80 -0
  355. package/dist/components/hover-card/hover-card.d.ts.map +1 -0
  356. package/dist/components/hover-card/index.d.ts +4 -0
  357. package/dist/components/hover-card/index.d.ts.map +1 -0
  358. package/dist/components/hover-card/index.js +6 -0
  359. package/dist/components/hover-card/index.js.map +1 -0
  360. package/dist/components/icon-button/index.js +1 -1
  361. package/dist/components/icon-button-group/index.js +1 -1
  362. package/dist/components/icon-picker/index.js +1 -1
  363. package/dist/components/index.d.ts +4 -0
  364. package/dist/components/index.d.ts.map +1 -1
  365. package/dist/components/info-tip/index.js +1 -1
  366. package/dist/components/key-value-pair/index.js +1 -1
  367. package/dist/components/key-value-pair/key-value-pair.d.ts +8 -1
  368. package/dist/components/key-value-pair/key-value-pair.d.ts.map +1 -1
  369. package/dist/components/locale-picker/index.js +1 -1
  370. package/dist/components/message-card/index.js +1 -1
  371. package/dist/components/message-tray/index.js +1 -1
  372. package/dist/components/multi-select/index.js +1 -1
  373. package/dist/components/note-timeline/index.d.ts +4 -0
  374. package/dist/components/note-timeline/index.d.ts.map +1 -0
  375. package/dist/components/note-timeline/index.js +6 -0
  376. package/dist/components/note-timeline/index.js.map +1 -0
  377. package/dist/components/note-timeline/note-timeline.agent.d.ts +4 -0
  378. package/dist/components/note-timeline/note-timeline.agent.d.ts.map +1 -0
  379. package/dist/components/note-timeline/note-timeline.d.ts +77 -0
  380. package/dist/components/note-timeline/note-timeline.d.ts.map +1 -0
  381. package/dist/components/notes-panel/index.js +1 -1
  382. package/dist/components/notification-card/index.js +1 -1
  383. package/dist/components/notification-tray/index.js +1 -1
  384. package/dist/components/operator-hero/index.js +1 -1
  385. package/dist/components/optical-prescription/index.js +1 -1
  386. package/dist/components/panel-header/index.js +1 -1
  387. package/dist/components/panel-header/panel-header.d.ts +7 -0
  388. package/dist/components/panel-header/panel-header.d.ts.map +1 -1
  389. package/dist/components/patient-details/index.js +1 -1
  390. package/dist/components/patient-details/patient-details.d.ts.map +1 -1
  391. package/dist/components/patient-search/index.js +1 -1
  392. package/dist/components/patient-summary-card/index.js +1 -1
  393. package/dist/components/patient-summary-card/patient-summary-card.d.ts +54 -0
  394. package/dist/components/patient-summary-card/patient-summary-card.d.ts.map +1 -1
  395. package/dist/components/patient-table/index.js +1 -1
  396. package/dist/components/payment-card/index.js +1 -1
  397. package/dist/components/payment-form/index.js +1 -1
  398. package/dist/components/pdf-viewer/index.js +1 -1
  399. package/dist/components/periodontal-chart/index.js +1 -1
  400. package/dist/components/periodontal-chart-card/index.js +1 -1
  401. package/dist/components/periodontal-diagnosis/index.js +1 -1
  402. package/dist/components/periodontal-risk-chart/index.js +1 -1
  403. package/dist/components/permission-matrix/index.js +1 -1
  404. package/dist/components/popover/index.js +1 -1
  405. package/dist/components/practice-profile-hero/index.js +1 -1
  406. package/dist/components/practice-results/index.js +1 -1
  407. package/dist/components/pregnancy-dating/index.js +1 -1
  408. package/dist/components/pregnancy-weight-gain/index.js +1 -1
  409. package/dist/components/privacy-lock/index.js +1 -1
  410. package/dist/components/product-hub-tray/index.js +1 -1
  411. package/dist/components/public-header/index.js +1 -1
  412. package/dist/components/radio/index.js +1 -1
  413. package/dist/components/radio-group/index.js +2 -2
  414. package/dist/components/radiograph-panel/index.js +1 -1
  415. package/dist/components/reviews-panel/index.js +1 -1
  416. package/dist/components/rich-text-editor/index.js +1 -1
  417. package/dist/components/search-bar/index.js +1 -1
  418. package/dist/components/section-card/index.d.ts +4 -0
  419. package/dist/components/section-card/index.d.ts.map +1 -0
  420. package/dist/components/section-card/index.js +6 -0
  421. package/dist/components/section-card/index.js.map +1 -0
  422. package/dist/components/section-card/section-card.agent.d.ts +3 -0
  423. package/dist/components/section-card/section-card.agent.d.ts.map +1 -0
  424. package/dist/components/section-card/section-card.d.ts +30 -0
  425. package/dist/components/section-card/section-card.d.ts.map +1 -0
  426. package/dist/components/sheet/index.js +1 -1
  427. package/dist/components/sign-document/index.js +1 -1
  428. package/dist/components/signature-status-chip/index.js +1 -1
  429. package/dist/components/slot-grid/index.js +1 -1
  430. package/dist/components/streaming-text/index.js +1 -1
  431. package/dist/components/tab-bar/index.js +1 -1
  432. package/dist/components/tag/index.js +1 -1
  433. package/dist/components/task-tray/index.js +1 -1
  434. package/dist/components/tasks-panel/index.js +1 -1
  435. package/dist/components/theme-toggle/index.js +1 -1
  436. package/dist/components/timeline/index.js +1 -1
  437. package/dist/components/timeline/timeline.d.ts +1 -1
  438. package/dist/components/timeline/timeline.d.ts.map +1 -1
  439. package/dist/components/toast/index.js +1 -1
  440. package/dist/components/tool-rail/index.js +1 -1
  441. package/dist/components/tooltip/index.js +1 -1
  442. package/dist/components/tooltip/tooltip.d.ts.map +1 -1
  443. package/dist/components/tooth-scheme/index.js +1 -1
  444. package/dist/components/transaction-chip/index.js +1 -1
  445. package/dist/components/transaction-chip/transaction-chip.d.ts +11 -0
  446. package/dist/components/transaction-chip/transaction-chip.d.ts.map +1 -1
  447. package/dist/components/transcript-panel/index.js +1 -1
  448. package/dist/components/warning-stack/index.js +1 -1
  449. package/dist/components/widget-picker/index.js +1 -1
  450. package/dist/components/workflow/index.js +1 -1
  451. package/dist/components/workflow-status/index.d.ts +4 -0
  452. package/dist/components/workflow-status/index.d.ts.map +1 -0
  453. package/dist/components/workflow-status/index.js +7 -0
  454. package/dist/components/workflow-status/index.js.map +1 -0
  455. package/dist/components/workflow-status/workflow-status.agent.d.ts +4 -0
  456. package/dist/components/workflow-status/workflow-status.agent.d.ts.map +1 -0
  457. package/dist/components/workflow-status/workflow-status.d.ts +52 -0
  458. package/dist/components/workflow-status/workflow-status.d.ts.map +1 -0
  459. package/dist/host-compat.css +4 -1
  460. package/dist/i18n/locales/ar.d.ts +17 -0
  461. package/dist/i18n/locales/ar.d.ts.map +1 -1
  462. package/dist/i18n/locales/ar.js +18 -1
  463. package/dist/i18n/locales/ar.js.map +1 -1
  464. package/dist/i18n/locales/de.d.ts +17 -0
  465. package/dist/i18n/locales/de.d.ts.map +1 -1
  466. package/dist/i18n/locales/de.js +18 -1
  467. package/dist/i18n/locales/de.js.map +1 -1
  468. package/dist/i18n/locales/el.d.ts +17 -0
  469. package/dist/i18n/locales/el.d.ts.map +1 -1
  470. package/dist/i18n/locales/el.js +18 -1
  471. package/dist/i18n/locales/el.js.map +1 -1
  472. package/dist/i18n/locales/en.d.ts +17 -0
  473. package/dist/i18n/locales/en.d.ts.map +1 -1
  474. package/dist/i18n/locales/en.js +18 -1
  475. package/dist/i18n/locales/en.js.map +1 -1
  476. package/dist/i18n/locales/es.d.ts +17 -0
  477. package/dist/i18n/locales/es.d.ts.map +1 -1
  478. package/dist/i18n/locales/es.js +18 -1
  479. package/dist/i18n/locales/es.js.map +1 -1
  480. package/dist/i18n/locales/fr.d.ts +17 -0
  481. package/dist/i18n/locales/fr.d.ts.map +1 -1
  482. package/dist/i18n/locales/fr.js +18 -1
  483. package/dist/i18n/locales/fr.js.map +1 -1
  484. package/dist/i18n/locales/hi.d.ts +17 -0
  485. package/dist/i18n/locales/hi.d.ts.map +1 -1
  486. package/dist/i18n/locales/hi.js +18 -1
  487. package/dist/i18n/locales/hi.js.map +1 -1
  488. package/dist/i18n/locales/it.d.ts +20 -3
  489. package/dist/i18n/locales/it.d.ts.map +1 -1
  490. package/dist/i18n/locales/it.js +20 -3
  491. package/dist/i18n/locales/it.js.map +1 -1
  492. package/dist/i18n/locales/ja.d.ts +17 -0
  493. package/dist/i18n/locales/ja.d.ts.map +1 -1
  494. package/dist/i18n/locales/ja.js +18 -1
  495. package/dist/i18n/locales/ja.js.map +1 -1
  496. package/dist/i18n/locales/nl.d.ts +17 -0
  497. package/dist/i18n/locales/nl.d.ts.map +1 -1
  498. package/dist/i18n/locales/nl.js +18 -1
  499. package/dist/i18n/locales/nl.js.map +1 -1
  500. package/dist/i18n/locales/pl.d.ts +17 -0
  501. package/dist/i18n/locales/pl.d.ts.map +1 -1
  502. package/dist/i18n/locales/pl.js +18 -1
  503. package/dist/i18n/locales/pl.js.map +1 -1
  504. package/dist/i18n/locales/pt.d.ts +17 -0
  505. package/dist/i18n/locales/pt.d.ts.map +1 -1
  506. package/dist/i18n/locales/pt.js +18 -1
  507. package/dist/i18n/locales/pt.js.map +1 -1
  508. package/dist/i18n/locales/ro.d.ts +17 -0
  509. package/dist/i18n/locales/ro.d.ts.map +1 -1
  510. package/dist/i18n/locales/ro.js +18 -1
  511. package/dist/i18n/locales/ro.js.map +1 -1
  512. package/dist/i18n/locales/ru.d.ts +17 -0
  513. package/dist/i18n/locales/ru.d.ts.map +1 -1
  514. package/dist/i18n/locales/ru.js +18 -1
  515. package/dist/i18n/locales/ru.js.map +1 -1
  516. package/dist/i18n/locales/sq.d.ts +17 -0
  517. package/dist/i18n/locales/sq.d.ts.map +1 -1
  518. package/dist/i18n/locales/sq.js +18 -1
  519. package/dist/i18n/locales/sq.js.map +1 -1
  520. package/dist/i18n/locales/sv.d.ts +17 -0
  521. package/dist/i18n/locales/sv.d.ts.map +1 -1
  522. package/dist/i18n/locales/sv.js +18 -1
  523. package/dist/i18n/locales/sv.js.map +1 -1
  524. package/dist/i18n/locales/tr.d.ts +17 -0
  525. package/dist/i18n/locales/tr.d.ts.map +1 -1
  526. package/dist/i18n/locales/tr.js +18 -1
  527. package/dist/i18n/locales/tr.js.map +1 -1
  528. package/dist/i18n/locales/zh.d.ts +17 -0
  529. package/dist/i18n/locales/zh.d.ts.map +1 -1
  530. package/dist/i18n/locales/zh.js +18 -1
  531. package/dist/i18n/locales/zh.js.map +1 -1
  532. package/dist/index.js +929 -916
  533. package/dist/index.js.map +1 -1
  534. package/dist/locales/ar.json +18 -1
  535. package/dist/locales/de.json +18 -1
  536. package/dist/locales/el.json +18 -1
  537. package/dist/locales/en.json +18 -1
  538. package/dist/locales/es.json +18 -1
  539. package/dist/locales/fr.json +18 -1
  540. package/dist/locales/hi.json +18 -1
  541. package/dist/locales/it.json +20 -3
  542. package/dist/locales/ja.json +18 -1
  543. package/dist/locales/nl.json +18 -1
  544. package/dist/locales/pl.json +18 -1
  545. package/dist/locales/pt.json +18 -1
  546. package/dist/locales/ro.json +18 -1
  547. package/dist/locales/ru.json +18 -1
  548. package/dist/locales/sq.json +18 -1
  549. package/dist/locales/sv.json +18 -1
  550. package/dist/locales/tr.json +18 -1
  551. package/dist/locales/zh.json +18 -1
  552. package/dist/patterns/alia-assistant/index.js +1 -1
  553. package/dist/patterns/anamnesis/index.js +1 -1
  554. package/dist/patterns/calendar/calendar.model.d.ts +2 -0
  555. package/dist/patterns/calendar/calendar.model.d.ts.map +1 -1
  556. package/dist/patterns/calendar/calendar.sheets.d.ts.map +1 -1
  557. package/dist/patterns/calendar/calendar.surface.d.ts.map +1 -1
  558. package/dist/patterns/calendar/index.js +1 -1
  559. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  560. package/dist/patterns/payment-automation-upsell/index.js +1 -1
  561. package/dist/patterns/signature-request/index.js +1 -1
  562. package/dist/tokens.css +1 -1
  563. package/package.json +17 -1
  564. package/dist/_chunks/appointment-card-D6mk39NB.js +0 -296
  565. package/dist/_chunks/appointment-card-D6mk39NB.js.map +0 -1
  566. package/dist/_chunks/appointment-timeline-D-V97Bhc.js +0 -403
  567. package/dist/_chunks/appointment-timeline-D-V97Bhc.js.map +0 -1
  568. package/dist/_chunks/button-group-CaxRJsNG.js +0 -289
  569. package/dist/_chunks/button-group-CaxRJsNG.js.map +0 -1
  570. package/dist/_chunks/calendar-event-card-DSh-69HT.js.map +0 -1
  571. package/dist/_chunks/calendar-workspace-4NH1Z47_.js.map +0 -1
  572. package/dist/_chunks/clinical-note-card-CTRzmqvv.js +0 -438
  573. package/dist/_chunks/clinical-note-card-CTRzmqvv.js.map +0 -1
  574. package/dist/_chunks/counter-dRlTNC_y.js.map +0 -1
  575. package/dist/_chunks/entity-card-DmrgYSEX.js.map +0 -1
  576. package/dist/_chunks/field-value-BetdWMA2.js +0 -384
  577. package/dist/_chunks/field-value-BetdWMA2.js.map +0 -1
  578. package/dist/_chunks/file-upload-CwxdqkMK.js.map +0 -1
  579. package/dist/_chunks/key-value-pair-BIBdZBLg.js.map +0 -1
  580. package/dist/_chunks/panel-header-D313n_9-.js +0 -105
  581. package/dist/_chunks/panel-header-D313n_9-.js.map +0 -1
  582. package/dist/_chunks/patient-details-BGiawUHd.js +0 -760
  583. package/dist/_chunks/patient-details-BGiawUHd.js.map +0 -1
  584. package/dist/_chunks/patient-summary-card--CT_gbaQ.js +0 -454
  585. package/dist/_chunks/patient-summary-card--CT_gbaQ.js.map +0 -1
  586. package/dist/_chunks/payment-automation-upsell-DwQW2fRp.js.map +0 -1
  587. package/dist/_chunks/timeline-Bs9Erxlo.js.map +0 -1
  588. package/dist/_chunks/tooltip-DvmfrNvB.js.map +0 -1
@@ -0,0 +1,425 @@
1
+ import { jsx as e, jsxs as r } from "react/jsx-runtime";
2
+ import { forwardRef as da } from "react";
3
+ import { c as ia } from "./index-D2ZczOXr.js";
4
+ import { useTranslation as la } from "react-i18next";
5
+ import { A as K } from "./avatar-CkDeQOSI.js";
6
+ import { B as l } from "./badge-BudgzTe_.js";
7
+ import { T as ca } from "./tag-Ci3xJPcH.js";
8
+ import { T as pa } from "./timestamp-BV2lC-wV.js";
9
+ import { T as Y } from "./transaction-chip-Dth1nThY.js";
10
+ import { a as ua } from "./workflow-status-xeaJTzD3.js";
11
+ import { i as ma } from "./is-safe-url-DkETxeHz.js";
12
+ import { a as ga, b as fa, c as ha } from "./entity-card-I-Gio5wo.js";
13
+ import { V as va } from "./video-BheNGvsu.js";
14
+ import { M as ba } from "./map-pin-BaY37-Km.js";
15
+ import { U as ya } from "./user-x-DYszNtIg.js";
16
+ import { S as X } from "./star-Bf9L2Uot.js";
17
+ import { c as k } from "./createLucideIcon-DhHxpK9K.js";
18
+ import { A as xa } from "./armchair-BaLDW6Hz.js";
19
+ import { G as ka } from "./globe-sHBW1JN5.js";
20
+ import { R as Na } from "./repeat-CvQa5rZt.js";
21
+ import { C as Ca } from "./chevron-right-I9AeSxH2.js";
22
+ /**
23
+ * @license lucide-react v1.22.0 - ISC
24
+ *
25
+ * This source code is licensed under the ISC license.
26
+ * See the LICENSE file in the root directory of this source tree.
27
+ */
28
+ const wa = [
29
+ ["rect", { width: "8", height: "4", x: "8", y: "2", rx: "1", ry: "1", key: "tgr4d6" }],
30
+ [
31
+ "path",
32
+ {
33
+ d: "M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",
34
+ key: "116196"
35
+ }
36
+ ],
37
+ ["path", { d: "M9 14h6", key: "159ibu" }],
38
+ ["path", { d: "M12 17v-6", key: "1y8rbf" }]
39
+ ], za = k("clipboard-plus", wa);
40
+ /**
41
+ * @license lucide-react v1.22.0 - ISC
42
+ *
43
+ * This source code is licensed under the ISC license.
44
+ * See the LICENSE file in the root directory of this source tree.
45
+ */
46
+ const Ta = [
47
+ [
48
+ "path",
49
+ {
50
+ d: "M14.364 13.634a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506l4.013-4.009a1 1 0 0 0-3.004-3.004z",
51
+ key: "ukzhwg"
52
+ }
53
+ ],
54
+ ["path", { d: "M14.487 7.858A1 1 0 0 1 14 7V2", key: "1klhew" }],
55
+ [
56
+ "path",
57
+ {
58
+ d: "M20 19.645V20a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l2.516 2.516",
59
+ key: "rxaxab"
60
+ }
61
+ ],
62
+ ["path", { d: "M8 18h1", key: "13wk12" }]
63
+ ], Ma = k("file-pen-line", Ta);
64
+ /**
65
+ * @license lucide-react v1.22.0 - ISC
66
+ *
67
+ * This source code is licensed under the ISC license.
68
+ * See the LICENSE file in the root directory of this source tree.
69
+ */
70
+ const Va = [
71
+ [
72
+ "path",
73
+ {
74
+ d: "M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",
75
+ key: "18887p"
76
+ }
77
+ ],
78
+ ["path", { d: "M7 11h10", key: "1twpyw" }],
79
+ ["path", { d: "M7 15h6", key: "d9of3u" }],
80
+ ["path", { d: "M7 7h8", key: "af5zfr" }]
81
+ ], Ra = k("message-square-text", Va), Sa = {
82
+ "var(--color-violet-500)": "ds:bg-[var(--color-violet-500)]",
83
+ "var(--color-purple-500)": "ds:bg-[var(--color-purple-500)]",
84
+ "var(--color-magenta-500)": "ds:bg-[var(--color-magenta-500)]",
85
+ "var(--color-blue-500)": "ds:bg-[var(--color-blue-500)]",
86
+ "var(--color-green-500)": "ds:bg-[var(--color-green-500)]",
87
+ "var(--color-red-500)": "ds:bg-[var(--color-red-500)]",
88
+ "var(--color-yellow-500)": "ds:bg-[var(--color-yellow-500)]",
89
+ "var(--color-indigo-500)": "ds:bg-[var(--color-indigo-500)]",
90
+ "var(--color-orange-500)": "ds:bg-[var(--color-orange-500)]",
91
+ "var(--color-fuchsia-500)": "ds:bg-[var(--color-fuchsia-500)]",
92
+ "var(--color-grey-700)": "ds:bg-[var(--color-grey-700)]"
93
+ };
94
+ function Da(a) {
95
+ return Sa[ha(a)] ?? "ds:bg-[var(--color-grey-700)]";
96
+ }
97
+ function Ia(a) {
98
+ if (!a) return;
99
+ const t = new Date(a);
100
+ if (Number.isNaN(t.getTime())) return;
101
+ const p = /* @__PURE__ */ new Date();
102
+ let o = p.getFullYear() - t.getFullYear();
103
+ const u = p.getMonth() - t.getMonth();
104
+ return (u < 0 || u === 0 && p.getDate() < t.getDate()) && o--, o < 0 || o > 130 ? void 0 : o;
105
+ }
106
+ const Aa = ia(
107
+ [
108
+ "ds:relative ds:flex ds:items-start ds:gap-[var(--spacing-sm)]",
109
+ "ds:rounded-[var(--radius-md)]",
110
+ "ds:text-start ds:group",
111
+ "ds:bg-[var(--card)] ds:text-[color:var(--card-foreground)]",
112
+ "ds:transition-[colors,border-color,box-shadow] ds:duration-[var(--animation-duration)]",
113
+ "ds:motion-reduce:transition-none",
114
+ "ds:forced-colors:border ds:forced-colors:border-[CanvasText]"
115
+ ].join(" "),
116
+ {
117
+ variants: {
118
+ size: {
119
+ sm: "ds:p-[var(--spacing-sm)]",
120
+ md: "ds:p-[var(--spacing-md)]"
121
+ },
122
+ interactive: {
123
+ true: "ds:hover:bg-[color:var(--muted)]/40 ds:cursor-pointer",
124
+ false: ""
125
+ },
126
+ surface: {
127
+ // `flat` (default) is the chrome-less row used inside a bordered
128
+ // AppointmentTray. `elevated` gives each row its own card chrome
129
+ // (border + shadow) for use directly on a rail, e.g. AppointmentTimeline.
130
+ // Uses `--shadow-sm` (a row lift), not `--shadow-card`/`--shadow-lg`:
131
+ // the rail's `overflow-y:auto` scroll region clips `overflow-x` at a
132
+ // narrow gutter, so a wide 30px-blur shadow gets a hard-edged clip.
133
+ flat: "",
134
+ elevated: "ds:border ds:border-[color:var(--card-border)] ds:[.theme-accessible_&]:border-2 ds:shadow-[var(--shadow-sm)]"
135
+ },
136
+ selected: {
137
+ // The row the host has marked as the active/selected appointment —
138
+ // matches the `current` note's info-tinted accent: a solid
139
+ // inline-start bar plus a soft info wash, so the eye keeps its
140
+ // place in the list after a click.
141
+ true: "ds:border-s-2 ds:border-s-[color:var(--info)] ds:bg-[color:var(--info)]/10",
142
+ false: ""
143
+ }
144
+ },
145
+ defaultVariants: {
146
+ size: "sm",
147
+ interactive: !1,
148
+ surface: "flat",
149
+ selected: !1
150
+ }
151
+ }
152
+ ), J = [
153
+ // Interactive elements need a box to remain keyboard-focusable in browsers.
154
+ "ds:inline-flex ds:min-w-0",
155
+ "ds:focus-visible:outline-none",
156
+ "ds:after:content-[''] ds:after:absolute ds:after:inset-0 ds:after:rounded-[var(--radius-md)]",
157
+ "ds:after:pointer-events-auto",
158
+ "ds:focus-visible:after:outline-[length:var(--focus-ring-width)]",
159
+ "ds:focus-visible:after:outline-solid",
160
+ "ds:focus-visible:after:outline-[color:var(--ring)]",
161
+ "ds:focus-visible:after:outline-offset-[length:var(--focus-ring-offset)]",
162
+ "ds:forced-colors:focus-visible:after:outline-[CanvasText]"
163
+ ].join(" "), La = {
164
+ inPractice: ba,
165
+ telehealth: va
166
+ }, _a = da(
167
+ ({
168
+ item: a,
169
+ size: t = "sm",
170
+ surface: p = "flat",
171
+ locale: o,
172
+ currency: u = "EUR",
173
+ showPatient: d = !0,
174
+ onActivate: i,
175
+ selected: N = !1,
176
+ className: Q,
177
+ ...Z
178
+ }, aa) => {
179
+ var S, D, I, A, L, _, U, P, O, $, j, q, E, F, B, W, G, H;
180
+ const { t: s } = la(), m = !!i, ea = !!a.url && ma(a.url), f = ((S = a.patient) == null ? void 0 : S.name) ?? s("appointmentCard.noPatient"), c = (D = a.operator) == null ? void 0 : D.name, h = s(`appointmentCard.state.${a.state}`), C = ga(a.state), sa = C.Icon, w = Ia((I = a.patient) == null ? void 0 : I.dobIso), ra = ((A = a.flags) == null ? void 0 : A.noPatientAssigned) || !a.patient, v = t === "md" ? "md" : "sm", na = La[a.type], z = d ? f : c ?? s("appointmentCard.appointment"), T = d ? s("appointmentCard.itemLabel", {
181
+ patient: f,
182
+ state: h
183
+ }) : s("appointmentCard.itemLabelGeneric", { title: z, state: h }), b = /* @__PURE__ */ r("span", { className: "ds:min-w-0 ds:truncate type-title-item ds:text-[color:var(--foreground)]", children: [
184
+ z,
185
+ d && w !== void 0 ? /* @__PURE__ */ r("span", { className: "ds:ms-[var(--spacing-2xs)] ds:font-normal ds:text-[color:var(--muted-foreground)]", children: [
186
+ "· ",
187
+ w
188
+ ] }) : null
189
+ ] });
190
+ let g;
191
+ m && ea ? g = /* @__PURE__ */ e(
192
+ "a",
193
+ {
194
+ href: a.url,
195
+ "aria-label": T,
196
+ className: J,
197
+ onClick: (n) => {
198
+ n.defaultPrevented || n.metaKey || n.ctrlKey || n.shiftKey || i == null || i(a);
199
+ },
200
+ children: b
201
+ }
202
+ ) : m ? g = /* @__PURE__ */ e(
203
+ "button",
204
+ {
205
+ type: "button",
206
+ "aria-label": T,
207
+ className: J + " ds:bg-transparent ds:border-0 ds:p-0 ds:text-start",
208
+ onClick: () => i == null ? void 0 : i(a),
209
+ children: b
210
+ }
211
+ ) : g = b;
212
+ const M = (a.treatments ?? []).map((n, oa) => {
213
+ const ta = n.elements && n.elements.length > 0 ? s("appointmentCard.treatmentWithElements", {
214
+ care: n.careName,
215
+ elements: n.elements.join(", ")
216
+ }) : n.careName;
217
+ return /* @__PURE__ */ e(
218
+ ca,
219
+ {
220
+ label: ta,
221
+ variant: "neutral",
222
+ fill: "outline",
223
+ size: "sm",
224
+ maxInlineSize: "12rem"
225
+ },
226
+ `${n.careName}-${oa}`
227
+ );
228
+ }), y = (L = a.bookingReason) == null ? void 0 : L.advanceAmountCents, V = typeof y == "number" && y > 0, x = (_ = a.money) == null ? void 0 : _.unpaidAmountCents, R = typeof x == "number" && x > 0;
229
+ return /* @__PURE__ */ r(
230
+ "div",
231
+ {
232
+ ref: aa,
233
+ role: "listitem",
234
+ "data-component": "appointment-card",
235
+ "data-component-id": a.id,
236
+ "data-state": a.state,
237
+ "data-type": a.type,
238
+ "aria-current": N ? "true" : void 0,
239
+ className: Aa({
240
+ size: t,
241
+ interactive: m,
242
+ surface: p,
243
+ selected: N,
244
+ className: Q
245
+ }),
246
+ ...Z,
247
+ children: [
248
+ /* @__PURE__ */ r("span", { className: "ds:flex ds:min-w-20 ds:shrink-0 ds:flex-col ds:items-start ds:gap-[var(--spacing-2xs)]", children: [
249
+ /* @__PURE__ */ r("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)] ds:whitespace-nowrap ds:text-[color:var(--muted-foreground)]", children: [
250
+ /* @__PURE__ */ e(na, { "aria-hidden": "true", className: "ds:size-3.5 ds:shrink-0" }),
251
+ /* @__PURE__ */ e("span", { className: "ds:sr-only", children: s(`appointmentCard.type.${a.type}`) }),
252
+ /* @__PURE__ */ e(
253
+ pa,
254
+ {
255
+ value: a.startIso,
256
+ format: "absolute",
257
+ shape: "bare",
258
+ locale: o,
259
+ absoluteFormat: { hour: "numeric", minute: "2-digit" },
260
+ className: "type-body-sm ds:font-medium ds:text-[color:var(--foreground)] ds:tabular-nums"
261
+ }
262
+ )
263
+ ] }),
264
+ /* @__PURE__ */ e("span", { className: "type-eyebrow ds:text-[color:var(--muted-foreground)]", children: s("appointmentCard.duration", { count: a.durationMin }) })
265
+ ] }),
266
+ c ? /* @__PURE__ */ r("span", { className: "ds:relative ds:shrink-0", children: [
267
+ /* @__PURE__ */ e(
268
+ K,
269
+ {
270
+ name: c,
271
+ color: fa((U = a.operator) == null ? void 0 : U.colorId),
272
+ size: v,
273
+ "aria-hidden": "true",
274
+ role: "presentation",
275
+ "aria-label": void 0
276
+ }
277
+ ),
278
+ /* @__PURE__ */ e(
279
+ "span",
280
+ {
281
+ "aria-hidden": "true",
282
+ className: "ds:absolute ds:bottom-0 ds:end-0 ds:size-2.5 ds:rounded-[var(--radius-full)] ds:border ds:border-[color:var(--card)] " + Da((P = a.operator) == null ? void 0 : P.colorId)
283
+ }
284
+ )
285
+ ] }) : null,
286
+ /* @__PURE__ */ r("div", { className: "ds:flex-1 ds:min-w-0 ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
287
+ /* @__PURE__ */ r("div", { className: "ds:flex ds:items-start ds:gap-[var(--spacing-sm)]", children: [
288
+ /* @__PURE__ */ r("div", { className: "ds:flex-1 ds:min-w-0 ds:flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
289
+ d && ((O = a.patient) != null && O.avatarUrl) ? /* @__PURE__ */ e(
290
+ K,
291
+ {
292
+ name: f,
293
+ src: a.patient.avatarUrl,
294
+ size: v,
295
+ className: "ds:shrink-0",
296
+ "aria-hidden": "true",
297
+ role: "presentation",
298
+ "aria-label": void 0
299
+ }
300
+ ) : null,
301
+ d && ra ? /* @__PURE__ */ e(
302
+ "span",
303
+ {
304
+ className: `ds:shrink-0 ds:inline-flex ds:items-center ds:justify-center ds:rounded-[var(--radius-full)] ds:bg-[color:var(--muted)] ds:text-[color:var(--muted-foreground)] ${v === "md" ? "ds:size-10" : "ds:size-8"}`,
305
+ children: /* @__PURE__ */ e(ya, { "aria-hidden": "true", className: "ds:size-4" })
306
+ }
307
+ ) : null,
308
+ g
309
+ ] }),
310
+ /* @__PURE__ */ e(
311
+ ua,
312
+ {
313
+ size: "sm",
314
+ value: a.state,
315
+ option: {
316
+ value: a.state,
317
+ label: h,
318
+ icon: /* @__PURE__ */ e(sa, { "aria-hidden": "true" }),
319
+ tone: C.tone
320
+ },
321
+ className: "ds:shrink-0"
322
+ }
323
+ )
324
+ ] }),
325
+ d && c || ($ = a.bookingReason) != null && $.specialty || a.firstVisit === "yes" || a.firstVisit === "unknown" || a.bookingNote ? /* @__PURE__ */ r("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-x-[var(--spacing-sm)] ds:gap-y-[var(--spacing-2xs)] type-eyebrow ds:text-[color:var(--muted-foreground)]", children: [
326
+ d && c ? /* @__PURE__ */ e("span", { children: c }) : null,
327
+ (j = a.bookingReason) != null && j.specialty ? /* @__PURE__ */ e("span", { children: a.bookingReason.specialty }) : null,
328
+ a.firstVisit === "yes" ? /* @__PURE__ */ r("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]", children: [
329
+ /* @__PURE__ */ e(X, { "aria-hidden": "true", className: "ds:size-3 ds:shrink-0" }),
330
+ s("appointmentCard.firstVisit")
331
+ ] }) : null,
332
+ a.firstVisit === "unknown" ? /* @__PURE__ */ r("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]", children: [
333
+ /* @__PURE__ */ e(X, { "aria-hidden": "true", className: "ds:size-3 ds:shrink-0" }),
334
+ s("appointmentCard.firstVisitUnknown")
335
+ ] }) : null,
336
+ a.bookingNote ? /* @__PURE__ */ r(
337
+ "span",
338
+ {
339
+ className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]",
340
+ title: s("appointmentCard.hasBookingNote"),
341
+ children: [
342
+ /* @__PURE__ */ e(
343
+ Ra,
344
+ {
345
+ "aria-hidden": "true",
346
+ className: "ds:size-3 ds:shrink-0"
347
+ }
348
+ ),
349
+ s("appointmentCard.hasBookingNote")
350
+ ]
351
+ }
352
+ ) : null
353
+ ] }) : null,
354
+ (q = a.bookingReason) != null && q.description ? /* @__PURE__ */ e("span", { className: "type-body-sm ds:text-[color:var(--foreground)] ds:truncate", children: a.bookingReason.description }) : null,
355
+ M.length > 0 ? /* @__PURE__ */ e("div", { className: "ds:flex ds:flex-wrap ds:gap-[var(--spacing-2xs)]", children: M }) : null,
356
+ a.carePlan || a.chair || (E = a.flags) != null && E.bookedOnline || (F = a.flags) != null && F.highlightedAnamnesis || (B = a.flags) != null && B.billable || a.recurring || a.signing || V || R ? /* @__PURE__ */ r("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
357
+ a.carePlan ? /* @__PURE__ */ e(
358
+ l,
359
+ {
360
+ variant: "accentSoft",
361
+ size: "sm",
362
+ leading: /* @__PURE__ */ e(za, {}),
363
+ children: s("appointmentCard.carePlan", {
364
+ number: a.carePlan.number
365
+ })
366
+ }
367
+ ) : null,
368
+ a.chair ? /* @__PURE__ */ e(l, { variant: "neutral", size: "sm", leading: /* @__PURE__ */ e(xa, {}), children: s("appointmentCard.chair", { chair: a.chair }) }) : null,
369
+ (W = a.flags) != null && W.bookedOnline ? /* @__PURE__ */ e(l, { variant: "info", size: "sm", leading: /* @__PURE__ */ e(ka, {}), children: s("appointmentCard.flag.bookedOnline") }) : null,
370
+ (G = a.flags) != null && G.highlightedAnamnesis ? /* @__PURE__ */ e(l, { variant: "warning", size: "sm", withDot: !0, children: s("appointmentCard.flag.highlightedAnamnesis") }) : null,
371
+ a.recurring ? /* @__PURE__ */ e(l, { variant: "neutral", size: "sm", leading: /* @__PURE__ */ e(Na, {}), children: s("appointmentCard.recurring") }) : null,
372
+ a.signing ? /* @__PURE__ */ e(
373
+ l,
374
+ {
375
+ variant: a.signing.toComplete >= a.signing.required ? "success" : "warning",
376
+ size: "sm",
377
+ leading: /* @__PURE__ */ e(Ma, {}),
378
+ children: s("appointmentCard.signing", {
379
+ complete: a.signing.toComplete,
380
+ required: a.signing.required
381
+ })
382
+ }
383
+ ) : null,
384
+ (H = a.flags) != null && H.billable ? /* @__PURE__ */ e(l, { variant: "success", size: "sm", withDot: !0, children: s("appointmentCard.flag.billable") }) : null,
385
+ V ? /* @__PURE__ */ e(
386
+ Y,
387
+ {
388
+ state: "to-invoice",
389
+ amount: y / 100,
390
+ currency: u,
391
+ locale: o,
392
+ size: "sm",
393
+ showLabel: !0
394
+ }
395
+ ) : null,
396
+ R ? /* @__PURE__ */ e(
397
+ Y,
398
+ {
399
+ state: "debt",
400
+ amount: x / 100,
401
+ currency: u,
402
+ locale: o,
403
+ size: "sm",
404
+ showLabel: !0
405
+ }
406
+ ) : null
407
+ ] }) : null
408
+ ] }),
409
+ m ? /* @__PURE__ */ e(
410
+ Ca,
411
+ {
412
+ "aria-hidden": "true",
413
+ className: "ds:size-4 ds:shrink-0 ds:self-center ds:text-[color:var(--muted-foreground)] ds:opacity-0 ds:transition-opacity ds:motion-reduce:transition-none ds:group-hover:opacity-100 ds:group-focus-within:opacity-100 ds:rtl:rotate-180"
414
+ }
415
+ ) : null
416
+ ]
417
+ }
418
+ );
419
+ }
420
+ );
421
+ _a.displayName = "AppointmentCard";
422
+ export {
423
+ _a as A
424
+ };
425
+ //# sourceMappingURL=appointment-card-WsDGBBut.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appointment-card-WsDGBBut.js","sources":["../../node_modules/lucide-react/dist/esm/icons/clipboard-plus.mjs","../../node_modules/lucide-react/dist/esm/icons/file-pen-line.mjs","../../node_modules/lucide-react/dist/esm/icons/message-square-text.mjs","../../src/components/appointment-card/appointment-card.tsx"],"sourcesContent":["/**\n * @license lucide-react v1.22.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"rect\", { width: \"8\", height: \"4\", x: \"8\", y: \"2\", rx: \"1\", ry: \"1\", key: \"tgr4d6\" }],\n [\n \"path\",\n {\n d: \"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2\",\n key: \"116196\"\n }\n ],\n [\"path\", { d: \"M9 14h6\", key: \"159ibu\" }],\n [\"path\", { d: \"M12 17v-6\", key: \"1y8rbf\" }]\n];\nconst ClipboardPlus = createLucideIcon(\"clipboard-plus\", __iconNode);\n\nexport { __iconNode, ClipboardPlus as default };\n//# sourceMappingURL=clipboard-plus.mjs.map\n","/**\n * @license lucide-react v1.22.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M14.364 13.634a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506l4.013-4.009a1 1 0 0 0-3.004-3.004z\",\n key: \"ukzhwg\"\n }\n ],\n [\"path\", { d: \"M14.487 7.858A1 1 0 0 1 14 7V2\", key: \"1klhew\" }],\n [\n \"path\",\n {\n d: \"M20 19.645V20a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l2.516 2.516\",\n key: \"rxaxab\"\n }\n ],\n [\"path\", { d: \"M8 18h1\", key: \"13wk12\" }]\n];\nconst FilePenLine = createLucideIcon(\"file-pen-line\", __iconNode);\n\nexport { __iconNode, FilePenLine as default };\n//# sourceMappingURL=file-pen-line.mjs.map\n","/**\n * @license lucide-react v1.22.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z\",\n key: \"18887p\"\n }\n ],\n [\"path\", { d: \"M7 11h10\", key: \"1twpyw\" }],\n [\"path\", { d: \"M7 15h6\", key: \"d9of3u\" }],\n [\"path\", { d: \"M7 7h8\", key: \"af5zfr\" }]\n];\nconst MessageSquareText = createLucideIcon(\"message-square-text\", __iconNode);\n\nexport { __iconNode, MessageSquareText as default };\n//# sourceMappingURL=message-square-text.mjs.map\n","import { forwardRef, type HTMLAttributes, type ReactNode } from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport {\n Armchair,\n ChevronRight,\n ClipboardPlus,\n FileSignature,\n Globe,\n MapPin,\n MessageSquareText,\n Repeat,\n Star,\n UserX,\n Video,\n} from 'lucide-react';\nimport { Avatar } from '../avatar/avatar';\nimport { Badge } from '../badge/badge';\nimport { Tag } from '../tag/tag';\nimport { Timestamp } from '../timestamp/timestamp';\nimport { TransactionChip } from '../transaction-chip/transaction-chip';\nimport {\n appointmentStateWorkflow,\n colorIdToToken,\n colorIdToAvatarToken,\n isSafeEntityUrl,\n} from '../_shared/entity-card';\nimport type { AppointmentState } from '../_shared/entity-card';\nimport { WorkflowStatusDisplay } from '../workflow-status';\n\n/*\n * Closed colour-dot class map. `colorIdToToken` resolves the operator's\n * numeric colour id to one of a fixed set of palette tokens; the operator\n * dot needs a *static* Tailwind class for each so the compiler can emit it\n * (dynamic `ds:bg-[…]` strings are not seen by the JIT). The keys mirror the\n * exact token strings the shared helper returns.\n */\nconst OPERATOR_DOT_CLASS: Record<string, string> = {\n 'var(--color-violet-500)': 'ds:bg-[var(--color-violet-500)]',\n 'var(--color-purple-500)': 'ds:bg-[var(--color-purple-500)]',\n 'var(--color-magenta-500)': 'ds:bg-[var(--color-magenta-500)]',\n 'var(--color-blue-500)': 'ds:bg-[var(--color-blue-500)]',\n 'var(--color-green-500)': 'ds:bg-[var(--color-green-500)]',\n 'var(--color-red-500)': 'ds:bg-[var(--color-red-500)]',\n 'var(--color-yellow-500)': 'ds:bg-[var(--color-yellow-500)]',\n 'var(--color-indigo-500)': 'ds:bg-[var(--color-indigo-500)]',\n 'var(--color-orange-500)': 'ds:bg-[var(--color-orange-500)]',\n 'var(--color-fuchsia-500)': 'ds:bg-[var(--color-fuchsia-500)]',\n 'var(--color-grey-700)': 'ds:bg-[var(--color-grey-700)]',\n};\n\nfunction operatorDotClass(colorId: number | string | undefined): string {\n return (\n OPERATOR_DOT_CLASS[colorIdToToken(colorId)] ??\n 'ds:bg-[var(--color-grey-700)]'\n );\n}\n\n/** Age in whole years from a DOB string, or undefined if unparseable. */\nfunction ageFromDob(dobIso: string | undefined): number | undefined {\n if (!dobIso) return undefined;\n const dob = new Date(dobIso);\n if (Number.isNaN(dob.getTime())) return undefined;\n const now = new Date();\n let age = now.getFullYear() - dob.getFullYear();\n const monthDiff = now.getMonth() - dob.getMonth();\n if (monthDiff < 0 || (monthDiff === 0 && now.getDate() < dob.getDate())) {\n age--;\n }\n return age < 0 || age > 130 ? undefined : age;\n}\n\n/* -------------------------------------------------------------------- */\n/* AppointmentCard */\n/* */\n/* Single-row appointment surface — sibling of AgendaCard, but richer: */\n/* leading timestamp, operator + patient avatars with the operator */\n/* colour dot, a lifecycle-state Badge (announced by label, never colour */\n/* alone), treatment / tooth Tags, and an optional advance-deposit */\n/* TransactionChip. State→Badge-variant + colour-id→token + URL-safety */\n/* come from the shared `_shared/entity-card` helpers. */\n/* */\n/* All visible text flows through useTranslation('ui') against the */\n/* `appointmentCard.*` namespace (plus shared `financial.*` for money). */\n/* -------------------------------------------------------------------- */\n\n// Back-compat / one-stop import — the URL guard lives in the shared helper.\nexport { isSafeEntityUrl as isSafeAppointmentUrl } from '../_shared/is-safe-url';\n\n/* -------------------------------------------------------------------- */\n/* Types */\n/* -------------------------------------------------------------------- */\n\n/** Appointment delivery channel. */\nexport type AppointmentType = 'inPractice' | 'telehealth';\n\n/** First-visit tri-state flag. */\nexport type AppointmentFirstVisit = 'yes' | 'no' | 'unknown';\n\n/** Operator (clinician) summary — name + optional palette colour id. */\nexport interface AppointmentOperator {\n /** Operator display name — drives the avatar initials + accessible name. */\n name: string;\n /** Numeric palette colour id, resolved to a kit token for the colour dot. */\n colorId?: number | string;\n}\n\n/** Patient summary — identity + optional age driver. */\nexport interface AppointmentPatient {\n /** Patient display name. */\n name: string;\n /** Optional avatar image URL. */\n avatarUrl?: string;\n /** ISO-8601 date of birth — when present, the card renders the age as a\n * suffix on the name (e.g. \"Carol Danvers · 45\"). */\n dobIso?: string;\n}\n\n/** One treatment line within the appointment. */\nexport interface AppointmentTreatment {\n /** Localised care / treatment name. */\n careName: string;\n /** Optional tooth elements (e.g. FDI ids) the treatment targets. */\n elements?: string[];\n}\n\n/** Booking-reason metadata captured at online-booking time. */\nexport interface AppointmentBookingReason {\n /** Localised booking-reason description. */\n description: string;\n /** Expected duration in minutes. */\n durationMin?: number;\n /** Advance / deposit amount in cents (non-negative). */\n advanceAmountCents?: number;\n /** Localised specialty label. */\n specialty?: string;\n}\n\n/** Money summary for the appointment. */\nexport interface AppointmentMoney {\n /** Total billable amount in cents. When present, rendered as a\n * TransactionChip. */\n billableAmountCents?: number;\n /** Outstanding unpaid amount in cents. When > 0, rendered as a warning\n * TransactionChip so the front desk can flag it at a glance. */\n unpaidAmountCents?: number;\n}\n\n/** Signing status for documents attached to the appointment. */\nexport interface AppointmentSigning {\n /** How many documents require a signature. */\n required: number;\n /** How many have been completed so far. */\n toComplete: number;\n}\n\n/** Boolean appointment flags surfaced as chips / indicators. */\nexport interface AppointmentFlags {\n bookedOnline?: boolean;\n noPatientAssigned?: boolean;\n highlightedAnamnesis?: boolean;\n billable?: boolean;\n}\n\nexport interface AppointmentItem {\n /** Stable appointment identifier. */\n id: string;\n /** ISO-8601 start instant. */\n startIso: string;\n /** Duration in minutes. */\n durationMin: number;\n /** Lifecycle state — drives the Badge variant + label. */\n state: AppointmentState;\n /** Delivery channel — drives the leading type glyph. */\n type: AppointmentType;\n /** First-visit flag. */\n firstVisit?: AppointmentFirstVisit;\n /** Assigned operator. */\n operator?: AppointmentOperator;\n /** Chair / room label — surfaced as a chip. */\n chair?: string;\n /**\n * The care plan this appointment belongs to, when any — surfaced as a chip\n * (`Care plan {number}`). `url` is the deep link the consumer may use for\n * navigation; the chip itself is non-interactive so it never nests an anchor\n * inside the row's own stretched link.\n */\n carePlan?: { number: string; url?: string };\n /** Patient identity. */\n patient?: AppointmentPatient;\n /** Treatment lines. */\n treatments?: AppointmentTreatment[];\n /** Online booking-reason metadata. */\n bookingReason?: AppointmentBookingReason;\n /** Boolean flags. */\n flags?: AppointmentFlags;\n /** Money summary — billable + unpaid amounts. */\n money?: AppointmentMoney;\n /** Whether this appointment is part of a recurring series. */\n recurring?: boolean;\n /** Signing status for attached documents. */\n signing?: AppointmentSigning;\n /** A note left by the patient at booking time. When present, a small\n * message icon signals it. */\n bookingNote?: string;\n /** Optional deep link — when present (and safe) the row renders as an anchor. */\n url?: string;\n}\n\n/* -------------------------------------------------------------------- */\n/* CVA — row */\n/* -------------------------------------------------------------------- */\n\nconst appointmentCardVariants = cva(\n [\n 'ds:relative ds:flex ds:items-start ds:gap-[var(--spacing-sm)]',\n 'ds:rounded-[var(--radius-md)]',\n 'ds:text-start ds:group',\n 'ds:bg-[var(--card)] ds:text-[color:var(--card-foreground)]',\n 'ds:transition-[colors,border-color,box-shadow] ds:duration-[var(--animation-duration)]',\n 'ds:motion-reduce:transition-none',\n 'ds:forced-colors:border ds:forced-colors:border-[CanvasText]',\n ].join(' '),\n {\n variants: {\n size: {\n sm: 'ds:p-[var(--spacing-sm)]',\n md: 'ds:p-[var(--spacing-md)]',\n },\n interactive: {\n true: 'ds:hover:bg-[color:var(--muted)]/40 ds:cursor-pointer',\n false: '',\n },\n surface: {\n // `flat` (default) is the chrome-less row used inside a bordered\n // AppointmentTray. `elevated` gives each row its own card chrome\n // (border + shadow) for use directly on a rail, e.g. AppointmentTimeline.\n // Uses `--shadow-sm` (a row lift), not `--shadow-card`/`--shadow-lg`:\n // the rail's `overflow-y:auto` scroll region clips `overflow-x` at a\n // narrow gutter, so a wide 30px-blur shadow gets a hard-edged clip.\n flat: '',\n elevated:\n 'ds:border ds:border-[color:var(--card-border)] ds:[.theme-accessible_&]:border-2 ds:shadow-[var(--shadow-sm)]',\n },\n selected: {\n // The row the host has marked as the active/selected appointment —\n // matches the `current` note's info-tinted accent: a solid\n // inline-start bar plus a soft info wash, so the eye keeps its\n // place in the list after a click.\n true: 'ds:border-s-2 ds:border-s-[color:var(--info)] ds:bg-[color:var(--info)]/10',\n false: '',\n },\n },\n defaultVariants: {\n size: 'sm',\n interactive: false,\n surface: 'flat',\n selected: false,\n },\n },\n);\n\nconst stretchedLinkClass = [\n // Interactive elements need a box to remain keyboard-focusable in browsers.\n 'ds:inline-flex ds:min-w-0',\n 'ds:focus-visible:outline-none',\n \"ds:after:content-[''] ds:after:absolute ds:after:inset-0 ds:after:rounded-[var(--radius-md)]\",\n 'ds:after:pointer-events-auto',\n 'ds:focus-visible:after:outline-[length:var(--focus-ring-width)]',\n 'ds:focus-visible:after:outline-solid',\n 'ds:focus-visible:after:outline-[color:var(--ring)]',\n 'ds:focus-visible:after:outline-offset-[length:var(--focus-ring-offset)]',\n 'ds:forced-colors:focus-visible:after:outline-[CanvasText]',\n].join(' ');\n\nconst TYPE_ICON: Record<AppointmentType, typeof MapPin> = {\n inPractice: MapPin,\n telehealth: Video,\n};\n\n/* -------------------------------------------------------------------- */\n/* Props */\n/* -------------------------------------------------------------------- */\n\nexport interface AppointmentCardProps\n extends\n Omit<HTMLAttributes<HTMLDivElement>, 'onClick' | 'title'>,\n VariantProps<typeof appointmentCardVariants> {\n /** The appointment to render. */\n item: AppointmentItem;\n /** Visual density. */\n size?: 'sm' | 'md';\n /**\n * `'flat'` (default) — chrome-less row for use inside a bordered\n * `AppointmentTray`. `'elevated'` — each row carries its own card chrome\n * (border + shadow), for placing rows directly on a rail (AppointmentTimeline).\n */\n surface?: 'flat' | 'elevated';\n /** BCP-47 locale override for the timestamp + currency. */\n locale?: string;\n /** ISO-4217 currency code for the advance-deposit chip. Defaults to `EUR`. */\n currency?: string;\n /**\n * Show the patient identity (avatar + name as the row title). Default `true`.\n * Set `false` in single-patient surfaces (e.g. a patient's own\n * `AppointmentTimeline`) where repeating the name is redundant — the row then\n * leads with the operator as its title, falling back to a generic label.\n */\n showPatient?: boolean;\n /** Fires when the row is activated. */\n onActivate?: (item: AppointmentItem) => void;\n /**\n * Mark this row as the active/selected appointment — an info-tinted\n * inline-start bar plus a soft wash, so the eye keeps its place in the\n * list after a click. Renders `aria-current=\"true\"` for assistive tech.\n */\n selected?: boolean;\n}\n\n/* -------------------------------------------------------------------- */\n/* Component */\n/* -------------------------------------------------------------------- */\n\nexport const AppointmentCard = forwardRef<HTMLDivElement, AppointmentCardProps>(\n (\n {\n item,\n size = 'sm',\n surface = 'flat',\n locale,\n currency = 'EUR',\n showPatient = true,\n onActivate,\n selected = false,\n className,\n ...rest\n },\n ref,\n ) => {\n const { t } = useTranslation();\n const interactive = !!onActivate;\n const hasSafeUrl = !!item.url && isSafeEntityUrl(item.url);\n\n const patientName = item.patient?.name ?? t('appointmentCard.noPatient');\n const operatorName = item.operator?.name;\n const stateLabel = t(`appointmentCard.state.${item.state}`);\n const stateWorkflow = appointmentStateWorkflow(item.state);\n const StateIcon = stateWorkflow.Icon;\n const patientAge = ageFromDob(item.patient?.dobIso);\n const noPatient = item.flags?.noPatientAssigned || !item.patient;\n\n const avatarSize = size === 'md' ? 'md' : 'sm';\n const TypeIcon = TYPE_ICON[item.type];\n\n // In single-patient context the patient name is redundant, so the row leads\n // with the operator (the \"who am I seeing\") and falls back to a generic\n // label when no operator is set.\n const title = showPatient\n ? patientName\n : (operatorName ?? t('appointmentCard.appointment'));\n\n const ariaLabel = showPatient\n ? t('appointmentCard.itemLabel', {\n patient: patientName,\n state: stateLabel,\n })\n : t('appointmentCard.itemLabelGeneric', { title, state: stateLabel });\n\n const titleNode = (\n <span className=\"ds:min-w-0 ds:truncate type-title-item ds:text-[color:var(--foreground)]\">\n {title}\n {showPatient && patientAge !== undefined ? (\n <span className=\"ds:ms-[var(--spacing-2xs)] ds:font-normal ds:text-[color:var(--muted-foreground)]\">\n · {patientAge}\n </span>\n ) : null}\n </span>\n );\n\n let activator: ReactNode;\n if (interactive && hasSafeUrl) {\n activator = (\n <a\n href={item.url}\n aria-label={ariaLabel}\n className={stretchedLinkClass}\n onClick={(e) => {\n if (e.defaultPrevented || e.metaKey || e.ctrlKey || e.shiftKey)\n return;\n onActivate?.(item);\n }}\n >\n {titleNode}\n </a>\n );\n } else if (interactive) {\n activator = (\n <button\n type=\"button\"\n aria-label={ariaLabel}\n className={\n stretchedLinkClass +\n ' ds:bg-transparent ds:border-0 ds:p-0 ds:text-start'\n }\n onClick={() => onActivate?.(item)}\n >\n {titleNode}\n </button>\n );\n } else {\n activator = titleNode;\n }\n\n // Treatment / tooth-element Tags. Each treatment becomes one Tag; the\n // tooth elements (when present) are appended to the visible label.\n const treatmentTags = (item.treatments ?? []).map((tx, index) => {\n const label =\n tx.elements && tx.elements.length > 0\n ? t('appointmentCard.treatmentWithElements', {\n care: tx.careName,\n elements: tx.elements.join(', '),\n })\n : tx.careName;\n return (\n <Tag\n key={`${tx.careName}-${index}`}\n label={label}\n variant=\"neutral\"\n fill=\"outline\"\n size=\"sm\"\n maxInlineSize=\"12rem\"\n />\n );\n });\n\n const advanceCents = item.bookingReason?.advanceAmountCents;\n const hasAdvance = typeof advanceCents === 'number' && advanceCents > 0;\n const unpaidCents = item.money?.unpaidAmountCents;\n const hasUnpaid = typeof unpaidCents === 'number' && unpaidCents > 0;\n\n return (\n <div\n ref={ref}\n /* `listitem` by default — the card is normally a list child. A\n consumer composing a richer row (card plus its own action row)\n owns the semantics instead and passes `role=\"presentation\"`,\n so the two do not nest. `rest` is spread after this. */\n role=\"listitem\"\n data-component=\"appointment-card\"\n data-component-id={item.id}\n data-state={item.state}\n data-type={item.type}\n aria-current={selected ? 'true' : undefined}\n className={appointmentCardVariants({\n size,\n interactive,\n surface,\n selected,\n className,\n })}\n {...rest}\n >\n {/* Leading rail: type glyph + start time + duration */}\n {/* min-w, not a fixed w: a 12-hour time (\"10:30 AM\") plus the type\n glyph is wider than 4rem, and must never wrap AM/PM onto a\n second line. */}\n <span className=\"ds:flex ds:min-w-20 ds:shrink-0 ds:flex-col ds:items-start ds:gap-[var(--spacing-2xs)]\">\n <span className=\"ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)] ds:whitespace-nowrap ds:text-[color:var(--muted-foreground)]\">\n <TypeIcon aria-hidden=\"true\" className=\"ds:size-3.5 ds:shrink-0\" />\n <span className=\"ds:sr-only\">\n {t(`appointmentCard.type.${item.type}`)}\n </span>\n <Timestamp\n value={item.startIso}\n format=\"absolute\"\n shape=\"bare\"\n locale={locale}\n absoluteFormat={{ hour: 'numeric', minute: '2-digit' }}\n className=\"type-body-sm ds:font-medium ds:text-[color:var(--foreground)] ds:tabular-nums\"\n />\n </span>\n <span className=\"type-eyebrow ds:text-[color:var(--muted-foreground)]\">\n {t('appointmentCard.duration', { count: item.durationMin })}\n </span>\n </span>\n\n {/* Operator avatar with colour dot */}\n {operatorName ? (\n <span className=\"ds:relative ds:shrink-0\">\n <Avatar\n name={operatorName}\n color={colorIdToAvatarToken(item.operator?.colorId)}\n size={avatarSize}\n aria-hidden=\"true\"\n role=\"presentation\"\n aria-label={undefined}\n />\n <span\n aria-hidden=\"true\"\n className={\n 'ds:absolute ds:bottom-0 ds:end-0 ds:size-2.5 ds:rounded-[var(--radius-full)] ds:border ds:border-[color:var(--card)] ' +\n operatorDotClass(item.operator?.colorId)\n }\n />\n </span>\n ) : null}\n\n {/* Main content column */}\n <div className=\"ds:flex-1 ds:min-w-0 ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]\">\n <div className=\"ds:flex ds:items-start ds:gap-[var(--spacing-sm)]\">\n <div className=\"ds:flex-1 ds:min-w-0 ds:flex ds:items-center ds:gap-[var(--spacing-xs)]\">\n {showPatient && item.patient?.avatarUrl ? (\n <Avatar\n name={patientName}\n src={item.patient.avatarUrl}\n size={avatarSize}\n className=\"ds:shrink-0\"\n aria-hidden=\"true\"\n role=\"presentation\"\n aria-label={undefined}\n />\n ) : null}\n {showPatient && noPatient ? (\n <span\n className={`ds:shrink-0 ds:inline-flex ds:items-center ds:justify-center ds:rounded-[var(--radius-full)] ds:bg-[color:var(--muted)] ds:text-[color:var(--muted-foreground)] ${\n avatarSize === 'md' ? 'ds:size-10' : 'ds:size-8'\n }`}\n >\n <UserX aria-hidden=\"true\" className=\"ds:size-4\" />\n </span>\n ) : null}\n {activator}\n </div>\n {/* The kit's read-only status surface, not a bare Badge: an\n appointment's status is the same thing on a card, in a details\n footer and in a history entry, so it wears one face and takes\n its tone and glyph from the shared map. */}\n <WorkflowStatusDisplay\n size=\"sm\"\n value={item.state}\n option={{\n value: item.state,\n label: stateLabel,\n icon: <StateIcon aria-hidden=\"true\" />,\n tone: stateWorkflow.tone,\n }}\n className=\"ds:shrink-0\"\n />\n </div>\n\n {/* Meta line: operator name · specialty · first visit · booking note\n (chair moved to a chip below). When the patient is hidden the\n operator is promoted to the title, so it drops out of the meta. */}\n {(showPatient && operatorName) ||\n item.bookingReason?.specialty ||\n item.firstVisit === 'yes' ||\n item.firstVisit === 'unknown' ||\n item.bookingNote ? (\n <div className=\"ds:flex ds:flex-wrap ds:items-center ds:gap-x-[var(--spacing-sm)] ds:gap-y-[var(--spacing-2xs)] type-eyebrow ds:text-[color:var(--muted-foreground)]\">\n {showPatient && operatorName ? <span>{operatorName}</span> : null}\n {item.bookingReason?.specialty ? (\n <span>{item.bookingReason.specialty}</span>\n ) : null}\n {item.firstVisit === 'yes' ? (\n <span className=\"ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]\">\n <Star aria-hidden=\"true\" className=\"ds:size-3 ds:shrink-0\" />\n {t('appointmentCard.firstVisit')}\n </span>\n ) : null}\n {item.firstVisit === 'unknown' ? (\n <span className=\"ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]\">\n <Star aria-hidden=\"true\" className=\"ds:size-3 ds:shrink-0\" />\n {t('appointmentCard.firstVisitUnknown')}\n </span>\n ) : null}\n {item.bookingNote ? (\n <span\n className=\"ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]\"\n title={t('appointmentCard.hasBookingNote')}\n >\n <MessageSquareText\n aria-hidden=\"true\"\n className=\"ds:size-3 ds:shrink-0\"\n />\n {t('appointmentCard.hasBookingNote')}\n </span>\n ) : null}\n </div>\n ) : null}\n\n {/* Booking reason */}\n {item.bookingReason?.description ? (\n <span className=\"type-body-sm ds:text-[color:var(--foreground)] ds:truncate\">\n {item.bookingReason.description}\n </span>\n ) : null}\n\n {/* Treatment / tooth Tags */}\n {treatmentTags.length > 0 ? (\n <div className=\"ds:flex ds:flex-wrap ds:gap-[var(--spacing-2xs)]\">\n {treatmentTags}\n </div>\n ) : null}\n\n {/* Chips: care plan · chair · flags · recurring · signing ·\n advance-deposit · unpaid balance · billable */}\n {item.carePlan ||\n item.chair ||\n item.flags?.bookedOnline ||\n item.flags?.highlightedAnamnesis ||\n item.flags?.billable ||\n item.recurring ||\n item.signing ||\n hasAdvance ||\n hasUnpaid ? (\n <div className=\"ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]\">\n {item.carePlan ? (\n <Badge\n variant=\"accentSoft\"\n size=\"sm\"\n leading={<ClipboardPlus />}\n >\n {t('appointmentCard.carePlan', {\n number: item.carePlan.number,\n })}\n </Badge>\n ) : null}\n {item.chair ? (\n <Badge variant=\"neutral\" size=\"sm\" leading={<Armchair />}>\n {t('appointmentCard.chair', { chair: item.chair })}\n </Badge>\n ) : null}\n {item.flags?.bookedOnline ? (\n <Badge variant=\"info\" size=\"sm\" leading={<Globe />}>\n {t('appointmentCard.flag.bookedOnline')}\n </Badge>\n ) : null}\n {item.flags?.highlightedAnamnesis ? (\n <Badge variant=\"warning\" size=\"sm\" withDot>\n {t('appointmentCard.flag.highlightedAnamnesis')}\n </Badge>\n ) : null}\n {item.recurring ? (\n <Badge variant=\"neutral\" size=\"sm\" leading={<Repeat />}>\n {t('appointmentCard.recurring')}\n </Badge>\n ) : null}\n {item.signing ? (\n <Badge\n variant={\n item.signing.toComplete >= item.signing.required\n ? 'success'\n : 'warning'\n }\n size=\"sm\"\n leading={<FileSignature />}\n >\n {t('appointmentCard.signing', {\n complete: item.signing.toComplete,\n required: item.signing.required,\n })}\n </Badge>\n ) : null}\n {item.flags?.billable ? (\n <Badge variant=\"success\" size=\"sm\" withDot>\n {t('appointmentCard.flag.billable')}\n </Badge>\n ) : null}\n {hasAdvance ? (\n <TransactionChip\n state=\"to-invoice\"\n amount={(advanceCents as number) / 100}\n currency={currency}\n locale={locale}\n size=\"sm\"\n showLabel\n />\n ) : null}\n {hasUnpaid ? (\n <TransactionChip\n state=\"debt\"\n amount={unpaidCents / 100}\n currency={currency}\n locale={locale}\n size=\"sm\"\n showLabel\n />\n ) : null}\n </div>\n ) : null}\n </div>\n\n {interactive ? (\n <ChevronRight\n aria-hidden=\"true\"\n className=\"ds:size-4 ds:shrink-0 ds:self-center ds:text-[color:var(--muted-foreground)] ds:opacity-0 ds:transition-opacity ds:motion-reduce:transition-none ds:group-hover:opacity-100 ds:group-focus-within:opacity-100 ds:rtl:rotate-180\"\n />\n ) : null}\n </div>\n );\n },\n);\n\nAppointmentCard.displayName = 'AppointmentCard';\n"],"names":["__iconNode","ClipboardPlus","createLucideIcon","FilePenLine","MessageSquareText","OPERATOR_DOT_CLASS","operatorDotClass","colorId","colorIdToToken","ageFromDob","dobIso","dob","now","age","monthDiff","appointmentCardVariants","cva","stretchedLinkClass","TYPE_ICON","MapPin","Video","AppointmentCard","forwardRef","item","size","surface","locale","currency","showPatient","onActivate","selected","className","rest","ref","t","useTranslation","interactive","hasSafeUrl","isSafeEntityUrl","patientName","_a","operatorName","_b","stateLabel","stateWorkflow","appointmentStateWorkflow","StateIcon","patientAge","_c","noPatient","_d","avatarSize","TypeIcon","title","ariaLabel","titleNode","jsxs","activator","jsx","e","treatmentTags","tx","index","label","Tag","advanceCents","_e","hasAdvance","unpaidCents","_f","hasUnpaid","Timestamp","Avatar","colorIdToAvatarToken","_g","_h","_i","UserX","WorkflowStatusDisplay","_j","_k","Star","_l","_m","_n","_o","Badge","Armchair","_p","Globe","_q","Repeat","FileSignature","_r","TransactionChip","ChevronRight"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,KAAa;AAAA,EACjB,CAAC,QAAQ,EAAE,OAAO,KAAK,QAAQ,KAAK,GAAG,KAAK,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,KAAK,UAAU;AAAA,EACrF;AAAA,IACE;AAAA,IACA;AAAA,MACE,GAAG;AAAA,MACH,KAAK;AAAA,IACX;AAAA,EACA;AAAA,EACE,CAAC,QAAQ,EAAE,GAAG,WAAW,KAAK,SAAQ,CAAE;AAAA,EACxC,CAAC,QAAQ,EAAE,GAAG,aAAa,KAAK,SAAQ,CAAE;AAC5C,GACMC,KAAgBC,EAAiB,kBAAkBF,EAAU;ACrBnE;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,KAAa;AAAA,EACjB;AAAA,IACE;AAAA,IACA;AAAA,MACE,GAAG;AAAA,MACH,KAAK;AAAA,IACX;AAAA,EACA;AAAA,EACE,CAAC,QAAQ,EAAE,GAAG,kCAAkC,KAAK,SAAQ,CAAE;AAAA,EAC/D;AAAA,IACE;AAAA,IACA;AAAA,MACE,GAAG;AAAA,MACH,KAAK;AAAA,IACX;AAAA,EACA;AAAA,EACE,CAAC,QAAQ,EAAE,GAAG,WAAW,KAAK,SAAQ,CAAE;AAC1C,GACMG,KAAcD,EAAiB,iBAAiBF,EAAU;AC3BhE;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,KAAa;AAAA,EACjB;AAAA,IACE;AAAA,IACA;AAAA,MACE,GAAG;AAAA,MACH,KAAK;AAAA,IACX;AAAA,EACA;AAAA,EACE,CAAC,QAAQ,EAAE,GAAG,YAAY,KAAK,SAAQ,CAAE;AAAA,EACzC,CAAC,QAAQ,EAAE,GAAG,WAAW,KAAK,SAAQ,CAAE;AAAA,EACxC,CAAC,QAAQ,EAAE,GAAG,UAAU,KAAK,SAAQ,CAAE;AACzC,GACMI,KAAoBF,EAAiB,uBAAuBF,EAAU,GCgBtEK,KAA6C;AAAA,EACjD,2BAA2B;AAAA,EAC3B,2BAA2B;AAAA,EAC3B,4BAA4B;AAAA,EAC5B,yBAAyB;AAAA,EACzB,0BAA0B;AAAA,EAC1B,wBAAwB;AAAA,EACxB,2BAA2B;AAAA,EAC3B,2BAA2B;AAAA,EAC3B,2BAA2B;AAAA,EAC3B,4BAA4B;AAAA,EAC5B,yBAAyB;AAC3B;AAEA,SAASC,GAAiBC,GAA8C;AACtE,SACEF,GAAmBG,GAAeD,CAAO,CAAC,KAC1C;AAEJ;AAGA,SAASE,GAAWC,GAAgD;AAClE,MAAI,CAACA,EAAQ;AACb,QAAMC,IAAM,IAAI,KAAKD,CAAM;AAC3B,MAAI,OAAO,MAAMC,EAAI,QAAA,CAAS,EAAG;AACjC,QAAMC,wBAAU,KAAA;AAChB,MAAIC,IAAMD,EAAI,YAAA,IAAgBD,EAAI,YAAA;AAClC,QAAMG,IAAYF,EAAI,SAAA,IAAaD,EAAI,SAAA;AACvC,UAAIG,IAAY,KAAMA,MAAc,KAAKF,EAAI,QAAA,IAAYD,EAAI,cAC3DE,KAEKA,IAAM,KAAKA,IAAM,MAAM,SAAYA;AAC5C;AA+IA,MAAME,KAA0BC;AAAA,EAC9B;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,EACA,KAAK,GAAG;AAAA,EACV;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA;AAAA,MAEN,aAAa;AAAA,QACX,MAAM;AAAA,QACN,OAAO;AAAA,MAAA;AAAA,MAET,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAOP,MAAM;AAAA,QACN,UACE;AAAA,MAAA;AAAA,MAEJ,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA,QAKR,MAAM;AAAA,QACN,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,IAEF,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,aAAa;AAAA,MACb,SAAS;AAAA,MACT,UAAU;AAAA,IAAA;AAAA,EACZ;AAEJ,GAEMC,IAAqB;AAAA;AAAA,EAEzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,EAAE,KAAK,GAAG,GAEJC,KAAoD;AAAA,EACxD,YAAYC;AAAA,EACZ,YAAYC;AACd,GA6CaC,KAAkBC;AAAA,EAC7B,CACE;AAAA,IACE,MAAAC;AAAA,IACA,MAAAC,IAAO;AAAA,IACP,SAAAC,IAAU;AAAA,IACV,QAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,aAAAC,IAAc;AAAA,IACd,YAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,WAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,GAELC,OACG;;AACH,UAAM,EAAE,GAAAC,EAAA,IAAMC,GAAA,GACRC,IAAc,CAAC,CAACP,GAChBQ,KAAa,CAAC,CAACd,EAAK,OAAOe,GAAgBf,EAAK,GAAG,GAEnDgB,MAAcC,IAAAjB,EAAK,YAAL,gBAAAiB,EAAc,SAAQN,EAAE,2BAA2B,GACjEO,KAAeC,IAAAnB,EAAK,aAAL,gBAAAmB,EAAe,MAC9BC,IAAaT,EAAE,yBAAyBX,EAAK,KAAK,EAAE,GACpDqB,IAAgBC,GAAyBtB,EAAK,KAAK,GACnDuB,KAAYF,EAAc,MAC1BG,IAAatC,IAAWuC,IAAAzB,EAAK,YAAL,gBAAAyB,EAAc,MAAM,GAC5CC,OAAYC,IAAA3B,EAAK,UAAL,gBAAA2B,EAAY,sBAAqB,CAAC3B,EAAK,SAEnD4B,IAAa3B,MAAS,OAAO,OAAO,MACpC4B,KAAWlC,GAAUK,EAAK,IAAI,GAK9B8B,IAAQzB,IACVW,IACCE,KAAgBP,EAAE,6BAA6B,GAE9CoB,IAAY1B,IACdM,EAAE,6BAA6B;AAAA,MAC7B,SAASK;AAAA,MACT,OAAOI;AAAA,IAAA,CACR,IACDT,EAAE,oCAAoC,EAAE,OAAAmB,GAAO,OAAOV,GAAY,GAEhEY,IACJ,gBAAAC,EAAC,QAAA,EAAK,WAAU,4EACb,UAAA;AAAA,MAAAH;AAAA,MACAzB,KAAemB,MAAe,SAC7B,gBAAAS,EAAC,QAAA,EAAK,WAAU,qFAAoF,UAAA;AAAA,QAAA;AAAA,QAC/FT;AAAA,MAAA,EAAA,CACL,IACE;AAAA,IAAA,GACN;AAGF,QAAIU;AACJ,IAAIrB,KAAeC,KACjBoB,IACE,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAMnC,EAAK;AAAA,QACX,cAAY+B;AAAA,QACZ,WAAWrC;AAAA,QACX,SAAS,CAAC0C,MAAM;AACd,UAAIA,EAAE,oBAAoBA,EAAE,WAAWA,EAAE,WAAWA,EAAE,YAEtD9B,KAAA,QAAAA,EAAaN;AAAA,QACf;AAAA,QAEC,UAAAgC;AAAA,MAAA;AAAA,IAAA,IAGInB,IACTqB,IACE,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,cAAYJ;AAAA,QACZ,WACErC,IACA;AAAA,QAEF,SAAS,MAAMY,KAAA,gBAAAA,EAAaN;AAAA,QAE3B,UAAAgC;AAAA,MAAA;AAAA,IAAA,IAILE,IAAYF;AAKd,UAAMK,KAAiBrC,EAAK,cAAc,CAAA,GAAI,IAAI,CAACsC,GAAIC,OAAU;AAC/D,YAAMC,KACJF,EAAG,YAAYA,EAAG,SAAS,SAAS,IAChC3B,EAAE,yCAAyC;AAAA,QACzC,MAAM2B,EAAG;AAAA,QACT,UAAUA,EAAG,SAAS,KAAK,IAAI;AAAA,MAAA,CAChC,IACDA,EAAG;AACT,aACE,gBAAAH;AAAA,QAACM;AAAA,QAAA;AAAA,UAEC,OAAAD;AAAA,UACA,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,MAAK;AAAA,UACL,eAAc;AAAA,QAAA;AAAA,QALT,GAAGF,EAAG,QAAQ,IAAIC,EAAK;AAAA,MAAA;AAAA,IAQlC,CAAC,GAEKG,KAAeC,IAAA3C,EAAK,kBAAL,gBAAA2C,EAAoB,oBACnCC,IAAa,OAAOF,KAAiB,YAAYA,IAAe,GAChEG,KAAcC,IAAA9C,EAAK,UAAL,gBAAA8C,EAAY,mBAC1BC,IAAY,OAAOF,KAAgB,YAAYA,IAAc;AAEnE,WACE,gBAAAZ;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAvB;AAAA,QAKA,MAAK;AAAA,QACL,kBAAe;AAAA,QACf,qBAAmBV,EAAK;AAAA,QACxB,cAAYA,EAAK;AAAA,QACjB,aAAWA,EAAK;AAAA,QAChB,gBAAcO,IAAW,SAAS;AAAA,QAClC,WAAWf,GAAwB;AAAA,UACjC,MAAAS;AAAA,UACA,aAAAY;AAAA,UACA,SAAAX;AAAA,UACA,UAAAK;AAAA,UACA,WAAAC;AAAA,QAAA,CACD;AAAA,QACA,GAAGC;AAAA,QAMJ,UAAA;AAAA,UAAA,gBAAAwB,EAAC,QAAA,EAAK,WAAU,0FACd,UAAA;AAAA,YAAA,gBAAAA,EAAC,QAAA,EAAK,WAAU,0HACd,UAAA;AAAA,cAAA,gBAAAE,EAACN,IAAA,EAAS,eAAY,QAAO,WAAU,2BAA0B;AAAA,cACjE,gBAAAM,EAAC,UAAK,WAAU,cACb,YAAE,wBAAwBnC,EAAK,IAAI,EAAE,EAAA,CACxC;AAAA,cACA,gBAAAmC;AAAA,gBAACa;AAAA,gBAAA;AAAA,kBACC,OAAOhD,EAAK;AAAA,kBACZ,QAAO;AAAA,kBACP,OAAM;AAAA,kBACN,QAAAG;AAAA,kBACA,gBAAgB,EAAE,MAAM,WAAW,QAAQ,UAAA;AAAA,kBAC3C,WAAU;AAAA,gBAAA;AAAA,cAAA;AAAA,YACZ,GACF;AAAA,YACA,gBAAAgC,EAAC,QAAA,EAAK,WAAU,wDACb,UAAAxB,EAAE,4BAA4B,EAAE,OAAOX,EAAK,YAAA,CAAa,EAAA,CAC5D;AAAA,UAAA,GACF;AAAA,UAGCkB,IACC,gBAAAe,EAAC,QAAA,EAAK,WAAU,2BACd,UAAA;AAAA,YAAA,gBAAAE;AAAA,cAACc;AAAA,cAAA;AAAA,gBACC,MAAM/B;AAAA,gBACN,OAAOgC,IAAqBC,IAAAnD,EAAK,aAAL,gBAAAmD,EAAe,OAAO;AAAA,gBAClD,MAAMvB;AAAA,gBACN,eAAY;AAAA,gBACZ,MAAK;AAAA,gBACL,cAAY;AAAA,cAAA;AAAA,YAAA;AAAA,YAEd,gBAAAO;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,eAAY;AAAA,gBACZ,WACE,0HACApD,IAAiBqE,IAAApD,EAAK,aAAL,gBAAAoD,EAAe,OAAO;AAAA,cAAA;AAAA,YAAA;AAAA,UAE3C,EAAA,CACF,IACE;AAAA,UAGJ,gBAAAnB,EAAC,OAAA,EAAI,WAAU,uEACb,UAAA;AAAA,YAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,qDACb,UAAA;AAAA,cAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,2EACZ,UAAA;AAAA,gBAAA5B,OAAegD,IAAArD,EAAK,YAAL,QAAAqD,EAAc,aAC5B,gBAAAlB;AAAA,kBAACc;AAAA,kBAAA;AAAA,oBACC,MAAMjC;AAAA,oBACN,KAAKhB,EAAK,QAAQ;AAAA,oBAClB,MAAM4B;AAAA,oBACN,WAAU;AAAA,oBACV,eAAY;AAAA,oBACZ,MAAK;AAAA,oBACL,cAAY;AAAA,kBAAA;AAAA,gBAAA,IAEZ;AAAA,gBACHvB,KAAeqB,KACd,gBAAAS;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBACC,WAAW,mKACTP,MAAe,OAAO,eAAe,WACvC;AAAA,oBAEA,UAAA,gBAAAO,EAACmB,IAAA,EAAM,eAAY,QAAO,WAAU,YAAA,CAAY;AAAA,kBAAA;AAAA,gBAAA,IAEhD;AAAA,gBACHpB;AAAA,cAAA,GACH;AAAA,cAKA,gBAAAC;AAAA,gBAACoB;AAAA,gBAAA;AAAA,kBACC,MAAK;AAAA,kBACL,OAAOvD,EAAK;AAAA,kBACZ,QAAQ;AAAA,oBACN,OAAOA,EAAK;AAAA,oBACZ,OAAOoB;AAAA,oBACP,MAAM,gBAAAe,EAACZ,IAAA,EAAU,eAAY,OAAA,CAAO;AAAA,oBACpC,MAAMF,EAAc;AAAA,kBAAA;AAAA,kBAEtB,WAAU;AAAA,gBAAA;AAAA,cAAA;AAAA,YACZ,GACF;AAAA,YAKEhB,KAAea,MACjBsC,IAAAxD,EAAK,kBAAL,QAAAwD,EAAoB,aACpBxD,EAAK,eAAe,SACpBA,EAAK,eAAe,aACpBA,EAAK,cACH,gBAAAiC,EAAC,OAAA,EAAI,WAAU,wJACZ,UAAA;AAAA,cAAA5B,KAAea,IAAe,gBAAAiB,EAAC,QAAA,EAAM,UAAAjB,EAAA,CAAa,IAAU;AAAA,eAC5DuC,IAAAzD,EAAK,kBAAL,QAAAyD,EAAoB,YACnB,gBAAAtB,EAAC,UAAM,UAAAnC,EAAK,cAAc,WAAU,IAClC;AAAA,cACHA,EAAK,eAAe,QACnB,gBAAAiC,EAAC,QAAA,EAAK,WAAU,8DACd,UAAA;AAAA,gBAAA,gBAAAE,EAACuB,GAAA,EAAK,eAAY,QAAO,WAAU,yBAAwB;AAAA,gBAC1D/C,EAAE,4BAA4B;AAAA,cAAA,EAAA,CACjC,IACE;AAAA,cACHX,EAAK,eAAe,YACnB,gBAAAiC,EAAC,QAAA,EAAK,WAAU,8DACd,UAAA;AAAA,gBAAA,gBAAAE,EAACuB,GAAA,EAAK,eAAY,QAAO,WAAU,yBAAwB;AAAA,gBAC1D/C,EAAE,mCAAmC;AAAA,cAAA,EAAA,CACxC,IACE;AAAA,cACHX,EAAK,cACJ,gBAAAiC;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,WAAU;AAAA,kBACV,OAAOtB,EAAE,gCAAgC;AAAA,kBAEzC,UAAA;AAAA,oBAAA,gBAAAwB;AAAA,sBAACtD;AAAA,sBAAA;AAAA,wBACC,eAAY;AAAA,wBACZ,WAAU;AAAA,sBAAA;AAAA,oBAAA;AAAA,oBAEX8B,EAAE,gCAAgC;AAAA,kBAAA;AAAA,gBAAA;AAAA,cAAA,IAEnC;AAAA,YAAA,EAAA,CACN,IACE;AAAA,aAGHgD,IAAA3D,EAAK,kBAAL,QAAA2D,EAAoB,cACnB,gBAAAxB,EAAC,QAAA,EAAK,WAAU,8DACb,UAAAnC,EAAK,cAAc,YAAA,CACtB,IACE;AAAA,YAGHqC,EAAc,SAAS,IACtB,gBAAAF,EAAC,SAAI,WAAU,oDACZ,aACH,IACE;AAAA,YAIHnC,EAAK,YACNA,EAAK,UACL4D,IAAA5D,EAAK,UAAL,QAAA4D,EAAY,iBACZC,IAAA7D,EAAK,UAAL,QAAA6D,EAAY,yBACZC,IAAA9D,EAAK,UAAL,QAAA8D,EAAY,YACZ9D,EAAK,aACLA,EAAK,WACL4C,KACAG,IACE,gBAAAd,EAAC,OAAA,EAAI,WAAU,mEACZ,UAAA;AAAA,cAAAjC,EAAK,WACJ,gBAAAmC;AAAA,gBAAC4B;AAAA,gBAAA;AAAA,kBACC,SAAQ;AAAA,kBACR,MAAK;AAAA,kBACL,2BAAUrF,IAAA,EAAc;AAAA,kBAEvB,YAAE,4BAA4B;AAAA,oBAC7B,QAAQsB,EAAK,SAAS;AAAA,kBAAA,CACvB;AAAA,gBAAA;AAAA,cAAA,IAED;AAAA,cACHA,EAAK,QACJ,gBAAAmC,EAAC4B,GAAA,EAAM,SAAQ,WAAU,MAAK,MAAK,SAAS,gBAAA5B,EAAC6B,MAAS,GACnD,UAAArD,EAAE,yBAAyB,EAAE,OAAOX,EAAK,MAAA,CAAO,GACnD,IACE;AAAA,eACHiE,IAAAjE,EAAK,UAAL,QAAAiE,EAAY,eACX,gBAAA9B,EAAC4B,GAAA,EAAM,SAAQ,QAAO,MAAK,MAAK,2BAAUG,IAAA,EAAM,GAC7C,UAAAvD,EAAE,mCAAmC,GACxC,IACE;AAAA,eACHwD,IAAAnE,EAAK,UAAL,QAAAmE,EAAY,uBACX,gBAAAhC,EAAC4B,KAAM,SAAQ,WAAU,MAAK,MAAK,SAAO,IACvC,UAAApD,EAAE,2CAA2C,GAChD,IACE;AAAA,cACHX,EAAK,YACJ,gBAAAmC,EAAC4B,GAAA,EAAM,SAAQ,WAAU,MAAK,MAAK,2BAAUK,IAAA,CAAA,CAAO,GACjD,UAAAzD,EAAE,2BAA2B,GAChC,IACE;AAAA,cACHX,EAAK,UACJ,gBAAAmC;AAAA,gBAAC4B;AAAA,gBAAA;AAAA,kBACC,SACE/D,EAAK,QAAQ,cAAcA,EAAK,QAAQ,WACpC,YACA;AAAA,kBAEN,MAAK;AAAA,kBACL,2BAAUqE,IAAA,EAAc;AAAA,kBAEvB,YAAE,2BAA2B;AAAA,oBAC5B,UAAUrE,EAAK,QAAQ;AAAA,oBACvB,UAAUA,EAAK,QAAQ;AAAA,kBAAA,CACxB;AAAA,gBAAA;AAAA,cAAA,IAED;AAAA,eACHsE,IAAAtE,EAAK,UAAL,QAAAsE,EAAY,WACX,gBAAAnC,EAAC4B,KAAM,SAAQ,WAAU,MAAK,MAAK,SAAO,IACvC,UAAApD,EAAE,+BAA+B,GACpC,IACE;AAAA,cACHiC,IACC,gBAAAT;AAAA,gBAACoC;AAAA,gBAAA;AAAA,kBACC,OAAM;AAAA,kBACN,QAAS7B,IAA0B;AAAA,kBACnC,UAAAtC;AAAA,kBACA,QAAAD;AAAA,kBACA,MAAK;AAAA,kBACL,WAAS;AAAA,gBAAA;AAAA,cAAA,IAET;AAAA,cACH4C,IACC,gBAAAZ;AAAA,gBAACoC;AAAA,gBAAA;AAAA,kBACC,OAAM;AAAA,kBACN,QAAQ1B,IAAc;AAAA,kBACtB,UAAAzC;AAAA,kBACA,QAAAD;AAAA,kBACA,MAAK;AAAA,kBACL,WAAS;AAAA,gBAAA;AAAA,cAAA,IAET;AAAA,YAAA,EAAA,CACN,IACE;AAAA,UAAA,GACN;AAAA,UAECU,IACC,gBAAAsB;AAAA,YAACqC;AAAA,YAAA;AAAA,cACC,eAAY;AAAA,cACZ,WAAU;AAAA,YAAA;AAAA,UAAA,IAEV;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAGV;AACF;AAEA1E,GAAgB,cAAc;","x_google_ignoreList":[0,1,2]}