@alfadocs/ui-kit-debug 0.72.2 → 0.75.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 (687) hide show
  1. package/dist/_chunks/actions-cell-renderer-DLrcSTK_.js +1546 -0
  2. package/dist/_chunks/actions-cell-renderer-DLrcSTK_.js.map +1 -0
  3. package/dist/_chunks/{agenda-tray-loL2A3Cx.js → agenda-tray-CVf-jfWU.js} +3 -3
  4. package/dist/_chunks/{agenda-tray-loL2A3Cx.js.map → agenda-tray-CVf-jfWU.js.map} +1 -1
  5. package/dist/_chunks/{ai-consent-banner-Bke9m8VS.js → ai-consent-banner-DUhr1yNj.js} +2 -2
  6. package/dist/_chunks/{ai-consent-banner-Bke9m8VS.js.map → ai-consent-banner-DUhr1yNj.js.map} +1 -1
  7. package/dist/_chunks/{ai-prompt-input-TVI95hJD.js → ai-prompt-input-DziJCGLe.js} +3 -3
  8. package/dist/_chunks/{ai-prompt-input-TVI95hJD.js.map → ai-prompt-input-DziJCGLe.js.map} +1 -1
  9. package/dist/_chunks/{alia-sidebar-BV5lBSFR.js → alia-sidebar-w6B0TEx7.js} +8 -8
  10. package/dist/_chunks/{alia-sidebar-BV5lBSFR.js.map → alia-sidebar-w6B0TEx7.js.map} +1 -1
  11. package/dist/_chunks/{anamnesis-card-CWO4Ui9c.js → anamnesis-card-CJ5MNbkc.js} +2 -2
  12. package/dist/_chunks/{anamnesis-card-CWO4Ui9c.js.map → anamnesis-card-CJ5MNbkc.js.map} +1 -1
  13. package/dist/_chunks/{antenatal-schedule-timeline-CY-VsLok.js → antenatal-schedule-timeline-BzJZqS-8.js} +3 -3
  14. package/dist/_chunks/{antenatal-schedule-timeline-CY-VsLok.js.map → antenatal-schedule-timeline-BzJZqS-8.js.map} +1 -1
  15. package/dist/_chunks/{appointment-card-Cy4FOkGP.js → appointment-card-DgKI5QKD.js} +2 -2
  16. package/dist/_chunks/{appointment-card-Cy4FOkGP.js.map → appointment-card-DgKI5QKD.js.map} +1 -1
  17. package/dist/_chunks/{appointment-timeline-BWAPPk8F.js → appointment-timeline-DQTG0btW.js} +6 -6
  18. package/dist/_chunks/{appointment-timeline-BWAPPk8F.js.map → appointment-timeline-DQTG0btW.js.map} +1 -1
  19. package/dist/_chunks/{appointment-tray-D3mk04TT.js → appointment-tray-ezyCZN8v.js} +4 -4
  20. package/dist/_chunks/{appointment-tray-D3mk04TT.js.map → appointment-tray-ezyCZN8v.js.map} +1 -1
  21. package/dist/_chunks/{ar-BOqyIfoY.js → ar-B1GhtlBP.js} +2 -2
  22. package/dist/_chunks/{ar-BOqyIfoY.js.map → ar-B1GhtlBP.js.map} +1 -1
  23. package/dist/_chunks/{columns-2-8lq4-b8e.js → arrow-up-right-C2v_MKsK.js} +5 -5
  24. package/dist/_chunks/arrow-up-right-C2v_MKsK.js.map +1 -0
  25. package/dist/_chunks/{audio-recorder-BbjG55dP.js → audio-recorder-Cc3KuL9y.js} +4 -4
  26. package/dist/_chunks/{audio-recorder-BbjG55dP.js.map → audio-recorder-Cc3KuL9y.js.map} +1 -1
  27. package/dist/_chunks/{benefit-card-Xnxj4Gmo.js → benefit-card-DB1Kdrmc.js} +4 -2
  28. package/dist/_chunks/benefit-card-DB1Kdrmc.js.map +1 -0
  29. package/dist/_chunks/{bishop-score-C6eoak_j.js → bishop-score-DDW5-gb9.js} +3 -3
  30. package/dist/_chunks/{bishop-score-C6eoak_j.js.map → bishop-score-DDW5-gb9.js.map} +1 -1
  31. package/dist/_chunks/{bmi-calculator-BmQfoEGP.js → bmi-calculator-Bk2GAju7.js} +2 -2
  32. package/dist/_chunks/{bmi-calculator-BmQfoEGP.js.map → bmi-calculator-Bk2GAju7.js.map} +1 -1
  33. package/dist/_chunks/{booking-B62CMY5k.js → booking-B1Qkcl3c.js} +9 -9
  34. package/dist/_chunks/{booking-B62CMY5k.js.map → booking-B1Qkcl3c.js.map} +1 -1
  35. package/dist/_chunks/{button-DD_0Xdmr.js → button-CPGiR_bH.js} +56 -35
  36. package/dist/_chunks/button-CPGiR_bH.js.map +1 -0
  37. package/dist/_chunks/button-group-DzV5wgnx.js +289 -0
  38. package/dist/_chunks/button-group-DzV5wgnx.js.map +1 -0
  39. package/dist/_chunks/camera-VSklPDCv.js +21 -0
  40. package/dist/_chunks/camera-VSklPDCv.js.map +1 -0
  41. package/dist/_chunks/{care-plan-card-DhXbfGzE.js → care-plan-card-BrwhyIJI.js} +3 -3
  42. package/dist/_chunks/{care-plan-card-DhXbfGzE.js.map → care-plan-card-BrwhyIJI.js.map} +1 -1
  43. package/dist/_chunks/{care-plan-entry-card-D3YGD6rj.js → care-plan-entry-card-DWEdCQM3.js} +3 -3
  44. package/dist/_chunks/{care-plan-entry-card-D3YGD6rj.js.map → care-plan-entry-card-DWEdCQM3.js.map} +1 -1
  45. package/dist/_chunks/{care-plan-header-DtQxyfOb.js → care-plan-header-BXvRpGG8.js} +2 -2
  46. package/dist/_chunks/{care-plan-header-DtQxyfOb.js.map → care-plan-header-BXvRpGG8.js.map} +1 -1
  47. package/dist/_chunks/{carousel.agent-j7hWxJWr.js → carousel.agent-CtAAdsAd.js} +2 -2
  48. package/dist/_chunks/{carousel.agent-j7hWxJWr.js.map → carousel.agent-CtAAdsAd.js.map} +1 -1
  49. package/dist/_chunks/{chat-container-BVCoN06N.js → chat-container-HlFnoEIl.js} +4 -2
  50. package/dist/_chunks/{chat-container-BVCoN06N.js.map → chat-container-HlFnoEIl.js.map} +1 -1
  51. package/dist/_chunks/{chat-input-Btq_uuMZ.js → chat-input-BTCDqUDX.js} +2 -2
  52. package/dist/_chunks/{chat-input-Btq_uuMZ.js.map → chat-input-BTCDqUDX.js.map} +1 -1
  53. package/dist/_chunks/{chat-message-DXjjM8z9.js → chat-message-CdjWqZjo.js} +3 -3
  54. package/dist/_chunks/{chat-message-DXjjM8z9.js.map → chat-message-CdjWqZjo.js.map} +1 -1
  55. package/dist/_chunks/{code-block-Cwi7e3HM.js → code-block-BwanBjRh.js} +2 -2
  56. package/dist/_chunks/{code-block-Cwi7e3HM.js.map → code-block-BwanBjRh.js.map} +1 -1
  57. package/dist/_chunks/{connection-status-0HajXMXM.js → connection-status-oEUyrvev.js} +3 -3
  58. package/dist/_chunks/{connection-status-0HajXMXM.js.map → connection-status-oEUyrvev.js.map} +1 -1
  59. package/dist/_chunks/{contact-profile-card-IggiUVpN.js → contact-profile-card-veMV3W4J.js} +2 -2
  60. package/dist/_chunks/{contact-profile-card-IggiUVpN.js.map → contact-profile-card-veMV3W4J.js.map} +1 -1
  61. package/dist/_chunks/{control-room-rail-DaGcsdZ6.js → control-room-rail-CdfrZ6Vr.js} +3 -3
  62. package/dist/_chunks/{control-room-rail-DaGcsdZ6.js.map → control-room-rail-CdfrZ6Vr.js.map} +1 -1
  63. package/dist/_chunks/{copy-field-PAp0-Wr5.js → copy-field-DBc9QquW.js} +2 -2
  64. package/dist/_chunks/{copy-field-PAp0-Wr5.js.map → copy-field-DBc9QquW.js.map} +1 -1
  65. package/dist/_chunks/{cycle-calculator-BNILyVas.js → cycle-calculator-OQp8Ik5U.js} +4 -4
  66. package/dist/_chunks/{cycle-calculator-BNILyVas.js.map → cycle-calculator-OQp8Ik5U.js.map} +1 -1
  67. package/dist/_chunks/data-table-tabs-BEUXiRlu.js +710 -0
  68. package/dist/_chunks/data-table-tabs-BEUXiRlu.js.map +1 -0
  69. package/dist/_chunks/{date-picker-CVkD_lOi.js → date-picker-DzQS8mvt.js} +2 -2
  70. package/dist/_chunks/{date-picker-CVkD_lOi.js.map → date-picker-DzQS8mvt.js.map} +1 -1
  71. package/dist/_chunks/{date-picker-variants-DLg-ZrIo.js → date-picker-variants-CYQAm1Gk.js} +116 -115
  72. package/dist/_chunks/{date-picker-variants-DLg-ZrIo.js.map → date-picker-variants-CYQAm1Gk.js.map} +1 -1
  73. package/dist/_chunks/{date-range-picker-Dw12DgV8.js → date-range-picker-Cbz1SKhm.js} +3 -3
  74. package/dist/_chunks/{date-range-picker-Dw12DgV8.js.map → date-range-picker-Cbz1SKhm.js.map} +1 -1
  75. package/dist/_chunks/{date-time-picker-Cd_OJtOy.js → date-time-picker-B5IpU-nd.js} +2 -2
  76. package/dist/_chunks/{date-time-picker-Cd_OJtOy.js.map → date-time-picker-B5IpU-nd.js.map} +1 -1
  77. package/dist/_chunks/{de-DFLsUxeV.js → de-DETDHQ0o.js} +2 -2
  78. package/dist/_chunks/{de-DFLsUxeV.js.map → de-DETDHQ0o.js.map} +1 -1
  79. package/dist/_chunks/{description-list-CmBVxIF5.js → description-list-ClNLdRMy.js} +2 -2
  80. package/dist/_chunks/{description-list-CmBVxIF5.js.map → description-list-ClNLdRMy.js.map} +1 -1
  81. package/dist/_chunks/document-preview-CGSM_au9.js +181 -0
  82. package/dist/_chunks/document-preview-CGSM_au9.js.map +1 -0
  83. package/dist/_chunks/{document-scanner-B23j4w7X.js → document-scanner-B6h1Ir56.js} +198 -230
  84. package/dist/_chunks/document-scanner-B6h1Ir56.js.map +1 -0
  85. package/dist/_chunks/{due-date-calculator-CmdAl_JO.js → due-date-calculator-DASNRgnH.js} +4 -4
  86. package/dist/_chunks/{due-date-calculator-CmdAl_JO.js.map → due-date-calculator-DASNRgnH.js.map} +1 -1
  87. package/dist/_chunks/{editable-currency-cell-renderer-z9fJFw6Z.js → editable-currency-cell-renderer-GwfA9tTR.js} +3 -3
  88. package/dist/_chunks/{editable-currency-cell-renderer-z9fJFw6Z.js.map → editable-currency-cell-renderer-GwfA9tTR.js.map} +1 -1
  89. package/dist/_chunks/{editor-overlay-BIOzr8v7.js → editor-overlay-DE3esyio.js} +2 -2
  90. package/dist/_chunks/{editor-overlay-BIOzr8v7.js.map → editor-overlay-DE3esyio.js.map} +1 -1
  91. package/dist/_chunks/{el-OVjBKytp.js → el-HV3jOI0z.js} +2 -2
  92. package/dist/_chunks/{el-OVjBKytp.js.map → el-HV3jOI0z.js.map} +1 -1
  93. package/dist/_chunks/{empty-state-BLy7tigq.js → empty-state-CrLsi0XI.js} +2 -2
  94. package/dist/_chunks/{empty-state-BLy7tigq.js.map → empty-state-CrLsi0XI.js.map} +1 -1
  95. package/dist/_chunks/{entity-summary-DpGziDv5.js → entity-summary--vP698Jn.js} +3 -3
  96. package/dist/_chunks/{entity-summary-DpGziDv5.js.map → entity-summary--vP698Jn.js.map} +1 -1
  97. package/dist/_chunks/eraser-CHOGQfVv.js +21 -0
  98. package/dist/_chunks/eraser-CHOGQfVv.js.map +1 -0
  99. package/dist/_chunks/{es-DKDNrHXG.js → es-Dpo7Olwo.js} +2 -2
  100. package/dist/_chunks/{es-DKDNrHXG.js.map → es-Dpo7Olwo.js.map} +1 -1
  101. package/dist/_chunks/face-scheme-C0rk21gg.js +3146 -0
  102. package/dist/_chunks/face-scheme-C0rk21gg.js.map +1 -0
  103. package/dist/_chunks/{fetal-weight-CVAH8sJ3.js → fetal-weight-1F9N4IMx.js} +2 -2
  104. package/dist/_chunks/{fetal-weight-CVAH8sJ3.js.map → fetal-weight-1F9N4IMx.js.map} +1 -1
  105. package/dist/_chunks/{field-array-CDzc3hTM.js → field-array-DH3Mb1i8.js} +3 -3
  106. package/dist/_chunks/{field-array-CDzc3hTM.js.map → field-array-DH3Mb1i8.js.map} +1 -1
  107. package/dist/_chunks/{field-value-Dj3i52H2.js → field-value-DHG6gEKS.js} +5 -5
  108. package/dist/_chunks/{field-value-Dj3i52H2.js.map → field-value-DHG6gEKS.js.map} +1 -1
  109. package/dist/_chunks/file-Cwe9VC1A.js +40 -0
  110. package/dist/_chunks/file-Cwe9VC1A.js.map +1 -0
  111. package/dist/_chunks/file-manager-UF8dkQF1.js +1776 -0
  112. package/dist/_chunks/file-manager-UF8dkQF1.js.map +1 -0
  113. package/dist/_chunks/{file-upload-Kw1rdvFw.js → file-upload-DENvuhfs.js} +101 -139
  114. package/dist/_chunks/file-upload-DENvuhfs.js.map +1 -0
  115. package/dist/_chunks/{finished-terminal-Di4gtZ50.js → finished-terminal-C0_mefrf.js} +11 -11
  116. package/dist/_chunks/finished-terminal-C0_mefrf.js.map +1 -0
  117. package/dist/_chunks/{fiscal-code-input-DKNXFXs3.js → fiscal-code-input-DWA6C8x8.js} +2 -2
  118. package/dist/_chunks/{fiscal-code-input-DKNXFXs3.js.map → fiscal-code-input-DWA6C8x8.js.map} +1 -1
  119. package/dist/_chunks/{fr-BfMvQh-v.js → fr-CgD4Jvtq.js} +2 -2
  120. package/dist/_chunks/{fr-BfMvQh-v.js.map → fr-CgD4Jvtq.js.map} +1 -1
  121. package/dist/_chunks/{freemium-paywall-DFoeedwh.js → freemium-paywall-CmV642PA.js} +7 -3
  122. package/dist/_chunks/freemium-paywall-CmV642PA.js.map +1 -0
  123. package/dist/_chunks/{gestational-age-calculator-BwCBPAGX.js → gestational-age-calculator-BpYw-WF-.js} +7 -7
  124. package/dist/_chunks/{gestational-age-calculator-BwCBPAGX.js.map → gestational-age-calculator-BpYw-WF-.js.map} +1 -1
  125. package/dist/_chunks/{hcg-doubling-CSsWxEJc.js → hcg-doubling-Dqj-EqMT.js} +3 -3
  126. package/dist/_chunks/{hcg-doubling-CSsWxEJc.js.map → hcg-doubling-Dqj-EqMT.js.map} +1 -1
  127. package/dist/_chunks/{header-DaXWDw0M.js → header-CjwasYnn.js} +88 -79
  128. package/dist/_chunks/header-CjwasYnn.js.map +1 -0
  129. package/dist/_chunks/{header-settings-B0G_u-wV.js → header-settings-4cwQzeFc.js} +4 -4
  130. package/dist/_chunks/{header-settings-B0G_u-wV.js.map → header-settings-4cwQzeFc.js.map} +1 -1
  131. package/dist/_chunks/{hi-C0GEMwlD.js → hi-Bf8CAP6b.js} +2 -2
  132. package/dist/_chunks/{hi-C0GEMwlD.js.map → hi-Bf8CAP6b.js.map} +1 -1
  133. package/dist/_chunks/highlighter-DSkckT2Q.js +15 -0
  134. package/dist/_chunks/highlighter-DSkckT2Q.js.map +1 -0
  135. package/dist/_chunks/{icon-button-LqoiKcUN.js → icon-button-C_kbcd7I.js} +2 -2
  136. package/dist/_chunks/{icon-button-LqoiKcUN.js.map → icon-button-C_kbcd7I.js.map} +1 -1
  137. package/dist/_chunks/icon-button-group-C_lqXTAj.js +391 -0
  138. package/dist/_chunks/icon-button-group-C_lqXTAj.js.map +1 -0
  139. package/dist/_chunks/{icon-picker-Di6uYDG-.js → icon-picker-CM9ubkew.js} +3 -3
  140. package/dist/_chunks/{icon-picker-Di6uYDG-.js.map → icon-picker-CM9ubkew.js.map} +1 -1
  141. package/dist/_chunks/{image-cropper-CdmWFrMC.js → image-cropper-DKe4AORY.js} +2 -2
  142. package/dist/_chunks/{image-cropper-CdmWFrMC.js.map → image-cropper-DKe4AORY.js.map} +1 -1
  143. package/dist/_chunks/{insert-result-C7xSDb8q.js → insert-result-D074GtHX.js} +58 -68
  144. package/dist/_chunks/insert-result-D074GtHX.js.map +1 -0
  145. package/dist/_chunks/{isSameWeek-HddDAyJG.js → isSameWeek-BYl5poz_.js} +2 -2
  146. package/dist/_chunks/{isSameWeek-HddDAyJG.js.map → isSameWeek-BYl5poz_.js.map} +1 -1
  147. package/dist/_chunks/{it-5f4hiT2e.js → it-mt1V2DFS.js} +3 -3
  148. package/dist/_chunks/{it-5f4hiT2e.js.map → it-mt1V2DFS.js.map} +1 -1
  149. package/dist/_chunks/{ja-U0_2inl_.js → ja-CbOHn2TO.js} +2 -2
  150. package/dist/_chunks/{ja-U0_2inl_.js.map → ja-CbOHn2TO.js.map} +1 -1
  151. package/dist/_chunks/{key-value-pair-Byyyc_9J.js → key-value-pair-LHKfDT_9.js} +2 -2
  152. package/dist/_chunks/{key-value-pair-Byyyc_9J.js.map → key-value-pair-LHKfDT_9.js.map} +1 -1
  153. package/dist/_chunks/link-cell-renderer-BQGUs45d.js +711 -0
  154. package/dist/_chunks/link-cell-renderer-BQGUs45d.js.map +1 -0
  155. package/dist/_chunks/{locale-picker-DzF7Q5Y8.js → locale-picker-GNF3lo8K.js} +3 -3
  156. package/dist/_chunks/{locale-picker-DzF7Q5Y8.js.map → locale-picker-GNF3lo8K.js.map} +1 -1
  157. package/dist/_chunks/{map-view-ByPvWG_9.js → map-view-CsaHfoo6.js} +2 -2
  158. package/dist/_chunks/{map-view-ByPvWG_9.js.map → map-view-CsaHfoo6.js.map} +1 -1
  159. package/dist/_chunks/{marketplace-app-shell-BCYiOvKZ.js → marketplace-app-shell-D_1tF4La.js} +6 -6
  160. package/dist/_chunks/marketplace-app-shell-D_1tF4La.js.map +1 -0
  161. package/dist/_chunks/{message-card-BZnnffyB.js → message-card-ievotOFa.js} +3 -3
  162. package/dist/_chunks/{message-card-BZnnffyB.js.map → message-card-ievotOFa.js.map} +1 -1
  163. package/dist/_chunks/{message-tray-cUHOCdU0.js → message-tray-BFlu8clI.js} +4 -4
  164. package/dist/_chunks/{message-tray-cUHOCdU0.js.map → message-tray-BFlu8clI.js.map} +1 -1
  165. package/dist/_chunks/{muscle-scheme-B9MIkuj0.js → muscle-scheme-CFBE2dme.js} +6 -14
  166. package/dist/_chunks/{muscle-scheme-B9MIkuj0.js.map → muscle-scheme-CFBE2dme.js.map} +1 -1
  167. package/dist/_chunks/{nl-CDVnnx1U.js → nl-C6Y0QXnm.js} +2 -2
  168. package/dist/_chunks/{nl-CDVnnx1U.js.map → nl-C6Y0QXnm.js.map} +1 -1
  169. package/dist/_chunks/{notes-panel-CMyjUXD4.js → notes-panel-Cvdp818a.js} +3 -3
  170. package/dist/_chunks/{notes-panel-CMyjUXD4.js.map → notes-panel-Cvdp818a.js.map} +1 -1
  171. package/dist/_chunks/{notification-card-BHJ07FkH.js → notification-card-D29_sVA1.js} +3 -3
  172. package/dist/_chunks/{notification-card-BHJ07FkH.js.map → notification-card-D29_sVA1.js.map} +1 -1
  173. package/dist/_chunks/{notification-tray-Dzm1c3Wy.js → notification-tray-CzIzz3bX.js} +4 -4
  174. package/dist/_chunks/{notification-tray-Dzm1c3Wy.js.map → notification-tray-CzIzz3bX.js.map} +1 -1
  175. package/dist/_chunks/optical-prescription-BEjYQjiO.js +1260 -0
  176. package/dist/_chunks/optical-prescription-BEjYQjiO.js.map +1 -0
  177. package/dist/_chunks/{patient-details-pU_E5xM2.js → patient-details-DP4wKyq4.js} +7 -7
  178. package/dist/_chunks/{patient-details-pU_E5xM2.js.map → patient-details-DP4wKyq4.js.map} +1 -1
  179. package/dist/_chunks/{patient-search-X9SUZGpy.js → patient-search-BaUJ_Y-N.js} +47 -45
  180. package/dist/_chunks/patient-search-BaUJ_Y-N.js.map +1 -0
  181. package/dist/_chunks/{patient-summary-card--t3BjTdU.js → patient-summary-card-D6kgdTNn.js} +4 -4
  182. package/dist/_chunks/{patient-summary-card--t3BjTdU.js.map → patient-summary-card-D6kgdTNn.js.map} +1 -1
  183. package/dist/_chunks/{patient-table-BgWgNIMf.js → patient-table-DweKjiXg.js} +122 -118
  184. package/dist/_chunks/patient-table-DweKjiXg.js.map +1 -0
  185. package/dist/_chunks/{payment-request-card-2ts7ITxd.js → payment-request-card-C0fqlKqO.js} +25 -24
  186. package/dist/_chunks/{payment-request-card-2ts7ITxd.js.map → payment-request-card-C0fqlKqO.js.map} +1 -1
  187. package/dist/_chunks/pen-line-D0De5zdl.js +21 -0
  188. package/dist/_chunks/pen-line-D0De5zdl.js.map +1 -0
  189. package/dist/_chunks/periodontal-chart-D8hOFmde.js +1173 -0
  190. package/dist/_chunks/periodontal-chart-D8hOFmde.js.map +1 -0
  191. package/dist/_chunks/{periodontal-chart-card-6c6Lt4ws.js → periodontal-chart-card-WVjJAheq.js} +2 -2
  192. package/dist/_chunks/{periodontal-chart-card-6c6Lt4ws.js.map → periodontal-chart-card-WVjJAheq.js.map} +1 -1
  193. package/dist/_chunks/periodontal-diagnosis-cco40xTa.js +345 -0
  194. package/dist/_chunks/periodontal-diagnosis-cco40xTa.js.map +1 -0
  195. package/dist/_chunks/periodontal-risk-chart-bUGkMwDg.js +334 -0
  196. package/dist/_chunks/periodontal-risk-chart-bUGkMwDg.js.map +1 -0
  197. package/dist/_chunks/{pl-BWNumNrg.js → pl-BdazJAOp.js} +3 -3
  198. package/dist/_chunks/{pl-BWNumNrg.js.map → pl-BdazJAOp.js.map} +1 -1
  199. package/dist/_chunks/{popover-uJ6BvEU3.js → popover-Cc0a69sw.js} +32 -29
  200. package/dist/_chunks/{popover-uJ6BvEU3.js.map → popover-Cc0a69sw.js.map} +1 -1
  201. package/dist/_chunks/{practice-results-CSEHTH2V.js → practice-results-BCr7jMt1.js} +5 -5
  202. package/dist/_chunks/{practice-results-CSEHTH2V.js.map → practice-results-BCr7jMt1.js.map} +1 -1
  203. package/dist/_chunks/{pregnancy-dating-CxVAA6_4.js → pregnancy-dating-msMl_6wz.js} +7 -7
  204. package/dist/_chunks/{pregnancy-dating-CxVAA6_4.js.map → pregnancy-dating-msMl_6wz.js.map} +1 -1
  205. package/dist/_chunks/{pregnancy-weight-gain-C7zyrwow.js → pregnancy-weight-gain-B-CkVYnU.js} +2 -2
  206. package/dist/_chunks/{pregnancy-weight-gain-C7zyrwow.js.map → pregnancy-weight-gain-B-CkVYnU.js.map} +1 -1
  207. package/dist/_chunks/{privacy-lock-DrRmK8C7.js → privacy-lock-YYBiI_bY.js} +3 -3
  208. package/dist/_chunks/{privacy-lock-DrRmK8C7.js.map → privacy-lock-YYBiI_bY.js.map} +1 -1
  209. package/dist/_chunks/{product-hub-panel-CaZqttvm.js → product-hub-panel-CTld1r5V.js} +3 -3
  210. package/dist/_chunks/{product-hub-panel-CaZqttvm.js.map → product-hub-panel-CTld1r5V.js.map} +1 -1
  211. package/dist/_chunks/{pt-zqdQuryr.js → pt-B3UKvhHp.js} +2 -2
  212. package/dist/_chunks/{pt-zqdQuryr.js.map → pt-B3UKvhHp.js.map} +1 -1
  213. package/dist/_chunks/{public-header.agent-C-opZaOw.js → public-header.agent-rX_VA6hd.js} +107 -103
  214. package/dist/_chunks/public-header.agent-rX_VA6hd.js.map +1 -0
  215. package/dist/_chunks/{radiograph-panel.agent-D1x33moc.js → radiograph-panel.agent-CxF9pVxd.js} +40 -57
  216. package/dist/_chunks/radiograph-panel.agent-CxF9pVxd.js.map +1 -0
  217. package/dist/_chunks/{reviews-panel-liUj6OPX.js → reviews-panel-DmOjvmyH.js} +4 -4
  218. package/dist/_chunks/{reviews-panel-liUj6OPX.js.map → reviews-panel-DmOjvmyH.js.map} +1 -1
  219. package/dist/_chunks/{rich-text-editor-DUgznqOf.js → rich-text-editor-CCWjNkbx.js} +26 -26
  220. package/dist/_chunks/rich-text-editor-CCWjNkbx.js.map +1 -0
  221. package/dist/_chunks/{ro-CornQr64.js → ro-DVTEQpPK.js} +2 -2
  222. package/dist/_chunks/{ro-CornQr64.js.map → ro-DVTEQpPK.js.map} +1 -1
  223. package/dist/_chunks/{ru-CKAXNYVD.js → ru-C-Mp40SC.js} +3 -3
  224. package/dist/_chunks/{ru-CKAXNYVD.js.map → ru-C-Mp40SC.js.map} +1 -1
  225. package/dist/_chunks/{select-BmCbJMJS.js → select-BW5ecXlX.js} +13 -13
  226. package/dist/_chunks/{select-BmCbJMJS.js.map → select-BW5ecXlX.js.map} +1 -1
  227. package/dist/_chunks/{session-countdown-qr8EO5QY.js → session-countdown-C8AsE072.js} +2 -2
  228. package/dist/_chunks/{session-countdown-qr8EO5QY.js.map → session-countdown-C8AsE072.js.map} +1 -1
  229. package/dist/_chunks/{sheet-B_X54aZo.js → sheet-D5K0LB3q.js} +2 -2
  230. package/dist/_chunks/{sheet-B_X54aZo.js.map → sheet-D5K0LB3q.js.map} +1 -1
  231. package/dist/_chunks/{sidebar-B0OBmJrC.js → sidebar-C0PbwJBc.js} +375 -335
  232. package/dist/_chunks/sidebar-C0PbwJBc.js.map +1 -0
  233. package/dist/_chunks/{sign-document-nK03S73h.js → sign-document-Bfk0WpWV.js} +2 -2
  234. package/dist/_chunks/{sign-document-nK03S73h.js.map → sign-document-Bfk0WpWV.js.map} +1 -1
  235. package/dist/_chunks/{sign-in-with-alfadocs-button-LppxjlFt.js → sign-in-with-alfadocs-button-UlYefZpI.js} +2 -2
  236. package/dist/_chunks/{sign-in-with-alfadocs-button-LppxjlFt.js.map → sign-in-with-alfadocs-button-UlYefZpI.js.map} +1 -1
  237. package/dist/_chunks/{signature-capture-Ct_4Md4e.js → signature-capture-DN52VNKL.js} +206 -189
  238. package/dist/_chunks/signature-capture-DN52VNKL.js.map +1 -0
  239. package/dist/_chunks/{signature-field-jgwYgUhO.js → signature-field-0rFODJlW.js} +47 -41
  240. package/dist/_chunks/signature-field-0rFODJlW.js.map +1 -0
  241. package/dist/_chunks/signature-request-C-mskXwi.js +318 -0
  242. package/dist/_chunks/signature-request-C-mskXwi.js.map +1 -0
  243. package/dist/_chunks/{slot-grid-FsqumOaS.js → slot-grid-CQSULZjd.js} +4 -4
  244. package/dist/_chunks/{slot-grid-FsqumOaS.js.map → slot-grid-CQSULZjd.js.map} +1 -1
  245. package/dist/_chunks/{sq-CIIvqXZv.js → sq-DierVlw-.js} +2 -2
  246. package/dist/_chunks/{sq-CIIvqXZv.js.map → sq-DierVlw-.js.map} +1 -1
  247. package/dist/_chunks/{streaming-text-Cedc05ya.js → streaming-text-C5bYz7LL.js} +2 -2
  248. package/dist/_chunks/{streaming-text-Cedc05ya.js.map → streaming-text-C5bYz7LL.js.map} +1 -1
  249. package/dist/_chunks/subDays-DIKRViZm.js +8 -0
  250. package/dist/_chunks/{subDays-DGSOp9d9.js.map → subDays-DIKRViZm.js.map} +1 -1
  251. package/dist/_chunks/{sv-Kpk1pzjz.js → sv-gQWo_19z.js} +2 -2
  252. package/dist/_chunks/{sv-Kpk1pzjz.js.map → sv-gQWo_19z.js.map} +1 -1
  253. package/dist/_chunks/{tabs-DVQ941Sj.js → tabs-CVTukWRD.js} +2 -2
  254. package/dist/_chunks/{tabs-DVQ941Sj.js.map → tabs-CVTukWRD.js.map} +1 -1
  255. package/dist/_chunks/{task-tray-DP5A3Qnc.js → task-tray-Br3vc0O1.js} +3 -3
  256. package/dist/_chunks/{task-tray-DP5A3Qnc.js.map → task-tray-Br3vc0O1.js.map} +1 -1
  257. package/dist/_chunks/{tasks-panel-BuxaYtEF.js → tasks-panel-CjGAhIN8.js} +6 -6
  258. package/dist/_chunks/{tasks-panel-BuxaYtEF.js.map → tasks-panel-CjGAhIN8.js.map} +1 -1
  259. package/dist/_chunks/{theme-toggle-dtdy5EaL.js → theme-toggle-BJCz_UOi.js} +3 -3
  260. package/dist/_chunks/{theme-toggle-dtdy5EaL.js.map → theme-toggle-BJCz_UOi.js.map} +1 -1
  261. package/dist/_chunks/{toast.agent-BSxl057x.js → toast.agent-uV8CeAy6.js} +2 -2
  262. package/dist/_chunks/{toast.agent-BSxl057x.js.map → toast.agent-uV8CeAy6.js.map} +1 -1
  263. package/dist/_chunks/{token-insert-menu-Pok4nExI.js → token-insert-menu-BYv6yoZI.js} +2 -2
  264. package/dist/_chunks/{token-insert-menu-Pok4nExI.js.map → token-insert-menu-BYv6yoZI.js.map} +1 -1
  265. package/dist/_chunks/{tool-rail-BZx0-yIr.js → tool-rail-AaTqxkIM.js} +2 -2
  266. package/dist/_chunks/{tool-rail-BZx0-yIr.js.map → tool-rail-AaTqxkIM.js.map} +1 -1
  267. package/dist/_chunks/tooth-data-BwuoKFf4.js +660 -0
  268. package/dist/_chunks/tooth-data-BwuoKFf4.js.map +1 -0
  269. package/dist/_chunks/tooth-scheme-BzJ6rcte.js +1483 -0
  270. package/dist/_chunks/tooth-scheme-BzJ6rcte.js.map +1 -0
  271. package/dist/_chunks/{tr-DHaeLFxG.js → tr-Btm6M3Km.js} +2 -2
  272. package/dist/_chunks/{tr-DHaeLFxG.js.map → tr-Btm6M3Km.js.map} +1 -1
  273. package/dist/_chunks/{transaction-chip-B6iWoVmU.js → transaction-chip-DJCstquX.js} +41 -51
  274. package/dist/_chunks/transaction-chip-DJCstquX.js.map +1 -0
  275. package/dist/_chunks/type-ggmfVs23.js +16 -0
  276. package/dist/_chunks/type-ggmfVs23.js.map +1 -0
  277. package/dist/_chunks/{unit-converter-fEqluT8b.js → unit-converter-CSLWFDQh.js} +3 -3
  278. package/dist/_chunks/{unit-converter-fEqluT8b.js.map → unit-converter-CSLWFDQh.js.map} +1 -1
  279. package/dist/_chunks/upload-BfT2hzMg.js +16 -0
  280. package/dist/_chunks/upload-BfT2hzMg.js.map +1 -0
  281. package/dist/_chunks/use-priority-overflow-c9SjxZkZ.js +101 -0
  282. package/dist/_chunks/use-priority-overflow-c9SjxZkZ.js.map +1 -0
  283. package/dist/_chunks/use-visual-viewport-pin-ChurOsHM.js +31 -0
  284. package/dist/_chunks/use-visual-viewport-pin-ChurOsHM.js.map +1 -0
  285. package/dist/_chunks/{warning-stack-BaMI7-n7.js → warning-stack-BlG_Ujy3.js} +3 -3
  286. package/dist/_chunks/{warning-stack-BaMI7-n7.js.map → warning-stack-BlG_Ujy3.js.map} +1 -1
  287. package/dist/_chunks/{workflow-map-qWsgCldq.js → workflow-map-C643Q43h.js} +5 -5
  288. package/dist/_chunks/{workflow-map-qWsgCldq.js.map → workflow-map-C643Q43h.js.map} +1 -1
  289. package/dist/_chunks/{zh-CN-BncsTBwM.js → zh-CN-DkVN4vsB.js} +3 -3
  290. package/dist/_chunks/{zh-CN-BncsTBwM.js.map → zh-CN-DkVN4vsB.js.map} +1 -1
  291. package/dist/agent-catalog.json +4081 -3201
  292. package/dist/agent-i18n/en.json +121 -69
  293. package/dist/brand/product-lockup/product-lockup.d.ts +1 -1
  294. package/dist/components/_shared/calendar-class-names.d.ts.map +1 -1
  295. package/dist/components/_shared/entity-card/entity-card.d.ts +1 -1
  296. package/dist/components/agenda-tray/index.js +1 -1
  297. package/dist/components/ai-consent-banner/index.js +1 -1
  298. package/dist/components/ai-prompt-input/index.js +1 -1
  299. package/dist/components/anamnesis-card/anamnesis-card.d.ts +1 -1
  300. package/dist/components/anamnesis-card/index.js +1 -1
  301. package/dist/components/appointment-card/appointment-card.d.ts +1 -1
  302. package/dist/components/appointment-card/index.js +2 -2
  303. package/dist/components/appointment-timeline/index.js +1 -1
  304. package/dist/components/audio-recorder/index.js +1 -1
  305. package/dist/components/benefit-card/benefit-card.d.ts.map +1 -1
  306. package/dist/components/benefit-card/index.js +1 -1
  307. package/dist/components/bishop-score/index.js +1 -1
  308. package/dist/components/bmi-calculator/index.js +1 -1
  309. package/dist/components/booking/index.js +1 -1
  310. package/dist/components/button/button.d.ts +8 -1
  311. package/dist/components/button/button.d.ts.map +1 -1
  312. package/dist/components/button/index.js +2 -2
  313. package/dist/components/button-group/button-group.d.ts +16 -0
  314. package/dist/components/button-group/button-group.d.ts.map +1 -1
  315. package/dist/components/button-group/index.js +1 -1
  316. package/dist/components/card/card.d.ts +1 -1
  317. package/dist/components/care-plan-card/index.js +1 -1
  318. package/dist/components/care-plan-entry-card/index.js +1 -1
  319. package/dist/components/care-plan-header/index.js +1 -1
  320. package/dist/components/carousel/index.js +1 -1
  321. package/dist/components/chat-container/chat-container.d.ts.map +1 -1
  322. package/dist/components/chat-container/index.js +1 -1
  323. package/dist/components/chat-input/index.js +1 -1
  324. package/dist/components/chat-message/index.js +1 -1
  325. package/dist/components/clinical-note-card/clinical-note-card.d.ts +1 -1
  326. package/dist/components/connection-status/index.js +1 -1
  327. package/dist/components/contact-profile-card/contact-profile-card.d.ts +1 -1
  328. package/dist/components/contact-profile-card/index.js +1 -1
  329. package/dist/components/control-room-rail/index.js +1 -1
  330. package/dist/components/copy-field/index.js +1 -1
  331. package/dist/components/counter/counter.d.ts +1 -1
  332. package/dist/components/cycle-calculator/index.js +1 -1
  333. package/dist/components/data-table/data-table.d.ts +2 -8
  334. package/dist/components/data-table/data-table.d.ts.map +1 -1
  335. package/dist/components/data-table/filters/number-filter.d.ts.map +1 -1
  336. package/dist/components/data-table/index.js +35 -34
  337. package/dist/components/data-table/index.js.map +1 -1
  338. package/dist/components/data-table/toolbar.d.ts +5 -11
  339. package/dist/components/data-table/toolbar.d.ts.map +1 -1
  340. package/dist/components/data-table-tabs/data-table-tabs.agent.d.ts +4 -0
  341. package/dist/components/data-table-tabs/data-table-tabs.agent.d.ts.map +1 -0
  342. package/dist/components/data-table-tabs/data-table-tabs.d.ts +93 -0
  343. package/dist/components/data-table-tabs/data-table-tabs.d.ts.map +1 -0
  344. package/dist/components/data-table-tabs/index.d.ts +5 -0
  345. package/dist/components/data-table-tabs/index.d.ts.map +1 -0
  346. package/dist/components/data-table-tabs/index.js +8 -0
  347. package/dist/components/data-table-tabs/use-data-table-filter-tabs.d.ts +63 -0
  348. package/dist/components/data-table-tabs/use-data-table-filter-tabs.d.ts.map +1 -0
  349. package/dist/components/date-picker/index.js +1 -1
  350. package/dist/components/date-range-picker/index.js +1 -1
  351. package/dist/components/date-time-picker/index.js +1 -1
  352. package/dist/components/description-list/index.js +1 -1
  353. package/dist/components/document-preview/document-preview.agent.d.ts +4 -0
  354. package/dist/components/document-preview/document-preview.agent.d.ts.map +1 -0
  355. package/dist/components/document-preview/document-preview.d.ts +41 -0
  356. package/dist/components/document-preview/document-preview.d.ts.map +1 -0
  357. package/dist/components/document-preview/index.d.ts +4 -0
  358. package/dist/components/document-preview/index.d.ts.map +1 -0
  359. package/dist/components/document-preview/index.js +6 -0
  360. package/dist/components/document-preview/index.js.map +1 -0
  361. package/dist/components/document-scanner/document-scanner.d.ts.map +1 -1
  362. package/dist/components/document-scanner/index.js +1 -1
  363. package/dist/components/due-date-calculator/index.js +2 -2
  364. package/dist/components/editor-overlay/index.js +1 -1
  365. package/dist/components/empty-state/index.js +1 -1
  366. package/dist/components/entity-summary/index.js +1 -1
  367. package/dist/components/face-scheme/face-scheme-data.d.ts +167 -0
  368. package/dist/components/face-scheme/face-scheme-data.d.ts.map +1 -1
  369. package/dist/components/face-scheme/face-scheme.agent.d.ts.map +1 -1
  370. package/dist/components/face-scheme/face-scheme.d.ts +112 -2
  371. package/dist/components/face-scheme/face-scheme.d.ts.map +1 -1
  372. package/dist/components/face-scheme/index.d.ts +2 -2
  373. package/dist/components/face-scheme/index.d.ts.map +1 -1
  374. package/dist/components/face-scheme/index.js +25 -14
  375. package/dist/components/fetal-weight/index.js +1 -1
  376. package/dist/components/field-array/index.js +1 -1
  377. package/dist/components/file-manager/dialogs.d.ts +48 -0
  378. package/dist/components/file-manager/dialogs.d.ts.map +1 -0
  379. package/dist/components/file-manager/file-manager.agent.d.ts +4 -0
  380. package/dist/components/file-manager/file-manager.agent.d.ts.map +1 -0
  381. package/dist/components/file-manager/file-manager.d.ts +82 -0
  382. package/dist/components/file-manager/file-manager.d.ts.map +1 -0
  383. package/dist/components/file-manager/folder-tree.d.ts +12 -0
  384. package/dist/components/file-manager/folder-tree.d.ts.map +1 -0
  385. package/dist/components/file-manager/index.d.ts +5 -0
  386. package/dist/components/file-manager/index.d.ts.map +1 -0
  387. package/dist/components/file-manager/index.js +6 -0
  388. package/dist/components/file-manager/index.js.map +1 -0
  389. package/dist/components/file-manager/list-view.d.ts +49 -0
  390. package/dist/components/file-manager/list-view.d.ts.map +1 -0
  391. package/dist/components/file-manager/toolbar.d.ts +15 -0
  392. package/dist/components/file-manager/toolbar.d.ts.map +1 -0
  393. package/dist/components/file-manager/types.d.ts +167 -0
  394. package/dist/components/file-manager/types.d.ts.map +1 -0
  395. package/dist/components/file-manager/utils.d.ts +34 -0
  396. package/dist/components/file-manager/utils.d.ts.map +1 -0
  397. package/dist/components/file-upload/file-upload.d.ts +1 -0
  398. package/dist/components/file-upload/file-upload.d.ts.map +1 -1
  399. package/dist/components/file-upload/index.d.ts +1 -1
  400. package/dist/components/file-upload/index.d.ts.map +1 -1
  401. package/dist/components/file-upload/index.js +4 -3
  402. package/dist/components/finished-terminal/finished-terminal.d.ts.map +1 -1
  403. package/dist/components/finished-terminal/index.js +1 -1
  404. package/dist/components/fiscal-code-input/index.js +1 -1
  405. package/dist/components/flag/flag.d.ts +1 -1
  406. package/dist/components/freemium-paywall/freemium-paywall.d.ts.map +1 -1
  407. package/dist/components/freemium-paywall/index.js +1 -1
  408. package/dist/components/gestational-age-calculator/index.js +1 -1
  409. package/dist/components/hcg-doubling/index.js +1 -1
  410. package/dist/components/header/header.d.ts.map +1 -1
  411. package/dist/components/header/index.js +1 -1
  412. package/dist/components/header-settings/index.js +1 -1
  413. package/dist/components/icon-button/index.js +1 -1
  414. package/dist/components/icon-button-group/icon-button-group.d.ts +6 -0
  415. package/dist/components/icon-button-group/icon-button-group.d.ts.map +1 -1
  416. package/dist/components/icon-button-group/index.js +1 -1
  417. package/dist/components/icon-picker/index.js +1 -1
  418. package/dist/components/image-cropper/index.js +1 -1
  419. package/dist/components/index.d.ts +7 -1
  420. package/dist/components/index.d.ts.map +1 -1
  421. package/dist/components/key-value-pair/index.js +1 -1
  422. package/dist/components/link/link.d.ts +1 -1
  423. package/dist/components/locale-picker/index.js +1 -1
  424. package/dist/components/map-view/index.js +1 -1
  425. package/dist/components/matrix-rain/matrix-rain.d.ts +1 -1
  426. package/dist/components/message-card/index.js +1 -1
  427. package/dist/components/message-card/message-card.d.ts +1 -1
  428. package/dist/components/message-tray/index.js +1 -1
  429. package/dist/components/muscle-scheme/index.js +1 -1
  430. package/dist/components/muscle-scheme/muscle-scheme.d.ts.map +1 -1
  431. package/dist/components/notes-panel/index.js +1 -1
  432. package/dist/components/notification-card/index.js +1 -1
  433. package/dist/components/notification-card/notification-card.d.ts +1 -1
  434. package/dist/components/notification-tray/index.js +1 -1
  435. package/dist/components/operator-hero/operator-hero.d.ts +1 -1
  436. package/dist/components/optical-prescription/index.d.ts +4 -2
  437. package/dist/components/optical-prescription/index.d.ts.map +1 -1
  438. package/dist/components/optical-prescription/index.js +29 -26
  439. package/dist/components/optical-prescription/optical-prescription-charts.d.ts +78 -0
  440. package/dist/components/optical-prescription/optical-prescription-charts.d.ts.map +1 -0
  441. package/dist/components/optical-prescription/optical-prescription-data.d.ts +29 -0
  442. package/dist/components/optical-prescription/optical-prescription-data.d.ts.map +1 -1
  443. package/dist/components/optical-prescription/optical-prescription.agent.d.ts.map +1 -1
  444. package/dist/components/optical-prescription/optical-prescription.d.ts +9 -0
  445. package/dist/components/optical-prescription/optical-prescription.d.ts.map +1 -1
  446. package/dist/components/patient-details/index.js +1 -1
  447. package/dist/components/patient-search/index.js +1 -1
  448. package/dist/components/patient-search/patient-search.d.ts.map +1 -1
  449. package/dist/components/patient-summary-card/index.js +1 -1
  450. package/dist/components/patient-summary-card/patient-summary-card.d.ts +1 -1
  451. package/dist/components/patient-table/columns.d.ts.map +1 -1
  452. package/dist/components/patient-table/index.js +1 -1
  453. package/dist/components/payment-card/index.js +1 -1
  454. package/dist/components/payment-card/payment-card.d.ts +1 -1
  455. package/dist/components/payment-card/payment-request-card.d.ts +1 -1
  456. package/dist/components/periodontal-chart/index.d.ts +6 -0
  457. package/dist/components/periodontal-chart/index.d.ts.map +1 -0
  458. package/dist/components/periodontal-chart/index.js +22 -0
  459. package/dist/components/periodontal-chart/index.js.map +1 -0
  460. package/dist/components/periodontal-chart/periodontal-chart-data.d.ts +119 -0
  461. package/dist/components/periodontal-chart/periodontal-chart-data.d.ts.map +1 -0
  462. package/dist/components/periodontal-chart/periodontal-chart.agent.d.ts +4 -0
  463. package/dist/components/periodontal-chart/periodontal-chart.agent.d.ts.map +1 -0
  464. package/dist/components/periodontal-chart/periodontal-chart.d.ts +69 -0
  465. package/dist/components/periodontal-chart/periodontal-chart.d.ts.map +1 -0
  466. package/dist/components/periodontal-chart-card/index.js +1 -1
  467. package/dist/components/periodontal-chart-card/periodontal-chart-card.d.ts +1 -1
  468. package/dist/components/periodontal-diagnosis/index.d.ts +6 -0
  469. package/dist/components/periodontal-diagnosis/index.d.ts.map +1 -0
  470. package/dist/components/periodontal-diagnosis/index.js +13 -0
  471. package/dist/components/periodontal-diagnosis/index.js.map +1 -0
  472. package/dist/components/periodontal-diagnosis/periodontal-diagnosis-data.d.ts +30 -0
  473. package/dist/components/periodontal-diagnosis/periodontal-diagnosis-data.d.ts.map +1 -0
  474. package/dist/components/periodontal-diagnosis/periodontal-diagnosis.agent.d.ts +4 -0
  475. package/dist/components/periodontal-diagnosis/periodontal-diagnosis.agent.d.ts.map +1 -0
  476. package/dist/components/periodontal-diagnosis/periodontal-diagnosis.d.ts +44 -0
  477. package/dist/components/periodontal-diagnosis/periodontal-diagnosis.d.ts.map +1 -0
  478. package/dist/components/periodontal-risk-chart/index.d.ts +6 -0
  479. package/dist/components/periodontal-risk-chart/index.d.ts.map +1 -0
  480. package/dist/components/periodontal-risk-chart/index.js +9 -0
  481. package/dist/components/periodontal-risk-chart/index.js.map +1 -0
  482. package/dist/components/periodontal-risk-chart/periodontal-risk-chart.agent.d.ts +4 -0
  483. package/dist/components/periodontal-risk-chart/periodontal-risk-chart.agent.d.ts.map +1 -0
  484. package/dist/components/periodontal-risk-chart/periodontal-risk-chart.d.ts +28 -0
  485. package/dist/components/periodontal-risk-chart/periodontal-risk-chart.d.ts.map +1 -0
  486. package/dist/components/periodontal-risk-chart/periodontal-risk-data.d.ts +47 -0
  487. package/dist/components/periodontal-risk-chart/periodontal-risk-data.d.ts.map +1 -0
  488. package/dist/components/popover/index.js +1 -1
  489. package/dist/components/popover/popover.d.ts +1 -0
  490. package/dist/components/popover/popover.d.ts.map +1 -1
  491. package/dist/components/practice-results/index.js +1 -1
  492. package/dist/components/pregnancy-dating/index.js +1 -1
  493. package/dist/components/pregnancy-weight-gain/index.js +1 -1
  494. package/dist/components/privacy-lock/index.js +1 -1
  495. package/dist/components/product-hub-tray/index.js +1 -1
  496. package/dist/components/product-hub-tray/product-hub-panel.d.ts +1 -1
  497. package/dist/components/public-header/index.js +1 -1
  498. package/dist/components/public-header/public-header.d.ts +1 -1
  499. package/dist/components/public-header/public-header.d.ts.map +1 -1
  500. package/dist/components/radiograph-panel/index.js +1 -1
  501. package/dist/components/radiograph-panel/radiograph-panel.d.ts +2 -2
  502. package/dist/components/radiograph-panel/radiograph-panel.d.ts.map +1 -1
  503. package/dist/components/reviews-panel/index.js +1 -1
  504. package/dist/components/rich-text-editor/index.js +1 -1
  505. package/dist/components/select/index.js +1 -1
  506. package/dist/components/select/select.d.ts.map +1 -1
  507. package/dist/components/session-countdown/index.js +1 -1
  508. package/dist/components/sheet/index.js +1 -1
  509. package/dist/components/sidebar/index.js +1 -1
  510. package/dist/components/sidebar/sidebar.d.ts +9 -0
  511. package/dist/components/sidebar/sidebar.d.ts.map +1 -1
  512. package/dist/components/sign-document/index.js +1 -1
  513. package/dist/components/sign-in-with-alfadocs-button/index.js +1 -1
  514. package/dist/components/signature-capture/index.js +1 -1
  515. package/dist/components/signature-capture/signature-capture.d.ts.map +1 -1
  516. package/dist/components/signature-field/index.js +1 -1
  517. package/dist/components/signature-field/signature-field.d.ts +7 -0
  518. package/dist/components/signature-field/signature-field.d.ts.map +1 -1
  519. package/dist/components/skeleton-scheme/index.js +1186 -0
  520. package/dist/components/skeleton-scheme/index.js.map +1 -0
  521. package/dist/components/slot-grid/index.js +1 -1
  522. package/dist/components/stat/stat.d.ts +1 -1
  523. package/dist/components/streaming-text/index.js +1 -1
  524. package/dist/components/tabs/index.js +1 -1
  525. package/dist/components/task-tray/index.js +1 -1
  526. package/dist/components/tasks-panel/index.js +1 -1
  527. package/dist/components/theme-toggle/index.js +1 -1
  528. package/dist/components/toast/index.js +1 -1
  529. package/dist/components/token-insert-menu/index.js +1 -1
  530. package/dist/components/tool-rail/index.js +1 -1
  531. package/dist/components/tooth-scheme/index.js +29 -28
  532. package/dist/components/tooth-scheme/index.js.map +1 -1
  533. package/dist/components/transaction-chip/index.js +1 -1
  534. package/dist/components/unit-converter/index.js +1 -1
  535. package/dist/components/warning-stack/index.js +1 -1
  536. package/dist/components/workflow/index.js +1 -1
  537. package/dist/hooks/index.d.ts +2 -0
  538. package/dist/hooks/index.d.ts.map +1 -1
  539. package/dist/hooks/index.js +40 -35
  540. package/dist/hooks/index.js.map +1 -1
  541. package/dist/hooks/use-priority-overflow.d.ts +63 -0
  542. package/dist/hooks/use-priority-overflow.d.ts.map +1 -0
  543. package/dist/hooks/use-visual-viewport-pin.d.ts +32 -0
  544. package/dist/hooks/use-visual-viewport-pin.d.ts.map +1 -0
  545. package/dist/i18n/locales/ar.d.ts +490 -9
  546. package/dist/i18n/locales/ar.d.ts.map +1 -1
  547. package/dist/i18n/locales/ar.js +493 -12
  548. package/dist/i18n/locales/ar.js.map +1 -1
  549. package/dist/i18n/locales/de.d.ts +490 -9
  550. package/dist/i18n/locales/de.d.ts.map +1 -1
  551. package/dist/i18n/locales/de.js +493 -12
  552. package/dist/i18n/locales/de.js.map +1 -1
  553. package/dist/i18n/locales/el.d.ts +490 -9
  554. package/dist/i18n/locales/el.d.ts.map +1 -1
  555. package/dist/i18n/locales/el.js +493 -12
  556. package/dist/i18n/locales/el.js.map +1 -1
  557. package/dist/i18n/locales/en.d.ts +490 -9
  558. package/dist/i18n/locales/en.d.ts.map +1 -1
  559. package/dist/i18n/locales/en.js +493 -12
  560. package/dist/i18n/locales/en.js.map +1 -1
  561. package/dist/i18n/locales/es.d.ts +490 -9
  562. package/dist/i18n/locales/es.d.ts.map +1 -1
  563. package/dist/i18n/locales/es.js +493 -12
  564. package/dist/i18n/locales/es.js.map +1 -1
  565. package/dist/i18n/locales/fr.d.ts +490 -9
  566. package/dist/i18n/locales/fr.d.ts.map +1 -1
  567. package/dist/i18n/locales/fr.js +493 -12
  568. package/dist/i18n/locales/fr.js.map +1 -1
  569. package/dist/i18n/locales/hi.d.ts +490 -9
  570. package/dist/i18n/locales/hi.d.ts.map +1 -1
  571. package/dist/i18n/locales/hi.js +493 -12
  572. package/dist/i18n/locales/hi.js.map +1 -1
  573. package/dist/i18n/locales/it.d.ts +490 -9
  574. package/dist/i18n/locales/it.d.ts.map +1 -1
  575. package/dist/i18n/locales/it.js +493 -12
  576. package/dist/i18n/locales/it.js.map +1 -1
  577. package/dist/i18n/locales/ja.d.ts +490 -9
  578. package/dist/i18n/locales/ja.d.ts.map +1 -1
  579. package/dist/i18n/locales/ja.js +493 -12
  580. package/dist/i18n/locales/ja.js.map +1 -1
  581. package/dist/i18n/locales/nl.d.ts +490 -9
  582. package/dist/i18n/locales/nl.d.ts.map +1 -1
  583. package/dist/i18n/locales/nl.js +493 -12
  584. package/dist/i18n/locales/nl.js.map +1 -1
  585. package/dist/i18n/locales/pl.d.ts +490 -9
  586. package/dist/i18n/locales/pl.d.ts.map +1 -1
  587. package/dist/i18n/locales/pl.js +493 -12
  588. package/dist/i18n/locales/pl.js.map +1 -1
  589. package/dist/i18n/locales/pt.d.ts +490 -9
  590. package/dist/i18n/locales/pt.d.ts.map +1 -1
  591. package/dist/i18n/locales/pt.js +493 -12
  592. package/dist/i18n/locales/pt.js.map +1 -1
  593. package/dist/i18n/locales/ro.d.ts +490 -9
  594. package/dist/i18n/locales/ro.d.ts.map +1 -1
  595. package/dist/i18n/locales/ro.js +493 -12
  596. package/dist/i18n/locales/ro.js.map +1 -1
  597. package/dist/i18n/locales/ru.d.ts +490 -9
  598. package/dist/i18n/locales/ru.d.ts.map +1 -1
  599. package/dist/i18n/locales/ru.js +493 -12
  600. package/dist/i18n/locales/ru.js.map +1 -1
  601. package/dist/i18n/locales/sq.d.ts +490 -9
  602. package/dist/i18n/locales/sq.d.ts.map +1 -1
  603. package/dist/i18n/locales/sq.js +493 -12
  604. package/dist/i18n/locales/sq.js.map +1 -1
  605. package/dist/i18n/locales/sv.d.ts +490 -9
  606. package/dist/i18n/locales/sv.d.ts.map +1 -1
  607. package/dist/i18n/locales/sv.js +493 -12
  608. package/dist/i18n/locales/sv.js.map +1 -1
  609. package/dist/i18n/locales/tr.d.ts +490 -9
  610. package/dist/i18n/locales/tr.d.ts.map +1 -1
  611. package/dist/i18n/locales/tr.js +493 -12
  612. package/dist/i18n/locales/tr.js.map +1 -1
  613. package/dist/i18n/locales/zh.d.ts +490 -9
  614. package/dist/i18n/locales/zh.d.ts.map +1 -1
  615. package/dist/i18n/locales/zh.js +493 -12
  616. package/dist/i18n/locales/zh.js.map +1 -1
  617. package/dist/index.js +872 -809
  618. package/dist/index.js.map +1 -1
  619. package/dist/locales/ar.json +493 -12
  620. package/dist/locales/de.json +493 -12
  621. package/dist/locales/el.json +493 -12
  622. package/dist/locales/en.json +493 -12
  623. package/dist/locales/es.json +493 -12
  624. package/dist/locales/fr.json +493 -12
  625. package/dist/locales/hi.json +493 -12
  626. package/dist/locales/it.json +493 -12
  627. package/dist/locales/ja.json +493 -12
  628. package/dist/locales/nl.json +493 -12
  629. package/dist/locales/pl.json +493 -12
  630. package/dist/locales/pt.json +493 -12
  631. package/dist/locales/ro.json +493 -12
  632. package/dist/locales/ru.json +493 -12
  633. package/dist/locales/sq.json +493 -12
  634. package/dist/locales/sv.json +493 -12
  635. package/dist/locales/tr.json +493 -12
  636. package/dist/locales/zh.json +493 -12
  637. package/dist/patterns/alia-assistant/index.js +1 -1
  638. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  639. package/dist/patterns/marketplace-app-shell/marketplace-app-shell.d.ts +1 -1
  640. package/dist/patterns/signature-request/index.d.ts +3 -0
  641. package/dist/patterns/signature-request/index.d.ts.map +1 -0
  642. package/dist/patterns/signature-request/index.js +5 -0
  643. package/dist/patterns/signature-request/index.js.map +1 -0
  644. package/dist/patterns/signature-request/signature-request.d.ts +81 -0
  645. package/dist/patterns/signature-request/signature-request.d.ts.map +1 -0
  646. package/dist/tokens.css +2 -2
  647. package/package.json +32 -4
  648. package/dist/_chunks/benefit-card-Xnxj4Gmo.js.map +0 -1
  649. package/dist/_chunks/button-DD_0Xdmr.js.map +0 -1
  650. package/dist/_chunks/button-group-CvEnVzY7.js +0 -119
  651. package/dist/_chunks/button-group-CvEnVzY7.js.map +0 -1
  652. package/dist/_chunks/columns-2-8lq4-b8e.js.map +0 -1
  653. package/dist/_chunks/document-scanner-B23j4w7X.js.map +0 -1
  654. package/dist/_chunks/face-scheme-BT9_KdL0.js +0 -1450
  655. package/dist/_chunks/face-scheme-BT9_KdL0.js.map +0 -1
  656. package/dist/_chunks/file-upload-Kw1rdvFw.js.map +0 -1
  657. package/dist/_chunks/finished-terminal-Di4gtZ50.js.map +0 -1
  658. package/dist/_chunks/freemium-paywall-DFoeedwh.js.map +0 -1
  659. package/dist/_chunks/header-DaXWDw0M.js.map +0 -1
  660. package/dist/_chunks/icon-button-group-C48khLE0.js +0 -206
  661. package/dist/_chunks/icon-button-group-C48khLE0.js.map +0 -1
  662. package/dist/_chunks/insert-result-C7xSDb8q.js.map +0 -1
  663. package/dist/_chunks/link-cell-renderer-BCppbMec.js +0 -2185
  664. package/dist/_chunks/link-cell-renderer-BCppbMec.js.map +0 -1
  665. package/dist/_chunks/marketplace-app-shell-BCYiOvKZ.js.map +0 -1
  666. package/dist/_chunks/optical-prescription-Bmlbuopi.js +0 -653
  667. package/dist/_chunks/optical-prescription-Bmlbuopi.js.map +0 -1
  668. package/dist/_chunks/patient-search-X9SUZGpy.js.map +0 -1
  669. package/dist/_chunks/patient-shell-oiIRqEAl.js +0 -162
  670. package/dist/_chunks/patient-shell-oiIRqEAl.js.map +0 -1
  671. package/dist/_chunks/patient-table-BgWgNIMf.js.map +0 -1
  672. package/dist/_chunks/public-header.agent-C-opZaOw.js.map +0 -1
  673. package/dist/_chunks/radiograph-panel.agent-D1x33moc.js.map +0 -1
  674. package/dist/_chunks/rich-text-editor-DUgznqOf.js.map +0 -1
  675. package/dist/_chunks/sidebar-B0OBmJrC.js.map +0 -1
  676. package/dist/_chunks/signature-capture-Ct_4Md4e.js.map +0 -1
  677. package/dist/_chunks/signature-field-jgwYgUhO.js.map +0 -1
  678. package/dist/_chunks/subDays-DGSOp9d9.js +0 -8
  679. package/dist/_chunks/tooth-scheme-D_rso4uu.js +0 -2133
  680. package/dist/_chunks/tooth-scheme-D_rso4uu.js.map +0 -1
  681. package/dist/_chunks/transaction-chip-B6iWoVmU.js.map +0 -1
  682. package/dist/patterns/patient-shell/index.d.ts +0 -12
  683. package/dist/patterns/patient-shell/index.d.ts.map +0 -1
  684. package/dist/patterns/patient-shell/index.js +0 -5
  685. package/dist/patterns/patient-shell/patient-shell.d.ts +0 -62
  686. package/dist/patterns/patient-shell/patient-shell.d.ts.map +0 -1
  687. /package/dist/{patterns/patient-shell → components/data-table-tabs}/index.js.map +0 -0
@@ -0,0 +1,1173 @@
1
+ import { jsx as s, jsxs as m } from "react/jsx-runtime";
2
+ import { forwardRef as Xe, useRef as fe, useState as Ze, useCallback as R, useMemo as be, useImperativeHandle as et } from "react";
3
+ import { c as Ce } from "./index-D2ZczOXr.js";
4
+ import { useTranslation as tt } from "react-i18next";
5
+ import { u as rt } from "./registry-DvAUVLHh.js";
6
+ import { e as st, d as nt, f as Me, P as ke, F as at, t as ot } from "./tooth-data-BwuoKFf4.js";
7
+ import { P as it } from "./periodontal-chart-card-WVjJAheq.js";
8
+ const _ = {
9
+ type: "string",
10
+ description: "FDI tooth id ('11'–'48' permanent, '51'–'85' primary)."
11
+ }, H = {
12
+ enum: ["db", "b", "mb", "dl", "l", "ml"],
13
+ description: "Probing site: (m/d)b = mesio-/disto-/mid buccal, (m/d)l = mesio-/disto-/mid lingual."
14
+ }, ve = {
15
+ type: "integer",
16
+ description: "Whole millimetres — perio probing is recorded in integer mm."
17
+ }, lt = {
18
+ type: "object",
19
+ properties: {
20
+ meanPocketDepthMm: { type: ["number", "null"] },
21
+ meanAttachmentLevelMm: { type: ["number", "null"] },
22
+ plaquePercent: { type: ["number", "null"] },
23
+ bleedingPercent: { type: ["number", "null"] },
24
+ scoredSiteCount: { type: "number" },
25
+ deepPocketCount: { type: "number" }
26
+ }
27
+ };
28
+ function ct(a) {
29
+ if (!a) return null;
30
+ const r = { ...a };
31
+ return delete r.note, r;
32
+ }
33
+ const dt = {
34
+ id: "periodontal-chart",
35
+ // pick — focus a measurement input (transient); set_value / edit_inline —
36
+ // record per-site probing readings and per-tooth flags.
37
+ capabilities: ["pick", "set_value", "edit_inline"],
38
+ state: {
39
+ indices: {
40
+ type: "object",
41
+ descriptionKey: "ui.agent.periodontalChart.state.indices",
42
+ description: "Derived whole-mouth indices: mean probing depth, mean attachment level, plaque %, bleeding %, scored-site and deep-pocket counts. Aggregates only — no per-site or patient data.",
43
+ read: (a) => a.getIndices()
44
+ },
45
+ missingTeeth: {
46
+ type: "string[]",
47
+ descriptionKey: "ui.agent.periodontalChart.state.missingTeeth",
48
+ description: "FDI ids of every tooth flagged as missing.",
49
+ read: (a) => a.missingTeeth()
50
+ },
51
+ chartedTeeth: {
52
+ type: "string[]",
53
+ descriptionKey: "ui.agent.periodontalChart.state.chartedTeeth",
54
+ description: "FDI ids of teeth carrying at least one probing reading or flag. Identifiers only — never patient identity or the free-text note.",
55
+ read: (a) => Object.entries(a.getValue()).filter(([, r]) => r.missing || r.implant || r.mobility != null || r.furcation && Object.keys(r.furcation).length > 0 ? !0 : (r.sites ? Object.values(r.sites) : []).some(
56
+ (u) => u != null && (u.pocketDepthMm != null || u.recessionMm != null || u.bleeding || u.plaque || u.suppuration)
57
+ )).map(([r]) => r)
58
+ }
59
+ },
60
+ actions: {
61
+ focus_site: {
62
+ safety: "read",
63
+ argsType: '{ fdi: string; site: PeriodontalSiteId; field: "pocketDepthMm" | "recessionMm" }',
64
+ argsSchema: {
65
+ type: "object",
66
+ properties: {
67
+ fdi: _,
68
+ site: H,
69
+ field: { enum: ["pocketDepthMm", "recessionMm"] }
70
+ },
71
+ required: ["fdi", "site", "field"]
72
+ },
73
+ idempotent: !0,
74
+ descriptionKey: "ui.agent.periodontalChart.actions.focusSite",
75
+ description: "Move focus to a specific probing-measurement input.",
76
+ invoke: (a, r) => {
77
+ a.focusSite(r.fdi, r.site, r.field);
78
+ }
79
+ },
80
+ get_tooth: {
81
+ safety: "read",
82
+ argsType: "{ fdi: string }",
83
+ argsSchema: {
84
+ type: "object",
85
+ properties: { fdi: _ },
86
+ required: ["fdi"]
87
+ },
88
+ returns: "object | null",
89
+ returnsSchema: { type: ["object", "null"] },
90
+ idempotent: !0,
91
+ descriptionKey: "ui.agent.periodontalChart.actions.getTooth",
92
+ description: "Read one tooth’s structural readings (sites, flags, mobility, furcation). The free-text note is never returned.",
93
+ invoke: (a, r) => ct(a.getTooth(r.fdi))
94
+ },
95
+ get_indices: {
96
+ safety: "read",
97
+ argsType: "{}",
98
+ argsSchema: { type: "object", properties: {} },
99
+ returns: "PeriodontalIndices",
100
+ returnsSchema: lt,
101
+ idempotent: !0,
102
+ descriptionKey: "ui.agent.periodontalChart.actions.getIndices",
103
+ description: "Read the derived whole-mouth summary indices.",
104
+ invoke: (a) => a.getIndices()
105
+ },
106
+ set_depth: {
107
+ safety: "write",
108
+ argsType: "{ fdi: string; site: PeriodontalSiteId; mm: number }",
109
+ argsSchema: {
110
+ type: "object",
111
+ properties: { fdi: _, site: H, mm: ve },
112
+ required: ["fdi", "site", "mm"]
113
+ },
114
+ idempotent: !0,
115
+ descriptionKey: "ui.agent.periodontalChart.actions.setDepth",
116
+ description: "Record the probing pocket depth (mm) at a site.",
117
+ invoke: (a, r) => {
118
+ a.setSite(r.fdi, r.site, {
119
+ pocketDepthMm: Math.max(0, r.mm)
120
+ });
121
+ }
122
+ },
123
+ set_recession: {
124
+ safety: "write",
125
+ argsType: "{ fdi: string; site: PeriodontalSiteId; mm: number }",
126
+ argsSchema: {
127
+ type: "object",
128
+ properties: { fdi: _, site: H, mm: ve },
129
+ required: ["fdi", "site", "mm"]
130
+ },
131
+ idempotent: !0,
132
+ descriptionKey: "ui.agent.periodontalChart.actions.setRecession",
133
+ description: "Record the gingival recession (mm) at a site.",
134
+ invoke: (a, r) => {
135
+ a.setSite(r.fdi, r.site, { recessionMm: r.mm });
136
+ }
137
+ },
138
+ toggle_bleeding: {
139
+ safety: "write",
140
+ argsType: "{ fdi: string; site: PeriodontalSiteId; value: boolean }",
141
+ argsSchema: {
142
+ type: "object",
143
+ properties: {
144
+ fdi: _,
145
+ site: H,
146
+ value: { type: "boolean" }
147
+ },
148
+ required: ["fdi", "site", "value"]
149
+ },
150
+ idempotent: !0,
151
+ descriptionKey: "ui.agent.periodontalChart.actions.toggleBleeding",
152
+ description: "Set bleeding on probing at a site.",
153
+ invoke: (a, r) => {
154
+ a.setSite(r.fdi, r.site, { bleeding: r.value });
155
+ }
156
+ },
157
+ toggle_plaque: {
158
+ safety: "write",
159
+ argsType: "{ fdi: string; site: PeriodontalSiteId; value: boolean }",
160
+ argsSchema: {
161
+ type: "object",
162
+ properties: {
163
+ fdi: _,
164
+ site: H,
165
+ value: { type: "boolean" }
166
+ },
167
+ required: ["fdi", "site", "value"]
168
+ },
169
+ idempotent: !0,
170
+ descriptionKey: "ui.agent.periodontalChart.actions.togglePlaque",
171
+ description: "Set plaque presence at a site.",
172
+ invoke: (a, r) => {
173
+ a.setSite(r.fdi, r.site, { plaque: r.value });
174
+ }
175
+ },
176
+ set_mobility: {
177
+ safety: "write",
178
+ argsType: "{ fdi: string; grade: 0 | 1 | 2 | 3 }",
179
+ argsSchema: {
180
+ type: "object",
181
+ properties: {
182
+ fdi: _,
183
+ grade: { enum: [0, 1, 2, 3] }
184
+ },
185
+ required: ["fdi", "grade"]
186
+ },
187
+ idempotent: !0,
188
+ descriptionKey: "ui.agent.periodontalChart.actions.setMobility",
189
+ description: "Set a tooth’s Miller mobility grade (0–3).",
190
+ invoke: (a, r) => {
191
+ a.setTooth(r.fdi, { mobility: r.grade });
192
+ }
193
+ },
194
+ set_missing: {
195
+ safety: "write",
196
+ argsType: "{ fdi: string; value: boolean }",
197
+ argsSchema: {
198
+ type: "object",
199
+ properties: { fdi: _, value: { type: "boolean" } },
200
+ required: ["fdi", "value"]
201
+ },
202
+ idempotent: !0,
203
+ descriptionKey: "ui.agent.periodontalChart.actions.setMissing",
204
+ description: "Flag a tooth present or absent.",
205
+ invoke: (a, r) => {
206
+ a.setTooth(r.fdi, { missing: r.value });
207
+ }
208
+ },
209
+ clear_tooth: {
210
+ safety: "destructive",
211
+ argsType: "{ fdi: string }",
212
+ argsSchema: {
213
+ type: "object",
214
+ properties: { fdi: _ },
215
+ required: ["fdi"]
216
+ },
217
+ idempotent: !0,
218
+ descriptionKey: "ui.agent.periodontalChart.actions.clearTooth",
219
+ description: "Clear every reading from a tooth.",
220
+ invoke: (a, r) => {
221
+ a.clearTooth(r.fdi);
222
+ }
223
+ }
224
+ },
225
+ domHooks: {
226
+ root: {
227
+ attr: "data-component",
228
+ value: "periodontal-chart",
229
+ description: "Marks the PeriodontalChart root group."
230
+ },
231
+ instanceId: {
232
+ attr: "data-component-id",
233
+ sourceProp: "id",
234
+ description: "Sourced from the id prop."
235
+ },
236
+ item: {
237
+ attr: "data-fdi",
238
+ description: "Each tooth column header carries its FDI id as `data-fdi`. Every measurement input also carries `data-fdi` + `data-site` + `data-field`. The root `data-mode` exposes interactive vs display."
239
+ }
240
+ }
241
+ }, se = ["db", "b", "mb"], ut = ["dl", "l", "ml"];
242
+ function ye(a) {
243
+ return a === "buccal" ? se : ut;
244
+ }
245
+ const we = 4, ne = 6, pt = 20, mt = 5;
246
+ function ht(a, r = we, h = ne) {
247
+ return a == null || !Number.isFinite(a) ? "normal" : a >= h ? "severe" : a >= r ? "moderate" : "normal";
248
+ }
249
+ const gt = {
250
+ 18: { buccal: 1, lingual: 2 },
251
+ 17: { buccal: 1, lingual: 2 },
252
+ 16: { buccal: 1, lingual: 2 },
253
+ 15: { buccal: 2, lingual: 2 },
254
+ 14: { buccal: 0, lingual: 2 },
255
+ 24: { buccal: 0, lingual: 2 },
256
+ 25: { buccal: 2, lingual: 2 },
257
+ 26: { buccal: 1, lingual: 2 },
258
+ 27: { buccal: 1, lingual: 2 },
259
+ 28: { buccal: 1, lingual: 2 },
260
+ 48: { buccal: 1, lingual: 1 },
261
+ 47: { buccal: 1, lingual: 1 },
262
+ 46: { buccal: 1, lingual: 1 },
263
+ 36: { buccal: 1, lingual: 1 },
264
+ 37: { buccal: 1, lingual: 1 },
265
+ 38: { buccal: 1, lingual: 1 }
266
+ };
267
+ function ft(a, r) {
268
+ var h;
269
+ return ((h = gt[a]) == null ? void 0 : h[r]) ?? 0;
270
+ }
271
+ const bt = ke.slice(0, 16), vt = ke.slice(16), yt = Me.slice(0, 10), xt = Me.slice(10);
272
+ function Pe(a) {
273
+ return a === "primary" ? { upper: yt, lower: xt } : {
274
+ upper: bt,
275
+ lower: vt
276
+ };
277
+ }
278
+ function xe(a, r) {
279
+ return r === "universal" ? st[a] ?? a : r === "palmer" ? nt[a] ?? a : a;
280
+ }
281
+ function W(a) {
282
+ const r = Math.round(a * 10) / 10;
283
+ return r === 0 ? 0 : r;
284
+ }
285
+ function Ne(a) {
286
+ let r = 0, h = 0, u = 0, b = 0, S = 0, I = 0;
287
+ for (const L of Object.values(a))
288
+ if (!(L.missing || !L.sites))
289
+ for (const E of Object.values(L.sites)) {
290
+ if (!E) continue;
291
+ const D = E.pocketDepthMm;
292
+ D == null || !Number.isFinite(D) || (u += 1, r += D, h += D + (E.recessionMm ?? 0), D >= ne && (I += 1), E.bleeding && (b += 1), E.plaque && (S += 1));
293
+ }
294
+ return u === 0 ? {
295
+ meanPocketDepthMm: null,
296
+ meanAttachmentLevelMm: null,
297
+ plaquePercent: null,
298
+ bleedingPercent: null,
299
+ scoredSiteCount: 0,
300
+ deepPocketCount: 0
301
+ } : {
302
+ meanPocketDepthMm: W(r / u),
303
+ meanAttachmentLevelMm: W(h / u),
304
+ plaquePercent: W(S / u * 100),
305
+ bleedingPercent: W(b / u * 100),
306
+ scoredSiteCount: u,
307
+ deepPocketCount: I
308
+ };
309
+ }
310
+ function Lt(a = "permanent") {
311
+ const { upper: r, lower: h } = Pe(a), u = {};
312
+ for (const b of [...r, ...h]) u[b] = {};
313
+ return u;
314
+ }
315
+ function qt(a) {
316
+ const r = [];
317
+ for (const [h, u] of Object.entries(a))
318
+ if (!(u.missing || !u.sites))
319
+ for (const b of it) {
320
+ const S = u.sites[b];
321
+ if (!S) continue;
322
+ const { pocketDepthMm: I, recessionMm: L, bleeding: E, suppuration: D } = S;
323
+ I == null && L == null && !E && !D || r.push({
324
+ tooth: h,
325
+ site: b,
326
+ pocketDepthMm: I,
327
+ recessionMm: L,
328
+ bleeding: E,
329
+ suppuration: D
330
+ });
331
+ }
332
+ return r;
333
+ }
334
+ function Ot(a) {
335
+ const r = {};
336
+ for (const [h, u] of Object.entries(a))
337
+ u.mobility != null && (r[h] = u.mobility);
338
+ return r;
339
+ }
340
+ const Nt = Ce(
341
+ "ds:w-full ds:flex ds:flex-col ds:gap-[var(--spacing-lg)] ds:text-[color:var(--foreground)]",
342
+ {
343
+ variants: {
344
+ // Disabled is conveyed by the inputs' own `disabled` state (native
345
+ // disabled controls are excluded from the axe contrast check). We must
346
+ // NOT dim the whole root with opacity — that would drop the legend,
347
+ // captions and headers below the AA contrast floor.
348
+ disabled: { true: "ds:cursor-not-allowed", false: "" }
349
+ },
350
+ defaultVariants: { disabled: !1 }
351
+ }
352
+ ), Ct = Ce(
353
+ "ds:h-6 ds:w-[3.5ch] ds:rounded-[var(--radius-sm)] ds:border ds:bg-[var(--background)] ds:text-center ds:tabular-nums ds:[font-variant-numeric:var(--font-feature-tabular)] ds:outline-none ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)] ds:disabled:cursor-not-allowed ds:disabled:opacity-50",
354
+ {
355
+ variants: {
356
+ severity: {
357
+ normal: "ds:border-[color:var(--input)] ds:text-[color:var(--foreground)]",
358
+ moderate: "ds:border-[color:var(--warning)] ds:font-semibold ds:text-[color:var(--warning-foreground)]",
359
+ severe: "ds:border-[color:var(--destructive)] ds:font-bold ds:text-[color:var(--destructive)]"
360
+ }
361
+ },
362
+ defaultVariants: { severity: "normal" }
363
+ }
364
+ );
365
+ function Mt(a, r, h) {
366
+ return { ...a, [r]: { ...a[r], ...h } };
367
+ }
368
+ function kt(a, r, h, u) {
369
+ const b = a[r] ?? {}, S = b.sites ?? {};
370
+ return {
371
+ ...a,
372
+ [r]: {
373
+ ...b,
374
+ sites: { ...S, [h]: { ...S[h], ...u } }
375
+ }
376
+ };
377
+ }
378
+ function wt(a) {
379
+ return a === "severe" ? "ds:font-bold ds:text-[color:var(--destructive)]" : a === "moderate" ? "ds:font-semibold ds:text-[color:var(--warning-foreground)]" : "";
380
+ }
381
+ const Pt = {
382
+ db: "disto-buccal",
383
+ b: "buccal",
384
+ mb: "mesio-buccal",
385
+ dl: "disto-lingual",
386
+ l: "lingual",
387
+ ml: "mesio-lingual"
388
+ }, Tt = Xe(
389
+ ({
390
+ value: a,
391
+ defaultValue: r,
392
+ onChange: h,
393
+ mode: u = "interactive",
394
+ disabled: b = !1,
395
+ dentition: S = "permanent",
396
+ numbering: I = "fdi",
397
+ showTeeth: L = !0,
398
+ assetBaseUrl: E = "/toothscheme/teeth",
399
+ showCurves: D = !0,
400
+ showIndices: Te = !0,
401
+ moderatePocketMm: Se = we,
402
+ severePocketMm: Ee = ne,
403
+ locale: De,
404
+ "aria-label": Ie,
405
+ id: Y,
406
+ className: Ae,
407
+ ...Re
408
+ }, _e) => {
409
+ const { t: i, i18n: Le } = tt(), ae = De ?? Le.language ?? "en", G = fe(null), Q = a !== void 0, [qe, Oe] = Ze(
410
+ () => r ?? {}
411
+ ), v = Q ? a : qe, j = u === "display", A = fe(v);
412
+ A.current = v;
413
+ const $ = R(
414
+ (e) => {
415
+ A.current = e, Q || Oe(e), h == null || h(e);
416
+ },
417
+ [Q, h]
418
+ ), K = R(
419
+ (e, t, n) => $(kt(A.current, e, t, n)),
420
+ [$]
421
+ ), F = R(
422
+ (e, t) => $(Mt(A.current, e, t)),
423
+ [$]
424
+ ), oe = R(
425
+ (e) => {
426
+ const t = { ...A.current };
427
+ delete t[e], $(t);
428
+ },
429
+ [$]
430
+ ), ie = R(
431
+ (e, t, n) => {
432
+ var o, l;
433
+ try {
434
+ (l = (o = G.current) == null ? void 0 : o.querySelector(
435
+ `[data-perio-input][data-fdi="${e}"][data-site="${t}"][data-field="${n}"]`
436
+ )) == null || l.focus();
437
+ } catch {
438
+ }
439
+ },
440
+ []
441
+ ), k = be(
442
+ () => Ne(v),
443
+ [v]
444
+ ), J = be(
445
+ () => ({
446
+ getValue: () => A.current,
447
+ getTooth: (e) => A.current[e],
448
+ getIndices: () => Ne(A.current),
449
+ missingTeeth: () => Object.entries(A.current).filter(([, e]) => e.missing).map(([e]) => e),
450
+ setSite: K,
451
+ setTooth: F,
452
+ clearTooth: oe,
453
+ focusSite: ie
454
+ }),
455
+ [K, F, oe, ie]
456
+ );
457
+ et(_e, () => J, [J]), rt(dt, J, Y);
458
+ const le = Pe(S), je = Ie ?? i("periodontalChart.ariaLabel", "Periodontal chart"), z = R(
459
+ (e) => {
460
+ try {
461
+ return new Intl.NumberFormat(ae, {
462
+ maximumFractionDigits: 1
463
+ }).format(e);
464
+ } catch {
465
+ return String(e);
466
+ }
467
+ },
468
+ [ae]
469
+ ), ce = R(
470
+ (e) => i(`periodontalChart.site.${e}`, {
471
+ defaultValue: Pt[e]
472
+ }),
473
+ [i]
474
+ ), q = R(
475
+ (e) => xe(e, I),
476
+ [I]
477
+ ), w = /* @__PURE__ */ s(
478
+ "span",
479
+ {
480
+ "aria-hidden": "true",
481
+ className: "ds:text-[color:var(--muted-foreground)]",
482
+ children: i("periodontalChart.cell.empty", "–")
483
+ }
484
+ ), $e = R((e) => {
485
+ var N;
486
+ const t = e.target;
487
+ if (!((N = t.matches) != null && N.call(t, "[data-perio-input]"))) return;
488
+ const n = e.key;
489
+ if (n !== "ArrowLeft" && n !== "ArrowRight" && n !== "ArrowUp" && n !== "ArrowDown")
490
+ return;
491
+ e.preventDefault();
492
+ const o = G.current;
493
+ if (!o) return;
494
+ if (n === "ArrowUp" || n === "ArrowDown") {
495
+ const f = t.getAttribute("data-fdi"), P = t.getAttribute("data-site"), x = t.getAttribute("data-field") === "pocketDepthMm" ? "recessionMm" : "pocketDepthMm", T = o.querySelector(
496
+ `[data-perio-input][data-fdi="${f}"][data-site="${P}"][data-field="${x}"]`
497
+ );
498
+ T == null || T.focus(), T == null || T.select();
499
+ return;
500
+ }
501
+ const l = Array.from(
502
+ o.querySelectorAll("[data-perio-input]")
503
+ ), p = l.indexOf(t);
504
+ if (p === -1) return;
505
+ const c = l[p + (n === "ArrowRight" ? 1 : -1)];
506
+ c == null || c.focus(), c == null || c.select();
507
+ }, []), M = "ds:px-[var(--spacing-2xs)] ds:py-[var(--spacing-2xs)] ds:text-center ds:border-b ds:border-[color:var(--border)]", O = "ds:px-[var(--spacing-xs)] ds:py-[var(--spacing-2xs)] ds:text-start ds:font-medium ds:border-b ds:border-[color:var(--border)] ds:whitespace-nowrap", Fe = (e, t, n) => {
508
+ var c, N, f;
509
+ const o = (f = (N = (c = v[e]) == null ? void 0 : c.sites) == null ? void 0 : N[t]) == null ? void 0 : f[n], l = n === "pocketDepthMm" ? ht(o, Se, Ee) : "normal", p = i(`periodontalChart.input.${n}`, {
510
+ tooth: q(e),
511
+ site: ce(t),
512
+ defaultValue: n === "pocketDepthMm" ? "Tooth {{tooth}} {{site}} pocket depth, millimetres" : "Tooth {{tooth}} {{site}} recession, millimetres"
513
+ }), g = l === "severe" ? i("periodontalChart.flag.severe", "severe pocket") : l === "moderate" ? i("periodontalChart.flag.moderate", "moderate pocket") : "";
514
+ return j ? o == null || !Number.isFinite(o) ? /* @__PURE__ */ s("span", { className: "ds:inline-block ds:w-[3.5ch]", children: w }) : /* @__PURE__ */ m(
515
+ "span",
516
+ {
517
+ className: `ds:inline-block ds:w-[3.5ch] ds:tabular-nums ds:[font-variant-numeric:var(--font-feature-tabular)] ${wt(
518
+ l
519
+ )}`,
520
+ children: [
521
+ /* @__PURE__ */ s("span", { children: z(o) }),
522
+ g ? /* @__PURE__ */ m("span", { className: "ds:sr-only", children: [
523
+ " ",
524
+ g
525
+ ] }) : null
526
+ ]
527
+ }
528
+ ) : /* @__PURE__ */ s(
529
+ "input",
530
+ {
531
+ type: "text",
532
+ inputMode: "numeric",
533
+ autoComplete: "off",
534
+ disabled: b,
535
+ "aria-label": g ? `${p}, ${g}` : p,
536
+ "data-perio-input": "",
537
+ "data-fdi": e,
538
+ "data-site": t,
539
+ "data-field": n,
540
+ value: o == null ? "" : String(o),
541
+ onFocus: (P) => P.currentTarget.select(),
542
+ onChange: (P) => {
543
+ const y = P.target.value.trim();
544
+ let x;
545
+ if (y === "" || y === "-")
546
+ x = void 0;
547
+ else {
548
+ const T = Number(y);
549
+ if (!Number.isFinite(T)) return;
550
+ x = n === "pocketDepthMm" ? Math.max(0, T) : T;
551
+ }
552
+ K(
553
+ e,
554
+ t,
555
+ n === "pocketDepthMm" ? { pocketDepthMm: x } : { recessionMm: x }
556
+ );
557
+ },
558
+ className: Ct({ severity: l })
559
+ }
560
+ );
561
+ }, Ve = (e, t, n) => {
562
+ var g, c, N;
563
+ const o = !!((N = (c = (g = v[e]) == null ? void 0 : g.sites) == null ? void 0 : c[t]) != null && N[n]), l = i(`periodontalChart.toggle.${n}`, {
564
+ tooth: q(e),
565
+ site: ce(t),
566
+ defaultValue: n === "bleeding" ? "Tooth {{tooth}} {{site}} bleeding on probing" : "Tooth {{tooth}} {{site}} plaque"
567
+ }), p = n === "bleeding" ? "ds:accent-[var(--destructive)]" : "ds:accent-[var(--warning)]";
568
+ return j ? o ? /* @__PURE__ */ s(
569
+ "span",
570
+ {
571
+ role: "img",
572
+ "aria-label": l,
573
+ className: `ds:inline-block ds:size-2 ds:rounded-[var(--radius-full)] ${n === "bleeding" ? "ds:bg-[var(--destructive)]" : "ds:bg-[var(--warning)]"}`
574
+ }
575
+ ) : /* @__PURE__ */ s("span", { className: "ds:inline-block ds:size-6", children: w }) : /* @__PURE__ */ m("label", { className: "ds:inline-flex ds:size-6 ds:cursor-pointer ds:items-center ds:justify-center", children: [
576
+ /* @__PURE__ */ s("span", { className: "ds:sr-only", children: l }),
577
+ /* @__PURE__ */ s(
578
+ "input",
579
+ {
580
+ type: "checkbox",
581
+ disabled: b,
582
+ checked: o,
583
+ onChange: (f) => K(
584
+ e,
585
+ t,
586
+ n === "bleeding" ? { bleeding: f.target.checked } : { plaque: f.target.checked }
587
+ ),
588
+ className: `ds:size-4 ${p} ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)] ds:disabled:cursor-not-allowed ds:disabled:opacity-50`
589
+ }
590
+ )
591
+ ] });
592
+ }, ze = (e, t) => {
593
+ var p;
594
+ const n = v[e], o = ft(e, t);
595
+ if (n != null && n.missing || o === 0) return w;
596
+ const l = ((p = n == null ? void 0 : n.furcation) == null ? void 0 : p[t]) ?? [];
597
+ return /* @__PURE__ */ s("span", { className: "ds:inline-flex ds:items-center ds:justify-center ds:gap-[var(--spacing-2xs)]", children: Array.from({ length: o }, (g, c) => {
598
+ const N = !!l[c], f = i("periodontalChart.toggle.furcation", {
599
+ tooth: q(e),
600
+ side: i(`periodontalChart.side.${t}`, {
601
+ defaultValue: t === "buccal" ? "buccal" : "lingual"
602
+ }),
603
+ n: c + 1,
604
+ defaultValue: "Tooth {{tooth}} {{side}} furcation {{n}}"
605
+ });
606
+ return j ? N ? /* @__PURE__ */ s(
607
+ "span",
608
+ {
609
+ role: "img",
610
+ "aria-label": f,
611
+ className: "ds:inline-block ds:size-2 ds:rounded-[var(--radius-full)] ds:bg-[var(--primary)]"
612
+ },
613
+ c
614
+ ) : /* @__PURE__ */ s(
615
+ "span",
616
+ {
617
+ "aria-hidden": "true",
618
+ className: "ds:inline-block ds:size-2 ds:rounded-[var(--radius-full)] ds:border ds:border-[color:var(--border)]"
619
+ },
620
+ c
621
+ ) : /* @__PURE__ */ m(
622
+ "label",
623
+ {
624
+ className: "ds:inline-flex ds:size-6 ds:cursor-pointer ds:items-center ds:justify-center",
625
+ children: [
626
+ /* @__PURE__ */ s("span", { className: "ds:sr-only", children: f }),
627
+ /* @__PURE__ */ s(
628
+ "input",
629
+ {
630
+ type: "checkbox",
631
+ disabled: b,
632
+ checked: N,
633
+ onChange: (P) => {
634
+ var x;
635
+ const y = [...((x = n == null ? void 0 : n.furcation) == null ? void 0 : x[t]) ?? []];
636
+ for (; y.length < o; ) y.push(!1);
637
+ y[c] = P.target.checked, F(e, {
638
+ furcation: { ...n == null ? void 0 : n.furcation, [t]: y }
639
+ });
640
+ },
641
+ className: "ds:size-4 ds:accent-[var(--primary)] ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)] ds:disabled:cursor-not-allowed ds:disabled:opacity-50"
642
+ }
643
+ )
644
+ ]
645
+ },
646
+ c
647
+ );
648
+ }) });
649
+ }, B = (e, t, n, o, l) => /* @__PURE__ */ m("tr", { children: [
650
+ /* @__PURE__ */ s("th", { scope: "row", className: O, children: i(t, n) }),
651
+ e.map((p) => {
652
+ var g;
653
+ return /* @__PURE__ */ s("td", { className: M, children: (g = v[p]) != null && g.missing ? w : /* @__PURE__ */ s("span", { className: "ds:flex ds:items-center ds:justify-center ds:gap-[var(--spacing-2xs)]", children: ye(o).map((c) => /* @__PURE__ */ s("span", { children: Fe(p, c, l) }, c)) }) }, p);
654
+ })
655
+ ] }), U = (e, t, n, o, l) => /* @__PURE__ */ m("tr", { children: [
656
+ /* @__PURE__ */ s("th", { scope: "row", className: O, children: i(t, n) }),
657
+ e.map((p) => {
658
+ var g;
659
+ return /* @__PURE__ */ s("td", { className: M, children: (g = v[p]) != null && g.missing ? w : /* @__PURE__ */ s("span", { className: "ds:flex ds:items-center ds:justify-center ds:gap-[var(--spacing-2xs)]", children: ye(o).map((c) => /* @__PURE__ */ s("span", { children: Ve(p, c, l) }, c)) }) }, p);
660
+ })
661
+ ] }), de = (e, t) => /* @__PURE__ */ m("tr", { children: [
662
+ /* @__PURE__ */ s("th", { scope: "row", className: O, children: i("periodontalChart.row.furcation", "Furcation") }),
663
+ e.map((n) => /* @__PURE__ */ s("td", { className: M, children: ze(n, t) }, n))
664
+ ] }), ue = (e, t, n, o) => /* @__PURE__ */ m("tr", { children: [
665
+ /* @__PURE__ */ s("th", { scope: "row", className: O, children: i(t, n) }),
666
+ e.map((l) => {
667
+ var c, N;
668
+ if (o === "implant" && ((c = v[l]) != null && c.missing))
669
+ return /* @__PURE__ */ s("td", { className: M, children: w }, l);
670
+ const p = !!((N = v[l]) != null && N[o]), g = i(`periodontalChart.flag.${o}Label`, {
671
+ tooth: q(l),
672
+ defaultValue: o === "missing" ? "Tooth {{tooth}} missing" : "Tooth {{tooth}} implant"
673
+ });
674
+ return /* @__PURE__ */ s("td", { className: M, children: j ? p ? /* @__PURE__ */ s(
675
+ "span",
676
+ {
677
+ role: "img",
678
+ "aria-label": g,
679
+ className: "type-meta ds:font-semibold",
680
+ children: o === "missing" ? i("periodontalChart.flag.missingShort", "×") : i("periodontalChart.flag.implantShort", "I")
681
+ }
682
+ ) : w : /* @__PURE__ */ m("label", { className: "ds:inline-flex ds:size-6 ds:cursor-pointer ds:items-center ds:justify-center", children: [
683
+ /* @__PURE__ */ s("span", { className: "ds:sr-only", children: g }),
684
+ /* @__PURE__ */ s(
685
+ "input",
686
+ {
687
+ type: "checkbox",
688
+ disabled: b,
689
+ checked: p,
690
+ onChange: (f) => F(
691
+ l,
692
+ o === "missing" ? { missing: f.target.checked } : { implant: f.target.checked }
693
+ ),
694
+ className: "ds:size-4 ds:accent-[var(--primary)] ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)] ds:disabled:cursor-not-allowed ds:disabled:opacity-50"
695
+ }
696
+ )
697
+ ] }) }, l);
698
+ })
699
+ ] }), He = (e) => /* @__PURE__ */ m("tr", { children: [
700
+ /* @__PURE__ */ s("th", { scope: "row", className: O, children: i("periodontalChart.row.mobility", "Mobility") }),
701
+ e.map((t) => {
702
+ var l, p;
703
+ if ((l = v[t]) != null && l.missing)
704
+ return /* @__PURE__ */ s("td", { className: M, children: w }, t);
705
+ const n = (p = v[t]) == null ? void 0 : p.mobility, o = i("periodontalChart.mobility.label", {
706
+ tooth: q(t),
707
+ defaultValue: "Tooth {{tooth}} mobility grade"
708
+ });
709
+ return j ? /* @__PURE__ */ s("td", { className: M, children: n == null ? w : /* @__PURE__ */ s("span", { role: "img", "aria-label": o, className: "type-meta", children: n }) }, t) : /* @__PURE__ */ s("td", { className: M, children: /* @__PURE__ */ m(
710
+ "select",
711
+ {
712
+ disabled: b,
713
+ "aria-label": o,
714
+ value: n == null ? "" : String(n),
715
+ onChange: (g) => F(t, {
716
+ mobility: g.target.value === "" ? void 0 : Number(g.target.value)
717
+ }),
718
+ className: "ds:h-6 ds:rounded-[var(--radius-sm)] ds:border ds:border-[color:var(--input)] ds:bg-[var(--background)] ds:text-[color:var(--foreground)] ds:text-center ds:outline-none ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)] ds:disabled:cursor-not-allowed ds:disabled:opacity-50",
719
+ children: [
720
+ /* @__PURE__ */ s("option", { value: "", children: i("periodontalChart.mobility.none", "–") }),
721
+ /* @__PURE__ */ s("option", { value: "0", children: "0" }),
722
+ /* @__PURE__ */ s("option", { value: "1", children: "1" }),
723
+ /* @__PURE__ */ s("option", { value: "2", children: "2" }),
724
+ /* @__PURE__ */ s("option", { value: "3", children: "3" })
725
+ ]
726
+ }
727
+ ) }, t);
728
+ })
729
+ ] }), Ke = (e) => /* @__PURE__ */ m("tr", { children: [
730
+ /* @__PURE__ */ s("th", { scope: "row", className: O, children: i("periodontalChart.row.note", "Note") }),
731
+ e.map((t) => {
732
+ var l, p;
733
+ if ((l = v[t]) != null && l.missing)
734
+ return /* @__PURE__ */ s("td", { className: M, children: w }, t);
735
+ const n = ((p = v[t]) == null ? void 0 : p.note) ?? "", o = i("periodontalChart.note.label", {
736
+ tooth: q(t),
737
+ defaultValue: "Tooth {{tooth}} note"
738
+ });
739
+ return j ? /* @__PURE__ */ s("td", { className: `${M} ds:text-start`, children: n ? /* @__PURE__ */ s("span", { className: "type-meta", children: n }) : w }, t) : /* @__PURE__ */ s("td", { className: M, children: /* @__PURE__ */ s(
740
+ "input",
741
+ {
742
+ type: "text",
743
+ disabled: b,
744
+ "aria-label": o,
745
+ value: n,
746
+ onChange: (g) => F(t, { note: g.target.value }),
747
+ className: "ds:h-6 ds:w-[6ch] ds:rounded-[var(--radius-sm)] ds:border ds:border-[color:var(--input)] ds:bg-[var(--background)] ds:text-[color:var(--foreground)] ds:px-[var(--spacing-2xs)] ds:outline-none ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)] ds:disabled:cursor-not-allowed ds:disabled:opacity-50"
748
+ }
749
+ ) }, t);
750
+ })
751
+ ] }), Be = (e) => /* @__PURE__ */ m("tr", { children: [
752
+ /* @__PURE__ */ s("th", { scope: "row", className: O, children: i("periodontalChart.row.tooth", "Tooth") }),
753
+ e.map((t) => {
754
+ const n = v[t], o = at[t];
755
+ if (n != null && n.missing || !o)
756
+ return /* @__PURE__ */ s("td", { className: M, children: w }, t);
757
+ const l = n != null && n.implant ? "implant" : "default";
758
+ return /* @__PURE__ */ s("td", { className: M, children: /* @__PURE__ */ s(
759
+ "img",
760
+ {
761
+ src: ot(o, E, l, "side"),
762
+ alt: "",
763
+ "aria-hidden": "true",
764
+ loading: "lazy",
765
+ className: "ds:mx-auto ds:h-12 ds:w-auto ds:max-w-full ds:object-contain"
766
+ }
767
+ ) }, t);
768
+ })
769
+ ] }), Ue = (e) => {
770
+ var me, he, ge;
771
+ const c = (d) => 38 + Math.min(Math.max(0, d), 13) * 6, N = (d) => 38 - Math.min(Math.max(0, d), 5) * 6, f = [], P = [];
772
+ let y = [], x = [];
773
+ const T = () => {
774
+ y.length && f.push(y), x.length && P.push(x), y = [], x = [];
775
+ };
776
+ let X = 12;
777
+ for (const d of e) {
778
+ const C = (me = v[d]) == null ? void 0 : me.missing;
779
+ for (const Je of se) {
780
+ const V = C || (ge = (he = v[d]) == null ? void 0 : he.sites) == null ? void 0 : ge[Je], te = V == null ? void 0 : V.pocketDepthMm, re = V == null ? void 0 : V.recessionMm;
781
+ te != null && Number.isFinite(te) ? y.push({ x: X, y: c(te) }) : y.length && (f.push(y), y = []), re != null && Number.isFinite(re) ? x.push({ x: X, y: N(re) }) : x.length && (P.push(x), x = []), X += 24;
782
+ }
783
+ }
784
+ T();
785
+ const Z = e.length * se.length * 24, ee = (d) => d.map((C) => `${C.x},${C.y}`).join(" "), Ge = f.flat(), Qe = P.flat();
786
+ return /* @__PURE__ */ m(
787
+ "svg",
788
+ {
789
+ viewBox: `0 0 ${Z} 124`,
790
+ className: "ds:h-[132px] ds:w-full",
791
+ preserveAspectRatio: "none",
792
+ "aria-hidden": "true",
793
+ focusable: "false",
794
+ children: [
795
+ [3, 6, 9, 12].map((d) => /* @__PURE__ */ s(
796
+ "line",
797
+ {
798
+ x1: 0,
799
+ x2: Z,
800
+ y1: c(d),
801
+ y2: c(d),
802
+ stroke: "var(--border)",
803
+ strokeWidth: 1,
804
+ strokeDasharray: "2 4"
805
+ },
806
+ d
807
+ )),
808
+ /* @__PURE__ */ s(
809
+ "line",
810
+ {
811
+ x1: 0,
812
+ x2: Z,
813
+ y1: 38,
814
+ y2: 38,
815
+ stroke: "var(--border)",
816
+ strokeWidth: 1.5
817
+ }
818
+ ),
819
+ f.map(
820
+ (d, C) => d.length >= 2 ? /* @__PURE__ */ s(
821
+ "polygon",
822
+ {
823
+ points: `${d[0].x},38 ${ee(d)} ${d[d.length - 1].x},38`,
824
+ fill: "var(--success)",
825
+ fillOpacity: 0.14
826
+ },
827
+ `fill-${C}`
828
+ ) : null
829
+ ),
830
+ f.map(
831
+ (d, C) => d.length >= 2 ? /* @__PURE__ */ s(
832
+ "polyline",
833
+ {
834
+ points: ee(d),
835
+ fill: "none",
836
+ stroke: "var(--success)",
837
+ strokeWidth: 2.5,
838
+ strokeLinejoin: "round",
839
+ strokeLinecap: "round"
840
+ },
841
+ `depth-${C}`
842
+ ) : null
843
+ ),
844
+ P.map(
845
+ (d, C) => d.length >= 2 ? /* @__PURE__ */ s(
846
+ "polyline",
847
+ {
848
+ points: ee(d),
849
+ fill: "none",
850
+ stroke: "var(--accent)",
851
+ strokeWidth: 2.5,
852
+ strokeLinejoin: "round",
853
+ strokeLinecap: "round"
854
+ },
855
+ `margin-${C}`
856
+ ) : null
857
+ ),
858
+ Ge.map((d, C) => /* @__PURE__ */ s(
859
+ "circle",
860
+ {
861
+ cx: d.x,
862
+ cy: d.y,
863
+ r: 2,
864
+ fill: "var(--success)"
865
+ },
866
+ `dp-${C}`
867
+ )),
868
+ Qe.map((d, C) => /* @__PURE__ */ s(
869
+ "circle",
870
+ {
871
+ cx: d.x,
872
+ cy: d.y,
873
+ r: 2,
874
+ fill: "var(--accent)"
875
+ },
876
+ `mp-${C}`
877
+ ))
878
+ ]
879
+ }
880
+ );
881
+ }, pe = (e, t, n) => /* @__PURE__ */ s("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: /* @__PURE__ */ m(
882
+ "div",
883
+ {
884
+ tabIndex: 0,
885
+ role: "group",
886
+ dir: "ltr",
887
+ "aria-label": i(t, n),
888
+ className: "ds:overflow-x-auto ds:rounded-[var(--radius-sm)] ds:outline-none ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
889
+ children: [
890
+ /* @__PURE__ */ m("table", { className: "type-body-sm ds:w-full ds:border-collapse", children: [
891
+ /* @__PURE__ */ s("caption", { className: "type-label ds:text-start ds:mb-[var(--spacing-2xs)] ds:text-[color:var(--muted-foreground)]", children: i(t, n) }),
892
+ /* @__PURE__ */ s("thead", { children: /* @__PURE__ */ m("tr", { children: [
893
+ /* @__PURE__ */ s(
894
+ "th",
895
+ {
896
+ scope: "col",
897
+ className: "ds:px-[var(--spacing-xs)] ds:py-[var(--spacing-2xs)] ds:text-start ds:border-b ds:border-[color:var(--border)]",
898
+ children: i("periodontalChart.column.measure", "Measurement")
899
+ }
900
+ ),
901
+ e.map((o) => /* @__PURE__ */ m(
902
+ "th",
903
+ {
904
+ scope: "col",
905
+ "data-fdi": o,
906
+ className: "ds:px-[var(--spacing-2xs)] ds:py-[var(--spacing-2xs)] ds:text-center ds:border-b ds:border-[color:var(--border)] ds:tabular-nums ds:[font-variant-numeric:var(--font-feature-tabular)]",
907
+ children: [
908
+ /* @__PURE__ */ s("span", { className: "ds:sr-only", children: i("periodontalChart.toothHeader", {
909
+ tooth: q(o),
910
+ defaultValue: "Tooth {{tooth}}"
911
+ }) }),
912
+ /* @__PURE__ */ s("span", { "aria-hidden": "true", children: xe(o, I) })
913
+ ]
914
+ },
915
+ o
916
+ ))
917
+ ] }) }),
918
+ /* @__PURE__ */ m("tbody", { children: [
919
+ ue(
920
+ e,
921
+ "periodontalChart.row.missing",
922
+ "Missing",
923
+ "missing"
924
+ ),
925
+ ue(
926
+ e,
927
+ "periodontalChart.row.implant",
928
+ "Implant",
929
+ "implant"
930
+ ),
931
+ He(e),
932
+ B(
933
+ e,
934
+ "periodontalChart.row.pocketDepthBuccal",
935
+ "Pocket depth — buccal",
936
+ "buccal",
937
+ "pocketDepthMm"
938
+ ),
939
+ B(
940
+ e,
941
+ "periodontalChart.row.recessionBuccal",
942
+ "Recession — buccal",
943
+ "buccal",
944
+ "recessionMm"
945
+ ),
946
+ U(
947
+ e,
948
+ "periodontalChart.row.bleedingBuccal",
949
+ "Bleeding — buccal",
950
+ "buccal",
951
+ "bleeding"
952
+ ),
953
+ U(
954
+ e,
955
+ "periodontalChart.row.plaqueBuccal",
956
+ "Plaque — buccal",
957
+ "buccal",
958
+ "plaque"
959
+ ),
960
+ de(e, "buccal"),
961
+ L ? Be(e) : null,
962
+ B(
963
+ e,
964
+ "periodontalChart.row.pocketDepthLingual",
965
+ "Pocket depth — lingual",
966
+ "lingual",
967
+ "pocketDepthMm"
968
+ ),
969
+ B(
970
+ e,
971
+ "periodontalChart.row.recessionLingual",
972
+ "Recession — lingual",
973
+ "lingual",
974
+ "recessionMm"
975
+ ),
976
+ U(
977
+ e,
978
+ "periodontalChart.row.bleedingLingual",
979
+ "Bleeding — lingual",
980
+ "lingual",
981
+ "bleeding"
982
+ ),
983
+ U(
984
+ e,
985
+ "periodontalChart.row.plaqueLingual",
986
+ "Plaque — lingual",
987
+ "lingual",
988
+ "plaque"
989
+ ),
990
+ de(e, "lingual"),
991
+ Ke(e)
992
+ ] })
993
+ ] }),
994
+ D ? /* @__PURE__ */ s(
995
+ "figure",
996
+ {
997
+ className: "ds:m-0 ds:mt-[var(--spacing-2xs)]",
998
+ "aria-label": i("periodontalChart.curve.label", {
999
+ arch: i(t, n),
1000
+ defaultValue: "{{arch}} probing depth and recession profile"
1001
+ }),
1002
+ children: Ue(e)
1003
+ }
1004
+ ) : null
1005
+ ]
1006
+ }
1007
+ ) }), We = () => {
1008
+ const e = [
1009
+ {
1010
+ key: "meanPd",
1011
+ label: i("periodontalChart.index.meanPocketDepth", "Mean PD"),
1012
+ value: k.meanPocketDepthMm == null ? "–" : i("periodontalChart.unit.mm", {
1013
+ value: z(k.meanPocketDepthMm),
1014
+ defaultValue: "{{value}} mm"
1015
+ }),
1016
+ elevated: !1
1017
+ },
1018
+ {
1019
+ key: "meanCal",
1020
+ label: i("periodontalChart.index.meanAttachment", "Mean CAL"),
1021
+ value: k.meanAttachmentLevelMm == null ? "–" : i("periodontalChart.unit.mm", {
1022
+ value: z(k.meanAttachmentLevelMm),
1023
+ defaultValue: "{{value}} mm"
1024
+ }),
1025
+ elevated: !1
1026
+ },
1027
+ {
1028
+ key: "plaque",
1029
+ label: i("periodontalChart.index.plaque", "Plaque"),
1030
+ value: k.plaquePercent == null ? "–" : i("periodontalChart.unit.percent", {
1031
+ value: z(k.plaquePercent),
1032
+ defaultValue: "{{value}}%"
1033
+ }),
1034
+ elevated: k.plaquePercent != null && k.plaquePercent > pt
1035
+ },
1036
+ {
1037
+ key: "bleeding",
1038
+ label: i("periodontalChart.index.bleeding", "BoP"),
1039
+ value: k.bleedingPercent == null ? "–" : i("periodontalChart.unit.percent", {
1040
+ value: z(k.bleedingPercent),
1041
+ defaultValue: "{{value}}%"
1042
+ }),
1043
+ elevated: k.bleedingPercent != null && k.bleedingPercent > mt
1044
+ }
1045
+ ];
1046
+ return /* @__PURE__ */ s(
1047
+ "dl",
1048
+ {
1049
+ className: "type-body-sm ds:flex ds:flex-wrap ds:gap-[var(--spacing-lg)] ds:m-0",
1050
+ "aria-label": i("periodontalChart.index.label", "Summary indices"),
1051
+ children: e.map((t) => /* @__PURE__ */ m(
1052
+ "div",
1053
+ {
1054
+ className: "ds:flex ds:flex-col ds:gap-[var(--spacing-2xs)]",
1055
+ children: [
1056
+ /* @__PURE__ */ s("dt", { className: "type-meta ds:text-[color:var(--muted-foreground)]", children: t.label }),
1057
+ /* @__PURE__ */ m(
1058
+ "dd",
1059
+ {
1060
+ className: `ds:m-0 ds:tabular-nums ds:[font-variant-numeric:var(--font-feature-tabular)] ${t.elevated ? "ds:font-bold ds:text-[color:var(--destructive)]" : "ds:text-[color:var(--foreground)]"}`,
1061
+ children: [
1062
+ /* @__PURE__ */ s("span", { children: t.value }),
1063
+ t.elevated ? /* @__PURE__ */ m("span", { className: "ds:sr-only", children: [
1064
+ " ",
1065
+ i("periodontalChart.index.elevated", "elevated")
1066
+ ] }) : null
1067
+ ]
1068
+ }
1069
+ )
1070
+ ]
1071
+ },
1072
+ t.key
1073
+ ))
1074
+ }
1075
+ );
1076
+ }, Ye = /* @__PURE__ */ m(
1077
+ "div",
1078
+ {
1079
+ role: "group",
1080
+ "aria-label": i("periodontalChart.legend.label", "Chart legend"),
1081
+ className: "type-meta ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-md)] ds:text-[color:var(--muted-foreground)]",
1082
+ children: [
1083
+ /* @__PURE__ */ m("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]", children: [
1084
+ /* @__PURE__ */ s(
1085
+ "span",
1086
+ {
1087
+ "aria-hidden": "true",
1088
+ className: "ds:inline-block ds:h-[2px] ds:w-4 ds:bg-[var(--success)]"
1089
+ }
1090
+ ),
1091
+ i("periodontalChart.legend.depth", "Pocket depth")
1092
+ ] }),
1093
+ /* @__PURE__ */ m("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]", children: [
1094
+ /* @__PURE__ */ s(
1095
+ "span",
1096
+ {
1097
+ "aria-hidden": "true",
1098
+ className: "ds:inline-block ds:h-[2px] ds:w-4 ds:bg-[var(--accent)]"
1099
+ }
1100
+ ),
1101
+ i("periodontalChart.legend.recession", "Recession")
1102
+ ] }),
1103
+ /* @__PURE__ */ m("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]", children: [
1104
+ /* @__PURE__ */ s(
1105
+ "span",
1106
+ {
1107
+ "aria-hidden": "true",
1108
+ className: "ds:inline-block ds:size-2 ds:rounded-[var(--radius-full)] ds:bg-[var(--destructive)]"
1109
+ }
1110
+ ),
1111
+ i("periodontalChart.legend.bleeding", "Bleeding on probing")
1112
+ ] }),
1113
+ /* @__PURE__ */ m("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]", children: [
1114
+ /* @__PURE__ */ s(
1115
+ "span",
1116
+ {
1117
+ "aria-hidden": "true",
1118
+ className: "ds:inline-block ds:size-2 ds:rounded-[var(--radius-full)] ds:bg-[var(--warning)]"
1119
+ }
1120
+ ),
1121
+ i("periodontalChart.legend.plaque", "Plaque")
1122
+ ] })
1123
+ ]
1124
+ }
1125
+ );
1126
+ return (
1127
+ // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions -- roving-tabindex arrow-key nav across the chart group; each input is individually focusable and labelled
1128
+ /* @__PURE__ */ m(
1129
+ "div",
1130
+ {
1131
+ ref: G,
1132
+ role: "group",
1133
+ "aria-label": je,
1134
+ "data-component": "periodontal-chart",
1135
+ "data-component-id": Y,
1136
+ "data-mode": u,
1137
+ id: Y,
1138
+ ...Re,
1139
+ onKeyDown: $e,
1140
+ className: Nt({ disabled: b, className: Ae }),
1141
+ children: [
1142
+ Te ? We() : null,
1143
+ pe(le.upper, "periodontalChart.arch.upper", "Upper arch"),
1144
+ pe(le.lower, "periodontalChart.arch.lower", "Lower arch"),
1145
+ Ye
1146
+ ]
1147
+ }
1148
+ )
1149
+ );
1150
+ }
1151
+ );
1152
+ Tt.displayName = "PeriodontalChart";
1153
+ export {
1154
+ mt as B,
1155
+ we as M,
1156
+ se as P,
1157
+ ne as S,
1158
+ gt as a,
1159
+ ut as b,
1160
+ pt as c,
1161
+ Tt as d,
1162
+ Ne as e,
1163
+ Lt as f,
1164
+ ft as g,
1165
+ dt as h,
1166
+ xe as i,
1167
+ ht as j,
1168
+ qt as k,
1169
+ Pe as p,
1170
+ ye as s,
1171
+ Ot as t
1172
+ };
1173
+ //# sourceMappingURL=periodontal-chart-D8hOFmde.js.map