@alfadocs/ui-kit 0.68.0 → 0.70.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 (440) hide show
  1. package/dist/_chunks/{accordion-9lJSMMsZ.js → accordion-DnIa7OHX.js} +69 -47
  2. package/dist/_chunks/address-autocomplete-BEX9PXty.js +496 -0
  3. package/dist/_chunks/{agenda-card-BxSFkqgY.js → agenda-card-BQ-IKAru.js} +2 -2
  4. package/dist/_chunks/{agenda-card.agent-B_R47-c9.js → agenda-card.agent-mTCrkKSZ.js} +6 -1
  5. package/dist/_chunks/{agenda-tray-T-BumlGZ.js → agenda-tray-CGXRk58j.js} +37 -25
  6. package/dist/_chunks/{ai-consent-banner-Dxtx_WAh.js → ai-consent-banner-Be-h9mRI.js} +5 -5
  7. package/dist/_chunks/{ai-prompt-input-BwEACCPm.js → ai-prompt-input-CuhTo9mh.js} +80 -61
  8. package/dist/_chunks/ai-tools-rail-B5NEghsp.js +511 -0
  9. package/dist/_chunks/{alert-_mUKLmwA.js → alert-CHYZ96tR.js} +150 -96
  10. package/dist/_chunks/{alia-sidebar-Ckv0yCKi.js → alia-sidebar-B47qRQb5.js} +5 -5
  11. package/dist/_chunks/{anamnesis-card-N8pIKWuS.js → anamnesis-card-DvYCa16e.js} +3 -3
  12. package/dist/_chunks/anatomy-scheme-CJB6dI6p.js +2445 -0
  13. package/dist/_chunks/annotation-marker-qt5R9WZX.js +120 -0
  14. package/dist/_chunks/{antenatal-schedule-timeline-35ebkcZT.js → antenatal-schedule-timeline-CwXrQRm1.js} +2 -2
  15. package/dist/_chunks/appointment-card-C06aZqA7.js +310 -0
  16. package/dist/_chunks/appointment-timeline-BJM0S_Fg.js +386 -0
  17. package/dist/_chunks/appointment-tray-DRRw5ROi.js +193 -0
  18. package/dist/_chunks/{audio-recorder-DjXLP4aF.js → audio-recorder-Cpdk5qpQ.js} +60 -57
  19. package/dist/_chunks/{autocomplete-CcCFlVf-.js → autocomplete-DOeGouCL.js} +157 -132
  20. package/dist/_chunks/{badge-CqGsX32l.js → badge-DCOqV9mI.js} +32 -27
  21. package/dist/_chunks/bishop-score-DnYWtZa_.js +304 -0
  22. package/dist/_chunks/bmi-calculator-zjeY4E7J.js +434 -0
  23. package/dist/_chunks/{booking-L8-YP8BJ.js → booking-DUBI0oqt.js} +422 -399
  24. package/dist/_chunks/{breadcrumb-OTbaY70e.js → breadcrumb-CchdeG7d.js} +42 -28
  25. package/dist/_chunks/{calculator-dialog-CFk4I91b.js → calculator-dialog-BR5iU0kf.js} +2 -2
  26. package/dist/_chunks/{calendar-oYWOCrnf.js → calendar-CZUjL8SZ.js} +258 -201
  27. package/dist/_chunks/{care-plan-card-BwVUyUBb.js → care-plan-card-C5sTfY9G.js} +13 -9
  28. package/dist/_chunks/{care-plan-entry-card-VzdQHcOL.js → care-plan-entry-card-CXnxGCWA.js} +20 -16
  29. package/dist/_chunks/care-plan-header-BUwqDTtz.js +206 -0
  30. package/dist/_chunks/{carousel.agent-vt21A_el.js → carousel.agent-4v8Emr9E.js} +219 -198
  31. package/dist/_chunks/{chart-Cg3e9EH9.js → chart-CMr3eW62.js} +150 -109
  32. package/dist/_chunks/{chat-container-ogB4OskO.js → chat-container-DWho5hPR.js} +47 -34
  33. package/dist/_chunks/{chat-input-B5zjNEUN.js → chat-input-BcXTetgM.js} +57 -41
  34. package/dist/_chunks/{checkbox-DRcOdmXv.js → checkbox-BuZ1u__2.js} +41 -27
  35. package/dist/_chunks/{checkbox-group-CpUwlHug.js → checkbox-group-PqNmQ-cE.js} +3 -3
  36. package/dist/_chunks/clinical-note-card-BUvNMNGL.js +436 -0
  37. package/dist/_chunks/{collapsible-X3oaLPU3.js → collapsible-BrnRiCC6.js} +26 -23
  38. package/dist/_chunks/{color-picker-FXpItIaF.js → color-picker-C_fZl6sA.js} +124 -112
  39. package/dist/_chunks/{combobox-BC-DFx8G.js → combobox-Clum7gJ1.js} +165 -128
  40. package/dist/_chunks/{command-palette-BiPAAno-.js → command-palette-CJzmc5pC.js} +87 -64
  41. package/dist/_chunks/{contact-profile-card-7BMB85T6.js → contact-profile-card-DDPwRFiP.js} +13 -11
  42. package/dist/_chunks/control-room-rail-Y8ryLYsP.js +229 -0
  43. package/dist/_chunks/{copy-field-CCq7j6Zc.js → copy-field-Bjw9u2cV.js} +42 -35
  44. package/dist/_chunks/counter-dRlTNC_y.js +55 -0
  45. package/dist/_chunks/{cycle-calculator-BF0ointe.js → cycle-calculator-CCmPwcBl.js} +4 -4
  46. package/dist/_chunks/{date-picker-oGg5BnXL.js → date-picker-Dl9RKxaV.js} +76 -57
  47. package/dist/_chunks/{date-range-picker-C5BWfH_T.js → date-range-picker-CTUeR6Bj.js} +73 -46
  48. package/dist/_chunks/{date-time-picker-Ze1My59T.js → date-time-picker-BhoogS5Q.js} +64 -40
  49. package/dist/_chunks/{dependent-selector-DpzGtr_J.js → dependent-selector-DUV4thxX.js} +45 -31
  50. package/dist/_chunks/{dialog-DMGnSelc.js → dialog-ZNuboNmy.js} +35 -28
  51. package/dist/_chunks/{document-scanner-D2qehl3-.js → document-scanner-C_AxLooF.js} +13 -5
  52. package/dist/_chunks/{dropdown-menu-DwwPovMZ.js → dropdown-menu-qrxjymfw.js} +94 -93
  53. package/dist/_chunks/{due-date-calculator-DU9AEWNy.js → due-date-calculator-Brdj-euS.js} +6 -6
  54. package/dist/_chunks/editable-currency-cell-renderer-C9twtALM.js +328 -0
  55. package/dist/_chunks/email-input-DJ7EXklP.js +397 -0
  56. package/dist/_chunks/{entity-card-COhmqHly.js → entity-card-9_62gY7l.js} +38 -20
  57. package/dist/_chunks/entity-summary-BxRjFh_4.js +138 -0
  58. package/dist/_chunks/{fetal-weight-BVSzOhuR.js → fetal-weight-DNCkyeVo.js} +3 -3
  59. package/dist/_chunks/field-value-NXYczdpO.js +415 -0
  60. package/dist/_chunks/{file-upload-BosbPDb1.js → file-upload-DwZcAK8D.js} +119 -100
  61. package/dist/_chunks/{fiscal-code-input-DPtqluVb.js → fiscal-code-input-Cf-8O4Fj.js} +76 -63
  62. package/dist/_chunks/{freemium-paywall-CkWjv3o6.js → freemium-paywall-WYlNO7yT.js} +78 -71
  63. package/dist/_chunks/{gestational-age-calculator-DBlFdoiP.js → gestational-age-calculator-CF2ISaYQ.js} +7 -7
  64. package/dist/_chunks/hash-CysBBS_N.js +17 -0
  65. package/dist/_chunks/{hcg-doubling-if4Q8aSX.js → hcg-doubling-C7bmuaU3.js} +4 -4
  66. package/dist/_chunks/{header-settings-CNOqIhoW.js → header-settings-DJqoAl5m.js} +86 -46
  67. package/dist/_chunks/{index.modern-D2LGACWg.js → index.modern-Zta-A4Jm.js} +3 -3
  68. package/dist/_chunks/link-cell-renderer-CTXqtXV-.js +2184 -0
  69. package/dist/_chunks/{list-BOwqwy03.js → list-DgE1xWBM.js} +99 -84
  70. package/dist/_chunks/{locale-picker-C9JmBht3.js → locale-picker-ChYYSX2N.js} +47 -35
  71. package/dist/_chunks/lock-CKOIn0IK.js +15 -0
  72. package/dist/_chunks/{map-view-Tb5VfK9Y.js → map-view-BkOoGoX2.js} +160 -115
  73. package/dist/_chunks/{marketplace-app-shell-D4-T9Qzz.js → marketplace-app-shell-Skhfp6vK.js} +6 -6
  74. package/dist/_chunks/{message-card.agent-4IeIgrnJ.js → message-card.agent-ZLhx3Bs5.js} +6 -1
  75. package/dist/_chunks/{message-tray-CVyJajVJ.js → message-tray-DwrBLJlf.js} +90 -48
  76. package/dist/_chunks/{multi-select-BcPylvHR.js → multi-select-BdHHDrRN.js} +196 -153
  77. package/dist/_chunks/{navigation-menu-C6lBYVv9.js → navigation-menu-DRUi6sSj.js} +75 -42
  78. package/dist/_chunks/notes-panel-ay8_lPrA.js +158 -0
  79. package/dist/_chunks/{notification-card-BiESdm8q.js → notification-card-D2jiKSJJ.js} +27 -23
  80. package/dist/_chunks/{notification-card.agent-Rqt3ofk9.js → notification-card.agent-DxGBZb8T.js} +5 -1
  81. package/dist/_chunks/{notification-tray-DlgenTEe.js → notification-tray-AEun6DN2.js} +112 -97
  82. package/dist/_chunks/{number-input-Dj5L3pXK.js → number-input-DxphVG_A.js} +36 -27
  83. package/dist/_chunks/{operator-hero-f_KaRhw5.js → operator-hero-CR0Rqh4-.js} +14 -10
  84. package/dist/_chunks/{otp-input-xQ4Ps5VY.js → otp-input-DzBQ-CpE.js} +52 -33
  85. package/dist/_chunks/{pagination-DQOgnxxw.js → pagination-D58kglCr.js} +181 -162
  86. package/dist/_chunks/patient-details-Dlhqb5ig.js +675 -0
  87. package/dist/_chunks/{patient-search-DR9XUYRQ.js → patient-search-Be6cLrHR.js} +70 -61
  88. package/dist/_chunks/{patient-shell-BfgufL_q.js → patient-shell-DV3XEtIB.js} +3 -3
  89. package/dist/_chunks/patient-summary-card-WySCMwwA.js +437 -0
  90. package/dist/_chunks/patient-table-CHxf3Oqk.js +1110 -0
  91. package/dist/_chunks/{payment-form-nXocS_MX.js → payment-form-CxqIXqw7.js} +57 -45
  92. package/dist/_chunks/{payment-request-card-CYE5vhZ0.js → payment-request-card-BcZJwu9z.js} +125 -136
  93. package/dist/_chunks/{pdf-viewer-GsfNqeeT.js → pdf-viewer-QfebdLOd.js} +317 -291
  94. package/dist/_chunks/{periodontal-chart-card-Dh3KgvYG.js → periodontal-chart-card-hRRJY1NN.js} +3 -3
  95. package/dist/_chunks/{phone-input-DVXhNlIl.js → phone-input-DjU-XmO_.js} +64 -47
  96. package/dist/_chunks/{popover-DTbfAuR0.js → popover-B2qCDhJC.js} +37 -32
  97. package/dist/_chunks/{practice-results-DND2SAt7.js → practice-results-C6qDfxos.js} +280 -244
  98. package/dist/_chunks/{pregnancy-dating-QY-sqpvj.js → pregnancy-dating-CRVWswD-.js} +8 -8
  99. package/dist/_chunks/{pregnancy-weight-gain-DOJXXNYP.js → pregnancy-weight-gain-BUNpTsH-.js} +4 -4
  100. package/dist/_chunks/{privacy-lock-C7JyMf0y.js → privacy-lock-BzMLQu-j.js} +32 -28
  101. package/dist/_chunks/{product-hub-panel-CAXDFeGP.js → product-hub-panel-e6pW220e.js} +45 -27
  102. package/dist/_chunks/{progress-kzIRcdaq.js → progress-DA413-zn.js} +2 -2
  103. package/dist/_chunks/{public-footer.agent-CfXuW1x6.js → public-footer.agent-D0cFbjWl.js} +151 -146
  104. package/dist/_chunks/{public-header.agent-BOhJgZEU.js → public-header.agent-DqkqA-ca.js} +107 -102
  105. package/dist/_chunks/{qr-code-DNXhi6se.js → qr-code-CPkEs5mG.js} +52 -46
  106. package/dist/_chunks/{radio-group-CLjK-SlK.js → radio-group-BPt7pKZW.js} +5 -5
  107. package/dist/_chunks/radiograph-panel.agent-CAX-C3g3.js +558 -0
  108. package/dist/_chunks/{recaptcha-widget-BCNHsgqt.js → recaptcha-widget-BC-4To9b.js} +9 -2
  109. package/dist/_chunks/registry-DvAUVLHh.js +51 -0
  110. package/dist/_chunks/{resizable-3vzqDlg6.js → resizable-DVGcfOrk.js} +193 -173
  111. package/dist/_chunks/{reviews-panel-DBktKm7i.js → reviews-panel-Dq7LMDcH.js} +87 -68
  112. package/dist/_chunks/{rich-text-editor-VawKN1FI.js → rich-text-editor-DlCqPixb.js} +833 -728
  113. package/dist/_chunks/{search-bar-SY2BcV2N.js → search-bar-C_T3pBJn.js} +105 -78
  114. package/dist/_chunks/{search-input-DbxrnHkW.js → search-input-DQvGxR74.js} +2 -2
  115. package/dist/_chunks/{search-input.agent-CfZvViOd.js → search-input.agent-DRH54coT.js} +19 -4
  116. package/dist/_chunks/{select-CEtRcon5.js → select-DMLG44F5.js} +72 -56
  117. package/dist/_chunks/{session-countdown-LPnhTHjn.js → session-countdown-X1Ki6i0M.js} +3 -3
  118. package/dist/_chunks/{sheet-taJer-Ha.js → sheet-BxsE7eQm.js} +59 -45
  119. package/dist/_chunks/{sidebar-DaB4ulxH.js → sidebar-DY9jGjgt.js} +254 -248
  120. package/dist/_chunks/{sign-document-CdAiHiCh.js → sign-document-By6hMOra.js} +75 -49
  121. package/dist/_chunks/{signature-capture-COi0Uiqu.js → signature-capture-Ct_4Md4e.js} +138 -104
  122. package/dist/_chunks/{slider-BHWzXdjt.js → slider-DN1CWkKB.js} +85 -65
  123. package/dist/_chunks/{sparkline-DGhCSw8M.js → sparkline-iOXYgvJe.js} +75 -53
  124. package/dist/_chunks/{stepper-accordion-Dki6r9ZE.js → stepper-accordion-DC-H-8v4.js} +38 -48
  125. package/dist/_chunks/{stepper-accordion.agent-C4quJ-MD.js → stepper-accordion.agent-cmEguIdx.js} +7 -1
  126. package/dist/_chunks/{stepper-progress-DDjq5nei.js → stepper-progress-Bv0njx4g.js} +30 -24
  127. package/dist/_chunks/{suggestion-chip.agent-6sNWFj7m.js → suggestion-chip.agent-Brn3CiFE.js} +9 -8
  128. package/dist/_chunks/{switch-BJ6HD3Mn.js → switch-OILsBLWo.js} +25 -19
  129. package/dist/_chunks/tab-bar-Bv9nGNdO.js +262 -0
  130. package/dist/_chunks/{tabs-BIQ0ew1T.js → tabs-BxcOziCo.js} +67 -58
  131. package/dist/_chunks/{task-card.agent-CUPKYd7w.js → task-card.agent-Bt14CzUd.js} +4 -1
  132. package/dist/_chunks/{task-tray-CAncV-QQ.js → task-tray-qOEQflu4.js} +74 -57
  133. package/dist/_chunks/{text-area-BIx0tZ05.js → text-area-Bt3p7Pt0.js} +41 -34
  134. package/dist/_chunks/{text-input-BaClJL8Y.js → text-input-B-OWQ1Je.js} +15 -8
  135. package/dist/_chunks/{theme-toggle-DETmSu_h.js → theme-toggle-XB6o_lgs.js} +38 -26
  136. package/dist/_chunks/{time-picker-B5umYwfv.js → time-picker-BPlJWm8w.js} +41 -31
  137. package/dist/_chunks/{timeline-DQa5Tyz4.js → timeline-CqA4nKTI.js} +33 -25
  138. package/dist/_chunks/{toast.agent-vuLRRn2a.js → toast.agent-57UzyR9U.js} +62 -45
  139. package/dist/_chunks/tooth-scheme-BhQoPNBD.js +2131 -0
  140. package/dist/_chunks/{transaction-chip-DK84XCBU.js → transaction-chip-CscoQbxF.js} +88 -61
  141. package/dist/_chunks/{transcript-panel-CLHmv83g.js → transcript-panel-3THQX6nJ.js} +47 -33
  142. package/dist/_chunks/unit-converter-YEpD9evj.js +337 -0
  143. package/dist/_chunks/use-clamp-overflow-DQE2kwZ9.js +20 -0
  144. package/dist/_chunks/use-overflow-collapse-BIOzKbni.js +32 -0
  145. package/dist/_chunks/{use-password-requirements-DsgduV1x.js → use-password-requirements-BXvS2MBS.js} +131 -117
  146. package/dist/_chunks/use-persistent-state-nZwZAnE9.js +24 -0
  147. package/dist/_chunks/users-MBVtUzwd.js +17 -0
  148. package/dist/_chunks/warning-stack--sTrrBDA.js +268 -0
  149. package/dist/_chunks/{whatsapp-button-DUjlWGKf.js → whatsapp-button-BIy6NaJK.js} +6 -3
  150. package/dist/_chunks/{workflow-map-JAZryZJr.js → workflow-map-Dy8mLCqF.js} +101 -90
  151. package/dist/_chunks/zoom-out-CgVtf2Wx.js +29 -0
  152. package/dist/agent/index.d.ts +4 -4
  153. package/dist/agent/index.js +37 -0
  154. package/dist/agent/registry.d.ts +33 -0
  155. package/dist/agent/types.d.ts +97 -4
  156. package/dist/agent-catalog.json +8081 -518
  157. package/dist/agent-i18n/en.json +1277 -0
  158. package/dist/components/_shared/entity-card/entity-card.d.ts +6 -0
  159. package/dist/components/_shared/entity-card/index.d.ts +1 -1
  160. package/dist/components/_shared/field-value.d.ts +21 -0
  161. package/dist/components/_shared/field-visibility-cog.d.ts +20 -0
  162. package/dist/components/_shared/field-visibility.d.ts +36 -0
  163. package/dist/components/_shared/patient-fields.d.ts +119 -0
  164. package/dist/components/accordion/index.js +1 -1
  165. package/dist/components/address-autocomplete/address-autocomplete.agent.d.ts +4 -0
  166. package/dist/components/address-autocomplete/address-autocomplete.d.ts +18 -0
  167. package/dist/components/address-autocomplete/index.d.ts +2 -1
  168. package/dist/components/address-autocomplete/index.js +3 -2
  169. package/dist/components/agenda-card/index.js +2 -2
  170. package/dist/components/agenda-tray/index.js +1 -1
  171. package/dist/components/ai-consent-banner/index.js +1 -1
  172. package/dist/components/ai-prompt-input/index.js +1 -1
  173. package/dist/components/ai-tools-rail/ai-tools-rail.d.ts +75 -0
  174. package/dist/components/ai-tools-rail/index.js +1 -1
  175. package/dist/components/alert/alert.d.ts +5 -0
  176. package/dist/components/alert/index.js +1 -1
  177. package/dist/components/anamnesis-card/index.js +1 -1
  178. package/dist/components/anatomy-scheme/anatomy-face-paths.d.ts +15 -0
  179. package/dist/components/anatomy-scheme/anatomy-muscle-paths.d.ts +20 -0
  180. package/dist/components/anatomy-scheme/anatomy-scheme-data.d.ts +121 -0
  181. package/dist/components/anatomy-scheme/anatomy-scheme.agent.d.ts +6 -0
  182. package/dist/components/anatomy-scheme/anatomy-scheme.d.ts +69 -0
  183. package/dist/components/anatomy-scheme/index.d.ts +6 -0
  184. package/dist/components/anatomy-scheme/index.js +17 -0
  185. package/dist/components/annotation-marker/annotation-marker.d.ts +33 -0
  186. package/dist/components/annotation-marker/index.d.ts +3 -0
  187. package/dist/components/annotation-marker/index.js +7 -0
  188. package/dist/components/appointment-card/appointment-card.d.ts +25 -1
  189. package/dist/components/appointment-card/index.js +6 -5
  190. package/dist/components/appointment-timeline/appointment-timeline.agent.d.ts +4 -0
  191. package/dist/components/appointment-timeline/appointment-timeline.d.ts +66 -0
  192. package/dist/components/appointment-timeline/index.d.ts +4 -0
  193. package/dist/components/appointment-timeline/index.js +6 -0
  194. package/dist/components/audio-recorder/index.js +1 -1
  195. package/dist/components/autocomplete/index.js +1 -1
  196. package/dist/components/badge/badge.d.ts +6 -2
  197. package/dist/components/badge/index.js +1 -1
  198. package/dist/components/bishop-score/bishop-score.agent.d.ts +4 -0
  199. package/dist/components/bishop-score/bishop-score.d.ts +17 -1
  200. package/dist/components/bishop-score/index.js +1 -1
  201. package/dist/components/bmi-calculator/bmi-calculator.agent.d.ts +4 -0
  202. package/dist/components/bmi-calculator/bmi-calculator.d.ts +26 -0
  203. package/dist/components/bmi-calculator/index.js +1 -1
  204. package/dist/components/booking/index.js +1 -1
  205. package/dist/components/breadcrumb/index.js +1 -1
  206. package/dist/components/calculator-dialog/index.js +1 -1
  207. package/dist/components/calendar/index.js +1 -1
  208. package/dist/components/care-plan-card/index.js +1 -1
  209. package/dist/components/care-plan-entry-card/index.js +1 -1
  210. package/dist/components/care-plan-header/care-plan-header.agent.d.ts +4 -0
  211. package/dist/components/care-plan-header/care-plan-header.d.ts +100 -0
  212. package/dist/components/care-plan-header/index.d.ts +4 -0
  213. package/dist/components/care-plan-header/index.js +6 -0
  214. package/dist/components/carousel/index.js +1 -1
  215. package/dist/components/chart/index.js +1 -1
  216. package/dist/components/chat-container/index.js +1 -1
  217. package/dist/components/chat-input/index.js +1 -1
  218. package/dist/components/checkbox/index.js +1 -1
  219. package/dist/components/checkbox-group/index.js +1 -1
  220. package/dist/components/clinical-note-card/clinical-note-card.d.ts +21 -1
  221. package/dist/components/clinical-note-card/index.js +1 -1
  222. package/dist/components/collapsible/index.js +1 -1
  223. package/dist/components/color-picker/index.js +1 -1
  224. package/dist/components/combobox/index.js +1 -1
  225. package/dist/components/command-palette/index.js +1 -1
  226. package/dist/components/contact-profile-card/index.js +1 -1
  227. package/dist/components/control-room-rail/control-room-context.d.ts +53 -0
  228. package/dist/components/control-room-rail/control-room-rail.d.ts +35 -0
  229. package/dist/components/control-room-rail/index.d.ts +5 -0
  230. package/dist/components/control-room-rail/index.js +9 -0
  231. package/dist/components/copy-field/index.js +1 -1
  232. package/dist/components/counter/counter.d.ts +22 -0
  233. package/dist/components/counter/index.d.ts +3 -0
  234. package/dist/components/counter/index.js +5 -0
  235. package/dist/components/cycle-calculator/index.js +1 -1
  236. package/dist/components/data-table/cell-renderers/actions-cell-renderer.d.ts +18 -0
  237. package/dist/components/data-table/index.d.ts +1 -1
  238. package/dist/components/data-table/index.js +32 -30
  239. package/dist/components/date-picker/index.js +1 -1
  240. package/dist/components/date-range-picker/index.js +1 -1
  241. package/dist/components/date-time-picker/index.js +1 -1
  242. package/dist/components/dependent-selector/index.js +1 -1
  243. package/dist/components/dialog/index.js +1 -1
  244. package/dist/components/document-scanner/index.js +1 -1
  245. package/dist/components/dropdown-menu/index.js +1 -1
  246. package/dist/components/due-date-calculator/index.js +2 -2
  247. package/dist/components/email-input/index.js +1 -1
  248. package/dist/components/entity-summary/entity-summary.d.ts +43 -0
  249. package/dist/components/entity-summary/index.d.ts +3 -0
  250. package/dist/components/entity-summary/index.js +5 -0
  251. package/dist/components/fetal-weight/index.js +1 -1
  252. package/dist/components/file-upload/index.js +1 -1
  253. package/dist/components/fiscal-code-input/index.js +1 -1
  254. package/dist/components/freemium-paywall/freemium-paywall.d.ts +6 -0
  255. package/dist/components/freemium-paywall/index.js +1 -1
  256. package/dist/components/gestational-age-calculator/index.js +1 -1
  257. package/dist/components/hcg-doubling/index.js +1 -1
  258. package/dist/components/header-settings/index.js +1 -1
  259. package/dist/components/index.d.ts +11 -0
  260. package/dist/components/list/index.js +1 -1
  261. package/dist/components/locale-picker/index.js +1 -1
  262. package/dist/components/map-view/index.js +1 -1
  263. package/dist/components/message-card/index.js +1 -1
  264. package/dist/components/message-tray/index.js +1 -1
  265. package/dist/components/multi-select/index.js +1 -1
  266. package/dist/components/navigation-menu/index.js +1 -1
  267. package/dist/components/notes-panel/index.d.ts +3 -0
  268. package/dist/components/notes-panel/index.js +5 -0
  269. package/dist/components/notes-panel/notes-panel.d.ts +64 -0
  270. package/dist/components/notification-card/index.js +2 -2
  271. package/dist/components/notification-tray/index.js +1 -1
  272. package/dist/components/number-input/index.js +1 -1
  273. package/dist/components/operator-hero/index.js +1 -1
  274. package/dist/components/otp-input/index.js +1 -1
  275. package/dist/components/pagination/index.js +1 -1
  276. package/dist/components/password-input/index.js +1 -1
  277. package/dist/components/patient-details/index.d.ts +5 -0
  278. package/dist/components/patient-details/index.js +6 -0
  279. package/dist/components/patient-details/patient-details.agent.d.ts +4 -0
  280. package/dist/components/patient-details/patient-details.d.ts +96 -0
  281. package/dist/components/patient-search/index.js +1 -1
  282. package/dist/components/patient-summary-card/index.js +1 -1
  283. package/dist/components/patient-summary-card/patient-summary-card.d.ts +40 -1
  284. package/dist/components/patient-table/cell-renderers/balance-badge-cell.d.ts +13 -0
  285. package/dist/components/patient-table/cell-renderers/care-plan-status-cell.d.ts +43 -0
  286. package/dist/components/patient-table/cell-renderers/next-appointment-cell.d.ts +24 -0
  287. package/dist/components/patient-table/columns.d.ts +131 -0
  288. package/dist/components/patient-table/index.d.ts +20 -0
  289. package/dist/components/patient-table/index.js +12 -0
  290. package/dist/components/patient-table/patient-table.d.ts +172 -0
  291. package/dist/components/patient-table/types.d.ts +222 -0
  292. package/dist/components/patient-table/use-responsive-columns.d.ts +111 -0
  293. package/dist/components/payment-card/index.js +1 -1
  294. package/dist/components/payment-form/index.js +1 -1
  295. package/dist/components/pdf-viewer/index.js +1 -1
  296. package/dist/components/periodontal-chart-card/index.js +1 -1
  297. package/dist/components/phone-input/index.js +1 -1
  298. package/dist/components/popover/index.js +1 -1
  299. package/dist/components/practice-results/index.js +1 -1
  300. package/dist/components/pregnancy-dating/index.js +1 -1
  301. package/dist/components/pregnancy-weight-gain/index.js +1 -1
  302. package/dist/components/privacy-lock/index.js +1 -1
  303. package/dist/components/product-hub-tray/index.js +1 -1
  304. package/dist/components/progress/index.js +1 -1
  305. package/dist/components/public-footer/index.js +1 -1
  306. package/dist/components/public-header/index.js +1 -1
  307. package/dist/components/qr-code/index.js +1 -1
  308. package/dist/components/radio-group/index.js +1 -1
  309. package/dist/components/radiograph-panel/index.d.ts +4 -0
  310. package/dist/components/radiograph-panel/index.js +7 -0
  311. package/dist/components/radiograph-panel/radiograph-panel.agent.d.ts +13 -0
  312. package/dist/components/radiograph-panel/radiograph-panel.d.ts +36 -0
  313. package/dist/components/recaptcha-widget/index.js +1 -1
  314. package/dist/components/resizable/index.js +1 -1
  315. package/dist/components/reviews-panel/index.js +1 -1
  316. package/dist/components/rich-text-editor/index.js +1 -1
  317. package/dist/components/search-bar/index.js +1 -1
  318. package/dist/components/search-input/index.js +2 -2
  319. package/dist/components/select/index.js +1 -1
  320. package/dist/components/session-countdown/index.js +1 -1
  321. package/dist/components/sheet/index.js +1 -1
  322. package/dist/components/sidebar/index.js +2 -2
  323. package/dist/components/sidebar/sidebar.d.ts +7 -0
  324. package/dist/components/sign-document/index.js +1 -1
  325. package/dist/components/signature-capture/index.js +1 -1
  326. package/dist/components/slider/index.js +1 -1
  327. package/dist/components/sparkline/index.js +1 -1
  328. package/dist/components/stepper-accordion/index.js +2 -2
  329. package/dist/components/stepper-progress/index.js +1 -1
  330. package/dist/components/suggestion-chip/index.js +1 -1
  331. package/dist/components/switch/index.js +1 -1
  332. package/dist/components/tab-bar/index.js +1 -1
  333. package/dist/components/tab-bar/tab-bar.d.ts +18 -1
  334. package/dist/components/tabs/index.js +1 -1
  335. package/dist/components/task-card/index.js +1 -1
  336. package/dist/components/task-tray/index.js +1 -1
  337. package/dist/components/text-area/index.js +1 -1
  338. package/dist/components/text-input/index.js +1 -1
  339. package/dist/components/theme-toggle/index.js +1 -1
  340. package/dist/components/time-picker/index.js +1 -1
  341. package/dist/components/timeline/index.js +1 -1
  342. package/dist/components/toast/index.js +1 -1
  343. package/dist/components/tooth-scheme/index.d.ts +2 -2
  344. package/dist/components/tooth-scheme/index.js +30 -23
  345. package/dist/components/tooth-scheme/tooth-data.d.ts +112 -1
  346. package/dist/components/tooth-scheme/tooth-scheme.agent.d.ts +2 -2
  347. package/dist/components/tooth-scheme/tooth-scheme.d.ts +75 -11
  348. package/dist/components/transaction-chip/index.js +1 -1
  349. package/dist/components/transaction-chip/transaction-chip.d.ts +2 -2
  350. package/dist/components/transcript-panel/index.js +1 -1
  351. package/dist/components/unit-converter/index.js +1 -1
  352. package/dist/components/unit-converter/unit-converter.agent.d.ts +4 -0
  353. package/dist/components/unit-converter/unit-converter.d.ts +27 -0
  354. package/dist/components/warning-stack/index.js +1 -1
  355. package/dist/components/warning-stack/warning-stack.d.ts +14 -2
  356. package/dist/components/whatsapp-button/index.d.ts +1 -1
  357. package/dist/components/whatsapp-button/index.js +3 -2
  358. package/dist/components/whatsapp-button/whatsapp-button.d.ts +3 -0
  359. package/dist/components/workflow/index.js +1 -1
  360. package/dist/hooks/index.d.ts +1 -0
  361. package/dist/hooks/index.js +24 -22
  362. package/dist/hooks/use-clamp-overflow.d.ts +19 -0
  363. package/dist/hooks/use-overflow-collapse.d.ts +46 -0
  364. package/dist/hooks/use-persistent-state.d.ts +7 -1
  365. package/dist/hooks/use-scroll-overflow.d.ts +36 -0
  366. package/dist/i18n/locales/ar.d.ts +356 -0
  367. package/dist/i18n/locales/ar.js +370 -3
  368. package/dist/i18n/locales/de.d.ts +356 -0
  369. package/dist/i18n/locales/de.js +370 -3
  370. package/dist/i18n/locales/el.d.ts +356 -0
  371. package/dist/i18n/locales/el.js +370 -3
  372. package/dist/i18n/locales/en.d.ts +367 -0
  373. package/dist/i18n/locales/en.js +381 -3
  374. package/dist/i18n/locales/es.d.ts +356 -0
  375. package/dist/i18n/locales/es.js +370 -3
  376. package/dist/i18n/locales/fr.d.ts +356 -0
  377. package/dist/i18n/locales/fr.js +370 -3
  378. package/dist/i18n/locales/hi.d.ts +356 -0
  379. package/dist/i18n/locales/hi.js +370 -3
  380. package/dist/i18n/locales/it.d.ts +356 -0
  381. package/dist/i18n/locales/it.js +370 -3
  382. package/dist/i18n/locales/ja.d.ts +356 -0
  383. package/dist/i18n/locales/ja.js +370 -3
  384. package/dist/i18n/locales/nl.d.ts +356 -0
  385. package/dist/i18n/locales/nl.js +370 -3
  386. package/dist/i18n/locales/pl.d.ts +356 -0
  387. package/dist/i18n/locales/pl.js +370 -3
  388. package/dist/i18n/locales/pt.d.ts +356 -0
  389. package/dist/i18n/locales/pt.js +370 -3
  390. package/dist/i18n/locales/ro.d.ts +356 -0
  391. package/dist/i18n/locales/ro.js +370 -3
  392. package/dist/i18n/locales/ru.d.ts +356 -0
  393. package/dist/i18n/locales/ru.js +370 -3
  394. package/dist/i18n/locales/sq.d.ts +356 -0
  395. package/dist/i18n/locales/sq.js +370 -3
  396. package/dist/i18n/locales/sv.d.ts +356 -0
  397. package/dist/i18n/locales/sv.js +370 -3
  398. package/dist/i18n/locales/tr.d.ts +356 -0
  399. package/dist/i18n/locales/tr.js +370 -3
  400. package/dist/i18n/locales/zh.d.ts +356 -0
  401. package/dist/i18n/locales/zh.js +370 -3
  402. package/dist/index.js +740 -676
  403. package/dist/locales/ar.json +359 -3
  404. package/dist/locales/de.json +359 -3
  405. package/dist/locales/el.json +359 -3
  406. package/dist/locales/en.json +359 -3
  407. package/dist/locales/es.json +359 -3
  408. package/dist/locales/fr.json +359 -3
  409. package/dist/locales/hi.json +359 -3
  410. package/dist/locales/it.json +359 -3
  411. package/dist/locales/ja.json +359 -3
  412. package/dist/locales/nl.json +359 -3
  413. package/dist/locales/pl.json +359 -3
  414. package/dist/locales/pt.json +359 -3
  415. package/dist/locales/ro.json +359 -3
  416. package/dist/locales/ru.json +359 -3
  417. package/dist/locales/sq.json +359 -3
  418. package/dist/locales/sv.json +359 -3
  419. package/dist/locales/tr.json +359 -3
  420. package/dist/locales/zh.json +359 -3
  421. package/dist/patterns/alia-assistant/index.js +1 -1
  422. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  423. package/dist/patterns/patient-shell/index.js +1 -1
  424. package/dist/tokens.css +3 -2
  425. package/package.json +50 -1
  426. package/dist/_chunks/address-autocomplete-CT-9AOli.js +0 -358
  427. package/dist/_chunks/ai-tools-rail-CInA_1-E.js +0 -356
  428. package/dist/_chunks/appointment-tray-BMl89NPW.js +0 -419
  429. package/dist/_chunks/bishop-score-CjsB9bM-.js +0 -185
  430. package/dist/_chunks/bmi-calculator-n-823_1V.js +0 -258
  431. package/dist/_chunks/clinical-note-card-gtrxv6zn.js +0 -333
  432. package/dist/_chunks/editable-currency-cell-renderer-DHOspPee.js +0 -2409
  433. package/dist/_chunks/email-input-lQivsFrw.js +0 -396
  434. package/dist/_chunks/patient-summary-card-hEmr4eTW.js +0 -443
  435. package/dist/_chunks/registry-nPAVE19X.js +0 -21
  436. package/dist/_chunks/tab-bar-B1ovILzh.js +0 -105
  437. package/dist/_chunks/tooth-scheme-BIx1O2aJ.js +0 -1257
  438. package/dist/_chunks/unit-converter-C1V3ACM9.js +0 -196
  439. package/dist/_chunks/use-persistent-state-i23OWy6G.js +0 -24
  440. package/dist/_chunks/warning-stack-Cv4fr5zo.js +0 -220
@@ -0,0 +1,36 @@
1
+ import { type HTMLAttributes } from 'react';
2
+ import { Radiation } from 'lucide-react';
3
+ import type { FdiId, Radiograph } from '../tooth-scheme';
4
+ export interface RadiographPanelHandle {
5
+ /** Read the films currently shown (after the host's `radiographs` prop). */
6
+ getRadiographs: () => Radiograph[];
7
+ /** Open the fullscreen viewer on a film by id. */
8
+ openViewer: (id: string) => void;
9
+ /** Close the fullscreen viewer. */
10
+ closeViewer: () => void;
11
+ }
12
+ export interface RadiographPanelProps extends Omit<HTMLAttributes<HTMLElement>, 'title' | 'children'> {
13
+ /** Instance id — emitted as `data-component-id` for the agent registry. */
14
+ id?: string;
15
+ /** The tooth whose films are shown (FDI id). Null → a "select a tooth" prompt. */
16
+ toothId?: FdiId | null;
17
+ /** Display label for the selected tooth. Defaults to the localised "Tooth {{id}}". */
18
+ toothLabel?: string;
19
+ /** The selected tooth's films. The panel sorts + filters; order in is irrelevant. */
20
+ radiographs?: Radiograph[];
21
+ /** Commit a new film (the host persists it). Omit to hide the upload composer. */
22
+ onAddRadiograph?: (draft: {
23
+ fileName: string;
24
+ date?: string;
25
+ note?: string;
26
+ }) => void;
27
+ /** Remove a film by id. Omit to hide the delete affordance. */
28
+ onDeleteRadiograph?: (id: string) => void;
29
+ /** Panel heading. Defaults to the localised "Imaging". */
30
+ title?: string;
31
+ /** Accessible name for the panel region (defaults to `title`). */
32
+ 'aria-label'?: string;
33
+ }
34
+ export declare const RadiographPanel: import("react").ForwardRefExoticComponent<RadiographPanelProps & import("react").RefAttributes<RadiographPanelHandle>>;
35
+ export { Radiation as RadiographPanelIcon };
36
+ //# sourceMappingURL=radiograph-panel.d.ts.map
@@ -1,4 +1,4 @@
1
- import { R as t, r as c } from "../../_chunks/recaptcha-widget-BCNHsgqt.js";
1
+ import { R as t, r as c } from "../../_chunks/recaptcha-widget-BC-4To9b.js";
2
2
  export {
3
3
  t as RecaptchaWidget,
4
4
  c as recaptchaWidgetAgent
@@ -1,4 +1,4 @@
1
- import { H as s, P as l, a as n, R as r, r as o, u as t } from "../../_chunks/resizable-3vzqDlg6.js";
1
+ import { H as s, P as l, a as n, R as r, r as o, u as t } from "../../_chunks/resizable-DVGcfOrk.js";
2
2
  export {
3
3
  s as Handle,
4
4
  l as Panel,
@@ -1,4 +1,4 @@
1
- import { R as r, r as s } from "../../_chunks/reviews-panel-DBktKm7i.js";
1
+ import { R as r, r as s } from "../../_chunks/reviews-panel-Dq7LMDcH.js";
2
2
  export {
3
3
  r as ReviewsPanel,
4
4
  s as reviewsPanelAgent
@@ -1,4 +1,4 @@
1
- import { R as a, r as e, w as i } from "../../_chunks/rich-text-editor-VawKN1FI.js";
1
+ import { R as a, r as e, w as i } from "../../_chunks/rich-text-editor-DlCqPixb.js";
2
2
  export {
3
3
  a as RichTextEditor,
4
4
  e as richTextEditorAgent,
@@ -1,4 +1,4 @@
1
- import { S as e, f as s, s as t } from "../../_chunks/search-bar-SY2BcV2N.js";
1
+ import { S as e, f as s, s as t } from "../../_chunks/search-bar-C_T3pBJn.js";
2
2
  export {
3
3
  e as SearchBar,
4
4
  s as filterSearchResults,
@@ -1,5 +1,5 @@
1
- import { S as t } from "../../_chunks/search-input-DbxrnHkW.js";
2
- import { s as o } from "../../_chunks/search-input.agent-CfZvViOd.js";
1
+ import { S as t } from "../../_chunks/search-input-DQvGxR74.js";
2
+ import { s as o } from "../../_chunks/search-input.agent-DRH54coT.js";
3
3
  export {
4
4
  t as SearchInput,
5
5
  o as searchInputAgent
@@ -1,4 +1,4 @@
1
- import { S as a, a as l, b as S, c, d as s, e as o, f as r, g as p, h as g, i, j as m } from "../../_chunks/select-CEtRcon5.js";
1
+ import { S as a, a as l, b as S, c, d as s, e as o, f as r, g as p, h as g, i, j as m } from "../../_chunks/select-DMLG44F5.js";
2
2
  export {
3
3
  a as Select,
4
4
  l as SelectContent,
@@ -1,4 +1,4 @@
1
- import { S as n, s as e } from "../../_chunks/session-countdown-LPnhTHjn.js";
1
+ import { S as n, s as e } from "../../_chunks/session-countdown-X1Ki6i0M.js";
2
2
  export {
3
3
  n as SessionCountdown,
4
4
  e as sessionCountdownAgent
@@ -1,4 +1,4 @@
1
- import { S as t, s as a } from "../../_chunks/sheet-taJer-Ha.js";
1
+ import { S as t, s as a } from "../../_chunks/sheet-BxsE7eQm.js";
2
2
  export {
3
3
  t as Sheet,
4
4
  a as sheetAgent
@@ -1,5 +1,5 @@
1
- import { S as r, a as i, b as s, c as d, d as S, e as b, f as t, g as o, h as m, i as n, j as p, k as l, l as c, m as g, n as u, o as I, p as P, q as f, s as h, u as B } from "../../_chunks/sidebar-DaB4ulxH.js";
2
- import { u as k } from "../../_chunks/use-persistent-state-i23OWy6G.js";
1
+ import { S as r, a as i, b as s, c as d, d as S, e as b, f as t, g as o, h as m, i as n, j as p, k as l, l as c, m as g, n as u, o as I, p as P, q as f, s as h, u as B } from "../../_chunks/sidebar-DY9jGjgt.js";
2
+ import { u as k } from "../../_chunks/use-persistent-state-nZwZAnE9.js";
3
3
  export {
4
4
  r as Sidebar,
5
5
  i as SidebarBody,
@@ -75,6 +75,13 @@ declare const SidebarGroup: import("react").ForwardRefExoticComponent<SidebarGro
75
75
  export interface SidebarItemProps extends AnchorHTMLAttributes<HTMLAnchorElement> {
76
76
  /** Mark the item as the current page (`aria-current='page'`). */
77
77
  isActive?: boolean;
78
+ /**
79
+ * Stable identifier emitted as `data-nav-id` on the rendered row so an agent
80
+ * can locate and activate this nav item without traversing React state.
81
+ * Optional — when omitted the row carries no nav id. (See sidebar.agent.ts
82
+ * `domHooks.item`.)
83
+ */
84
+ navId?: string;
78
85
  /** Render through Radix `Slot` so a router link can take over. */
79
86
  asChild?: boolean;
80
87
  /**
@@ -1,4 +1,4 @@
1
- import { S as o, s } from "../../_chunks/sign-document-CdAiHiCh.js";
1
+ import { S as o, s } from "../../_chunks/sign-document-By6hMOra.js";
2
2
  export {
3
3
  o as SignDocument,
4
4
  s as signDocumentAgent
@@ -1,4 +1,4 @@
1
- import { S as r, s as t } from "../../_chunks/signature-capture-COi0Uiqu.js";
1
+ import { S as r, s as t } from "../../_chunks/signature-capture-Ct_4Md4e.js";
2
2
  export {
3
3
  r as SignatureCapture,
4
4
  t as signatureCaptureAgent
@@ -1,4 +1,4 @@
1
- import { S as o } from "../../_chunks/slider-BHWzXdjt.js";
1
+ import { S as o } from "../../_chunks/slider-DN1CWkKB.js";
2
2
  export {
3
3
  o as Slider
4
4
  };
@@ -1,4 +1,4 @@
1
- import { S as r, s, u as n } from "../../_chunks/sparkline-DGhCSw8M.js";
1
+ import { S as r, s, u as n } from "../../_chunks/sparkline-iOXYgvJe.js";
2
2
  export {
3
3
  r as Sparkline,
4
4
  s as sparklineAgent,
@@ -1,5 +1,5 @@
1
- import { S as e } from "../../_chunks/stepper-accordion-Dki6r9ZE.js";
2
- import { s as t } from "../../_chunks/stepper-accordion.agent-C4quJ-MD.js";
1
+ import { S as e } from "../../_chunks/stepper-accordion-DC-H-8v4.js";
2
+ import { s as t } from "../../_chunks/stepper-accordion.agent-cmEguIdx.js";
3
3
  export {
4
4
  e as StepperAccordion,
5
5
  t as stepperAccordionAgent
@@ -1,4 +1,4 @@
1
- import { S as s, s as p } from "../../_chunks/stepper-progress-DDjq5nei.js";
1
+ import { S as s, s as p } from "../../_chunks/stepper-progress-Bv0njx4g.js";
2
2
  export {
3
3
  s as StepperProgress,
4
4
  p as stepperProgressAgent
@@ -1,5 +1,5 @@
1
1
  import { S as g, a as e } from "../../_chunks/suggestion-chip-Bk4PmYTg.js";
2
- import { s as p } from "../../_chunks/suggestion-chip.agent-6sNWFj7m.js";
2
+ import { s as p } from "../../_chunks/suggestion-chip.agent-Brn3CiFE.js";
3
3
  export {
4
4
  g as SuggestionChip,
5
5
  e as SuggestionChipGroup,
@@ -1,4 +1,4 @@
1
- import { S as t } from "../../_chunks/switch-BJ6HD3Mn.js";
1
+ import { S as t } from "../../_chunks/switch-OILsBLWo.js";
2
2
  export {
3
3
  t as Switch
4
4
  };
@@ -1,4 +1,4 @@
1
- import { T as o } from "../../_chunks/tab-bar-B1ovILzh.js";
1
+ import { T as o } from "../../_chunks/tab-bar-Bv9nGNdO.js";
2
2
  export {
3
3
  o as TabBar
4
4
  };
@@ -14,13 +14,18 @@
14
14
  * Use this when the tab set is open-ended (e.g. a marketplace app's routes).
15
15
  * - `fill`: equal-width tabs that fill the bar and always stack the label under
16
16
  * the icon — a fixed, always-visible set that fits any column width without
17
- * scrolling (e.g. a patient portal's four sections).
17
+ * scrolling (e.g. a patient portal's handful of sections).
18
18
  *
19
19
  * Tabs render as links when given an `href` (real navigation) or as buttons
20
20
  * otherwise (in-app view switching via `onSelect`). Use it as a header (top,
21
21
  * default) for section navigation; `position="bottom"` floats it from the
22
22
  * bottom edge for a footer.
23
23
  *
24
+ * With `collapseToMenu`, the strip folds into a single DropdownMenu whenever the
25
+ * tabs don't fit — below the `sm` breakpoint OR when they overflow their
26
+ * container at any width (a narrow column on a wide screen, e.g. a page squeezed
27
+ * between two sidebars, clips the tabs just the same as a small viewport).
28
+ *
24
29
  * SPA / consumer-router links: pass `renderLink` and TabBar hands each `href`
25
30
  * tab off to your router's `<Link>` instead of rendering its own `<a>` — the
26
31
  * embedded MarketplaceAppShell strip uses this so a tab click is a client-side
@@ -97,6 +102,18 @@ export interface TabBarProps {
97
102
  * `'bottom'` gutters from the bottom edge for a footer.
98
103
  */
99
104
  position?: 'top' | 'bottom';
105
+ /**
106
+ * Collapse the tab strip into a single DropdownMenu whenever the tabs don't
107
+ * fit — below the `sm` breakpoint (≤640px) OR when they overflow their
108
+ * container at any viewport width (a narrow column between two sidebars clips
109
+ * the tabs the same as a small screen). The trigger shows the active tab; the
110
+ * menu lists them all. Off (default) keeps the content-width / scroll
111
+ * behaviour at every width, so existing consumers are unaffected. Designed for
112
+ * button (`onSelect`) tabs; in the collapsed menu an `href` tab navigates with
113
+ * a full page load, so `renderLink` (SPA routing) and a per-item `onClick`
114
+ * apply only to the expanded strip.
115
+ */
116
+ collapseToMenu?: boolean;
100
117
  /** Extra classes merged onto the outer strip (e.g. sticky/fixed positioning). */
101
118
  className?: string;
102
119
  }
@@ -1,4 +1,4 @@
1
- import { T as t, a as b, b as T, c as e, t as r } from "../../_chunks/tabs-BIQ0ew1T.js";
1
+ import { T as t, a as b, b as T, c as e, t as r } from "../../_chunks/tabs-BxcOziCo.js";
2
2
  export {
3
3
  t as Tabs,
4
4
  b as TabsContent,
@@ -1,5 +1,5 @@
1
1
  import { T as s, i as t } from "../../_chunks/task-card-BwY9jaV1.js";
2
- import { t as o } from "../../_chunks/task-card.agent-CUPKYd7w.js";
2
+ import { t as o } from "../../_chunks/task-card.agent-Bt14CzUd.js";
3
3
  export {
4
4
  s as TaskCard,
5
5
  t as isSafeTaskUrl,
@@ -1,4 +1,4 @@
1
- import { T as s, t } from "../../_chunks/task-tray-CAncV-QQ.js";
1
+ import { T as s, t } from "../../_chunks/task-tray-qOEQflu4.js";
2
2
  export {
3
3
  s as TaskTray,
4
4
  t as taskTrayAgent
@@ -1,4 +1,4 @@
1
- import { T as a } from "../../_chunks/text-area-BIx0tZ05.js";
1
+ import { T as a } from "../../_chunks/text-area-Bt3p7Pt0.js";
2
2
  export {
3
3
  a as TextArea
4
4
  };
@@ -1,4 +1,4 @@
1
- import { T as o } from "../../_chunks/text-input-BaClJL8Y.js";
1
+ import { T as o } from "../../_chunks/text-input-B-OWQ1Je.js";
2
2
  export {
3
3
  o as TextInput
4
4
  };
@@ -1,4 +1,4 @@
1
- import { T as o, t } from "../../_chunks/theme-toggle-DETmSu_h.js";
1
+ import { T as o, t } from "../../_chunks/theme-toggle-XB6o_lgs.js";
2
2
  export {
3
3
  o as ThemeToggle,
4
4
  t as themeToggleAgent
@@ -1,4 +1,4 @@
1
- import { T as r, t } from "../../_chunks/time-picker-B5umYwfv.js";
1
+ import { T as r, t } from "../../_chunks/time-picker-BPlJWm8w.js";
2
2
  export {
3
3
  r as TimePicker,
4
4
  t as timePickerAgent
@@ -1,4 +1,4 @@
1
- import { T as t, t as m } from "../../_chunks/timeline-DQa5Tyz4.js";
1
+ import { T as t, t as m } from "../../_chunks/timeline-CqA4nKTI.js";
2
2
  export {
3
3
  t as Timeline,
4
4
  m as timelineAgent
@@ -1,4 +1,4 @@
1
- import { T as s, t as o, a as e, b as r, c as n, d as c, e as g } from "../../_chunks/toast.agent-vuLRRn2a.js";
1
+ import { T as s, t as o, a as e, b as r, c as n, d as c, e as g } from "../../_chunks/toast.agent-57UzyR9U.js";
2
2
  export {
3
3
  s as Toaster,
4
4
  o as toastAgent,
@@ -1,5 +1,5 @@
1
1
  export * from './tooth-scheme';
2
- export { FDI_TO_META, FDI_TO_UNIVERSAL, FDI_TO_PALMER, CONDITION_COLORS, CONDITION_TOKENS, CONDITION_SIDE_SYMBOL, CONDITION_PLAN_FOLDER, SURFACE_ASSET_NAME, toothImageUrl, conditionSymbolUrl, surfaceSymbolUrl, zonesForTooth, zoneSurface, zonePath, chartFromConditions, emptyChart, labelFor, layoutTeeth, } from './tooth-data';
3
- export type { Anatomy, Arch, Quadrant, Side, Surface, SurfaceZone, Projection, SideSymbolSpec, ToothMeta, PositionedTooth, } from './tooth-data';
2
+ export { FDI_TO_META, FDI_TO_UNIVERSAL, FDI_TO_PALMER, CONDITION_COLORS, CONDITION_TOKENS, CONDITION_SIDE_SYMBOL, CONDITION_PLAN_FOLDER, SURFACE_ASSET_NAME, toothImageUrl, conditionSymbolUrl, surfaceSymbolUrl, zonesForTooth, zoneSurface, zonePath, chartFromConditions, emptyChart, labelFor, layoutTeeth, layoutSpecials, specialsForRow, specialIconUrl, generalElement, isSpecialElement, SPECIAL_ELEMENTS, SPECIAL_BY_ID, } from './tooth-data';
3
+ export type { Anatomy, Arch, Quadrant, Side, Surface, SurfaceZone, Projection, Radiograph, RadiographKind, SideSymbolSpec, SpecialElement, SpecialElementKind, PositionedSpecial, ToothMeta, PositionedTooth, } from './tooth-data';
4
4
  export { toothSchemeAgent } from './tooth-scheme.agent';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1,27 +1,34 @@
1
- import { C as o, a as t, b as e, c as T, F as O, d as _, e as E, P as I, f as S, S as r, T as N, g as h, h as m, i as n, l as A, j as l, s as C, t as D, k as F, r as c, z as R, m as i, n as L } from "../../_chunks/tooth-scheme-BIx1O2aJ.js";
1
+ import { C as o, a as e, b as t, c as E, F as S, d as T, e as I, P as _, f as l, S as r, g as O, h as N, T as n, i as c, j as h, k as m, l as A, m as i, n as C, o as D, p as F, s as L, q as R, r as P, t as p, u as M, v as U, z as u, w as y, x as b } from "../../_chunks/tooth-scheme-BhQoPNBD.js";
2
2
  export {
3
3
  o as CONDITION_COLORS,
4
- t as CONDITION_PLAN_FOLDER,
5
- e as CONDITION_SIDE_SYMBOL,
6
- T as CONDITION_TOKENS,
7
- O as FDI_TO_META,
8
- _ as FDI_TO_PALMER,
9
- E as FDI_TO_UNIVERSAL,
10
- I as PERMANENT_TEETH,
11
- S as PRIMARY_TEETH,
12
- r as SURFACE_ASSET_NAME,
13
- N as ToothScheme,
14
- h as chartFromConditions,
15
- m as conditionSymbolUrl,
16
- n as emptyChart,
17
- A as labelFor,
18
- l as layoutTeeth,
19
- C as surfaceSymbolUrl,
20
- D as toothImageUrl,
21
- F as toothSchemeAgent,
22
- c as toothSchemeVariants,
23
- R as zonePath,
24
- i as zoneSurface,
25
- L as zonesForTooth
4
+ e as CONDITION_PLAN_FOLDER,
5
+ t as CONDITION_SIDE_SYMBOL,
6
+ E as CONDITION_TOKENS,
7
+ S as FDI_TO_META,
8
+ T as FDI_TO_PALMER,
9
+ I as FDI_TO_UNIVERSAL,
10
+ _ as PERMANENT_TEETH,
11
+ l as PRIMARY_TEETH,
12
+ r as SPECIAL_BY_ID,
13
+ O as SPECIAL_ELEMENTS,
14
+ N as SURFACE_ASSET_NAME,
15
+ n as ToothScheme,
16
+ c as chartFromConditions,
17
+ h as conditionSymbolUrl,
18
+ m as emptyChart,
19
+ A as generalElement,
20
+ i as isSpecialElement,
21
+ C as labelFor,
22
+ D as layoutSpecials,
23
+ F as layoutTeeth,
24
+ L as specialIconUrl,
25
+ R as specialsForRow,
26
+ P as surfaceSymbolUrl,
27
+ p as toothImageUrl,
28
+ M as toothSchemeAgent,
29
+ U as toothSchemeVariants,
30
+ u as zonePath,
31
+ y as zoneSurface,
32
+ b as zonesForTooth
26
33
  };
27
34
  //# sourceMappingURL=index.js.map
@@ -10,6 +10,35 @@ export interface ToothState {
10
10
  notes?: string;
11
11
  }
12
12
  export type ToothChart = Record<FdiId, ToothState>;
13
+ /** Radiograph (x-ray) type. `'periapical'` is the intraoral *endorale*. */
14
+ export type RadiographKind = 'periapical' | 'bitewing' | 'panoramic' | 'other';
15
+ /**
16
+ * A single radiograph attached to a tooth. Image urls are opaque,
17
+ * consumer-hosted strings, interpolated into an SVG `<image href>` / `<img src>`
18
+ * (which cannot execute scripts) — never bundled and never runtime-validated.
19
+ * Real radiographs are PHI: stories and demos must use synthetic placeholders.
20
+ */
21
+ export interface Radiograph {
22
+ /** Stable id — keys the archive list and the imperative open call. */
23
+ id: string;
24
+ /** Full-resolution image url. */
25
+ url: string;
26
+ /** Optional smaller preview url (falls back to `url`). */
27
+ thumbnailUrl?: string;
28
+ /** ISO acquisition date (`YYYY-MM-DD`). */
29
+ date?: string;
30
+ /** Free-text clinical note. */
31
+ note?: string;
32
+ /** Radiograph type. Default `'periapical'` (an *endorale*). */
33
+ kind?: RadiographKind;
34
+ /**
35
+ * Accessible description for the FULL-SIZE image, consumed by a downstream
36
+ * viewer (e.g. the Dental Imaging Hub archive `<img>`). The chart's slot
37
+ * render is decorative (`aria-hidden` — the tooth's accessible name carries
38
+ * the radiograph count), so `alt` is intentionally not read by the chart.
39
+ */
40
+ alt?: string;
41
+ }
13
42
  export type Anatomy = 'incisor' | 'canine' | 'premolar' | 'molar';
14
43
  export type Arch = 'upper' | 'lower';
15
44
  export type Side = 'right' | 'left';
@@ -141,11 +170,93 @@ export interface PositionedTooth {
141
170
  * is preserved: the patient's right sits on the viewer's left in both
142
171
  * arches, regardless of document direction.
143
172
  */
144
- export declare function layoutTeeth(dentition: Dentition, slotHeight?: number): {
173
+ export declare function layoutTeeth(dentition: Dentition, slotHeight?: number, options?: {
174
+ arch?: Arch;
175
+ }): {
145
176
  teeth: PositionedTooth[];
146
177
  width: number;
147
178
  height: number;
148
179
  };
180
+ export type SpecialElementKind = 'quadrant' | 'sextant' | 'arch' | 'general';
181
+ export interface SpecialElement {
182
+ /**
183
+ * Stable id — a chart key and the value emitted by `onSelect`. Permanent:
184
+ * `Q1`–`Q4`, `S1`–`S6`, `AS`, `AI`, `general`. Primary mirrors with an `m`
185
+ * prefix: `mQ1`…, `mS1`…, `mAS`, `mAI`, `mGeneral`.
186
+ */
187
+ id: string;
188
+ kind: SpecialElementKind;
189
+ arch: Arch;
190
+ dentition: 'permanent' | 'primary';
191
+ /** i18n token under `toothScheme.special.*` for the accessible name. */
192
+ labelKey: 'quadrant' | 'sextant' | 'archUpper' | 'archLower' | 'general';
193
+ /** Interpolated into the `{{n}}` of quadrant / sextant labels (e.g. `1`). */
194
+ labelIndex?: number;
195
+ /** Short code shown in the slot, e.g. `Q1`, `S3`, `AS`, `Gen.`. */
196
+ code: string;
197
+ /**
198
+ * Member teeth (FDI) — informational for consumers that highlight or expand a
199
+ * region. Selection itself keys on `id`; the platform expands membership
200
+ * server-side. Sextants follow the WHO/CPITN convention.
201
+ */
202
+ teeth: FdiId[];
203
+ /**
204
+ * Column within the special-element block. Quadrant and its paired sextant
205
+ * share a column so they stack (Q1↕S1, Q2↕S2, AS↕S3 / S4↕Q4, S5↕Q3, S6↕AI).
206
+ */
207
+ column: number;
208
+ /** Row the element attaches to: side (quadrant/arch/general) or plan (sextant). */
209
+ row: Projection;
210
+ }
211
+ /** Every special element, flat — permanent then primary. */
212
+ export declare const SPECIAL_ELEMENTS: SpecialElement[];
213
+ /** Lookup a special element by its id (`Q1`, `mS3`, `AS`, `general`…). */
214
+ export declare const SPECIAL_BY_ID: Record<string, SpecialElement>;
215
+ /** True when an id names a special element rather than a tooth. */
216
+ export declare function isSpecialElement(id: string): boolean;
217
+ /**
218
+ * The special-element SLOTS that attach to a given row, ordered by column.
219
+ * Quadrant / arch live on the `side` row; sextants on the `plan` row. The
220
+ * whole-mouth `general` element is excluded — it renders as a switch beneath the
221
+ * chart (see `generalElement`), not as a column. Mixed dentition reuses the
222
+ * permanent set (the platform has no mixed view).
223
+ */
224
+ export declare function specialsForRow(dentition: Dentition, arch: Arch, projection: Projection): SpecialElement[];
225
+ /**
226
+ * The whole-mouth `general` element for a dentition. It is rendered as a switch
227
+ * beneath the chart rather than as a cramped icon column (the platform's vertical
228
+ * "GENERALE" glyph is illegible at column width).
229
+ */
230
+ export declare function generalElement(dentition: Dentition): SpecialElement;
231
+ /** A special-element slot placed in an SVG, to the inline-end of the teeth. */
232
+ export interface PositionedSpecial {
233
+ element: SpecialElement;
234
+ x: number;
235
+ y: number;
236
+ }
237
+ /** Special-element slot block-size — matches a tooth slot so icons read clearly. */
238
+ export declare const SPECIAL_SLOT_WIDTH = 36;
239
+ /**
240
+ * Resolve the photoreal icon URL for a special element, or `null` when it has
241
+ * none (sextants are label-only — the platform ships no sextant icon). Icons
242
+ * live in the `global/` sibling of the `teeth/` render folder; quadrants and
243
+ * arches reuse their code as the file stem (`Q1`, `AS`, …), general resolves to
244
+ * `general`, and primary elements reuse the permanent art.
245
+ */
246
+ export declare function specialIconUrl(element: SpecialElement, assetBaseUrl: string): string | null;
247
+ /** Gap between the last tooth and the first special-element column. */
248
+ export declare const SPECIAL_GAP = 8;
249
+ /** Column pitch within the special-element block. */
250
+ export declare const SPECIAL_PITCH: number;
251
+ /**
252
+ * Place a row's special elements after the teeth (inline-end) and report the
253
+ * total row width. Columns are derived from `element.column`, so a quadrant and
254
+ * its paired sextant share an x and stack across the two rows.
255
+ */
256
+ export declare function layoutSpecials(specials: SpecialElement[], teethWidth: number): {
257
+ specials: PositionedSpecial[];
258
+ width: number;
259
+ };
149
260
  export declare function labelFor(id: FdiId, numbering: Numbering): string;
150
261
  export declare function emptyChart(): ToothChart;
151
262
  export declare function chartFromConditions(conditions: Partial<Record<FdiId, ToothCondition[]>>): ToothChart;
@@ -1,6 +1,6 @@
1
1
  import type { AgentAdapter } from '../../agent/types';
2
2
  import type { ToothSchemeHandle } from './tooth-scheme';
3
- import type { Surface, ToothCondition } from './tooth-data';
3
+ import type { Radiograph, Surface, ToothCondition } from './tooth-data';
4
4
  export declare const toothSchemeAgent: AgentAdapter<ToothSchemeHandle>;
5
- export type { Surface, ToothCondition };
5
+ export type { Radiograph, Surface, ToothCondition };
6
6
  //# sourceMappingURL=tooth-scheme.agent.d.ts.map