@alfadocs/ui-kit-debug 0.69.0 → 0.71.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.
- package/dist/_chunks/address-fields-CPbFJ8e8.js +246 -0
- package/dist/_chunks/address-fields-CPbFJ8e8.js.map +1 -0
- package/dist/_chunks/{agenda-card-BxSFkqgY.js → agenda-card-BQ-IKAru.js} +2 -2
- package/dist/_chunks/{agenda-card-BxSFkqgY.js.map → agenda-card-BQ-IKAru.js.map} +1 -1
- package/dist/_chunks/{agenda-tray-g0kg7HwB.js → agenda-tray-CGXRk58j.js} +2 -2
- package/dist/_chunks/{agenda-tray-g0kg7HwB.js.map → agenda-tray-CGXRk58j.js.map} +1 -1
- package/dist/_chunks/{ai-consent-banner-CXlsNX1c.js → ai-consent-banner-Be-h9mRI.js} +3 -3
- package/dist/_chunks/{ai-consent-banner-CXlsNX1c.js.map → ai-consent-banner-Be-h9mRI.js.map} +1 -1
- package/dist/_chunks/{ai-prompt-input-CuhTo9mh.js → ai-prompt-input-V4DdOeqv.js} +2 -2
- package/dist/_chunks/{ai-prompt-input-CuhTo9mh.js.map → ai-prompt-input-V4DdOeqv.js.map} +1 -1
- package/dist/_chunks/{alert-_mUKLmwA.js → alert-CHYZ96tR.js} +150 -96
- package/dist/_chunks/alert-CHYZ96tR.js.map +1 -0
- package/dist/_chunks/{alia-sidebar-B47qRQb5.js → alia-sidebar-DvIUzIX9.js} +107 -106
- package/dist/_chunks/alia-sidebar-DvIUzIX9.js.map +1 -0
- package/dist/_chunks/{anamnesis-card-DRmE24OQ.js → anamnesis-card-DvYCa16e.js} +2 -2
- package/dist/_chunks/{anamnesis-card-DRmE24OQ.js.map → anamnesis-card-DvYCa16e.js.map} +1 -1
- package/dist/_chunks/anatomy-scheme-CXSk11UJ.js +2445 -0
- package/dist/_chunks/anatomy-scheme-CXSk11UJ.js.map +1 -0
- package/dist/_chunks/annotation-marker-qt5R9WZX.js +120 -0
- package/dist/_chunks/annotation-marker-qt5R9WZX.js.map +1 -0
- package/dist/_chunks/{antenatal-schedule-timeline-35ebkcZT.js → antenatal-schedule-timeline-CwXrQRm1.js} +2 -2
- package/dist/_chunks/{antenatal-schedule-timeline-35ebkcZT.js.map → antenatal-schedule-timeline-CwXrQRm1.js.map} +1 -1
- package/dist/_chunks/{app-frame-BYx1gcV7.js → app-frame-DIEMIC5V.js} +67 -56
- package/dist/_chunks/app-frame-DIEMIC5V.js.map +1 -0
- package/dist/_chunks/appointment-card-DVaeJNVB.js +294 -0
- package/dist/_chunks/appointment-card-DVaeJNVB.js.map +1 -0
- package/dist/_chunks/appointment-timeline-PJgnrjFb.js +388 -0
- package/dist/_chunks/appointment-timeline-PJgnrjFb.js.map +1 -0
- package/dist/_chunks/appointment-tray-B16QPGbm.js +193 -0
- package/dist/_chunks/appointment-tray-B16QPGbm.js.map +1 -0
- package/dist/_chunks/{audio-recorder-DYXXnGug.js → audio-recorder-DNDsOLqO.js} +3 -3
- package/dist/_chunks/{audio-recorder-DYXXnGug.js.map → audio-recorder-DNDsOLqO.js.map} +1 -1
- package/dist/_chunks/{autocomplete-DOeGouCL.js → autocomplete-BrONKN8l.js} +168 -146
- package/dist/_chunks/autocomplete-BrONKN8l.js.map +1 -0
- package/dist/_chunks/{badge-CqGsX32l.js → badge-DCOqV9mI.js} +32 -27
- package/dist/_chunks/badge-DCOqV9mI.js.map +1 -0
- package/dist/_chunks/{bishop-score-PJI3AXzA.js → bishop-score-Cym_TeQY.js} +3 -3
- package/dist/_chunks/{bishop-score-PJI3AXzA.js.map → bishop-score-Cym_TeQY.js.map} +1 -1
- package/dist/_chunks/{bmi-calculator-BZtIJ53x.js → bmi-calculator-zjeY4E7J.js} +2 -2
- package/dist/_chunks/{bmi-calculator-BZtIJ53x.js.map → bmi-calculator-zjeY4E7J.js.map} +1 -1
- package/dist/_chunks/{booking-C3VqFReX.js → booking-C7do4vaR.js} +7 -7
- package/dist/_chunks/{booking-C3VqFReX.js.map → booking-C7do4vaR.js.map} +1 -1
- package/dist/_chunks/{button-group-Ciq6J4IW.js → button-group-CvEnVzY7.js} +32 -35
- package/dist/_chunks/{button-group-Ciq6J4IW.js.map → button-group-CvEnVzY7.js.map} +1 -1
- package/dist/_chunks/{care-plan-card-CvFGXa2z.js → care-plan-card-DzPDYgtK.js} +5 -5
- package/dist/_chunks/{care-plan-card-CvFGXa2z.js.map → care-plan-card-DzPDYgtK.js.map} +1 -1
- package/dist/_chunks/{care-plan-entry-card-C3E_gClk.js → care-plan-entry-card-CEnQy7YP.js} +5 -5
- package/dist/_chunks/{care-plan-entry-card-C3E_gClk.js.map → care-plan-entry-card-CEnQy7YP.js.map} +1 -1
- package/dist/_chunks/care-plan-header-DcXFXWit.js +198 -0
- package/dist/_chunks/care-plan-header-DcXFXWit.js.map +1 -0
- package/dist/_chunks/{chat-message-3V54YipB.js → chat-message-DzpcJR-q.js} +25 -23
- package/dist/_chunks/chat-message-DzpcJR-q.js.map +1 -0
- package/dist/_chunks/city-input-Dkgaak7I.js +169 -0
- package/dist/_chunks/city-input-Dkgaak7I.js.map +1 -0
- package/dist/_chunks/clinical-note-card-BUvNMNGL.js +436 -0
- package/dist/_chunks/clinical-note-card-BUvNMNGL.js.map +1 -0
- package/dist/_chunks/clipboard-list-S7s-MXQq.js +25 -0
- package/dist/_chunks/clipboard-list-S7s-MXQq.js.map +1 -0
- package/dist/_chunks/{combobox-Clum7gJ1.js → combobox-DnqSF0IH.js} +131 -114
- package/dist/_chunks/combobox-DnqSF0IH.js.map +1 -0
- package/dist/_chunks/connection-status-CY1HV8Wg.js +108 -0
- package/dist/_chunks/connection-status-CY1HV8Wg.js.map +1 -0
- package/dist/_chunks/{contact-profile-card-Dramqa9C.js → contact-profile-card-DDPwRFiP.js} +2 -2
- package/dist/_chunks/{contact-profile-card-Dramqa9C.js.map → contact-profile-card-DDPwRFiP.js.map} +1 -1
- package/dist/_chunks/control-room-rail-FAQZrGVL.js +333 -0
- package/dist/_chunks/control-room-rail-FAQZrGVL.js.map +1 -0
- package/dist/_chunks/country-select-BwUZQvTa.js +709 -0
- package/dist/_chunks/country-select-BwUZQvTa.js.map +1 -0
- package/dist/_chunks/{cycle-calculator-DmRGJNaT.js → cycle-calculator-CCmPwcBl.js} +2 -2
- package/dist/_chunks/{cycle-calculator-DmRGJNaT.js.map → cycle-calculator-CCmPwcBl.js.map} +1 -1
- package/dist/_chunks/{dependent-selector-CG_FOHya.js → dependent-selector-DUV4thxX.js} +2 -2
- package/dist/_chunks/{dependent-selector-CG_FOHya.js.map → dependent-selector-DUV4thxX.js.map} +1 -1
- package/dist/_chunks/{document-scanner-CTubA0-N.js → document-scanner-C_AxLooF.js} +3 -3
- package/dist/_chunks/{document-scanner-CTubA0-N.js.map → document-scanner-C_AxLooF.js.map} +1 -1
- package/dist/_chunks/{due-date-calculator-BTmsIQqD.js → due-date-calculator-Brdj-euS.js} +3 -3
- package/dist/_chunks/{due-date-calculator-BTmsIQqD.js.map → due-date-calculator-Brdj-euS.js.map} +1 -1
- package/dist/_chunks/editable-currency-cell-renderer-CGELrkIj.js +410 -0
- package/dist/_chunks/editable-currency-cell-renderer-CGELrkIj.js.map +1 -0
- package/dist/_chunks/email-input-DJ7EXklP.js +397 -0
- package/dist/_chunks/{email-input-B_Y55f5G.js.map → email-input-DJ7EXklP.js.map} +1 -1
- package/dist/_chunks/{entity-card-COhmqHly.js → entity-card-DmrgYSEX.js} +38 -20
- package/dist/_chunks/{entity-card-COhmqHly.js.map → entity-card-DmrgYSEX.js.map} +1 -1
- package/dist/_chunks/entity-summary-CaM1Y-xE.js +291 -0
- package/dist/_chunks/entity-summary-CaM1Y-xE.js.map +1 -0
- package/dist/_chunks/{fetal-weight-CRz7KE2D.js → fetal-weight-DNCkyeVo.js} +2 -2
- package/dist/_chunks/{fetal-weight-CRz7KE2D.js.map → fetal-weight-DNCkyeVo.js.map} +1 -1
- package/dist/_chunks/field-array-siUZzfYe.js +146 -0
- package/dist/_chunks/field-array-siUZzfYe.js.map +1 -0
- package/dist/_chunks/field-value-3jMM0uDx.js +415 -0
- package/dist/_chunks/field-value-3jMM0uDx.js.map +1 -0
- package/dist/_chunks/{file-upload-5ScQd4fE.js → file-upload-DwZcAK8D.js} +2 -1
- package/dist/_chunks/{file-upload-5ScQd4fE.js.map → file-upload-DwZcAK8D.js.map} +1 -1
- package/dist/_chunks/{freemium-paywall-DZ2mBS3w.js → freemium-paywall-WYlNO7yT.js} +2 -2
- package/dist/_chunks/{freemium-paywall-DZ2mBS3w.js.map → freemium-paywall-WYlNO7yT.js.map} +1 -1
- package/dist/_chunks/{gestational-age-calculator-BleUdhbI.js → gestational-age-calculator-DKzEV5Qi.js} +4 -4
- package/dist/_chunks/{gestational-age-calculator-BleUdhbI.js.map → gestational-age-calculator-DKzEV5Qi.js.map} +1 -1
- package/dist/_chunks/hash-CysBBS_N.js +17 -0
- package/dist/_chunks/hash-CysBBS_N.js.map +1 -0
- package/dist/_chunks/{hcg-doubling-CnjDXX6U.js → hcg-doubling-C7bmuaU3.js} +2 -2
- package/dist/_chunks/{hcg-doubling-CnjDXX6U.js.map → hcg-doubling-C7bmuaU3.js.map} +1 -1
- package/dist/_chunks/iban-input-B0TWzR1R.js +436 -0
- package/dist/_chunks/iban-input-B0TWzR1R.js.map +1 -0
- package/dist/_chunks/icon-picker-0B7KhrF1.js +272 -0
- package/dist/_chunks/icon-picker-0B7KhrF1.js.map +1 -0
- package/dist/_chunks/image-cropper-D9jqJy19.js +367 -0
- package/dist/_chunks/image-cropper-D9jqJy19.js.map +1 -0
- package/dist/_chunks/{actions-cell-renderer-DrcaxB0w.js → link-cell-renderer-De_SLjSq.js} +792 -668
- package/dist/_chunks/link-cell-renderer-De_SLjSq.js.map +1 -0
- package/dist/_chunks/list-checks-BUs75d_o.js +18 -0
- package/dist/_chunks/list-checks-BUs75d_o.js.map +1 -0
- package/dist/_chunks/lock-CKOIn0IK.js +15 -0
- package/dist/_chunks/lock-CKOIn0IK.js.map +1 -0
- package/dist/_chunks/{marketplace-app-shell-6T9W4Knl.js → marketplace-app-shell-BGqkywsi.js} +5 -5
- package/dist/_chunks/{marketplace-app-shell-6T9W4Knl.js.map → marketplace-app-shell-BGqkywsi.js.map} +1 -1
- package/dist/_chunks/message-card-DsHFFiL1.js +319 -0
- package/dist/_chunks/message-card-DsHFFiL1.js.map +1 -0
- package/dist/_chunks/{message-tray-DwrBLJlf.js → message-tray-C0a6CL1_.js} +172 -135
- package/dist/_chunks/message-tray-C0a6CL1_.js.map +1 -0
- package/dist/_chunks/{multi-select-BdHHDrRN.js → multi-select-WE4S9FIF.js} +75 -63
- package/dist/_chunks/{multi-select-BdHHDrRN.js.map → multi-select-WE4S9FIF.js.map} +1 -1
- package/dist/_chunks/nav-grid-9xphY3FM.js +169 -0
- package/dist/_chunks/nav-grid-9xphY3FM.js.map +1 -0
- package/dist/_chunks/notes-panel-DXiMfuvp.js +320 -0
- package/dist/_chunks/notes-panel-DXiMfuvp.js.map +1 -0
- package/dist/_chunks/notification-card-BMqNzCIt.js +290 -0
- package/dist/_chunks/notification-card-BMqNzCIt.js.map +1 -0
- package/dist/_chunks/{notification-tray-Btb9oQeZ.js → notification-tray-BmUlCx3g.js} +201 -166
- package/dist/_chunks/notification-tray-BmUlCx3g.js.map +1 -0
- package/dist/_chunks/{operator-hero-CP2Nhupm.js → operator-hero-BO8TqzX2.js} +3 -3
- package/dist/_chunks/{operator-hero-CP2Nhupm.js.map → operator-hero-BO8TqzX2.js.map} +1 -1
- package/dist/_chunks/panel-header-D313n_9-.js +105 -0
- package/dist/_chunks/panel-header-D313n_9-.js.map +1 -0
- package/dist/_chunks/patient-details-DgfTJimE.js +759 -0
- package/dist/_chunks/patient-details-DgfTJimE.js.map +1 -0
- package/dist/_chunks/{patient-search-CBC_ySF6.js → patient-search-CSWQKOSP.js} +3 -3
- package/dist/_chunks/{patient-search-CBC_ySF6.js.map → patient-search-CSWQKOSP.js.map} +1 -1
- package/dist/_chunks/{patient-shell-DV3XEtIB.js → patient-shell-BMwsIKlW.js} +3 -3
- package/dist/_chunks/{patient-shell-DV3XEtIB.js.map → patient-shell-BMwsIKlW.js.map} +1 -1
- package/dist/_chunks/patient-summary-card-D4NdgYJB.js +452 -0
- package/dist/_chunks/patient-summary-card-D4NdgYJB.js.map +1 -0
- package/dist/_chunks/patient-table-CERknpd8.js +1110 -0
- package/dist/_chunks/patient-table-CERknpd8.js.map +1 -0
- package/dist/_chunks/{payment-form-DvjwYVIT.js → payment-form-CxqIXqw7.js} +2 -2
- package/dist/_chunks/{payment-form-DvjwYVIT.js.map → payment-form-CxqIXqw7.js.map} +1 -1
- package/dist/_chunks/{payment-request-card-DioWKBUq.js → payment-request-card-Blf-MFNY.js} +125 -136
- package/dist/_chunks/payment-request-card-Blf-MFNY.js.map +1 -0
- package/dist/_chunks/{pdf-viewer-D6BPfW2D.js → pdf-viewer-QfebdLOd.js} +192 -214
- package/dist/_chunks/pdf-viewer-QfebdLOd.js.map +1 -0
- package/dist/_chunks/{periodontal-chart-card-BuDEMbHE.js → periodontal-chart-card-hRRJY1NN.js} +2 -2
- package/dist/_chunks/{periodontal-chart-card-BuDEMbHE.js.map → periodontal-chart-card-hRRJY1NN.js.map} +1 -1
- package/dist/_chunks/permission-matrix-Bw5oexUt.js +174 -0
- package/dist/_chunks/permission-matrix-Bw5oexUt.js.map +1 -0
- package/dist/_chunks/position-grid-CcvqHaKN.js +169 -0
- package/dist/_chunks/position-grid-CcvqHaKN.js.map +1 -0
- package/dist/_chunks/postal-code-input-UCOYuRY2.js +192 -0
- package/dist/_chunks/postal-code-input-UCOYuRY2.js.map +1 -0
- package/dist/_chunks/{practice-results-KrTHqZua.js → practice-results-El5Z-oVp.js} +4 -4
- package/dist/_chunks/{practice-results-KrTHqZua.js.map → practice-results-El5Z-oVp.js.map} +1 -1
- package/dist/_chunks/{pregnancy-dating-DORUAOHB.js → pregnancy-dating-CunHrOpO.js} +4 -4
- package/dist/_chunks/{pregnancy-dating-DORUAOHB.js.map → pregnancy-dating-CunHrOpO.js.map} +1 -1
- package/dist/_chunks/{pregnancy-weight-gain-DVz4rr7-.js → pregnancy-weight-gain-BUNpTsH-.js} +2 -2
- package/dist/_chunks/{pregnancy-weight-gain-DVz4rr7-.js.map → pregnancy-weight-gain-BUNpTsH-.js.map} +1 -1
- package/dist/_chunks/{product-hub-panel-e6pW220e.js → product-hub-panel-DtU7KXxm.js} +257 -217
- package/dist/_chunks/product-hub-panel-DtU7KXxm.js.map +1 -0
- package/dist/_chunks/province-select-D_TZvix3.js +261 -0
- package/dist/_chunks/province-select-D_TZvix3.js.map +1 -0
- package/dist/_chunks/{public-header.agent-DqkqA-ca.js → public-header.agent-TxmC_x1I.js} +2 -2
- package/dist/_chunks/{public-header.agent-DqkqA-ca.js.map → public-header.agent-TxmC_x1I.js.map} +1 -1
- package/dist/_chunks/radiograph-panel.agent-tWjN2nHX.js +553 -0
- package/dist/_chunks/radiograph-panel.agent-tWjN2nHX.js.map +1 -0
- package/dist/_chunks/reviews-panel-DxkSrgMl.js +559 -0
- package/dist/_chunks/reviews-panel-DxkSrgMl.js.map +1 -0
- package/dist/_chunks/rich-text-editor-C8tyGjfb.js +2621 -0
- package/dist/_chunks/rich-text-editor-C8tyGjfb.js.map +1 -0
- package/dist/_chunks/{scroll-area-5wNK0Cyz.js → scroll-area-BZOvUhwQ.js} +2 -2
- package/dist/_chunks/scroll-area-BZOvUhwQ.js.map +1 -0
- package/dist/_chunks/{select-DMLG44F5.js → select-KsyRr8WH.js} +114 -102
- package/dist/_chunks/select-KsyRr8WH.js.map +1 -0
- package/dist/_chunks/{sheet-BxsE7eQm.js → sheet-umkfZjF6.js} +53 -42
- package/dist/_chunks/sheet-umkfZjF6.js.map +1 -0
- package/dist/_chunks/{sidebar-DY9jGjgt.js → sidebar-QCp9wHNP.js} +125 -113
- package/dist/_chunks/sidebar-QCp9wHNP.js.map +1 -0
- package/dist/_chunks/{sign-document-B4DeRhTe.js → sign-document-By6hMOra.js} +2 -2
- package/dist/_chunks/{sign-document-B4DeRhTe.js.map → sign-document-By6hMOra.js.map} +1 -1
- package/dist/_chunks/{stepper-accordion-Dki6r9ZE.js → stepper-accordion-DC-H-8v4.js} +38 -48
- package/dist/_chunks/stepper-accordion-DC-H-8v4.js.map +1 -0
- package/dist/_chunks/tab-bar-Bv9nGNdO.js +262 -0
- package/dist/_chunks/tab-bar-Bv9nGNdO.js.map +1 -0
- package/dist/_chunks/{tabs-BxcOziCo.js → tabs-CYZVKKDl.js} +2 -2
- package/dist/_chunks/{tabs-BxcOziCo.js.map → tabs-CYZVKKDl.js.map} +1 -1
- package/dist/_chunks/task-card-DCdsI0ZT.js +189 -0
- package/dist/_chunks/task-card-DCdsI0ZT.js.map +1 -0
- package/dist/_chunks/{task-tray-qOEQflu4.js → task-tray-DNVejijD.js} +2 -2
- package/dist/_chunks/{task-tray-qOEQflu4.js.map → task-tray-DNVejijD.js.map} +1 -1
- package/dist/_chunks/tasks-panel-C9odmawT.js +757 -0
- package/dist/_chunks/tasks-panel-C9odmawT.js.map +1 -0
- package/dist/_chunks/token-insert-menu-CFQqTe_n.js +147 -0
- package/dist/_chunks/token-insert-menu-CFQqTe_n.js.map +1 -0
- package/dist/_chunks/tool-rail-BZx0-yIr.js +524 -0
- package/dist/_chunks/tool-rail-BZx0-yIr.js.map +1 -0
- package/dist/_chunks/tooth-scheme-DJZtzfeY.js +2133 -0
- package/dist/_chunks/tooth-scheme-DJZtzfeY.js.map +1 -0
- package/dist/_chunks/{transaction-chip-DK84XCBU.js → transaction-chip-CscoQbxF.js} +88 -61
- package/dist/_chunks/transaction-chip-CscoQbxF.js.map +1 -0
- package/dist/_chunks/{transcript-panel-3THQX6nJ.js → transcript-panel-CHGHHHdT.js} +95 -83
- package/dist/_chunks/transcript-panel-CHGHHHdT.js.map +1 -0
- package/dist/_chunks/{unit-converter-YEpD9evj.js → unit-converter-CwlZbfdn.js} +2 -2
- package/dist/_chunks/{unit-converter-YEpD9evj.js.map → unit-converter-CwlZbfdn.js.map} +1 -1
- package/dist/_chunks/use-clamp-overflow-DQE2kwZ9.js +20 -0
- package/dist/_chunks/use-clamp-overflow-DQE2kwZ9.js.map +1 -0
- package/dist/_chunks/use-edge-resize-ZnGG7gyO.js.map +1 -1
- package/dist/_chunks/use-overflow-collapse-BIOzKbni.js +32 -0
- package/dist/_chunks/use-overflow-collapse-BIOzKbni.js.map +1 -0
- package/dist/_chunks/use-persistent-state-nZwZAnE9.js +24 -0
- package/dist/_chunks/use-persistent-state-nZwZAnE9.js.map +1 -0
- package/dist/_chunks/{warning-stack-BsgaEbL8.js → warning-stack--sTrrBDA.js} +86 -101
- package/dist/_chunks/warning-stack--sTrrBDA.js.map +1 -0
- package/dist/_chunks/{workflow-map-Bdam9pGp.js → workflow-map-M8MBBHQm.js} +107 -119
- package/dist/_chunks/workflow-map-M8MBBHQm.js.map +1 -0
- package/dist/_chunks/zoom-out-CgVtf2Wx.js +29 -0
- package/dist/_chunks/zoom-out-CgVtf2Wx.js.map +1 -0
- package/dist/agent/index.js +5 -4
- package/dist/agent/index.js.map +1 -1
- package/dist/agent/types.d.ts +19 -2
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent-catalog.json +3325 -322
- package/dist/agent-i18n/en.json +314 -14
- package/dist/components/_shared/entity-card/entity-card.d.ts +6 -0
- package/dist/components/_shared/entity-card/entity-card.d.ts.map +1 -1
- package/dist/components/_shared/entity-card/index.d.ts +1 -1
- package/dist/components/_shared/entity-card/index.d.ts.map +1 -1
- package/dist/components/_shared/field-value.d.ts +21 -0
- package/dist/components/_shared/field-value.d.ts.map +1 -0
- package/dist/components/_shared/field-visibility-cog.d.ts +20 -0
- package/dist/components/_shared/field-visibility-cog.d.ts.map +1 -0
- package/dist/components/_shared/field-visibility.d.ts +36 -0
- package/dist/components/_shared/field-visibility.d.ts.map +1 -0
- package/dist/components/_shared/option.d.ts +2 -0
- package/dist/components/_shared/option.d.ts.map +1 -1
- package/dist/components/_shared/patient-fields.d.ts +119 -0
- package/dist/components/_shared/patient-fields.d.ts.map +1 -0
- package/dist/components/address-fields/address-fields.agent.d.ts +9 -0
- package/dist/components/address-fields/address-fields.agent.d.ts.map +1 -0
- package/dist/components/address-fields/address-fields.d.ts +29 -0
- package/dist/components/address-fields/address-fields.d.ts.map +1 -0
- package/dist/components/address-fields/index.d.ts +5 -0
- package/dist/components/address-fields/index.d.ts.map +1 -0
- package/dist/components/address-fields/index.js +6 -0
- package/dist/components/agenda-card/index.js +1 -1
- package/dist/components/agenda-tray/index.js +1 -1
- package/dist/components/ai-consent-banner/index.js +1 -1
- package/dist/components/ai-prompt-input/index.js +1 -1
- package/dist/components/alert/alert.d.ts +5 -0
- package/dist/components/alert/alert.d.ts.map +1 -1
- package/dist/components/alert/index.js +1 -1
- package/dist/components/anamnesis-card/index.js +1 -1
- package/dist/components/anatomy-scheme/anatomy-face-paths.d.ts +15 -0
- package/dist/components/anatomy-scheme/anatomy-face-paths.d.ts.map +1 -0
- package/dist/components/anatomy-scheme/anatomy-muscle-paths.d.ts +20 -0
- package/dist/components/anatomy-scheme/anatomy-muscle-paths.d.ts.map +1 -0
- package/dist/components/anatomy-scheme/anatomy-scheme-data.d.ts +121 -0
- package/dist/components/anatomy-scheme/anatomy-scheme-data.d.ts.map +1 -0
- package/dist/components/anatomy-scheme/anatomy-scheme.agent.d.ts +6 -0
- package/dist/components/anatomy-scheme/anatomy-scheme.agent.d.ts.map +1 -0
- package/dist/components/anatomy-scheme/anatomy-scheme.d.ts +69 -0
- package/dist/components/anatomy-scheme/anatomy-scheme.d.ts.map +1 -0
- package/dist/components/anatomy-scheme/index.d.ts +6 -0
- package/dist/components/anatomy-scheme/index.d.ts.map +1 -0
- package/dist/components/anatomy-scheme/index.js +17 -0
- package/dist/components/anatomy-scheme/index.js.map +1 -0
- package/dist/components/annotation-marker/annotation-marker.d.ts +33 -0
- package/dist/components/annotation-marker/annotation-marker.d.ts.map +1 -0
- package/dist/components/annotation-marker/index.d.ts +3 -0
- package/dist/components/annotation-marker/index.d.ts.map +1 -0
- package/dist/components/annotation-marker/index.js +7 -0
- package/dist/components/annotation-marker/index.js.map +1 -0
- package/dist/components/app-frame/app-frame.d.ts +2 -2
- package/dist/components/app-frame/app-frame.d.ts.map +1 -1
- package/dist/components/app-frame/index.js +1 -1
- package/dist/components/appointment-card/appointment-card.d.ts +25 -1
- package/dist/components/appointment-card/appointment-card.d.ts.map +1 -1
- package/dist/components/appointment-card/index.js +6 -5
- package/dist/components/appointment-card/index.js.map +1 -1
- package/dist/components/appointment-timeline/appointment-timeline.agent.d.ts +4 -0
- package/dist/components/appointment-timeline/appointment-timeline.agent.d.ts.map +1 -0
- package/dist/components/appointment-timeline/appointment-timeline.d.ts +66 -0
- package/dist/components/appointment-timeline/appointment-timeline.d.ts.map +1 -0
- package/dist/components/appointment-timeline/index.d.ts +4 -0
- package/dist/components/appointment-timeline/index.d.ts.map +1 -0
- package/dist/components/appointment-timeline/index.js +6 -0
- package/dist/components/appointment-timeline/index.js.map +1 -0
- package/dist/components/audio-recorder/index.js +1 -1
- package/dist/components/autocomplete/autocomplete.d.ts +10 -0
- package/dist/components/autocomplete/autocomplete.d.ts.map +1 -1
- package/dist/components/autocomplete/index.js +1 -1
- package/dist/components/badge/badge.d.ts +6 -2
- package/dist/components/badge/badge.d.ts.map +1 -1
- package/dist/components/badge/index.js +1 -1
- package/dist/components/bishop-score/index.js +1 -1
- package/dist/components/bmi-calculator/index.js +1 -1
- package/dist/components/booking/index.js +1 -1
- package/dist/components/button-group/button-group.d.ts.map +1 -1
- package/dist/components/button-group/index.js +1 -1
- package/dist/components/care-plan-card/index.js +1 -1
- package/dist/components/care-plan-entry-card/index.js +1 -1
- package/dist/components/care-plan-header/care-plan-header.agent.d.ts +4 -0
- package/dist/components/care-plan-header/care-plan-header.agent.d.ts.map +1 -0
- package/dist/components/care-plan-header/care-plan-header.d.ts +111 -0
- package/dist/components/care-plan-header/care-plan-header.d.ts.map +1 -0
- package/dist/components/care-plan-header/index.d.ts +4 -0
- package/dist/components/care-plan-header/index.d.ts.map +1 -0
- package/dist/components/care-plan-header/index.js +6 -0
- package/dist/components/care-plan-header/index.js.map +1 -0
- package/dist/components/chat-message/chat-message.d.ts.map +1 -1
- package/dist/components/chat-message/index.js +1 -1
- package/dist/components/city-input/city-input.agent.d.ts +8 -0
- package/dist/components/city-input/city-input.agent.d.ts.map +1 -0
- package/dist/components/city-input/city-input.d.ts +57 -0
- package/dist/components/city-input/city-input.d.ts.map +1 -0
- package/dist/components/city-input/index.d.ts +5 -0
- package/dist/components/city-input/index.d.ts.map +1 -0
- package/dist/components/city-input/index.js +6 -0
- package/dist/components/city-input/index.js.map +1 -0
- package/dist/components/clinical-note-card/clinical-note-card.d.ts +21 -1
- package/dist/components/clinical-note-card/clinical-note-card.d.ts.map +1 -1
- package/dist/components/clinical-note-card/index.js +1 -1
- package/dist/components/combobox/combobox.d.ts +17 -0
- package/dist/components/combobox/combobox.d.ts.map +1 -1
- package/dist/components/combobox/index.js +1 -1
- package/dist/components/connection-status/connection-status.agent.d.ts +4 -0
- package/dist/components/connection-status/connection-status.agent.d.ts.map +1 -0
- package/dist/components/connection-status/connection-status.d.ts +36 -0
- package/dist/components/connection-status/connection-status.d.ts.map +1 -0
- package/dist/components/connection-status/index.d.ts +4 -0
- package/dist/components/connection-status/index.d.ts.map +1 -0
- package/dist/components/connection-status/index.js +6 -0
- package/dist/components/connection-status/index.js.map +1 -0
- package/dist/components/contact-profile-card/index.js +1 -1
- package/dist/components/control-room-rail/control-room-context.d.ts +53 -0
- package/dist/components/control-room-rail/control-room-context.d.ts.map +1 -0
- package/dist/components/control-room-rail/control-room-rail.agent.d.ts +4 -0
- package/dist/components/control-room-rail/control-room-rail.agent.d.ts.map +1 -0
- package/dist/components/control-room-rail/control-room-rail.d.ts +35 -0
- package/dist/components/control-room-rail/control-room-rail.d.ts.map +1 -0
- package/dist/components/control-room-rail/index.d.ts +6 -0
- package/dist/components/control-room-rail/index.d.ts.map +1 -0
- package/dist/components/control-room-rail/index.js +10 -0
- package/dist/components/control-room-rail/index.js.map +1 -0
- package/dist/components/counter/counter.d.ts +1 -1
- package/dist/components/country-select/country-select.agent.d.ts +8 -0
- package/dist/components/country-select/country-select.agent.d.ts.map +1 -0
- package/dist/components/country-select/country-select.d.ts +51 -0
- package/dist/components/country-select/country-select.d.ts.map +1 -0
- package/dist/components/country-select/index.d.ts +6 -0
- package/dist/components/country-select/index.d.ts.map +1 -0
- package/dist/components/country-select/index.js +9 -0
- package/dist/components/country-select/index.js.map +1 -0
- package/dist/components/country-select/iso-3166.d.ts +15 -0
- package/dist/components/country-select/iso-3166.d.ts.map +1 -0
- package/dist/components/cycle-calculator/index.js +1 -1
- package/dist/components/data-table/cell-renderers/actions-cell-renderer.d.ts +18 -0
- package/dist/components/data-table/cell-renderers/actions-cell-renderer.d.ts.map +1 -1
- package/dist/components/data-table/cell-renderers/reorder-cell-renderer.d.ts +34 -0
- package/dist/components/data-table/cell-renderers/reorder-cell-renderer.d.ts.map +1 -0
- package/dist/components/data-table/filters/select-filter.d.ts.map +1 -1
- package/dist/components/data-table/index.d.ts +3 -1
- package/dist/components/data-table/index.d.ts.map +1 -1
- package/dist/components/data-table/index.js +35 -32
- package/dist/components/dependent-selector/index.js +1 -1
- package/dist/components/document-scanner/index.js +1 -1
- package/dist/components/due-date-calculator/index.js +2 -2
- package/dist/components/email-input/email-input.d.ts.map +1 -1
- package/dist/components/email-input/index.js +1 -1
- package/dist/components/entity-summary/entity-summary.agent.d.ts +4 -0
- package/dist/components/entity-summary/entity-summary.agent.d.ts.map +1 -0
- package/dist/components/entity-summary/entity-summary.d.ts +92 -0
- package/dist/components/entity-summary/entity-summary.d.ts.map +1 -0
- package/dist/components/entity-summary/index.d.ts +3 -0
- package/dist/components/entity-summary/index.d.ts.map +1 -0
- package/dist/components/entity-summary/index.js +5 -0
- package/dist/components/entity-summary/index.js.map +1 -0
- package/dist/components/fetal-weight/index.js +1 -1
- package/dist/components/field-array/field-array.agent.d.ts +4 -0
- package/dist/components/field-array/field-array.agent.d.ts.map +1 -0
- package/dist/components/field-array/field-array.d.ts +45 -0
- package/dist/components/field-array/field-array.d.ts.map +1 -0
- package/dist/components/field-array/index.d.ts +4 -0
- package/dist/components/field-array/index.d.ts.map +1 -0
- package/dist/components/field-array/index.js +6 -0
- package/dist/components/field-array/index.js.map +1 -0
- package/dist/components/file-upload/index.js +1 -1
- package/dist/components/freemium-paywall/freemium-paywall.d.ts +1 -1
- package/dist/components/freemium-paywall/index.js +1 -1
- package/dist/components/gestational-age-calculator/index.js +1 -1
- package/dist/components/hcg-doubling/index.js +1 -1
- package/dist/components/iban-input/iban-input.agent.d.ts +4 -0
- package/dist/components/iban-input/iban-input.agent.d.ts.map +1 -0
- package/dist/components/iban-input/iban-input.d.ts +51 -0
- package/dist/components/iban-input/iban-input.d.ts.map +1 -0
- package/dist/components/iban-input/index.d.ts +5 -0
- package/dist/components/iban-input/index.d.ts.map +1 -0
- package/dist/components/iban-input/index.js +13 -0
- package/dist/components/iban-input/index.js.map +1 -0
- package/dist/components/iban-input/is-valid-iban.d.ts +31 -0
- package/dist/components/iban-input/is-valid-iban.d.ts.map +1 -0
- package/dist/components/icon-picker/icon-picker.agent.d.ts +4 -0
- package/dist/components/icon-picker/icon-picker.agent.d.ts.map +1 -0
- package/dist/components/icon-picker/icon-picker.d.ts +41 -0
- package/dist/components/icon-picker/icon-picker.d.ts.map +1 -0
- package/dist/components/icon-picker/index.d.ts +4 -0
- package/dist/components/icon-picker/index.d.ts.map +1 -0
- package/dist/components/icon-picker/index.js +6 -0
- package/dist/components/icon-picker/index.js.map +1 -0
- package/dist/components/image-cropper/crop-geometry.d.ts +30 -0
- package/dist/components/image-cropper/crop-geometry.d.ts.map +1 -0
- package/dist/components/image-cropper/image-cropper.agent.d.ts +4 -0
- package/dist/components/image-cropper/image-cropper.agent.d.ts.map +1 -0
- package/dist/components/image-cropper/image-cropper.d.ts +32 -0
- package/dist/components/image-cropper/image-cropper.d.ts.map +1 -0
- package/dist/components/image-cropper/index.d.ts +5 -0
- package/dist/components/image-cropper/index.d.ts.map +1 -0
- package/dist/components/image-cropper/index.js +11 -0
- package/dist/components/image-cropper/index.js.map +1 -0
- package/dist/components/index.d.ts +25 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/message-card/index.js +1 -1
- package/dist/components/message-card/message-card.d.ts +14 -0
- package/dist/components/message-card/message-card.d.ts.map +1 -1
- package/dist/components/message-tray/index.js +1 -1
- package/dist/components/message-tray/message-tray.agent.d.ts.map +1 -1
- package/dist/components/message-tray/message-tray.d.ts +4 -0
- package/dist/components/message-tray/message-tray.d.ts.map +1 -1
- package/dist/components/multi-select/index.js +1 -1
- package/dist/components/multi-select/multi-select.d.ts.map +1 -1
- package/dist/components/nav-grid/index.d.ts +4 -0
- package/dist/components/nav-grid/index.d.ts.map +1 -0
- package/dist/components/nav-grid/index.js +7 -0
- package/dist/components/nav-grid/index.js.map +1 -0
- package/dist/components/nav-grid/nav-grid.agent.d.ts +4 -0
- package/dist/components/nav-grid/nav-grid.agent.d.ts.map +1 -0
- package/dist/components/nav-grid/nav-grid.d.ts +41 -0
- package/dist/components/nav-grid/nav-grid.d.ts.map +1 -0
- package/dist/components/notes-panel/index.d.ts +3 -0
- package/dist/components/notes-panel/index.d.ts.map +1 -0
- package/dist/components/notes-panel/index.js +5 -0
- package/dist/components/notes-panel/index.js.map +1 -0
- package/dist/components/notes-panel/notes-panel.agent.d.ts +4 -0
- package/dist/components/notes-panel/notes-panel.agent.d.ts.map +1 -0
- package/dist/components/notes-panel/notes-panel.d.ts +94 -0
- package/dist/components/notes-panel/notes-panel.d.ts.map +1 -0
- package/dist/components/notification-card/index.js +1 -1
- package/dist/components/notification-card/notification-card.d.ts +15 -0
- package/dist/components/notification-card/notification-card.d.ts.map +1 -1
- package/dist/components/notification-tray/index.js +1 -1
- package/dist/components/notification-tray/notification-tray.agent.d.ts.map +1 -1
- package/dist/components/notification-tray/notification-tray.d.ts +4 -0
- package/dist/components/notification-tray/notification-tray.d.ts.map +1 -1
- package/dist/components/operator-hero/index.js +1 -1
- package/dist/components/panel-header/index.d.ts +3 -0
- package/dist/components/panel-header/index.d.ts.map +1 -0
- package/dist/components/panel-header/index.js +7 -0
- package/dist/components/panel-header/index.js.map +1 -0
- package/dist/components/panel-header/panel-header.d.ts +41 -0
- package/dist/components/panel-header/panel-header.d.ts.map +1 -0
- package/dist/components/patient-details/index.d.ts +5 -0
- package/dist/components/patient-details/index.d.ts.map +1 -0
- package/dist/components/patient-details/index.js +6 -0
- package/dist/components/patient-details/index.js.map +1 -0
- package/dist/components/patient-details/patient-details.agent.d.ts +4 -0
- package/dist/components/patient-details/patient-details.agent.d.ts.map +1 -0
- package/dist/components/patient-details/patient-details.d.ts +96 -0
- package/dist/components/patient-details/patient-details.d.ts.map +1 -0
- package/dist/components/patient-search/index.js +1 -1
- package/dist/components/patient-summary-card/index.js +1 -1
- package/dist/components/patient-summary-card/patient-summary-card.agent.d.ts.map +1 -1
- package/dist/components/patient-summary-card/patient-summary-card.d.ts +40 -1
- package/dist/components/patient-summary-card/patient-summary-card.d.ts.map +1 -1
- package/dist/components/patient-table/columns.d.ts +69 -40
- package/dist/components/patient-table/columns.d.ts.map +1 -1
- package/dist/components/patient-table/index.d.ts +2 -6
- package/dist/components/patient-table/index.d.ts.map +1 -1
- package/dist/components/patient-table/index.js +8 -9
- package/dist/components/patient-table/patient-table.d.ts +38 -4
- package/dist/components/patient-table/patient-table.d.ts.map +1 -1
- package/dist/components/patient-table/types.d.ts +52 -2
- package/dist/components/patient-table/types.d.ts.map +1 -1
- package/dist/components/patient-table/use-responsive-columns.d.ts +8 -6
- package/dist/components/patient-table/use-responsive-columns.d.ts.map +1 -1
- package/dist/components/payment-card/index.js +1 -1
- package/dist/components/payment-form/index.js +1 -1
- package/dist/components/pdf-viewer/index.js +1 -1
- package/dist/components/periodontal-chart-card/index.js +1 -1
- package/dist/components/permission-matrix/index.d.ts +4 -0
- package/dist/components/permission-matrix/index.d.ts.map +1 -0
- package/dist/components/permission-matrix/index.js +7 -0
- package/dist/components/permission-matrix/index.js.map +1 -0
- package/dist/components/permission-matrix/permission-matrix.agent.d.ts +4 -0
- package/dist/components/permission-matrix/permission-matrix.agent.d.ts.map +1 -0
- package/dist/components/permission-matrix/permission-matrix.d.ts +47 -0
- package/dist/components/permission-matrix/permission-matrix.d.ts.map +1 -0
- package/dist/components/position-grid/index.d.ts +4 -0
- package/dist/components/position-grid/index.d.ts.map +1 -0
- package/dist/components/position-grid/index.js +7 -0
- package/dist/components/position-grid/index.js.map +1 -0
- package/dist/components/position-grid/position-grid.agent.d.ts +4 -0
- package/dist/components/position-grid/position-grid.agent.d.ts.map +1 -0
- package/dist/components/position-grid/position-grid.d.ts +39 -0
- package/dist/components/position-grid/position-grid.d.ts.map +1 -0
- package/dist/components/postal-code-input/index.d.ts +5 -0
- package/dist/components/postal-code-input/index.d.ts.map +1 -0
- package/dist/components/postal-code-input/index.js +6 -0
- package/dist/components/postal-code-input/index.js.map +1 -0
- package/dist/components/postal-code-input/postal-code-input.agent.d.ts +8 -0
- package/dist/components/postal-code-input/postal-code-input.agent.d.ts.map +1 -0
- package/dist/components/postal-code-input/postal-code-input.d.ts +27 -0
- package/dist/components/postal-code-input/postal-code-input.d.ts.map +1 -0
- package/dist/components/practice-results/index.js +1 -1
- package/dist/components/pregnancy-dating/index.js +1 -1
- package/dist/components/pregnancy-weight-gain/index.js +1 -1
- package/dist/components/product-hub-tray/index.js +1 -1
- package/dist/components/product-hub-tray/product-hub-tray.d.ts +13 -1
- package/dist/components/product-hub-tray/product-hub-tray.d.ts.map +1 -1
- package/dist/components/province-select/index.d.ts +6 -0
- package/dist/components/province-select/index.d.ts.map +1 -0
- package/dist/components/province-select/index.js +7 -0
- package/dist/components/province-select/index.js.map +1 -0
- package/dist/components/province-select/it-provinces.d.ts +8 -0
- package/dist/components/province-select/it-provinces.d.ts.map +1 -0
- package/dist/components/province-select/province-select.agent.d.ts +8 -0
- package/dist/components/province-select/province-select.agent.d.ts.map +1 -0
- package/dist/components/province-select/province-select.d.ts +38 -0
- package/dist/components/province-select/province-select.d.ts.map +1 -0
- package/dist/components/public-footer/public-footer.d.ts +1 -1
- package/dist/components/public-header/index.js +1 -1
- package/dist/components/radiograph-panel/index.d.ts +4 -0
- package/dist/components/radiograph-panel/index.d.ts.map +1 -0
- package/dist/components/radiograph-panel/index.js +7 -0
- package/dist/components/radiograph-panel/index.js.map +1 -0
- package/dist/components/radiograph-panel/radiograph-panel.agent.d.ts +13 -0
- package/dist/components/radiograph-panel/radiograph-panel.agent.d.ts.map +1 -0
- package/dist/components/radiograph-panel/radiograph-panel.d.ts +36 -0
- package/dist/components/radiograph-panel/radiograph-panel.d.ts.map +1 -0
- package/dist/components/reviews-panel/index.js +1 -1
- package/dist/components/reviews-panel/reviews-panel.d.ts.map +1 -1
- package/dist/components/rich-text-editor/editor-toolbar.d.ts +17 -0
- package/dist/components/rich-text-editor/editor-toolbar.d.ts.map +1 -1
- package/dist/components/rich-text-editor/index.js +1 -1
- package/dist/components/rich-text-editor/rich-text-editor.agent.d.ts.map +1 -1
- package/dist/components/rich-text-editor/rich-text-editor.d.ts.map +1 -1
- package/dist/components/scroll-area/index.js +1 -1
- package/dist/components/select/index.js +1 -1
- package/dist/components/select/select.d.ts +8 -2
- package/dist/components/select/select.d.ts.map +1 -1
- package/dist/components/sheet/index.js +1 -1
- package/dist/components/sheet/sheet.d.ts.map +1 -1
- package/dist/components/sidebar/index.js +2 -2
- package/dist/components/sidebar/sidebar.d.ts.map +1 -1
- package/dist/components/sign-document/index.js +1 -1
- package/dist/components/skeleton/skeleton.d.ts +1 -1
- package/dist/components/stepper-accordion/index.js +1 -1
- package/dist/components/tab-bar/index.js +1 -1
- package/dist/components/tab-bar/tab-bar.d.ts +18 -1
- package/dist/components/tab-bar/tab-bar.d.ts.map +1 -1
- package/dist/components/tabs/index.js +1 -1
- package/dist/components/task-card/index.js +1 -1
- package/dist/components/task-card/task-card.d.ts +14 -6
- package/dist/components/task-card/task-card.d.ts.map +1 -1
- package/dist/components/task-tray/index.js +1 -1
- package/dist/components/tasks-panel/index.d.ts +4 -0
- package/dist/components/tasks-panel/index.d.ts.map +1 -0
- package/dist/components/tasks-panel/index.js +6 -0
- package/dist/components/tasks-panel/index.js.map +1 -0
- package/dist/components/tasks-panel/tasks-panel.agent.d.ts +4 -0
- package/dist/components/tasks-panel/tasks-panel.agent.d.ts.map +1 -0
- package/dist/components/tasks-panel/tasks-panel.d.ts +152 -0
- package/dist/components/tasks-panel/tasks-panel.d.ts.map +1 -0
- package/dist/components/token-insert-menu/index.d.ts +4 -0
- package/dist/components/token-insert-menu/index.d.ts.map +1 -0
- package/dist/components/token-insert-menu/index.js +6 -0
- package/dist/components/token-insert-menu/index.js.map +1 -0
- package/dist/components/token-insert-menu/token-insert-menu.agent.d.ts +4 -0
- package/dist/components/token-insert-menu/token-insert-menu.agent.d.ts.map +1 -0
- package/dist/components/token-insert-menu/token-insert-menu.d.ts +33 -0
- package/dist/components/token-insert-menu/token-insert-menu.d.ts.map +1 -0
- package/dist/components/tool-rail/index.d.ts +4 -0
- package/dist/components/tool-rail/index.d.ts.map +1 -0
- package/dist/components/tool-rail/index.js +6 -0
- package/dist/components/tool-rail/index.js.map +1 -0
- package/dist/components/tool-rail/tool-rail.agent.d.ts +4 -0
- package/dist/components/tool-rail/tool-rail.agent.d.ts.map +1 -0
- package/dist/components/tool-rail/tool-rail.d.ts +160 -0
- package/dist/components/tool-rail/tool-rail.d.ts.map +1 -0
- package/dist/components/tooth-scheme/index.d.ts +2 -2
- package/dist/components/tooth-scheme/index.d.ts.map +1 -1
- package/dist/components/tooth-scheme/index.js +30 -23
- package/dist/components/tooth-scheme/tooth-data.d.ts +112 -1
- package/dist/components/tooth-scheme/tooth-data.d.ts.map +1 -1
- package/dist/components/tooth-scheme/tooth-scheme.agent.d.ts +2 -2
- package/dist/components/tooth-scheme/tooth-scheme.agent.d.ts.map +1 -1
- package/dist/components/tooth-scheme/tooth-scheme.d.ts +84 -11
- package/dist/components/tooth-scheme/tooth-scheme.d.ts.map +1 -1
- package/dist/components/transaction-chip/index.js +1 -1
- package/dist/components/transaction-chip/transaction-chip.d.ts +2 -2
- package/dist/components/transaction-chip/transaction-chip.d.ts.map +1 -1
- package/dist/components/transcript-panel/index.js +1 -1
- package/dist/components/transcript-panel/transcript-panel.d.ts +2 -2
- package/dist/components/transcript-panel/transcript-panel.d.ts.map +1 -1
- package/dist/components/unit-converter/index.js +1 -1
- package/dist/components/warning-stack/index.js +1 -1
- package/dist/components/warning-stack/warning-stack.d.ts +10 -7
- package/dist/components/warning-stack/warning-stack.d.ts.map +1 -1
- package/dist/components/workflow/index.js +1 -1
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +24 -22
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/use-clamp-overflow.d.ts +19 -0
- package/dist/hooks/use-clamp-overflow.d.ts.map +1 -0
- package/dist/hooks/use-edge-resize.d.ts +2 -2
- package/dist/hooks/use-overflow-collapse.d.ts +46 -0
- package/dist/hooks/use-overflow-collapse.d.ts.map +1 -0
- package/dist/hooks/use-persistent-state.d.ts +7 -1
- package/dist/hooks/use-persistent-state.d.ts.map +1 -1
- package/dist/hooks/use-scroll-overflow.d.ts +36 -0
- package/dist/hooks/use-scroll-overflow.d.ts.map +1 -0
- package/dist/i18n/locales/ar.d.ts +475 -26
- package/dist/i18n/locales/ar.d.ts.map +1 -1
- package/dist/i18n/locales/ar.js +478 -31
- package/dist/i18n/locales/ar.js.map +1 -1
- package/dist/i18n/locales/de.d.ts +475 -26
- package/dist/i18n/locales/de.d.ts.map +1 -1
- package/dist/i18n/locales/de.js +480 -31
- package/dist/i18n/locales/de.js.map +1 -1
- package/dist/i18n/locales/el.d.ts +475 -26
- package/dist/i18n/locales/el.d.ts.map +1 -1
- package/dist/i18n/locales/el.js +485 -31
- package/dist/i18n/locales/el.js.map +1 -1
- package/dist/i18n/locales/en.d.ts +476 -34
- package/dist/i18n/locales/en.d.ts.map +1 -1
- package/dist/i18n/locales/en.js +492 -39
- package/dist/i18n/locales/en.js.map +1 -1
- package/dist/i18n/locales/es.d.ts +475 -26
- package/dist/i18n/locales/es.d.ts.map +1 -1
- package/dist/i18n/locales/es.js +477 -31
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.d.ts +475 -26
- package/dist/i18n/locales/fr.d.ts.map +1 -1
- package/dist/i18n/locales/fr.js +480 -31
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hi.d.ts +475 -26
- package/dist/i18n/locales/hi.d.ts.map +1 -1
- package/dist/i18n/locales/hi.js +476 -31
- package/dist/i18n/locales/hi.js.map +1 -1
- package/dist/i18n/locales/it.d.ts +475 -26
- package/dist/i18n/locales/it.d.ts.map +1 -1
- package/dist/i18n/locales/it.js +480 -31
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/ja.d.ts +475 -26
- package/dist/i18n/locales/ja.d.ts.map +1 -1
- package/dist/i18n/locales/ja.js +481 -31
- package/dist/i18n/locales/ja.js.map +1 -1
- package/dist/i18n/locales/nl.d.ts +475 -26
- package/dist/i18n/locales/nl.d.ts.map +1 -1
- package/dist/i18n/locales/nl.js +473 -31
- package/dist/i18n/locales/nl.js.map +1 -1
- package/dist/i18n/locales/pl.d.ts +475 -26
- package/dist/i18n/locales/pl.d.ts.map +1 -1
- package/dist/i18n/locales/pl.js +481 -31
- package/dist/i18n/locales/pl.js.map +1 -1
- package/dist/i18n/locales/pt.d.ts +475 -26
- package/dist/i18n/locales/pt.d.ts.map +1 -1
- package/dist/i18n/locales/pt.js +485 -31
- package/dist/i18n/locales/pt.js.map +1 -1
- package/dist/i18n/locales/ro.d.ts +475 -26
- package/dist/i18n/locales/ro.d.ts.map +1 -1
- package/dist/i18n/locales/ro.js +485 -31
- package/dist/i18n/locales/ro.js.map +1 -1
- package/dist/i18n/locales/ru.d.ts +475 -26
- package/dist/i18n/locales/ru.d.ts.map +1 -1
- package/dist/i18n/locales/ru.js +478 -31
- package/dist/i18n/locales/ru.js.map +1 -1
- package/dist/i18n/locales/sq.d.ts +475 -26
- package/dist/i18n/locales/sq.d.ts.map +1 -1
- package/dist/i18n/locales/sq.js +482 -31
- package/dist/i18n/locales/sq.js.map +1 -1
- package/dist/i18n/locales/sv.d.ts +475 -26
- package/dist/i18n/locales/sv.d.ts.map +1 -1
- package/dist/i18n/locales/sv.js +480 -31
- package/dist/i18n/locales/sv.js.map +1 -1
- package/dist/i18n/locales/tr.d.ts +475 -26
- package/dist/i18n/locales/tr.d.ts.map +1 -1
- package/dist/i18n/locales/tr.js +478 -31
- package/dist/i18n/locales/tr.js.map +1 -1
- package/dist/i18n/locales/zh.d.ts +475 -26
- package/dist/i18n/locales/zh.d.ts.map +1 -1
- package/dist/i18n/locales/zh.js +473 -31
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/index.js +826 -709
- package/dist/index.js.map +1 -1
- package/dist/locales/ar.json +480 -31
- package/dist/locales/de.json +480 -31
- package/dist/locales/el.json +480 -31
- package/dist/locales/en.json +480 -31
- package/dist/locales/es.json +480 -31
- package/dist/locales/fr.json +480 -31
- package/dist/locales/hi.json +480 -31
- package/dist/locales/it.json +480 -31
- package/dist/locales/ja.json +480 -31
- package/dist/locales/nl.json +480 -31
- package/dist/locales/pl.json +480 -31
- package/dist/locales/pt.json +480 -31
- package/dist/locales/ro.json +480 -31
- package/dist/locales/ru.json +480 -31
- package/dist/locales/sq.json +480 -31
- package/dist/locales/sv.json +480 -31
- package/dist/locales/tr.json +480 -31
- package/dist/locales/zh.json +480 -31
- package/dist/patterns/alia-assistant/alia-chat-surface.d.ts.map +1 -1
- package/dist/patterns/alia-assistant/alia-types.d.ts +9 -0
- package/dist/patterns/alia-assistant/alia-types.d.ts.map +1 -1
- package/dist/patterns/alia-assistant/index.js +1 -1
- package/dist/patterns/marketplace-app-shell/index.js +1 -1
- package/dist/patterns/patient-shell/index.js +1 -1
- package/dist/tokens.css +9 -1
- package/package.json +101 -5
- package/dist/_chunks/actions-cell-renderer-DrcaxB0w.js.map +0 -1
- package/dist/_chunks/ai-tools-rail-BA_sqy1A.js +0 -373
- package/dist/_chunks/ai-tools-rail-BA_sqy1A.js.map +0 -1
- package/dist/_chunks/alert-_mUKLmwA.js.map +0 -1
- package/dist/_chunks/alia-sidebar-B47qRQb5.js.map +0 -1
- package/dist/_chunks/app-frame-BYx1gcV7.js.map +0 -1
- package/dist/_chunks/appointment-tray-CZtvtaH-.js +0 -431
- package/dist/_chunks/appointment-tray-CZtvtaH-.js.map +0 -1
- package/dist/_chunks/autocomplete-DOeGouCL.js.map +0 -1
- package/dist/_chunks/badge-CqGsX32l.js.map +0 -1
- package/dist/_chunks/chat-message-3V54YipB.js.map +0 -1
- package/dist/_chunks/clinical-note-card-DqQYf_D4.js +0 -333
- package/dist/_chunks/clinical-note-card-DqQYf_D4.js.map +0 -1
- package/dist/_chunks/combobox-Clum7gJ1.js.map +0 -1
- package/dist/_chunks/editable-currency-cell-renderer-kgqp_mIw.js +0 -448
- package/dist/_chunks/editable-currency-cell-renderer-kgqp_mIw.js.map +0 -1
- package/dist/_chunks/email-input-B_Y55f5G.js +0 -396
- package/dist/_chunks/message-card-Bx4GmLvf.js +0 -277
- package/dist/_chunks/message-card-Bx4GmLvf.js.map +0 -1
- package/dist/_chunks/message-tray-DwrBLJlf.js.map +0 -1
- package/dist/_chunks/notification-card-BiESdm8q.js +0 -255
- package/dist/_chunks/notification-card-BiESdm8q.js.map +0 -1
- package/dist/_chunks/notification-tray-Btb9oQeZ.js.map +0 -1
- package/dist/_chunks/patient-summary-card-B836_fDB.js +0 -435
- package/dist/_chunks/patient-summary-card-B836_fDB.js.map +0 -1
- package/dist/_chunks/patient-table-CDuosVru.js +0 -889
- package/dist/_chunks/patient-table-CDuosVru.js.map +0 -1
- package/dist/_chunks/payment-request-card-DioWKBUq.js.map +0 -1
- package/dist/_chunks/pdf-viewer-D6BPfW2D.js.map +0 -1
- package/dist/_chunks/product-hub-panel-e6pW220e.js.map +0 -1
- package/dist/_chunks/reviews-panel-Dq7LMDcH.js +0 -555
- package/dist/_chunks/reviews-panel-Dq7LMDcH.js.map +0 -1
- package/dist/_chunks/rich-text-editor-BsV7zUdg.js +0 -2142
- package/dist/_chunks/rich-text-editor-BsV7zUdg.js.map +0 -1
- package/dist/_chunks/scroll-area-5wNK0Cyz.js.map +0 -1
- package/dist/_chunks/select-DMLG44F5.js.map +0 -1
- package/dist/_chunks/sheet-BxsE7eQm.js.map +0 -1
- package/dist/_chunks/sidebar-DY9jGjgt.js.map +0 -1
- package/dist/_chunks/stepper-accordion-Dki6r9ZE.js.map +0 -1
- package/dist/_chunks/tab-bar-B1ovILzh.js +0 -105
- package/dist/_chunks/tab-bar-B1ovILzh.js.map +0 -1
- package/dist/_chunks/task-card-BwY9jaV1.js +0 -124
- package/dist/_chunks/task-card-BwY9jaV1.js.map +0 -1
- package/dist/_chunks/tooth-scheme-yBr53cvv.js +0 -1330
- package/dist/_chunks/tooth-scheme-yBr53cvv.js.map +0 -1
- package/dist/_chunks/transaction-chip-DK84XCBU.js.map +0 -1
- package/dist/_chunks/transcript-panel-3THQX6nJ.js.map +0 -1
- package/dist/_chunks/use-persistent-state-i23OWy6G.js +0 -24
- package/dist/_chunks/use-persistent-state-i23OWy6G.js.map +0 -1
- package/dist/_chunks/warning-stack-BsgaEbL8.js.map +0 -1
- package/dist/_chunks/workflow-map-Bdam9pGp.js.map +0 -1
- package/dist/components/ai-tools-rail/ai-tools-rail.agent.d.ts +0 -4
- package/dist/components/ai-tools-rail/ai-tools-rail.agent.d.ts.map +0 -1
- package/dist/components/ai-tools-rail/ai-tools-rail.d.ts +0 -68
- package/dist/components/ai-tools-rail/ai-tools-rail.d.ts.map +0 -1
- package/dist/components/ai-tools-rail/index.d.ts +0 -4
- package/dist/components/ai-tools-rail/index.d.ts.map +0 -1
- package/dist/components/ai-tools-rail/index.js +0 -6
- package/dist/components/patient-table/cell-renderers/contact-cell.d.ts +0 -45
- package/dist/components/patient-table/cell-renderers/contact-cell.d.ts.map +0 -1
- package/dist/components/patient-table/cell-renderers/patient-identity-cell.d.ts +0 -26
- package/dist/components/patient-table/cell-renderers/patient-identity-cell.d.ts.map +0 -1
- /package/dist/components/{ai-tools-rail → address-fields}/index.js.map +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bmi-calculator-BZtIJ53x.js","sources":["../../src/components/bmi-calculator/bmi-calculator.agent.ts","../../src/components/bmi-calculator/bmi-calculator.tsx"],"sourcesContent":["/* -------------------------------------------------------------------- */\n/* Agent adapter — BmiCalculator. */\n/* */\n/* Height + weight → WHO body-mass-index. The agent-relevant surface is */\n/* the read-only computed result (bmi + WHO category) plus the canonical */\n/* metric inputs and the active unit system, with `set_value` actions to */\n/* drive height/weight and switch units. NO patient identity is exposed — */\n/* only the structural measurements and the derived index. The handle is */\n/* the curated `BmiCalculatorHandle`. See `src/docs/26-agent-readiness`. */\n/* -------------------------------------------------------------------- */\n\nimport type { AgentAdapter } from '../../agent/types';\nimport type { BmiCalculatorHandle } from './bmi-calculator';\n\nexport const bmiCalculatorAgent: AgentAdapter<BmiCalculatorHandle> = {\n id: 'bmi-calculator',\n capabilities: ['set_value', 'view_change'],\n state: {\n unitSystem: {\n type: \"'metric' | 'imperial'\",\n descriptionKey: 'ui.agent.bmiCalculator.state.unitSystem',\n description: 'Active unit system the inputs are entered in.',\n read: (handle) => handle.getUnitSystem(),\n },\n inputs: {\n type: '{ heightCm: number | null, weightKg: number | null }',\n descriptionKey: 'ui.agent.bmiCalculator.state.inputs',\n description:\n 'Canonical metric measurements regardless of the active unit system — height in centimetres and weight in kilograms, or null when unset.',\n read: (handle) => handle.getInputs(),\n },\n result: {\n type: '{ bmi: number, category: string } | null',\n descriptionKey: 'ui.agent.bmiCalculator.state.result',\n description:\n 'Computed BMI (kg/m²) and WHO category (underweight / normal / overweight / obese). Null until both height and weight are valid.',\n read: (handle) => handle.getResult(),\n },\n },\n actions: {\n set_value: {\n safety: 'write',\n argsType: '{ heightCm?: number | null, weightKg?: number | null }',\n argsSchema: {\n type: 'object',\n properties: {\n heightCm: {\n type: ['number', 'null'],\n description: 'Height in centimetres (canonical metric).',\n minimum: 0,\n },\n weightKg: {\n type: ['number', 'null'],\n description: 'Weight in kilograms (canonical metric).',\n minimum: 0,\n },\n },\n additionalProperties: false,\n },\n idempotent: true,\n descriptionKey: 'ui.agent.bmiCalculator.actions.setValue',\n description:\n 'Set height (cm) and/or weight (kg) in canonical metric units. Omitted fields are left unchanged.',\n examples: [\n {\n args: { heightCm: 175, weightKg: 72 },\n note: 'A 175 cm, 72 kg patient → BMI ~23.5 (normal).',\n },\n ],\n invoke: (\n handle,\n args: { heightCm?: number | null; weightKg?: number | null },\n ) => {\n handle.setMetric(args);\n },\n },\n set_unit_system: {\n safety: 'write',\n argsType: \"{ unitSystem: 'metric' | 'imperial' }\",\n argsSchema: {\n type: 'object',\n properties: {\n unitSystem: {\n enum: ['metric', 'imperial'],\n description: 'Unit system to display the inputs in.',\n },\n },\n required: ['unitSystem'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.bmiCalculator.actions.setUnitSystem',\n description:\n 'Switch the input unit system. Entered figures are preserved by conversion; the computed BMI is unchanged.',\n invoke: (handle, args: { unitSystem: 'metric' | 'imperial' }) => {\n handle.setUnitSystem(args.unitSystem);\n },\n },\n reset: {\n safety: 'write',\n idempotent: true,\n descriptionKey: 'ui.agent.bmiCalculator.actions.reset',\n description: 'Clear height and weight and the computed result.',\n invoke: (handle) => {\n handle.reset();\n },\n },\n get_result: {\n safety: 'read',\n returns: '{ bmi: number, category: string } | null',\n returnsSchema: {\n oneOf: [\n {\n type: 'object',\n properties: {\n bmi: { type: 'number', minimum: 0 },\n category: {\n enum: ['underweight', 'normal', 'overweight', 'obese'],\n },\n },\n required: ['bmi', 'category'],\n },\n { type: 'null' },\n ],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.bmiCalculator.actions.getResult',\n description:\n 'Return the computed BMI + WHO category, or null until both inputs are valid.',\n invoke: (handle) => handle.getResult(),\n },\n },\n domHooks: {\n root: {\n attr: 'data-component',\n value: 'bmi-calculator',\n description: 'Marks the BmiCalculator wrapper.',\n },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description:\n 'Sourced from the id prop. Required to address a specific calculator instance.',\n },\n },\n};\n","/* ------------------------------------------------------------------ */\n/* BmiCalculator — height + weight → WHO body-mass-index, shown on a */\n/* banded-linear gauge. */\n/* */\n/* - Maths + unit conversion live in `./bmi` (pure, separately tested). */\n/* - Metric ⇄ imperial toggle persists the entered figures across the */\n/* switch by converting them (a patient measured in lb/ft doesn't */\n/* lose their numbers when a clinician flips to kg/cm). */\n/* - The gauge is the shared `BandedGauge`: a horizontal WHO-banded bar */\n/* (15–40) with a marker at the BMI's x-position. The SAME geometry */\n/* bakes into the inserted result-card PNG (banded variant), so the */\n/* on-screen widget and the rasterised card never drift. The band */\n/* fills come from semantic tokens (`--info` / `--success` / */\n/* `--warning-readable` / `--destructive`) — the contrast-safe */\n/* `--warning-readable` token handles the overweight orange in every */\n/* theme, so no `getComputedStyle` arc-colour sampling is needed. */\n/* ------------------------------------------------------------------ */\n\nimport { forwardRef, useEffect, useId, useMemo, useRef, useState } from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { useAgentRegistration } from '../../agent/registry';\nimport { bmiCalculatorAgent } from './bmi-calculator.agent';\nimport { RadioGroup, Radio } from '../radio-group';\nimport { FormField } from '../form-field';\nimport { NumberInput } from '../number-input';\nimport { Card } from '../card';\nimport { Badge } from '../badge';\nimport {\n InsertButton,\n type InsertPayload,\n type InsertVariant,\n type InsertMode,\n} from '../_shared/insert-result';\nimport { BandedGauge, bmiBands } from '../_shared/banded-gauge';\nimport {\n type UnitSystem,\n type BmiCategory,\n computeBmi,\n bmiCategory,\n cmToFtIn,\n ftInToCm,\n kgToLb,\n lbToKg,\n} from './bmi';\n\n/* ------------------------------------------------------------------ */\n/* Result payload emitted to consumers */\n/* ------------------------------------------------------------------ */\n\nexport interface BmiResult {\n /** BMI in kg/m². */\n bmi: number;\n /** WHO category the BMI falls into. */\n category: BmiCategory;\n}\n\n/**\n * Curated imperative handle for agent / external automation. Reads/writes the\n * canonical metric measurements and the WHO result, and switches the display\n * unit system. Never exposes patient identity. Consumed by the\n * `bmi-calculator.agent.ts` adapter; the public `ref` stays the DOM element.\n */\nexport interface BmiCalculatorHandle {\n /** Active display unit system. */\n getUnitSystem: () => UnitSystem;\n /** Switch the display unit system (entered figures are converted, not lost). */\n setUnitSystem: (next: UnitSystem) => void;\n /** Canonical metric snapshot — height in cm and weight in kg, or null. */\n getInputs: () => { heightCm: number | null; weightKg: number | null };\n /** Set height (cm) and/or weight (kg) in canonical metric units. */\n setMetric: (next: {\n heightCm?: number | null;\n weightKg?: number | null;\n }) => void;\n /** Current computed result, or null until both inputs are valid. */\n getResult: () => BmiResult | null;\n /** Clear height and weight. */\n reset: () => void;\n}\n\n/* ------------------------------------------------------------------ */\n/* CVA */\n/* ------------------------------------------------------------------ */\n\nconst rootVariants = cva('ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]', {\n variants: {\n width: {\n full: 'ds:w-full',\n auto: 'ds:inline-flex',\n },\n },\n defaultVariants: { width: 'full' },\n});\n\n/* ------------------------------------------------------------------ */\n/* Category → semantic intent for the Stat headline */\n/* ------------------------------------------------------------------ */\n\nconst CATEGORY_BADGE: Record<\n BmiCategory,\n 'info' | 'success' | 'warning' | 'error'\n> = {\n underweight: 'info',\n normal: 'success',\n overweight: 'warning',\n obese: 'error',\n};\n\n/* ------------------------------------------------------------------ */\n/* Category → semantic band token. */\n/* */\n/* The four WHO bands carry these tokens both on-screen (the shared */\n/* `bmiBands()` definition fills each zone with the same name) and in */\n/* the card chip's `highlightToken`. `overweight` uses */\n/* `--warning-readable` — the kit's contrast-safe orange that already */\n/* resolves correctly per theme (orange-600 in light/non-accessible, */\n/* `--warning` elsewhere), so NO `getComputedStyle` arc sampling or */\n/* `document.documentElement` override is needed. */\n/* ------------------------------------------------------------------ */\n\nconst CATEGORY_TOKEN: Record<BmiCategory, string> = {\n underweight: '--info',\n normal: '--success',\n overweight: '--warning-readable',\n obese: '--destructive',\n};\n\nexport interface BmiCalculatorProps extends VariantProps<typeof rootVariants> {\n /** Initial unit system. Defaults to `'metric'`. */\n defaultUnitSystem?: UnitSystem;\n /** Fires whenever a valid BMI can be computed (and with `null` when it can't). */\n onResultChange?: (result: BmiResult | null) => void;\n /** When provided, shows an \"Insert\" button that emits the result for an editor. */\n onInsert?: (payload: InsertPayload) => void;\n /**\n * Which verb the result button performs. Defaults to `'insert'`.\n * Use `'copy'` in an app-shell surface (no editor to insert into) — the\n * button writes the result to the clipboard as a multi-format `ClipboardItem`.\n */\n insertVariant?: InsertVariant;\n /** `copy` variant only — fired after a successful clipboard write. */\n onCopy?: (mode: InsertMode) => void;\n /** `copy` variant only — fired if the clipboard write can't proceed. */\n onError?: (error: unknown) => void;\n /**\n * Brand wordmark printed in the inserted/copied result-card footer.\n * Omitted → no brand line (and no footer hairline); a string → that custom\n * brand; `false` → no brand line. Brand is opt-in.\n */\n insertBrand?: string | false;\n /** Opaque instance id, emitted as `data-component-id`. */\n id?: string;\n /** Extra class names on the wrapper. */\n className?: string;\n}\n\n/** Round to one decimal place — used when seeding a unit-switch. */\nconst round1 = (n: number): number => Math.round(n * 10) / 10;\n\nexport const BmiCalculator = forwardRef<HTMLDivElement, BmiCalculatorProps>(\n (\n {\n defaultUnitSystem = 'metric',\n onResultChange,\n onInsert,\n insertVariant = 'insert',\n onCopy,\n onError,\n insertBrand,\n id,\n width,\n className,\n },\n ref,\n ) => {\n const { t, i18n } = useTranslation();\n const heightGroupId = useId();\n\n const [unitSystem, setUnitSystem] = useState<UnitSystem>(defaultUnitSystem);\n\n // Raw per-system inputs. Metric is canonical for cm/kg; imperial keeps\n // ft + in + lb so typing isn't fought by rounding round-trips.\n const [heightCm, setHeightCm] = useState<number | null>(null);\n const [weightKg, setWeightKg] = useState<number | null>(null);\n const [heightFt, setHeightFt] = useState<number | null>(null);\n const [heightIn, setHeightIn] = useState<number | null>(null);\n const [weightLb, setWeightLb] = useState<number | null>(null);\n\n const handleUnitChange = (next: string): void => {\n const target = next as UnitSystem;\n if (target === unitSystem) return;\n if (target === 'imperial') {\n if (heightCm !== null) {\n const { ft, in: inches } = cmToFtIn(heightCm);\n setHeightFt(ft);\n setHeightIn(round1(inches));\n }\n if (weightKg !== null) setWeightLb(round1(kgToLb(weightKg)));\n } else {\n if (heightFt !== null || heightIn !== null) {\n setHeightCm(round1(ftInToCm(heightFt ?? 0, heightIn ?? 0)));\n }\n if (weightLb !== null) setWeightKg(round1(lbToKg(weightLb)));\n }\n setUnitSystem(target);\n };\n\n /* Canonical metric figures for the active system. */\n const canonicalHeightCm =\n unitSystem === 'metric'\n ? heightCm\n : heightFt !== null || heightIn !== null\n ? ftInToCm(heightFt ?? 0, heightIn ?? 0)\n : null;\n const canonicalWeightKg =\n unitSystem === 'metric'\n ? weightKg\n : weightLb !== null\n ? lbToKg(weightLb)\n : null;\n\n const bmi = computeBmi(canonicalWeightKg, canonicalHeightCm);\n const category = bmi !== null ? bmiCategory(bmi) : null;\n\n const bmiFormatter = useMemo(\n () =>\n new Intl.NumberFormat(i18n.language, {\n minimumFractionDigits: 1,\n maximumFractionDigits: 1,\n }),\n [i18n.language],\n );\n\n // Notify consumers without re-firing on unrelated re-renders.\n useEffect(() => {\n onResultChange?.(\n bmi !== null && category !== null ? { bmi, category } : null,\n );\n }, [bmi, category, onResultChange]);\n\n // Live refs so the once-built agent handle reads/writes current state\n // without re-creating on every keystroke. Public `ref` stays the DOM node.\n const liveRef = useRef({\n unitSystem,\n canonicalHeightCm,\n canonicalWeightKg,\n bmi,\n category,\n handleUnitChange,\n });\n liveRef.current = {\n unitSystem,\n canonicalHeightCm,\n canonicalWeightKg,\n bmi,\n category,\n handleUnitChange,\n };\n const agentHandle = useMemo<BmiCalculatorHandle>(\n () => ({\n getUnitSystem: () => liveRef.current.unitSystem,\n setUnitSystem: (next) => liveRef.current.handleUnitChange(next),\n getInputs: () => ({\n heightCm: liveRef.current.canonicalHeightCm,\n weightKg: liveRef.current.canonicalWeightKg,\n }),\n setMetric: (next) => {\n // Write canonical metric figures into whichever raw store the\n // active unit system reads from, so the on-screen inputs reflect\n // the change without losing the user's chosen unit display.\n if ('heightCm' in next) {\n const cm = next.heightCm;\n if (liveRef.current.unitSystem === 'metric') {\n setHeightCm(cm ?? null);\n } else if (cm === null || cm === undefined) {\n setHeightFt(null);\n setHeightIn(null);\n } else {\n const { ft, in: inches } = cmToFtIn(cm);\n setHeightFt(ft);\n setHeightIn(round1(inches));\n }\n }\n if ('weightKg' in next) {\n const kg = next.weightKg;\n if (liveRef.current.unitSystem === 'metric') {\n setWeightKg(kg ?? null);\n } else {\n setWeightLb(\n kg === null || kg === undefined ? null : round1(kgToLb(kg)),\n );\n }\n }\n },\n getResult: () => {\n const { bmi: b, category: c } = liveRef.current;\n return b !== null && c !== null ? { bmi: b, category: c } : null;\n },\n reset: () => {\n setHeightCm(null);\n setWeightKg(null);\n setHeightFt(null);\n setHeightIn(null);\n setWeightLb(null);\n },\n }),\n [],\n );\n useAgentRegistration(bmiCalculatorAgent, agentHandle, id);\n\n const isMetric = unitSystem === 'metric';\n\n // Pre-translated gauge labels, shared by the on-screen widget and the\n // inserted card so both surfaces read identically. The shared `BandedGauge`\n // is i18n-agnostic — every visible string arrives already through `t()`.\n const gauge = useMemo(() => {\n if (bmi === null || category === null) return null;\n const { bands, min, max, ticks } = bmiBands();\n const valueLabel = bmiFormatter.format(bmi);\n const categoryLabel = t(`bmiCalculator.category.${category}`);\n const rangeLabel = t(`bmiCalculator.range.${category}`);\n const ariaLabel = t('bmiCalculator.gaugeAria', {\n bmi: valueLabel,\n category: categoryLabel,\n range: rangeLabel,\n });\n return {\n value: bmi,\n bands,\n min,\n max,\n ticks,\n valueLabel,\n categoryLabel,\n rangeLabel,\n ariaLabel,\n };\n }, [bmi, category, bmiFormatter, t]);\n\n return (\n <div\n ref={ref}\n data-component=\"bmi-calculator\"\n data-component-id={id}\n className={rootVariants({ width, className })}\n >\n <RadioGroup\n label={t('bmiCalculator.unitSystem.label')}\n variant=\"horizontal\"\n value={unitSystem}\n onValueChange={handleUnitChange}\n >\n <Radio label={t('bmiCalculator.unitSystem.metric')} value=\"metric\" />\n <Radio\n label={t('bmiCalculator.unitSystem.imperial')}\n value=\"imperial\"\n />\n </RadioGroup>\n\n <div className=\"ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:sm:grid-cols-2\">\n {isMetric ? (\n <FormField\n label={`${t('bmiCalculator.height')} (${t('bmiCalculator.units.cm')})`}\n >\n <NumberInput\n mode=\"decimal\"\n min={0}\n step={0.5}\n value={heightCm}\n onChange={setHeightCm}\n />\n </FormField>\n ) : (\n <div role=\"group\" aria-labelledby={heightGroupId}>\n <span\n id={heightGroupId}\n className=\"type-label ds:mb-[var(--spacing-xs)] ds:block ds:text-foreground\"\n >\n {t('bmiCalculator.height')}\n </span>\n <div className=\"ds:flex ds:items-center ds:gap-[var(--spacing-sm)]\">\n <NumberInput\n mode=\"integer\"\n min={0}\n value={heightFt}\n onChange={setHeightFt}\n aria-label={t('bmiCalculator.feet')}\n />\n <span className=\"type-label ds:text-muted-foreground\">\n {t('bmiCalculator.units.ft')}\n </span>\n <NumberInput\n mode=\"decimal\"\n min={0}\n max={11.9}\n step={0.5}\n value={heightIn}\n onChange={setHeightIn}\n aria-label={t('bmiCalculator.inches')}\n />\n <span className=\"type-label ds:text-muted-foreground\">\n {t('bmiCalculator.units.in')}\n </span>\n </div>\n </div>\n )}\n\n <FormField\n label={`${t('bmiCalculator.weight')} (${t(\n isMetric ? 'bmiCalculator.units.kg' : 'bmiCalculator.units.lb',\n )})`}\n >\n <NumberInput\n mode=\"decimal\"\n min={0}\n step={isMetric ? 0.1 : 0.5}\n value={isMetric ? weightKg : weightLb}\n onChange={isMetric ? setWeightKg : setWeightLb}\n />\n </FormField>\n </div>\n\n {/* Concise polite announcement when the result resolves — the gauge\n itself stays out of the live region to avoid re-reading on every\n keystroke. */}\n <p className=\"ds:sr-only\" role=\"status\" aria-live=\"polite\">\n {gauge ? gauge.ariaLabel : ''}\n </p>\n\n {bmi !== null && category !== null && gauge !== null ? (\n <Card variant=\"elevated\">\n <Card.Body className=\"ds:flex ds:flex-col ds:items-center ds:gap-[var(--spacing-md)]\">\n <div className=\"ds:flex ds:flex-col ds:items-center ds:gap-[var(--spacing-xs)] ds:text-center\">\n <span className=\"type-label ds:text-muted-foreground\">\n {t('bmiCalculator.category.label')}\n </span>\n <Badge variant={CATEGORY_BADGE[category]} size=\"lg\">\n {t(`bmiCalculator.category.${category}`)}\n </Badge>\n <p className=\"type-body ds:text-muted-foreground\">\n {gauge.rangeLabel}\n </p>\n </div>\n {/* `data-bmi-category` exposes the WHO band so the gauge's\n semantic colour is assertable without sampling pixels. The\n shared BandedGauge fills each zone via `var(<token>)`, so a\n theme switch repaints the bands with no JS re-sample. */}\n <div\n data-bmi-category={category}\n className=\"ds:w-full ds:max-w-[320px]\"\n >\n <BandedGauge model={gauge} className=\"ds:w-full\" />\n </div>\n {insertVariant === 'copy' || onInsert ? (\n <InsertButton\n onInsert={onInsert}\n variant={insertVariant}\n onCopy={onCopy}\n onError={onError}\n card={{\n title: t('insert.title.bmi'),\n icon: 'scale',\n highlight: t(`bmiCalculator.category.${category}`),\n // Chip shares the WHO-category semantic token so the\n // inserted PNG chip matches the on-screen band colour.\n highlightToken: CATEGORY_TOKEN[category],\n brand: insertBrand,\n // Banded gauge: the SAME geometry + WHO bands as the\n // on-screen widget, baked into the card PNG with\n // probe-resolved theme colours.\n gauge: {\n variant: 'banded',\n value: bmi,\n bands: gauge.bands,\n min: gauge.min,\n max: gauge.max,\n valueLabel: gauge.valueLabel,\n categoryLabel: gauge.categoryLabel,\n rangeLabel: gauge.rangeLabel,\n ariaLabel: gauge.ariaLabel,\n ticks: gauge.ticks,\n },\n fields: [\n {\n // Mirrors the on-screen scale glyph + header icon.\n icon: 'scale',\n label: t('insert.title.bmi'),\n value: gauge.valueLabel,\n },\n {\n // WHO band is a classification → tag glyph.\n icon: 'tag',\n label: t('bmiCalculator.category.label'),\n value: gauge.categoryLabel,\n },\n ],\n }}\n />\n ) : null}\n </Card.Body>\n </Card>\n ) : (\n <p className=\"type-body ds:text-muted-foreground\">\n {t('bmiCalculator.empty')}\n </p>\n )}\n </div>\n );\n },\n);\n\nBmiCalculator.displayName = 'BmiCalculator';\n"],"names":["bmiCalculatorAgent","handle","args","rootVariants","cva","CATEGORY_BADGE","CATEGORY_TOKEN","round1","n","BmiCalculator","forwardRef","defaultUnitSystem","onResultChange","onInsert","insertVariant","onCopy","onError","insertBrand","id","width","className","ref","t","i18n","useTranslation","heightGroupId","useId","unitSystem","setUnitSystem","useState","heightCm","setHeightCm","weightKg","setWeightKg","heightFt","setHeightFt","heightIn","setHeightIn","weightLb","setWeightLb","handleUnitChange","next","target","ft","inches","cmToFtIn","kgToLb","ftInToCm","lbToKg","canonicalHeightCm","canonicalWeightKg","bmi","computeBmi","category","bmiCategory","bmiFormatter","useMemo","useEffect","liveRef","useRef","agentHandle","cm","kg","b","c","useAgentRegistration","isMetric","gauge","bands","min","max","ticks","bmiBands","valueLabel","categoryLabel","rangeLabel","ariaLabel","jsxs","RadioGroup","jsx","Radio","FormField","NumberInput","Card","Badge","BandedGauge","InsertButton"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bmi-calculator-zjeY4E7J.js","sources":["../../src/components/bmi-calculator/bmi-calculator.agent.ts","../../src/components/bmi-calculator/bmi-calculator.tsx"],"sourcesContent":["/* -------------------------------------------------------------------- */\n/* Agent adapter — BmiCalculator. */\n/* */\n/* Height + weight → WHO body-mass-index. The agent-relevant surface is */\n/* the read-only computed result (bmi + WHO category) plus the canonical */\n/* metric inputs and the active unit system, with `set_value` actions to */\n/* drive height/weight and switch units. NO patient identity is exposed — */\n/* only the structural measurements and the derived index. The handle is */\n/* the curated `BmiCalculatorHandle`. See `src/docs/26-agent-readiness`. */\n/* -------------------------------------------------------------------- */\n\nimport type { AgentAdapter } from '../../agent/types';\nimport type { BmiCalculatorHandle } from './bmi-calculator';\n\nexport const bmiCalculatorAgent: AgentAdapter<BmiCalculatorHandle> = {\n id: 'bmi-calculator',\n capabilities: ['set_value', 'view_change'],\n state: {\n unitSystem: {\n type: \"'metric' | 'imperial'\",\n descriptionKey: 'ui.agent.bmiCalculator.state.unitSystem',\n description: 'Active unit system the inputs are entered in.',\n read: (handle) => handle.getUnitSystem(),\n },\n inputs: {\n type: '{ heightCm: number | null, weightKg: number | null }',\n descriptionKey: 'ui.agent.bmiCalculator.state.inputs',\n description:\n 'Canonical metric measurements regardless of the active unit system — height in centimetres and weight in kilograms, or null when unset.',\n read: (handle) => handle.getInputs(),\n },\n result: {\n type: '{ bmi: number, category: string } | null',\n descriptionKey: 'ui.agent.bmiCalculator.state.result',\n description:\n 'Computed BMI (kg/m²) and WHO category (underweight / normal / overweight / obese). Null until both height and weight are valid.',\n read: (handle) => handle.getResult(),\n },\n },\n actions: {\n set_value: {\n safety: 'write',\n argsType: '{ heightCm?: number | null, weightKg?: number | null }',\n argsSchema: {\n type: 'object',\n properties: {\n heightCm: {\n type: ['number', 'null'],\n description: 'Height in centimetres (canonical metric).',\n minimum: 0,\n },\n weightKg: {\n type: ['number', 'null'],\n description: 'Weight in kilograms (canonical metric).',\n minimum: 0,\n },\n },\n additionalProperties: false,\n },\n idempotent: true,\n descriptionKey: 'ui.agent.bmiCalculator.actions.setValue',\n description:\n 'Set height (cm) and/or weight (kg) in canonical metric units. Omitted fields are left unchanged.',\n examples: [\n {\n args: { heightCm: 175, weightKg: 72 },\n note: 'A 175 cm, 72 kg patient → BMI ~23.5 (normal).',\n },\n ],\n invoke: (\n handle,\n args: { heightCm?: number | null; weightKg?: number | null },\n ) => {\n handle.setMetric(args);\n },\n },\n set_unit_system: {\n safety: 'write',\n argsType: \"{ unitSystem: 'metric' | 'imperial' }\",\n argsSchema: {\n type: 'object',\n properties: {\n unitSystem: {\n enum: ['metric', 'imperial'],\n description: 'Unit system to display the inputs in.',\n },\n },\n required: ['unitSystem'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.bmiCalculator.actions.setUnitSystem',\n description:\n 'Switch the input unit system. Entered figures are preserved by conversion; the computed BMI is unchanged.',\n invoke: (handle, args: { unitSystem: 'metric' | 'imperial' }) => {\n handle.setUnitSystem(args.unitSystem);\n },\n },\n reset: {\n safety: 'write',\n idempotent: true,\n descriptionKey: 'ui.agent.bmiCalculator.actions.reset',\n description: 'Clear height and weight and the computed result.',\n invoke: (handle) => {\n handle.reset();\n },\n },\n get_result: {\n safety: 'read',\n returns: '{ bmi: number, category: string } | null',\n returnsSchema: {\n oneOf: [\n {\n type: 'object',\n properties: {\n bmi: { type: 'number', minimum: 0 },\n category: {\n enum: ['underweight', 'normal', 'overweight', 'obese'],\n },\n },\n required: ['bmi', 'category'],\n },\n { type: 'null' },\n ],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.bmiCalculator.actions.getResult',\n description:\n 'Return the computed BMI + WHO category, or null until both inputs are valid.',\n invoke: (handle) => handle.getResult(),\n },\n },\n domHooks: {\n root: {\n attr: 'data-component',\n value: 'bmi-calculator',\n description: 'Marks the BmiCalculator wrapper.',\n },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description:\n 'Sourced from the id prop. Required to address a specific calculator instance.',\n },\n },\n};\n","/* ------------------------------------------------------------------ */\n/* BmiCalculator — height + weight → WHO body-mass-index, shown on a */\n/* banded-linear gauge. */\n/* */\n/* - Maths + unit conversion live in `./bmi` (pure, separately tested). */\n/* - Metric ⇄ imperial toggle persists the entered figures across the */\n/* switch by converting them (a patient measured in lb/ft doesn't */\n/* lose their numbers when a clinician flips to kg/cm). */\n/* - The gauge is the shared `BandedGauge`: a horizontal WHO-banded bar */\n/* (15–40) with a marker at the BMI's x-position. The SAME geometry */\n/* bakes into the inserted result-card PNG (banded variant), so the */\n/* on-screen widget and the rasterised card never drift. The band */\n/* fills come from semantic tokens (`--info` / `--success` / */\n/* `--warning-readable` / `--destructive`) — the contrast-safe */\n/* `--warning-readable` token handles the overweight orange in every */\n/* theme, so no `getComputedStyle` arc-colour sampling is needed. */\n/* ------------------------------------------------------------------ */\n\nimport { forwardRef, useEffect, useId, useMemo, useRef, useState } from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { useAgentRegistration } from '../../agent/registry';\nimport { bmiCalculatorAgent } from './bmi-calculator.agent';\nimport { RadioGroup, Radio } from '../radio-group';\nimport { FormField } from '../form-field';\nimport { NumberInput } from '../number-input';\nimport { Card } from '../card';\nimport { Badge } from '../badge';\nimport {\n InsertButton,\n type InsertPayload,\n type InsertVariant,\n type InsertMode,\n} from '../_shared/insert-result';\nimport { BandedGauge, bmiBands } from '../_shared/banded-gauge';\nimport {\n type UnitSystem,\n type BmiCategory,\n computeBmi,\n bmiCategory,\n cmToFtIn,\n ftInToCm,\n kgToLb,\n lbToKg,\n} from './bmi';\n\n/* ------------------------------------------------------------------ */\n/* Result payload emitted to consumers */\n/* ------------------------------------------------------------------ */\n\nexport interface BmiResult {\n /** BMI in kg/m². */\n bmi: number;\n /** WHO category the BMI falls into. */\n category: BmiCategory;\n}\n\n/**\n * Curated imperative handle for agent / external automation. Reads/writes the\n * canonical metric measurements and the WHO result, and switches the display\n * unit system. Never exposes patient identity. Consumed by the\n * `bmi-calculator.agent.ts` adapter; the public `ref` stays the DOM element.\n */\nexport interface BmiCalculatorHandle {\n /** Active display unit system. */\n getUnitSystem: () => UnitSystem;\n /** Switch the display unit system (entered figures are converted, not lost). */\n setUnitSystem: (next: UnitSystem) => void;\n /** Canonical metric snapshot — height in cm and weight in kg, or null. */\n getInputs: () => { heightCm: number | null; weightKg: number | null };\n /** Set height (cm) and/or weight (kg) in canonical metric units. */\n setMetric: (next: {\n heightCm?: number | null;\n weightKg?: number | null;\n }) => void;\n /** Current computed result, or null until both inputs are valid. */\n getResult: () => BmiResult | null;\n /** Clear height and weight. */\n reset: () => void;\n}\n\n/* ------------------------------------------------------------------ */\n/* CVA */\n/* ------------------------------------------------------------------ */\n\nconst rootVariants = cva('ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]', {\n variants: {\n width: {\n full: 'ds:w-full',\n auto: 'ds:inline-flex',\n },\n },\n defaultVariants: { width: 'full' },\n});\n\n/* ------------------------------------------------------------------ */\n/* Category → semantic intent for the Stat headline */\n/* ------------------------------------------------------------------ */\n\nconst CATEGORY_BADGE: Record<\n BmiCategory,\n 'info' | 'success' | 'warning' | 'error'\n> = {\n underweight: 'info',\n normal: 'success',\n overweight: 'warning',\n obese: 'error',\n};\n\n/* ------------------------------------------------------------------ */\n/* Category → semantic band token. */\n/* */\n/* The four WHO bands carry these tokens both on-screen (the shared */\n/* `bmiBands()` definition fills each zone with the same name) and in */\n/* the card chip's `highlightToken`. `overweight` uses */\n/* `--warning-readable` — the kit's contrast-safe orange that already */\n/* resolves correctly per theme (orange-600 in light/non-accessible, */\n/* `--warning` elsewhere), so NO `getComputedStyle` arc sampling or */\n/* `document.documentElement` override is needed. */\n/* ------------------------------------------------------------------ */\n\nconst CATEGORY_TOKEN: Record<BmiCategory, string> = {\n underweight: '--info',\n normal: '--success',\n overweight: '--warning-readable',\n obese: '--destructive',\n};\n\nexport interface BmiCalculatorProps extends VariantProps<typeof rootVariants> {\n /** Initial unit system. Defaults to `'metric'`. */\n defaultUnitSystem?: UnitSystem;\n /** Fires whenever a valid BMI can be computed (and with `null` when it can't). */\n onResultChange?: (result: BmiResult | null) => void;\n /** When provided, shows an \"Insert\" button that emits the result for an editor. */\n onInsert?: (payload: InsertPayload) => void;\n /**\n * Which verb the result button performs. Defaults to `'insert'`.\n * Use `'copy'` in an app-shell surface (no editor to insert into) — the\n * button writes the result to the clipboard as a multi-format `ClipboardItem`.\n */\n insertVariant?: InsertVariant;\n /** `copy` variant only — fired after a successful clipboard write. */\n onCopy?: (mode: InsertMode) => void;\n /** `copy` variant only — fired if the clipboard write can't proceed. */\n onError?: (error: unknown) => void;\n /**\n * Brand wordmark printed in the inserted/copied result-card footer.\n * Omitted → no brand line (and no footer hairline); a string → that custom\n * brand; `false` → no brand line. Brand is opt-in.\n */\n insertBrand?: string | false;\n /** Opaque instance id, emitted as `data-component-id`. */\n id?: string;\n /** Extra class names on the wrapper. */\n className?: string;\n}\n\n/** Round to one decimal place — used when seeding a unit-switch. */\nconst round1 = (n: number): number => Math.round(n * 10) / 10;\n\nexport const BmiCalculator = forwardRef<HTMLDivElement, BmiCalculatorProps>(\n (\n {\n defaultUnitSystem = 'metric',\n onResultChange,\n onInsert,\n insertVariant = 'insert',\n onCopy,\n onError,\n insertBrand,\n id,\n width,\n className,\n },\n ref,\n ) => {\n const { t, i18n } = useTranslation();\n const heightGroupId = useId();\n\n const [unitSystem, setUnitSystem] = useState<UnitSystem>(defaultUnitSystem);\n\n // Raw per-system inputs. Metric is canonical for cm/kg; imperial keeps\n // ft + in + lb so typing isn't fought by rounding round-trips.\n const [heightCm, setHeightCm] = useState<number | null>(null);\n const [weightKg, setWeightKg] = useState<number | null>(null);\n const [heightFt, setHeightFt] = useState<number | null>(null);\n const [heightIn, setHeightIn] = useState<number | null>(null);\n const [weightLb, setWeightLb] = useState<number | null>(null);\n\n const handleUnitChange = (next: string): void => {\n const target = next as UnitSystem;\n if (target === unitSystem) return;\n if (target === 'imperial') {\n if (heightCm !== null) {\n const { ft, in: inches } = cmToFtIn(heightCm);\n setHeightFt(ft);\n setHeightIn(round1(inches));\n }\n if (weightKg !== null) setWeightLb(round1(kgToLb(weightKg)));\n } else {\n if (heightFt !== null || heightIn !== null) {\n setHeightCm(round1(ftInToCm(heightFt ?? 0, heightIn ?? 0)));\n }\n if (weightLb !== null) setWeightKg(round1(lbToKg(weightLb)));\n }\n setUnitSystem(target);\n };\n\n /* Canonical metric figures for the active system. */\n const canonicalHeightCm =\n unitSystem === 'metric'\n ? heightCm\n : heightFt !== null || heightIn !== null\n ? ftInToCm(heightFt ?? 0, heightIn ?? 0)\n : null;\n const canonicalWeightKg =\n unitSystem === 'metric'\n ? weightKg\n : weightLb !== null\n ? lbToKg(weightLb)\n : null;\n\n const bmi = computeBmi(canonicalWeightKg, canonicalHeightCm);\n const category = bmi !== null ? bmiCategory(bmi) : null;\n\n const bmiFormatter = useMemo(\n () =>\n new Intl.NumberFormat(i18n.language, {\n minimumFractionDigits: 1,\n maximumFractionDigits: 1,\n }),\n [i18n.language],\n );\n\n // Notify consumers without re-firing on unrelated re-renders.\n useEffect(() => {\n onResultChange?.(\n bmi !== null && category !== null ? { bmi, category } : null,\n );\n }, [bmi, category, onResultChange]);\n\n // Live refs so the once-built agent handle reads/writes current state\n // without re-creating on every keystroke. Public `ref` stays the DOM node.\n const liveRef = useRef({\n unitSystem,\n canonicalHeightCm,\n canonicalWeightKg,\n bmi,\n category,\n handleUnitChange,\n });\n liveRef.current = {\n unitSystem,\n canonicalHeightCm,\n canonicalWeightKg,\n bmi,\n category,\n handleUnitChange,\n };\n const agentHandle = useMemo<BmiCalculatorHandle>(\n () => ({\n getUnitSystem: () => liveRef.current.unitSystem,\n setUnitSystem: (next) => liveRef.current.handleUnitChange(next),\n getInputs: () => ({\n heightCm: liveRef.current.canonicalHeightCm,\n weightKg: liveRef.current.canonicalWeightKg,\n }),\n setMetric: (next) => {\n // Write canonical metric figures into whichever raw store the\n // active unit system reads from, so the on-screen inputs reflect\n // the change without losing the user's chosen unit display.\n if ('heightCm' in next) {\n const cm = next.heightCm;\n if (liveRef.current.unitSystem === 'metric') {\n setHeightCm(cm ?? null);\n } else if (cm === null || cm === undefined) {\n setHeightFt(null);\n setHeightIn(null);\n } else {\n const { ft, in: inches } = cmToFtIn(cm);\n setHeightFt(ft);\n setHeightIn(round1(inches));\n }\n }\n if ('weightKg' in next) {\n const kg = next.weightKg;\n if (liveRef.current.unitSystem === 'metric') {\n setWeightKg(kg ?? null);\n } else {\n setWeightLb(\n kg === null || kg === undefined ? null : round1(kgToLb(kg)),\n );\n }\n }\n },\n getResult: () => {\n const { bmi: b, category: c } = liveRef.current;\n return b !== null && c !== null ? { bmi: b, category: c } : null;\n },\n reset: () => {\n setHeightCm(null);\n setWeightKg(null);\n setHeightFt(null);\n setHeightIn(null);\n setWeightLb(null);\n },\n }),\n [],\n );\n useAgentRegistration(bmiCalculatorAgent, agentHandle, id);\n\n const isMetric = unitSystem === 'metric';\n\n // Pre-translated gauge labels, shared by the on-screen widget and the\n // inserted card so both surfaces read identically. The shared `BandedGauge`\n // is i18n-agnostic — every visible string arrives already through `t()`.\n const gauge = useMemo(() => {\n if (bmi === null || category === null) return null;\n const { bands, min, max, ticks } = bmiBands();\n const valueLabel = bmiFormatter.format(bmi);\n const categoryLabel = t(`bmiCalculator.category.${category}`);\n const rangeLabel = t(`bmiCalculator.range.${category}`);\n const ariaLabel = t('bmiCalculator.gaugeAria', {\n bmi: valueLabel,\n category: categoryLabel,\n range: rangeLabel,\n });\n return {\n value: bmi,\n bands,\n min,\n max,\n ticks,\n valueLabel,\n categoryLabel,\n rangeLabel,\n ariaLabel,\n };\n }, [bmi, category, bmiFormatter, t]);\n\n return (\n <div\n ref={ref}\n data-component=\"bmi-calculator\"\n data-component-id={id}\n className={rootVariants({ width, className })}\n >\n <RadioGroup\n label={t('bmiCalculator.unitSystem.label')}\n variant=\"horizontal\"\n value={unitSystem}\n onValueChange={handleUnitChange}\n >\n <Radio label={t('bmiCalculator.unitSystem.metric')} value=\"metric\" />\n <Radio\n label={t('bmiCalculator.unitSystem.imperial')}\n value=\"imperial\"\n />\n </RadioGroup>\n\n <div className=\"ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:sm:grid-cols-2\">\n {isMetric ? (\n <FormField\n label={`${t('bmiCalculator.height')} (${t('bmiCalculator.units.cm')})`}\n >\n <NumberInput\n mode=\"decimal\"\n min={0}\n step={0.5}\n value={heightCm}\n onChange={setHeightCm}\n />\n </FormField>\n ) : (\n <div role=\"group\" aria-labelledby={heightGroupId}>\n <span\n id={heightGroupId}\n className=\"type-label ds:mb-[var(--spacing-xs)] ds:block ds:text-foreground\"\n >\n {t('bmiCalculator.height')}\n </span>\n <div className=\"ds:flex ds:items-center ds:gap-[var(--spacing-sm)]\">\n <NumberInput\n mode=\"integer\"\n min={0}\n value={heightFt}\n onChange={setHeightFt}\n aria-label={t('bmiCalculator.feet')}\n />\n <span className=\"type-label ds:text-muted-foreground\">\n {t('bmiCalculator.units.ft')}\n </span>\n <NumberInput\n mode=\"decimal\"\n min={0}\n max={11.9}\n step={0.5}\n value={heightIn}\n onChange={setHeightIn}\n aria-label={t('bmiCalculator.inches')}\n />\n <span className=\"type-label ds:text-muted-foreground\">\n {t('bmiCalculator.units.in')}\n </span>\n </div>\n </div>\n )}\n\n <FormField\n label={`${t('bmiCalculator.weight')} (${t(\n isMetric ? 'bmiCalculator.units.kg' : 'bmiCalculator.units.lb',\n )})`}\n >\n <NumberInput\n mode=\"decimal\"\n min={0}\n step={isMetric ? 0.1 : 0.5}\n value={isMetric ? weightKg : weightLb}\n onChange={isMetric ? setWeightKg : setWeightLb}\n />\n </FormField>\n </div>\n\n {/* Concise polite announcement when the result resolves — the gauge\n itself stays out of the live region to avoid re-reading on every\n keystroke. */}\n <p className=\"ds:sr-only\" role=\"status\" aria-live=\"polite\">\n {gauge ? gauge.ariaLabel : ''}\n </p>\n\n {bmi !== null && category !== null && gauge !== null ? (\n <Card variant=\"elevated\">\n <Card.Body className=\"ds:flex ds:flex-col ds:items-center ds:gap-[var(--spacing-md)]\">\n <div className=\"ds:flex ds:flex-col ds:items-center ds:gap-[var(--spacing-xs)] ds:text-center\">\n <span className=\"type-label ds:text-muted-foreground\">\n {t('bmiCalculator.category.label')}\n </span>\n <Badge variant={CATEGORY_BADGE[category]} size=\"lg\">\n {t(`bmiCalculator.category.${category}`)}\n </Badge>\n <p className=\"type-body ds:text-muted-foreground\">\n {gauge.rangeLabel}\n </p>\n </div>\n {/* `data-bmi-category` exposes the WHO band so the gauge's\n semantic colour is assertable without sampling pixels. The\n shared BandedGauge fills each zone via `var(<token>)`, so a\n theme switch repaints the bands with no JS re-sample. */}\n <div\n data-bmi-category={category}\n className=\"ds:w-full ds:max-w-[320px]\"\n >\n <BandedGauge model={gauge} className=\"ds:w-full\" />\n </div>\n {insertVariant === 'copy' || onInsert ? (\n <InsertButton\n onInsert={onInsert}\n variant={insertVariant}\n onCopy={onCopy}\n onError={onError}\n card={{\n title: t('insert.title.bmi'),\n icon: 'scale',\n highlight: t(`bmiCalculator.category.${category}`),\n // Chip shares the WHO-category semantic token so the\n // inserted PNG chip matches the on-screen band colour.\n highlightToken: CATEGORY_TOKEN[category],\n brand: insertBrand,\n // Banded gauge: the SAME geometry + WHO bands as the\n // on-screen widget, baked into the card PNG with\n // probe-resolved theme colours.\n gauge: {\n variant: 'banded',\n value: bmi,\n bands: gauge.bands,\n min: gauge.min,\n max: gauge.max,\n valueLabel: gauge.valueLabel,\n categoryLabel: gauge.categoryLabel,\n rangeLabel: gauge.rangeLabel,\n ariaLabel: gauge.ariaLabel,\n ticks: gauge.ticks,\n },\n fields: [\n {\n // Mirrors the on-screen scale glyph + header icon.\n icon: 'scale',\n label: t('insert.title.bmi'),\n value: gauge.valueLabel,\n },\n {\n // WHO band is a classification → tag glyph.\n icon: 'tag',\n label: t('bmiCalculator.category.label'),\n value: gauge.categoryLabel,\n },\n ],\n }}\n />\n ) : null}\n </Card.Body>\n </Card>\n ) : (\n <p className=\"type-body ds:text-muted-foreground\">\n {t('bmiCalculator.empty')}\n </p>\n )}\n </div>\n );\n },\n);\n\nBmiCalculator.displayName = 'BmiCalculator';\n"],"names":["bmiCalculatorAgent","handle","args","rootVariants","cva","CATEGORY_BADGE","CATEGORY_TOKEN","round1","n","BmiCalculator","forwardRef","defaultUnitSystem","onResultChange","onInsert","insertVariant","onCopy","onError","insertBrand","id","width","className","ref","t","i18n","useTranslation","heightGroupId","useId","unitSystem","setUnitSystem","useState","heightCm","setHeightCm","weightKg","setWeightKg","heightFt","setHeightFt","heightIn","setHeightIn","weightLb","setWeightLb","handleUnitChange","next","target","ft","inches","cmToFtIn","kgToLb","ftInToCm","lbToKg","canonicalHeightCm","canonicalWeightKg","bmi","computeBmi","category","bmiCategory","bmiFormatter","useMemo","useEffect","liveRef","useRef","agentHandle","cm","kg","b","c","useAgentRegistration","isMetric","gauge","bands","min","max","ticks","bmiBands","valueLabel","categoryLabel","rangeLabel","ariaLabel","jsxs","RadioGroup","jsx","Radio","FormField","NumberInput","Card","Badge","BandedGauge","InsertButton"],"mappings":"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"}
|
|
@@ -3,24 +3,24 @@ import { forwardRef as ot, useId as rt, useState as K, useCallback as j, useRef
|
|
|
3
3
|
import { c as Pe } from "./index-D2ZczOXr.js";
|
|
4
4
|
import { useTranslation as O, Trans as Pt } from "react-i18next";
|
|
5
5
|
import { u as Ot } from "./registry-DvAUVLHh.js";
|
|
6
|
-
import { A as z } from "./alert-
|
|
6
|
+
import { A as z } from "./alert-CHYZ96tR.js";
|
|
7
7
|
import { B as ie } from "./button-DD_0Xdmr.js";
|
|
8
8
|
import { C as Ke } from "./checkbox-BuZ1u__2.js";
|
|
9
9
|
import { C as Bt } from "./checkbox-group-PqNmQ-cE.js";
|
|
10
10
|
import { D as Et } from "./date-picker-Dl9RKxaV.js";
|
|
11
|
-
import { E as Rt } from "./email-input-
|
|
11
|
+
import { E as Rt } from "./email-input-DJ7EXklP.js";
|
|
12
12
|
import { F as Z } from "./form-field-BOm9hK35.js";
|
|
13
13
|
import { P as Vt } from "./phone-input-DjU-XmO_.js";
|
|
14
14
|
import { T as Lt } from "./text-area-Bt3p7Pt0.js";
|
|
15
15
|
import { T as Ce } from "./text-input-B-OWQ1Je.js";
|
|
16
16
|
import { S as Ft } from "./spinner-hbwuKwMf.js";
|
|
17
17
|
import { I as tt } from "./icon-button-LqoiKcUN.js";
|
|
18
|
-
import { S as Oe } from "./select-
|
|
19
|
-
import { C as Ge } from "./combobox-
|
|
20
|
-
import { M as Ue } from "./multi-select-
|
|
18
|
+
import { S as Oe } from "./select-KsyRr8WH.js";
|
|
19
|
+
import { C as Ge } from "./combobox-DnqSF0IH.js";
|
|
20
|
+
import { M as Ue } from "./multi-select-WE4S9FIF.js";
|
|
21
21
|
import { S as _e } from "./skeleton-CZbwyJAA.js";
|
|
22
22
|
import { E as dt } from "./empty-state-BLy7tigq.js";
|
|
23
|
-
import { S as $t } from "./stepper-accordion-
|
|
23
|
+
import { S as $t } from "./stepper-accordion-DC-H-8v4.js";
|
|
24
24
|
import { S as zt } from "./stepper-progress-Bv0njx4g.js";
|
|
25
25
|
import { p as F, S as Kt } from "./slot-grid-FsqumOaS.js";
|
|
26
26
|
import { s as le, i as st } from "./isSameDay-DUEiAT0G.js";
|
|
@@ -2708,4 +2708,4 @@ export {
|
|
|
2708
2708
|
X as O,
|
|
2709
2709
|
Ms as b
|
|
2710
2710
|
};
|
|
2711
|
-
//# sourceMappingURL=booking-
|
|
2711
|
+
//# sourceMappingURL=booking-C7do4vaR.js.map
|