@alfadocs/ui-kit-debug 0.71.0 → 0.72.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/accordion-C11v9ouP.js +250 -0
- package/dist/_chunks/accordion-C11v9ouP.js.map +1 -0
- package/dist/_chunks/address-autocomplete-Bq-1n1UX.js +496 -0
- package/dist/_chunks/address-autocomplete-Bq-1n1UX.js.map +1 -0
- package/dist/_chunks/address-fields-COyjgqxA.js +246 -0
- package/dist/_chunks/address-fields-COyjgqxA.js.map +1 -0
- package/dist/_chunks/agenda-card-BCGaQazD.js +147 -0
- package/dist/_chunks/agenda-card-BCGaQazD.js.map +1 -0
- package/dist/_chunks/agenda-tray-loL2A3Cx.js +215 -0
- package/dist/_chunks/agenda-tray-loL2A3Cx.js.map +1 -0
- package/dist/_chunks/ai-consent-banner-Bke9m8VS.js +170 -0
- package/dist/_chunks/ai-consent-banner-Bke9m8VS.js.map +1 -0
- package/dist/_chunks/ai-prompt-input-TVI95hJD.js +500 -0
- package/dist/_chunks/ai-prompt-input-TVI95hJD.js.map +1 -0
- package/dist/_chunks/alert-KJbsPYkI.js +314 -0
- package/dist/_chunks/alert-KJbsPYkI.js.map +1 -0
- package/dist/_chunks/alia-sidebar-BV5lBSFR.js +1183 -0
- package/dist/_chunks/alia-sidebar-BV5lBSFR.js.map +1 -0
- package/dist/_chunks/anamnesis-card-CWO4Ui9c.js +156 -0
- package/dist/_chunks/anamnesis-card-CWO4Ui9c.js.map +1 -0
- package/dist/_chunks/annotation-marker-qt5R9WZX.js.map +1 -1
- package/dist/_chunks/antenatal-schedule-timeline-CY-VsLok.js +413 -0
- package/dist/_chunks/antenatal-schedule-timeline-CY-VsLok.js.map +1 -0
- package/dist/_chunks/appointment-card-Cy4FOkGP.js +311 -0
- package/dist/_chunks/appointment-card-Cy4FOkGP.js.map +1 -0
- package/dist/_chunks/appointment-timeline-BWAPPk8F.js +388 -0
- package/dist/_chunks/appointment-timeline-BWAPPk8F.js.map +1 -0
- package/dist/_chunks/appointment-tray-D3mk04TT.js +193 -0
- package/dist/_chunks/appointment-tray-D3mk04TT.js.map +1 -0
- package/dist/_chunks/ar-BOqyIfoY.js +399 -0
- package/dist/_chunks/ar-BOqyIfoY.js.map +1 -0
- package/dist/_chunks/astroid-BN4f5VXU.js +20 -0
- package/dist/_chunks/astroid-BN4f5VXU.js.map +1 -0
- package/dist/_chunks/audio-recorder-BbjG55dP.js +450 -0
- package/dist/_chunks/audio-recorder-BbjG55dP.js.map +1 -0
- package/dist/_chunks/bishop-score-C6eoak_j.js +304 -0
- package/dist/_chunks/bishop-score-C6eoak_j.js.map +1 -0
- package/dist/_chunks/bmi-calculator-BmQfoEGP.js +434 -0
- package/dist/_chunks/bmi-calculator-BmQfoEGP.js.map +1 -0
- package/dist/_chunks/booking-B62CMY5k.js +2695 -0
- package/dist/_chunks/booking-B62CMY5k.js.map +1 -0
- package/dist/_chunks/breadcrumb-agut0PwN.js +393 -0
- package/dist/_chunks/breadcrumb-agut0PwN.js.map +1 -0
- package/dist/_chunks/calculator-dialog-DuXMQSdm.js +40 -0
- package/dist/_chunks/calculator-dialog-DuXMQSdm.js.map +1 -0
- package/dist/_chunks/calendar-DeAlFPsF.js +1050 -0
- package/dist/_chunks/calendar-DeAlFPsF.js.map +1 -0
- package/dist/_chunks/calendar-clock-hbObjfGY.js +19 -0
- package/dist/_chunks/calendar-clock-hbObjfGY.js.map +1 -0
- package/dist/_chunks/calendar-days-BGWklvE-.js +23 -0
- package/dist/_chunks/calendar-days-BGWklvE-.js.map +1 -0
- package/dist/_chunks/care-plan-card-DhXbfGzE.js +256 -0
- package/dist/_chunks/care-plan-card-DhXbfGzE.js.map +1 -0
- package/dist/_chunks/care-plan-entry-card-D3YGD6rj.js +322 -0
- package/dist/_chunks/care-plan-entry-card-D3YGD6rj.js.map +1 -0
- package/dist/_chunks/care-plan-header-DtQxyfOb.js +198 -0
- package/dist/_chunks/care-plan-header-DtQxyfOb.js.map +1 -0
- package/dist/_chunks/carousel.agent-j7hWxJWr.js +1754 -0
- package/dist/_chunks/carousel.agent-j7hWxJWr.js.map +1 -0
- package/dist/_chunks/chat-container-BVCoN06N.js +234 -0
- package/dist/_chunks/chat-container-BVCoN06N.js.map +1 -0
- package/dist/_chunks/chat-input-Btq_uuMZ.js +368 -0
- package/dist/_chunks/chat-input-Btq_uuMZ.js.map +1 -0
- package/dist/_chunks/chat-message-DXjjM8z9.js +239 -0
- package/dist/_chunks/chat-message-DXjjM8z9.js.map +1 -0
- package/dist/_chunks/check-DrFSN__t.js +12 -0
- package/dist/_chunks/check-DrFSN__t.js.map +1 -0
- package/dist/_chunks/checkbox-group-CfqMv57d.js +213 -0
- package/dist/_chunks/checkbox-group-CfqMv57d.js.map +1 -0
- package/dist/_chunks/chevron-down-DWE7GSq9.js +12 -0
- package/dist/_chunks/chevron-down-DWE7GSq9.js.map +1 -0
- package/dist/_chunks/chevron-left-B8cOyH-V.js +12 -0
- package/dist/_chunks/chevron-left-B8cOyH-V.js.map +1 -0
- package/dist/_chunks/chevron-right-I9AeSxH2.js +12 -0
- package/dist/_chunks/chevron-right-I9AeSxH2.js.map +1 -0
- package/dist/_chunks/chevron-up-umRGgtJA.js +12 -0
- package/dist/_chunks/chevron-up-umRGgtJA.js.map +1 -0
- package/dist/_chunks/chevrons-right-DIHg7Xqi.js +26 -0
- package/dist/_chunks/chevrons-right-DIHg7Xqi.js.map +1 -0
- package/dist/_chunks/circle-alert-rGDZ73Wh.js +16 -0
- package/dist/_chunks/circle-alert-rGDZ73Wh.js.map +1 -0
- package/dist/_chunks/circle-check-BN6rz4NV.js +15 -0
- package/dist/_chunks/circle-check-BN6rz4NV.js.map +1 -0
- package/dist/_chunks/circle-j7oZoouK.js +12 -0
- package/dist/_chunks/circle-j7oZoouK.js.map +1 -0
- package/dist/_chunks/circle-x-W8Enq3i4.js +16 -0
- package/dist/_chunks/circle-x-W8Enq3i4.js.map +1 -0
- package/dist/_chunks/city-input-towzBenY.js +169 -0
- package/dist/_chunks/city-input-towzBenY.js.map +1 -0
- package/dist/_chunks/clinical-note-card-C7F_24IC.js +436 -0
- package/dist/_chunks/clinical-note-card-C7F_24IC.js.map +1 -0
- package/dist/_chunks/clipboard-check-BeAGxDVT.js +22 -0
- package/dist/_chunks/clipboard-check-BeAGxDVT.js.map +1 -0
- package/dist/_chunks/clock-Drd4Wtis.js +15 -0
- package/dist/_chunks/clock-Drd4Wtis.js.map +1 -0
- package/dist/_chunks/code-block-Cwi7e3HM.js +106 -0
- package/dist/_chunks/code-block-Cwi7e3HM.js.map +1 -0
- package/dist/_chunks/color-picker-D-tUwxxT.js +718 -0
- package/dist/_chunks/color-picker-D-tUwxxT.js.map +1 -0
- package/dist/_chunks/columns-2-8lq4-b8e.js +15 -0
- package/dist/_chunks/columns-2-8lq4-b8e.js.map +1 -0
- package/dist/_chunks/combobox-DiMLItyu.js +513 -0
- package/dist/_chunks/combobox-DiMLItyu.js.map +1 -0
- package/dist/_chunks/command-palette-DQl_SNEv.js +473 -0
- package/dist/_chunks/command-palette-DQl_SNEv.js.map +1 -0
- package/dist/_chunks/connection-status-0HajXMXM.js +108 -0
- package/dist/_chunks/connection-status-0HajXMXM.js.map +1 -0
- package/dist/_chunks/contact-card-0hnFJwrz.js +121 -0
- package/dist/_chunks/contact-card-0hnFJwrz.js.map +1 -0
- package/dist/_chunks/contact-profile-card-IggiUVpN.js +333 -0
- package/dist/_chunks/contact-profile-card-IggiUVpN.js.map +1 -0
- package/dist/_chunks/control-room-rail-DaGcsdZ6.js +333 -0
- package/dist/_chunks/control-room-rail-DaGcsdZ6.js.map +1 -0
- package/dist/_chunks/copy-field-PAp0-Wr5.js +268 -0
- package/dist/_chunks/copy-field-PAp0-Wr5.js.map +1 -0
- package/dist/_chunks/copy-vRpqqHtY.js +15 -0
- package/dist/_chunks/copy-vRpqqHtY.js.map +1 -0
- package/dist/_chunks/country-select-DYHDLEjG.js +709 -0
- package/dist/_chunks/country-select-DYHDLEjG.js.map +1 -0
- package/dist/_chunks/createLucideIcon-DhHxpK9K.js +117 -0
- package/dist/_chunks/createLucideIcon-DhHxpK9K.js.map +1 -0
- package/dist/_chunks/cycle-calculator-BNILyVas.js +252 -0
- package/dist/_chunks/cycle-calculator-BNILyVas.js.map +1 -0
- package/dist/_chunks/date-picker-CVkD_lOi.js +1845 -0
- package/dist/_chunks/date-picker-CVkD_lOi.js.map +1 -0
- package/dist/_chunks/date-picker-variants-DLg-ZrIo.js +3224 -0
- package/dist/_chunks/date-picker-variants-DLg-ZrIo.js.map +1 -0
- package/dist/_chunks/date-range-picker-Dw12DgV8.js +324 -0
- package/dist/_chunks/date-range-picker-Dw12DgV8.js.map +1 -0
- package/dist/_chunks/date-time-picker-Cd_OJtOy.js +336 -0
- package/dist/_chunks/date-time-picker-Cd_OJtOy.js.map +1 -0
- package/dist/_chunks/de-DFLsUxeV.js +477 -0
- package/dist/_chunks/de-DFLsUxeV.js.map +1 -0
- package/dist/_chunks/dependent-selector-DyFpdzZV.js +338 -0
- package/dist/_chunks/dependent-selector-DyFpdzZV.js.map +1 -0
- package/dist/_chunks/description-list-CmBVxIF5.js +319 -0
- package/dist/_chunks/description-list-CmBVxIF5.js.map +1 -0
- package/dist/_chunks/dialog-UbKJCi1X.js +230 -0
- package/dist/_chunks/dialog-UbKJCi1X.js.map +1 -0
- package/dist/_chunks/document-scanner-B23j4w7X.js +711 -0
- package/dist/_chunks/document-scanner-B23j4w7X.js.map +1 -0
- package/dist/_chunks/download-CfYKJO_j.js +16 -0
- package/dist/_chunks/download-CfYKJO_j.js.map +1 -0
- package/dist/_chunks/dropdown-menu-DU-Hrf33.js +355 -0
- package/dist/_chunks/dropdown-menu-DU-Hrf33.js.map +1 -0
- package/dist/_chunks/due-date-calculator-CmdAl_JO.js +256 -0
- package/dist/_chunks/due-date-calculator-CmdAl_JO.js.map +1 -0
- package/dist/_chunks/editable-currency-cell-renderer-z9fJFw6Z.js +410 -0
- package/dist/_chunks/editable-currency-cell-renderer-z9fJFw6Z.js.map +1 -0
- package/dist/_chunks/editor-overlay-BIOzr8v7.js +88 -0
- package/dist/_chunks/editor-overlay-BIOzr8v7.js.map +1 -0
- package/dist/_chunks/el-OVjBKytp.js +373 -0
- package/dist/_chunks/el-OVjBKytp.js.map +1 -0
- package/dist/_chunks/ellipsis-dRo9ouSU.js +16 -0
- package/dist/_chunks/ellipsis-dRo9ouSU.js.map +1 -0
- package/dist/_chunks/email-input-Dpe63k0K.js +397 -0
- package/dist/_chunks/email-input-Dpe63k0K.js.map +1 -0
- package/dist/_chunks/entity-card-9_62gY7l.js +87 -0
- package/dist/_chunks/entity-card-9_62gY7l.js.map +1 -0
- package/dist/_chunks/entity-summary-DpGziDv5.js +277 -0
- package/dist/_chunks/entity-summary-DpGziDv5.js.map +1 -0
- package/dist/_chunks/es-DKDNrHXG.js +373 -0
- package/dist/_chunks/es-DKDNrHXG.js.map +1 -0
- package/dist/_chunks/external-link-CY6zAXXU.js +16 -0
- package/dist/_chunks/external-link-CY6zAXXU.js.map +1 -0
- package/dist/_chunks/eye-BjhN2nYf.js +21 -0
- package/dist/_chunks/eye-BjhN2nYf.js.map +1 -0
- package/dist/_chunks/eye-off-C_4xkbRP.js +29 -0
- package/dist/_chunks/eye-off-C_4xkbRP.js.map +1 -0
- package/dist/_chunks/face-scheme-DOZO3M_c.js +1450 -0
- package/dist/_chunks/face-scheme-DOZO3M_c.js.map +1 -0
- package/dist/_chunks/face_detection_yunet_2023mar-BnsRs4bD.js +5 -0
- package/dist/_chunks/face_detection_yunet_2023mar-BnsRs4bD.js.map +1 -0
- package/dist/_chunks/fetal-weight-CVAH8sJ3.js +122 -0
- package/dist/_chunks/fetal-weight-CVAH8sJ3.js.map +1 -0
- package/dist/_chunks/field-array-CDzc3hTM.js +146 -0
- package/dist/_chunks/field-array-CDzc3hTM.js.map +1 -0
- package/dist/_chunks/field-value-Dj3i52H2.js +415 -0
- package/dist/_chunks/field-value-Dj3i52H2.js.map +1 -0
- package/dist/_chunks/file-spreadsheet-DmwyfV4O.js +25 -0
- package/dist/_chunks/file-spreadsheet-DmwyfV4O.js.map +1 -0
- package/dist/_chunks/file-text-5yv6r2ls.js +24 -0
- package/dist/_chunks/file-text-5yv6r2ls.js.map +1 -0
- package/dist/_chunks/file-upload-Kw1rdvFw.js +819 -0
- package/dist/_chunks/file-upload-Kw1rdvFw.js.map +1 -0
- package/dist/_chunks/finished-terminal-Di4gtZ50.js +122 -0
- package/dist/_chunks/finished-terminal-Di4gtZ50.js.map +1 -0
- package/dist/_chunks/fiscal-code-input-DKNXFXs3.js +553 -0
- package/dist/_chunks/fiscal-code-input-DKNXFXs3.js.map +1 -0
- package/dist/_chunks/form-field-M5UpX65Z.js +123 -0
- package/dist/_chunks/form-field-M5UpX65Z.js.map +1 -0
- package/dist/_chunks/fr-BfMvQh-v.js +338 -0
- package/dist/_chunks/fr-BfMvQh-v.js.map +1 -0
- package/dist/_chunks/freemium-paywall-DFoeedwh.js +275 -0
- package/dist/_chunks/freemium-paywall-DFoeedwh.js.map +1 -0
- package/dist/_chunks/gestational-age-calculator-BwCBPAGX.js +311 -0
- package/dist/_chunks/gestational-age-calculator-BwCBPAGX.js.map +1 -0
- package/dist/_chunks/globe-sHBW1JN5.js +16 -0
- package/dist/_chunks/globe-sHBW1JN5.js.map +1 -0
- package/dist/_chunks/grip-vertical-onSb1JXO.js +19 -0
- package/dist/_chunks/grip-vertical-onSb1JXO.js.map +1 -0
- package/dist/_chunks/hash-CSQ9SChR.js +17 -0
- package/dist/_chunks/hash-CSQ9SChR.js.map +1 -0
- package/dist/_chunks/hcg-doubling-CSsWxEJc.js +170 -0
- package/dist/_chunks/hcg-doubling-CSsWxEJc.js.map +1 -0
- package/dist/_chunks/header-DaXWDw0M.js +297 -0
- package/dist/_chunks/header-DaXWDw0M.js.map +1 -0
- package/dist/_chunks/header-settings-B0G_u-wV.js +284 -0
- package/dist/_chunks/header-settings-B0G_u-wV.js.map +1 -0
- package/dist/_chunks/heart--qCA4ffe.js +20 -0
- package/dist/_chunks/heart--qCA4ffe.js.map +1 -0
- package/dist/_chunks/heart-pulse-BCppJyN2.js +21 -0
- package/dist/_chunks/heart-pulse-BCppJyN2.js.map +1 -0
- package/dist/_chunks/hi-C0GEMwlD.js +433 -0
- package/dist/_chunks/hi-C0GEMwlD.js.map +1 -0
- package/dist/_chunks/iban-input-DXIA8Ln_.js +436 -0
- package/dist/_chunks/iban-input-DXIA8Ln_.js.map +1 -0
- package/dist/_chunks/icon-picker-Di6uYDG-.js +272 -0
- package/dist/_chunks/icon-picker-Di6uYDG-.js.map +1 -0
- package/dist/_chunks/image-B_5MNK0x.js +16 -0
- package/dist/_chunks/image-B_5MNK0x.js.map +1 -0
- package/dist/_chunks/image-cropper-CdmWFrMC.js +367 -0
- package/dist/_chunks/image-cropper-CdmWFrMC.js.map +1 -0
- package/dist/_chunks/info-CGn22peZ.js +16 -0
- package/dist/_chunks/info-CGn22peZ.js.map +1 -0
- package/dist/_chunks/insert-result-C7xSDb8q.js +742 -0
- package/dist/_chunks/insert-result-C7xSDb8q.js.map +1 -0
- package/dist/_chunks/isSameWeek-HddDAyJG.js +14 -0
- package/dist/_chunks/isSameWeek-HddDAyJG.js.map +1 -0
- package/dist/_chunks/it-5f4hiT2e.js +401 -0
- package/dist/_chunks/it-5f4hiT2e.js.map +1 -0
- package/dist/_chunks/ja-U0_2inl_.js +366 -0
- package/dist/_chunks/ja-U0_2inl_.js.map +1 -0
- package/dist/_chunks/key-value-pair-Byyyc_9J.js +144 -0
- package/dist/_chunks/key-value-pair-Byyyc_9J.js.map +1 -0
- package/dist/_chunks/languages-CGLX6Qpe.js +19 -0
- package/dist/_chunks/languages-CGLX6Qpe.js.map +1 -0
- package/dist/_chunks/layers-DcAENmsZ.js +34 -0
- package/dist/_chunks/layers-DcAENmsZ.js.map +1 -0
- package/dist/_chunks/link-CPb_pZPr.js +129 -0
- package/dist/_chunks/link-CPb_pZPr.js.map +1 -0
- package/dist/_chunks/link-cell-renderer-BCppbMec.js +2185 -0
- package/dist/_chunks/link-cell-renderer-BCppbMec.js.map +1 -0
- package/dist/_chunks/locale-picker-DzF7Q5Y8.js +739 -0
- package/dist/_chunks/locale-picker-DzF7Q5Y8.js.map +1 -0
- package/dist/_chunks/lock-ClAFG1gy.js +15 -0
- package/dist/_chunks/lock-ClAFG1gy.js.map +1 -0
- package/dist/_chunks/log-out-oDS6zO5d.js +16 -0
- package/dist/_chunks/log-out-oDS6zO5d.js.map +1 -0
- package/dist/_chunks/mail-BqXVF2zH.js +15 -0
- package/dist/_chunks/mail-BqXVF2zH.js.map +1 -0
- package/dist/_chunks/map-pin-BaY37-Km.js +21 -0
- package/dist/_chunks/map-pin-BaY37-Km.js.map +1 -0
- package/dist/_chunks/map-view-ByPvWG_9.js +378 -0
- package/dist/_chunks/map-view-ByPvWG_9.js.map +1 -0
- package/dist/_chunks/marketplace-app-shell-BCYiOvKZ.js +513 -0
- package/dist/_chunks/marketplace-app-shell-BCYiOvKZ.js.map +1 -0
- package/dist/_chunks/maximize-2-BYd2Kti7.js +17 -0
- package/dist/_chunks/maximize-2-BYd2Kti7.js.map +1 -0
- package/dist/_chunks/menu-Op71AWIC.js +16 -0
- package/dist/_chunks/menu-Op71AWIC.js.map +1 -0
- package/dist/_chunks/message-card-BZnnffyB.js +319 -0
- package/dist/_chunks/message-card-BZnnffyB.js.map +1 -0
- package/dist/_chunks/message-circle-Bepl9JT5.js +20 -0
- package/dist/_chunks/message-circle-Bepl9JT5.js.map +1 -0
- package/dist/_chunks/message-tray-cUHOCdU0.js +494 -0
- package/dist/_chunks/message-tray-cUHOCdU0.js.map +1 -0
- package/dist/_chunks/mic-CUklMZGF.js +16 -0
- package/dist/_chunks/mic-CUklMZGF.js.map +1 -0
- package/dist/_chunks/monitor-xXSrufmP.js +16 -0
- package/dist/_chunks/monitor-xXSrufmP.js.map +1 -0
- package/dist/_chunks/multi-select-D5QLBJM1.js +614 -0
- package/dist/_chunks/multi-select-D5QLBJM1.js.map +1 -0
- package/dist/_chunks/muscle-scheme-B9MIkuj0.js +1714 -0
- package/dist/_chunks/muscle-scheme-B9MIkuj0.js.map +1 -0
- package/dist/_chunks/nav-grid-gRudLsPX.js +169 -0
- package/dist/_chunks/nav-grid-gRudLsPX.js.map +1 -0
- package/dist/_chunks/navigation-menu-D3VndouD.js +310 -0
- package/dist/_chunks/navigation-menu-D3VndouD.js.map +1 -0
- package/dist/_chunks/nl-CDVnnx1U.js +326 -0
- package/dist/_chunks/nl-CDVnnx1U.js.map +1 -0
- package/dist/_chunks/notes-panel-CMyjUXD4.js +324 -0
- package/dist/_chunks/notes-panel-CMyjUXD4.js.map +1 -0
- package/dist/_chunks/notification-card-BHJ07FkH.js +290 -0
- package/dist/_chunks/notification-card-BHJ07FkH.js.map +1 -0
- package/dist/_chunks/notification-tray-Dzm1c3Wy.js +499 -0
- package/dist/_chunks/notification-tray-Dzm1c3Wy.js.map +1 -0
- package/dist/_chunks/number-input-DjWzmlEY.js +350 -0
- package/dist/_chunks/number-input-DjWzmlEY.js.map +1 -0
- package/dist/_chunks/operator-hero-DVy0RGoD.js +202 -0
- package/dist/_chunks/operator-hero-DVy0RGoD.js.map +1 -0
- package/dist/_chunks/optical-prescription-Bmlbuopi.js +653 -0
- package/dist/_chunks/optical-prescription-Bmlbuopi.js.map +1 -0
- package/dist/_chunks/pagination-EkD5SiCK.js +486 -0
- package/dist/_chunks/pagination-EkD5SiCK.js.map +1 -0
- package/dist/_chunks/patient-details-pU_E5xM2.js +778 -0
- package/dist/_chunks/patient-details-pU_E5xM2.js.map +1 -0
- package/dist/_chunks/patient-search-X9SUZGpy.js +1167 -0
- package/dist/_chunks/patient-search-X9SUZGpy.js.map +1 -0
- package/dist/_chunks/patient-shell-oiIRqEAl.js +162 -0
- package/dist/_chunks/patient-shell-oiIRqEAl.js.map +1 -0
- package/dist/_chunks/patient-summary-card--t3BjTdU.js +452 -0
- package/dist/_chunks/patient-summary-card--t3BjTdU.js.map +1 -0
- package/dist/_chunks/patient-table-BgWgNIMf.js +1110 -0
- package/dist/_chunks/patient-table-BgWgNIMf.js.map +1 -0
- package/dist/_chunks/payment-form-DL9xk9BA.js +690 -0
- package/dist/_chunks/payment-form-DL9xk9BA.js.map +1 -0
- package/dist/_chunks/payment-request-card-2ts7ITxd.js +467 -0
- package/dist/_chunks/payment-request-card-2ts7ITxd.js.map +1 -0
- package/dist/_chunks/pdf-viewer-DF3VMaPo.js +1005 -0
- package/dist/_chunks/pdf-viewer-DF3VMaPo.js.map +1 -0
- package/dist/_chunks/pencil-B1sKKyuT.js +21 -0
- package/dist/_chunks/pencil-B1sKKyuT.js.map +1 -0
- package/dist/_chunks/periodontal-chart-card-6c6Lt4ws.js +455 -0
- package/dist/_chunks/periodontal-chart-card-6c6Lt4ws.js.map +1 -0
- package/dist/_chunks/permission-matrix-BIJrGEmz.js +174 -0
- package/dist/_chunks/permission-matrix-BIJrGEmz.js.map +1 -0
- package/dist/_chunks/phone-FceYcIFQ.js +20 -0
- package/dist/_chunks/phone-FceYcIFQ.js.map +1 -0
- package/dist/_chunks/phone-input-dtnrvnZf.js +580 -0
- package/dist/_chunks/phone-input-dtnrvnZf.js.map +1 -0
- package/dist/_chunks/pl-BWNumNrg.js +514 -0
- package/dist/_chunks/pl-BWNumNrg.js.map +1 -0
- package/dist/_chunks/plus-DzMQ_c6b.js +15 -0
- package/dist/_chunks/plus-DzMQ_c6b.js.map +1 -0
- package/dist/_chunks/popover-uJ6BvEU3.js +302 -0
- package/dist/_chunks/popover-uJ6BvEU3.js.map +1 -0
- package/dist/_chunks/postal-code-input-BznBxVxf.js +192 -0
- package/dist/_chunks/postal-code-input-BznBxVxf.js.map +1 -0
- package/dist/_chunks/practice-results-CSEHTH2V.js +1609 -0
- package/dist/_chunks/practice-results-CSEHTH2V.js.map +1 -0
- package/dist/_chunks/pregnancy-dating-CxVAA6_4.js +421 -0
- package/dist/_chunks/pregnancy-dating-CxVAA6_4.js.map +1 -0
- package/dist/_chunks/pregnancy-weight-gain-C7zyrwow.js +322 -0
- package/dist/_chunks/pregnancy-weight-gain-C7zyrwow.js.map +1 -0
- package/dist/_chunks/printer-rkK0T1gi.js +22 -0
- package/dist/_chunks/printer-rkK0T1gi.js.map +1 -0
- package/dist/_chunks/privacy-lock-DrRmK8C7.js +197 -0
- package/dist/_chunks/privacy-lock-DrRmK8C7.js.map +1 -0
- package/dist/_chunks/product-hub-panel-CaZqttvm.js +678 -0
- package/dist/_chunks/product-hub-panel-CaZqttvm.js.map +1 -0
- package/dist/_chunks/province-select-BDywtmL-.js +261 -0
- package/dist/_chunks/province-select-BDywtmL-.js.map +1 -0
- package/dist/_chunks/pt-zqdQuryr.js +370 -0
- package/dist/_chunks/pt-zqdQuryr.js.map +1 -0
- package/dist/_chunks/public-footer.agent-BKkK3T3V.js +596 -0
- package/dist/_chunks/public-footer.agent-BKkK3T3V.js.map +1 -0
- package/dist/_chunks/public-header.agent-C-opZaOw.js +597 -0
- package/dist/_chunks/public-header.agent-C-opZaOw.js.map +1 -0
- package/dist/_chunks/radio-group-CI-6SmSw.js +167 -0
- package/dist/_chunks/radio-group-CI-6SmSw.js.map +1 -0
- package/dist/_chunks/radiograph-panel.agent-D1x33moc.js +553 -0
- package/dist/_chunks/radiograph-panel.agent-D1x33moc.js.map +1 -0
- package/dist/_chunks/rating-BYbUowdK.js +171 -0
- package/dist/_chunks/rating-BYbUowdK.js.map +1 -0
- package/dist/_chunks/refresh-cw-DnI0cLFC.js +17 -0
- package/dist/_chunks/refresh-cw-DnI0cLFC.js.map +1 -0
- package/dist/_chunks/reviews-panel-liUj6OPX.js +559 -0
- package/dist/_chunks/reviews-panel-liUj6OPX.js.map +1 -0
- package/dist/_chunks/rich-text-editor-DUgznqOf.js +2621 -0
- package/dist/_chunks/rich-text-editor-DUgznqOf.js.map +1 -0
- package/dist/_chunks/ro-CornQr64.js +361 -0
- package/dist/_chunks/ro-CornQr64.js.map +1 -0
- package/dist/_chunks/rotate-ccw-BBQnIVTr.js +15 -0
- package/dist/_chunks/rotate-ccw-BBQnIVTr.js.map +1 -0
- package/dist/_chunks/ru-CKAXNYVD.js +561 -0
- package/dist/_chunks/ru-CKAXNYVD.js.map +1 -0
- package/dist/_chunks/scan-line-CNseIHQ0.js +18 -0
- package/dist/_chunks/scan-line-CNseIHQ0.js.map +1 -0
- package/dist/_chunks/search-QbWPlY5f.js +15 -0
- package/dist/_chunks/search-QbWPlY5f.js.map +1 -0
- package/dist/_chunks/search-bar-CJj6sI9m.js +612 -0
- package/dist/_chunks/search-bar-CJj6sI9m.js.map +1 -0
- package/dist/_chunks/search-input-B7GmlPIE.js +237 -0
- package/dist/_chunks/search-input-B7GmlPIE.js.map +1 -0
- package/dist/_chunks/select-BmCbJMJS.js +442 -0
- package/dist/_chunks/select-BmCbJMJS.js.map +1 -0
- package/dist/_chunks/send-C5kDJ-Mz.js +21 -0
- package/dist/_chunks/send-C5kDJ-Mz.js.map +1 -0
- package/dist/_chunks/session-countdown-qr8EO5QY.js +214 -0
- package/dist/_chunks/session-countdown-qr8EO5QY.js.map +1 -0
- package/dist/_chunks/settings-d25ju_6L.js +21 -0
- package/dist/_chunks/settings-d25ju_6L.js.map +1 -0
- package/dist/_chunks/sheet-B_X54aZo.js +296 -0
- package/dist/_chunks/sheet-B_X54aZo.js.map +1 -0
- package/dist/_chunks/shield-check-DCJALLVh.js +21 -0
- package/dist/_chunks/shield-check-DCJALLVh.js.map +1 -0
- package/dist/_chunks/sidebar-B0OBmJrC.js +1311 -0
- package/dist/_chunks/sidebar-B0OBmJrC.js.map +1 -0
- package/dist/_chunks/sign-document-nK03S73h.js +370 -0
- package/dist/_chunks/sign-document-nK03S73h.js.map +1 -0
- package/dist/_chunks/signature-field-jgwYgUhO.js +197 -0
- package/dist/_chunks/signature-field-jgwYgUhO.js.map +1 -0
- package/dist/_chunks/smart-date-CsPlilQA.js +114 -0
- package/dist/_chunks/smart-date-CsPlilQA.js.map +1 -0
- package/dist/_chunks/sq-CIIvqXZv.js +355 -0
- package/dist/_chunks/sq-CIIvqXZv.js.map +1 -0
- package/dist/_chunks/square-DASBRZ0U.js +14 -0
- package/dist/_chunks/square-DASBRZ0U.js.map +1 -0
- package/dist/_chunks/square-check-big-dj0o8yA3.js +18 -0
- package/dist/_chunks/square-check-big-dj0o8yA3.js.map +1 -0
- package/dist/_chunks/star-Bf9L2Uot.js +20 -0
- package/dist/_chunks/star-Bf9L2Uot.js.map +1 -0
- package/dist/_chunks/stepper-accordion-BeVMZPuG.js +247 -0
- package/dist/_chunks/stepper-accordion-BeVMZPuG.js.map +1 -0
- package/dist/_chunks/stethoscope-sZXGC43m.js +18 -0
- package/dist/_chunks/stethoscope-sZXGC43m.js.map +1 -0
- package/dist/_chunks/streaming-text-Cedc05ya.js +131 -0
- package/dist/_chunks/streaming-text-Cedc05ya.js.map +1 -0
- package/dist/_chunks/subDays-DGSOp9d9.js +8 -0
- package/dist/_chunks/subDays-DGSOp9d9.js.map +1 -0
- package/dist/_chunks/sun-Bj9Mr553.js +38 -0
- package/dist/_chunks/sun-Bj9Mr553.js.map +1 -0
- package/dist/_chunks/sv-Kpk1pzjz.js +376 -0
- package/dist/_chunks/sv-Kpk1pzjz.js.map +1 -0
- package/dist/_chunks/tab-bar-Axhk6xzx.js +262 -0
- package/dist/_chunks/tab-bar-Axhk6xzx.js.map +1 -0
- package/dist/_chunks/tabs-DVQ941Sj.js +408 -0
- package/dist/_chunks/tabs-DVQ941Sj.js.map +1 -0
- package/dist/_chunks/tag-3wgkwwDB.js +258 -0
- package/dist/_chunks/tag-3wgkwwDB.js.map +1 -0
- package/dist/_chunks/task-card-BUgK6yZT.js +189 -0
- package/dist/_chunks/task-card-BUgK6yZT.js.map +1 -0
- package/dist/_chunks/task-tray-DP5A3Qnc.js +251 -0
- package/dist/_chunks/task-tray-DP5A3Qnc.js.map +1 -0
- package/dist/_chunks/tasks-panel-BuxaYtEF.js +757 -0
- package/dist/_chunks/tasks-panel-BuxaYtEF.js.map +1 -0
- package/dist/_chunks/text-input-CUvCb6ST.js +283 -0
- package/dist/_chunks/text-input-CUvCb6ST.js.map +1 -0
- package/dist/_chunks/theme-toggle-dtdy5EaL.js +367 -0
- package/dist/_chunks/theme-toggle-dtdy5EaL.js.map +1 -0
- package/dist/_chunks/timeline-r-8IUoBS.js +294 -0
- package/dist/_chunks/timeline-r-8IUoBS.js.map +1 -0
- package/dist/_chunks/toast.agent-BSxl057x.js +1005 -0
- package/dist/_chunks/toast.agent-BSxl057x.js.map +1 -0
- package/dist/_chunks/token-insert-menu-Pok4nExI.js +147 -0
- package/dist/_chunks/token-insert-menu-Pok4nExI.js.map +1 -0
- package/dist/_chunks/tooth-scheme-D_rso4uu.js +2133 -0
- package/dist/_chunks/tooth-scheme-D_rso4uu.js.map +1 -0
- package/dist/_chunks/tr-DHaeLFxG.js +378 -0
- package/dist/_chunks/tr-DHaeLFxG.js.map +1 -0
- package/dist/_chunks/transaction-chip-B6iWoVmU.js +225 -0
- package/dist/_chunks/transaction-chip-B6iWoVmU.js.map +1 -0
- package/dist/_chunks/transcript-panel-BGkEhvHO.js +374 -0
- package/dist/_chunks/transcript-panel-BGkEhvHO.js.map +1 -0
- package/dist/_chunks/trash-2-uumy3fy1.js +18 -0
- package/dist/_chunks/trash-2-uumy3fy1.js.map +1 -0
- package/dist/_chunks/triangle-alert-CBnO6nq_.js +22 -0
- package/dist/_chunks/triangle-alert-CBnO6nq_.js.map +1 -0
- package/dist/_chunks/unit-converter-fEqluT8b.js +337 -0
- package/dist/_chunks/unit-converter-fEqluT8b.js.map +1 -0
- package/dist/_chunks/use-password-requirements-Bwtqx1qN.js +453 -0
- package/dist/_chunks/use-password-requirements-Bwtqx1qN.js.map +1 -0
- package/dist/_chunks/user-B12p7bVF.js +15 -0
- package/dist/_chunks/user-B12p7bVF.js.map +1 -0
- package/dist/_chunks/user-cog-BTn98Arm.js +24 -0
- package/dist/_chunks/user-cog-BTn98Arm.js.map +1 -0
- package/dist/_chunks/users-BjS_Gg1E.js +17 -0
- package/dist/_chunks/users-BjS_Gg1E.js.map +1 -0
- package/dist/_chunks/video-BheNGvsu.js +21 -0
- package/dist/_chunks/video-BheNGvsu.js.map +1 -0
- package/dist/_chunks/warning-stack-BaMI7-n7.js +268 -0
- package/dist/_chunks/warning-stack-BaMI7-n7.js.map +1 -0
- package/dist/_chunks/workflow-map-qWsgCldq.js +1356 -0
- package/dist/_chunks/workflow-map-qWsgCldq.js.map +1 -0
- package/dist/_chunks/x-B5YnXwCz.js +15 -0
- package/dist/_chunks/x-B5YnXwCz.js.map +1 -0
- package/dist/_chunks/zh-CN-BncsTBwM.js +388 -0
- package/dist/_chunks/zh-CN-BncsTBwM.js.map +1 -0
- package/dist/_chunks/zoom-out-Dnif4kJx.js +29 -0
- package/dist/_chunks/zoom-out-Dnif4kJx.js.map +1 -0
- package/dist/agent-catalog.json +1473 -317
- package/dist/agent-i18n/en.json +107 -15
- package/dist/components/accordion/index.js +1 -1
- package/dist/components/address-autocomplete/index.js +1 -1
- package/dist/components/address-fields/index.js +1 -1
- 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/index.js +1 -1
- package/dist/components/anamnesis-card/index.js +1 -1
- package/dist/components/annotation-marker/annotation-marker.d.ts +1 -1
- package/dist/components/appointment-card/index.js +2 -2
- package/dist/components/appointment-timeline/index.js +1 -1
- package/dist/components/audio-recorder/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/breadcrumb/index.js +1 -1
- package/dist/components/calculator-dialog/index.js +1 -1
- package/dist/components/calendar/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/index.js +1 -1
- package/dist/components/carousel/index.js +1 -1
- package/dist/components/chat-container/index.js +1 -1
- package/dist/components/chat-input/index.js +1 -1
- package/dist/components/chat-message/chat-message.d.ts +1 -1
- package/dist/components/chat-message/index.js +1 -1
- package/dist/components/checkbox-group/index.js +1 -1
- package/dist/components/city-input/index.js +1 -1
- package/dist/components/clinical-note-card/index.js +1 -1
- package/dist/components/color-picker/index.js +1 -1
- package/dist/components/combobox/index.js +1 -1
- package/dist/components/command-palette/index.js +1 -1
- package/dist/components/connection-status/index.js +1 -1
- package/dist/components/contact-card/index.js +1 -1
- package/dist/components/contact-profile-card/index.js +1 -1
- package/dist/components/control-room-rail/index.js +1 -1
- package/dist/components/copy-field/index.js +1 -1
- package/dist/components/country-select/index.js +1 -1
- package/dist/components/cycle-calculator/index.js +1 -1
- package/dist/components/data-table/index.js +2 -2
- package/dist/components/date-picker/index.js +1 -1
- package/dist/components/date-range-picker/index.js +1 -1
- package/dist/components/date-time-picker/index.js +1 -1
- package/dist/components/dependent-selector/index.js +1 -1
- package/dist/components/description-list/index.js +1 -1
- package/dist/components/dialog/index.js +1 -1
- package/dist/components/document-scanner/index.js +1 -1
- package/dist/components/dropdown-menu/index.js +1 -1
- package/dist/components/due-date-calculator/index.js +2 -2
- package/dist/components/editor-overlay/index.js +1 -1
- package/dist/components/email-input/index.js +1 -1
- package/dist/components/entity-summary/index.js +1 -1
- package/dist/components/face-scheme/detect-face-landmarks.d.ts +26 -0
- package/dist/components/face-scheme/detect-face-landmarks.d.ts.map +1 -0
- package/dist/components/face-scheme/detect-face-yunet.d.ts +28 -0
- package/dist/components/face-scheme/detect-face-yunet.d.ts.map +1 -0
- package/dist/components/face-scheme/face-scheme-data.d.ts +113 -0
- package/dist/components/face-scheme/face-scheme-data.d.ts.map +1 -0
- package/dist/components/face-scheme/face-scheme-zones.d.ts +11 -0
- package/dist/components/face-scheme/face-scheme-zones.d.ts.map +1 -0
- package/dist/components/face-scheme/face-scheme.agent.d.ts +4 -0
- package/dist/components/face-scheme/face-scheme.agent.d.ts.map +1 -0
- package/dist/components/face-scheme/face-scheme.d.ts +144 -0
- package/dist/components/face-scheme/face-scheme.d.ts.map +1 -0
- package/dist/components/face-scheme/index.d.ts +7 -0
- package/dist/components/face-scheme/index.d.ts.map +1 -0
- package/dist/components/face-scheme/index.js +17 -0
- package/dist/components/fetal-weight/index.js +1 -1
- package/dist/components/field-array/index.js +1 -1
- package/dist/components/file-upload/index.js +1 -1
- package/dist/components/finished-terminal/index.js +1 -1
- package/dist/components/fiscal-code-input/index.js +1 -1
- package/dist/components/form-field/index.js +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/header/index.js +1 -1
- package/dist/components/header-settings/index.js +1 -1
- package/dist/components/iban-input/index.js +1 -1
- package/dist/components/icon-picker/index.js +1 -1
- package/dist/components/image-cropper/index.js +1 -1
- package/dist/components/index.d.ts +3 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/key-value-pair/index.js +1 -1
- package/dist/components/link/index.js +1 -1
- package/dist/components/locale-picker/index.js +1 -1
- package/dist/components/map-view/index.js +1 -1
- package/dist/components/message-card/index.js +1 -1
- package/dist/components/message-tray/index.js +1 -1
- package/dist/components/multi-select/index.js +1 -1
- package/dist/components/muscle-scheme/index.d.ts +6 -0
- package/dist/components/muscle-scheme/index.d.ts.map +1 -0
- package/dist/components/muscle-scheme/index.js +16 -0
- package/dist/components/muscle-scheme/index.js.map +1 -0
- package/dist/components/muscle-scheme/muscle-paths.d.ts +22 -0
- package/dist/components/muscle-scheme/muscle-paths.d.ts.map +1 -0
- package/dist/components/muscle-scheme/muscle-scheme-data.d.ts +107 -0
- package/dist/components/muscle-scheme/muscle-scheme-data.d.ts.map +1 -0
- package/dist/components/muscle-scheme/muscle-scheme.agent.d.ts +6 -0
- package/dist/components/muscle-scheme/muscle-scheme.agent.d.ts.map +1 -0
- package/dist/components/muscle-scheme/muscle-scheme.d.ts +66 -0
- package/dist/components/muscle-scheme/muscle-scheme.d.ts.map +1 -0
- package/dist/components/nav-grid/index.js +1 -1
- package/dist/components/navigation-menu/index.js +1 -1
- package/dist/components/notes-panel/index.js +1 -1
- package/dist/components/notification-card/index.js +1 -1
- package/dist/components/notification-tray/index.js +1 -1
- package/dist/components/number-input/index.js +1 -1
- package/dist/components/operator-hero/index.js +1 -1
- package/dist/components/optical-prescription/index.d.ts +6 -0
- package/dist/components/optical-prescription/index.d.ts.map +1 -0
- package/dist/components/optical-prescription/index.js +38 -0
- package/dist/components/optical-prescription/index.js.map +1 -0
- package/dist/components/optical-prescription/optical-prescription-data.d.ts +106 -0
- package/dist/components/optical-prescription/optical-prescription-data.d.ts.map +1 -0
- package/dist/components/optical-prescription/optical-prescription.agent.d.ts +6 -0
- package/dist/components/optical-prescription/optical-prescription.agent.d.ts.map +1 -0
- package/dist/components/optical-prescription/optical-prescription.d.ts +43 -0
- package/dist/components/optical-prescription/optical-prescription.d.ts.map +1 -0
- package/dist/components/pagination/index.js +1 -1
- package/dist/components/password-input/index.js +1 -1
- package/dist/components/patient-details/index.js +1 -1
- package/dist/components/patient-search/index.js +1 -1
- package/dist/components/patient-summary-card/index.js +1 -1
- package/dist/components/patient-table/index.js +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.js +1 -1
- package/dist/components/phone-input/index.js +1 -1
- package/dist/components/popover/index.js +1 -1
- package/dist/components/postal-code-input/index.js +1 -1
- 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/privacy-lock/index.js +1 -1
- package/dist/components/product-hub-tray/index.js +1 -1
- package/dist/components/province-select/index.js +1 -1
- package/dist/components/public-footer/index.js +1 -1
- package/dist/components/public-header/index.js +1 -1
- package/dist/components/radio-group/index.js +1 -1
- package/dist/components/radiograph-panel/index.js +1 -1
- package/dist/components/rating/index.js +1 -1
- package/dist/components/reviews-panel/index.js +1 -1
- package/dist/components/rich-text-editor/index.js +1 -1
- package/dist/components/search-bar/index.js +1 -1
- package/dist/components/search-input/index.js +1 -1
- package/dist/components/select/index.js +1 -1
- package/dist/components/session-countdown/index.js +1 -1
- package/dist/components/sheet/index.js +1 -1
- package/dist/components/sidebar/index.js +1 -1
- package/dist/components/sign-document/index.js +1 -1
- package/dist/components/signature-field/index.js +1 -1
- package/dist/components/smart-date/index.js +1 -1
- package/dist/components/stepper-accordion/index.js +1 -1
- package/dist/components/streaming-text/index.js +1 -1
- package/dist/components/tab-bar/index.js +1 -1
- package/dist/components/tabs/index.js +1 -1
- package/dist/components/tag/index.js +1 -1
- package/dist/components/task-card/index.js +1 -1
- package/dist/components/task-tray/index.js +1 -1
- package/dist/components/tasks-panel/index.js +1 -1
- package/dist/components/text-input/index.js +1 -1
- package/dist/components/theme-toggle/index.js +1 -1
- package/dist/components/timeline/index.js +1 -1
- package/dist/components/toast/index.js +1 -1
- package/dist/components/token-insert-menu/index.js +1 -1
- package/dist/components/tooth-scheme/index.js +1 -1
- package/dist/components/transaction-chip/index.js +1 -1
- package/dist/components/transcript-panel/index.js +1 -1
- package/dist/components/unit-converter/index.js +1 -1
- package/dist/components/warning-stack/index.js +1 -1
- package/dist/components/workflow/index.js +1 -1
- package/dist/i18n/locales/ar.d.ts +139 -98
- package/dist/i18n/locales/ar.d.ts.map +1 -1
- package/dist/i18n/locales/ar.js +141 -107
- package/dist/i18n/locales/ar.js.map +1 -1
- package/dist/i18n/locales/de.d.ts +139 -98
- package/dist/i18n/locales/de.d.ts.map +1 -1
- package/dist/i18n/locales/de.js +141 -107
- package/dist/i18n/locales/de.js.map +1 -1
- package/dist/i18n/locales/el.d.ts +139 -98
- package/dist/i18n/locales/el.d.ts.map +1 -1
- package/dist/i18n/locales/el.js +141 -107
- package/dist/i18n/locales/el.js.map +1 -1
- package/dist/i18n/locales/en.d.ts +139 -98
- package/dist/i18n/locales/en.d.ts.map +1 -1
- package/dist/i18n/locales/en.js +141 -107
- package/dist/i18n/locales/en.js.map +1 -1
- package/dist/i18n/locales/es.d.ts +139 -98
- package/dist/i18n/locales/es.d.ts.map +1 -1
- package/dist/i18n/locales/es.js +141 -107
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.d.ts +139 -98
- package/dist/i18n/locales/fr.d.ts.map +1 -1
- package/dist/i18n/locales/fr.js +141 -107
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hi.d.ts +139 -98
- package/dist/i18n/locales/hi.d.ts.map +1 -1
- package/dist/i18n/locales/hi.js +141 -107
- package/dist/i18n/locales/hi.js.map +1 -1
- package/dist/i18n/locales/it.d.ts +139 -98
- package/dist/i18n/locales/it.d.ts.map +1 -1
- package/dist/i18n/locales/it.js +141 -107
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/ja.d.ts +139 -98
- package/dist/i18n/locales/ja.d.ts.map +1 -1
- package/dist/i18n/locales/ja.js +141 -107
- package/dist/i18n/locales/ja.js.map +1 -1
- package/dist/i18n/locales/nl.d.ts +139 -98
- package/dist/i18n/locales/nl.d.ts.map +1 -1
- package/dist/i18n/locales/nl.js +141 -107
- package/dist/i18n/locales/nl.js.map +1 -1
- package/dist/i18n/locales/pl.d.ts +139 -98
- package/dist/i18n/locales/pl.d.ts.map +1 -1
- package/dist/i18n/locales/pl.js +141 -107
- package/dist/i18n/locales/pl.js.map +1 -1
- package/dist/i18n/locales/pt.d.ts +139 -98
- package/dist/i18n/locales/pt.d.ts.map +1 -1
- package/dist/i18n/locales/pt.js +141 -107
- package/dist/i18n/locales/pt.js.map +1 -1
- package/dist/i18n/locales/ro.d.ts +139 -98
- package/dist/i18n/locales/ro.d.ts.map +1 -1
- package/dist/i18n/locales/ro.js +141 -107
- package/dist/i18n/locales/ro.js.map +1 -1
- package/dist/i18n/locales/ru.d.ts +139 -98
- package/dist/i18n/locales/ru.d.ts.map +1 -1
- package/dist/i18n/locales/ru.js +141 -107
- package/dist/i18n/locales/ru.js.map +1 -1
- package/dist/i18n/locales/sq.d.ts +139 -98
- package/dist/i18n/locales/sq.d.ts.map +1 -1
- package/dist/i18n/locales/sq.js +141 -107
- package/dist/i18n/locales/sq.js.map +1 -1
- package/dist/i18n/locales/sv.d.ts +139 -98
- package/dist/i18n/locales/sv.d.ts.map +1 -1
- package/dist/i18n/locales/sv.js +141 -107
- package/dist/i18n/locales/sv.js.map +1 -1
- package/dist/i18n/locales/tr.d.ts +139 -98
- package/dist/i18n/locales/tr.d.ts.map +1 -1
- package/dist/i18n/locales/tr.js +141 -107
- package/dist/i18n/locales/tr.js.map +1 -1
- package/dist/i18n/locales/zh.d.ts +139 -98
- package/dist/i18n/locales/zh.d.ts.map +1 -1
- package/dist/i18n/locales/zh.js +141 -107
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/index.js +710 -662
- package/dist/index.js.map +1 -1
- package/dist/locales/ar.json +141 -100
- package/dist/locales/de.json +141 -100
- package/dist/locales/el.json +141 -100
- package/dist/locales/en.json +141 -100
- package/dist/locales/es.json +141 -100
- package/dist/locales/fr.json +141 -100
- package/dist/locales/hi.json +141 -100
- package/dist/locales/it.json +141 -100
- package/dist/locales/ja.json +141 -100
- package/dist/locales/nl.json +141 -100
- package/dist/locales/pl.json +141 -100
- package/dist/locales/pt.json +141 -100
- package/dist/locales/ro.json +141 -100
- package/dist/locales/ru.json +141 -100
- package/dist/locales/sq.json +141 -100
- package/dist/locales/sv.json +141 -100
- package/dist/locales/tr.json +141 -100
- package/dist/locales/zh.json +141 -100
- package/dist/patterns/alia-assistant/alia-asteroid-icon.d.ts +18 -0
- package/dist/patterns/alia-assistant/alia-asteroid-icon.d.ts.map +1 -0
- package/dist/patterns/alia-assistant/alia-chat-surface.d.ts.map +1 -1
- package/dist/patterns/alia-assistant/alia-sidebar.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 +7 -1
- package/package.json +13 -5
- package/dist/_chunks/accordion-DnIa7OHX.js +0 -250
- package/dist/_chunks/accordion-DnIa7OHX.js.map +0 -1
- package/dist/_chunks/address-autocomplete-BEX9PXty.js +0 -496
- package/dist/_chunks/address-autocomplete-BEX9PXty.js.map +0 -1
- package/dist/_chunks/address-fields-CPbFJ8e8.js +0 -246
- package/dist/_chunks/address-fields-CPbFJ8e8.js.map +0 -1
- package/dist/_chunks/agenda-card-BQ-IKAru.js +0 -147
- package/dist/_chunks/agenda-card-BQ-IKAru.js.map +0 -1
- package/dist/_chunks/agenda-tray-CGXRk58j.js +0 -215
- package/dist/_chunks/agenda-tray-CGXRk58j.js.map +0 -1
- package/dist/_chunks/ai-consent-banner-Be-h9mRI.js +0 -170
- package/dist/_chunks/ai-consent-banner-Be-h9mRI.js.map +0 -1
- package/dist/_chunks/ai-prompt-input-V4DdOeqv.js +0 -500
- package/dist/_chunks/ai-prompt-input-V4DdOeqv.js.map +0 -1
- package/dist/_chunks/alert-CHYZ96tR.js +0 -314
- package/dist/_chunks/alert-CHYZ96tR.js.map +0 -1
- package/dist/_chunks/alia-sidebar-DvIUzIX9.js +0 -1127
- package/dist/_chunks/alia-sidebar-DvIUzIX9.js.map +0 -1
- package/dist/_chunks/anamnesis-card-DvYCa16e.js +0 -156
- package/dist/_chunks/anamnesis-card-DvYCa16e.js.map +0 -1
- package/dist/_chunks/anatomy-scheme-CXSk11UJ.js +0 -2445
- package/dist/_chunks/anatomy-scheme-CXSk11UJ.js.map +0 -1
- package/dist/_chunks/antenatal-schedule-timeline-CwXrQRm1.js +0 -413
- package/dist/_chunks/antenatal-schedule-timeline-CwXrQRm1.js.map +0 -1
- package/dist/_chunks/appointment-card-DVaeJNVB.js +0 -294
- package/dist/_chunks/appointment-card-DVaeJNVB.js.map +0 -1
- package/dist/_chunks/appointment-timeline-PJgnrjFb.js +0 -388
- package/dist/_chunks/appointment-timeline-PJgnrjFb.js.map +0 -1
- package/dist/_chunks/appointment-tray-B16QPGbm.js +0 -193
- package/dist/_chunks/appointment-tray-B16QPGbm.js.map +0 -1
- package/dist/_chunks/ar-Cn5Fq48Z.js +0 -399
- package/dist/_chunks/ar-Cn5Fq48Z.js.map +0 -1
- package/dist/_chunks/audio-recorder-DNDsOLqO.js +0 -450
- package/dist/_chunks/audio-recorder-DNDsOLqO.js.map +0 -1
- package/dist/_chunks/bishop-score-Cym_TeQY.js +0 -304
- package/dist/_chunks/bishop-score-Cym_TeQY.js.map +0 -1
- package/dist/_chunks/bmi-calculator-zjeY4E7J.js +0 -434
- package/dist/_chunks/bmi-calculator-zjeY4E7J.js.map +0 -1
- package/dist/_chunks/booking-C7do4vaR.js +0 -2711
- package/dist/_chunks/booking-C7do4vaR.js.map +0 -1
- package/dist/_chunks/breadcrumb-CchdeG7d.js +0 -393
- package/dist/_chunks/breadcrumb-CchdeG7d.js.map +0 -1
- package/dist/_chunks/calculator-dialog-BR5iU0kf.js +0 -40
- package/dist/_chunks/calculator-dialog-BR5iU0kf.js.map +0 -1
- package/dist/_chunks/calendar-B6soK1Yb.js +0 -17
- package/dist/_chunks/calendar-B6soK1Yb.js.map +0 -1
- package/dist/_chunks/calendar-CZUjL8SZ.js +0 -1050
- package/dist/_chunks/calendar-CZUjL8SZ.js.map +0 -1
- package/dist/_chunks/calendar-clock-CYkcqdwl.js +0 -19
- package/dist/_chunks/calendar-clock-CYkcqdwl.js.map +0 -1
- package/dist/_chunks/calendar-days-C4BmpCZg.js +0 -23
- package/dist/_chunks/calendar-days-C4BmpCZg.js.map +0 -1
- package/dist/_chunks/care-plan-card-DzPDYgtK.js +0 -256
- package/dist/_chunks/care-plan-card-DzPDYgtK.js.map +0 -1
- package/dist/_chunks/care-plan-entry-card-CEnQy7YP.js +0 -322
- package/dist/_chunks/care-plan-entry-card-CEnQy7YP.js.map +0 -1
- package/dist/_chunks/care-plan-header-DcXFXWit.js +0 -198
- package/dist/_chunks/care-plan-header-DcXFXWit.js.map +0 -1
- package/dist/_chunks/carousel.agent-4v8Emr9E.js +0 -1754
- package/dist/_chunks/carousel.agent-4v8Emr9E.js.map +0 -1
- package/dist/_chunks/chat-container-DWho5hPR.js +0 -234
- package/dist/_chunks/chat-container-DWho5hPR.js.map +0 -1
- package/dist/_chunks/chat-input-BcXTetgM.js +0 -368
- package/dist/_chunks/chat-input-BcXTetgM.js.map +0 -1
- package/dist/_chunks/chat-message-DzpcJR-q.js +0 -239
- package/dist/_chunks/chat-message-DzpcJR-q.js.map +0 -1
- package/dist/_chunks/check-DPdL_Sm7.js +0 -12
- package/dist/_chunks/check-DPdL_Sm7.js.map +0 -1
- package/dist/_chunks/checkbox-group-PqNmQ-cE.js +0 -213
- package/dist/_chunks/checkbox-group-PqNmQ-cE.js.map +0 -1
- package/dist/_chunks/chevron-down-BX_NP2Yh.js +0 -12
- package/dist/_chunks/chevron-down-BX_NP2Yh.js.map +0 -1
- package/dist/_chunks/chevron-left-CX1jqD2M.js +0 -12
- package/dist/_chunks/chevron-left-CX1jqD2M.js.map +0 -1
- package/dist/_chunks/chevron-right-BrpYejk0.js +0 -12
- package/dist/_chunks/chevron-right-BrpYejk0.js.map +0 -1
- package/dist/_chunks/chevron-up-zOEDrmBB.js +0 -12
- package/dist/_chunks/chevron-up-zOEDrmBB.js.map +0 -1
- package/dist/_chunks/chevrons-right-d9MwesPG.js +0 -26
- package/dist/_chunks/chevrons-right-d9MwesPG.js.map +0 -1
- package/dist/_chunks/circle-BkqTgYmt.js +0 -12
- package/dist/_chunks/circle-BkqTgYmt.js.map +0 -1
- package/dist/_chunks/circle-alert-ChA9opNA.js +0 -16
- package/dist/_chunks/circle-alert-ChA9opNA.js.map +0 -1
- package/dist/_chunks/circle-check-9AeSgJD_.js +0 -15
- package/dist/_chunks/circle-check-9AeSgJD_.js.map +0 -1
- package/dist/_chunks/circle-x-Du2CmjaU.js +0 -16
- package/dist/_chunks/circle-x-Du2CmjaU.js.map +0 -1
- package/dist/_chunks/city-input-Dkgaak7I.js +0 -169
- package/dist/_chunks/city-input-Dkgaak7I.js.map +0 -1
- package/dist/_chunks/clinical-note-card-BUvNMNGL.js +0 -436
- package/dist/_chunks/clinical-note-card-BUvNMNGL.js.map +0 -1
- package/dist/_chunks/clipboard-list-S7s-MXQq.js +0 -25
- package/dist/_chunks/clipboard-list-S7s-MXQq.js.map +0 -1
- package/dist/_chunks/clock-21AGPWJ5.js +0 -15
- package/dist/_chunks/clock-21AGPWJ5.js.map +0 -1
- package/dist/_chunks/code-block-BBWHhIc8.js +0 -106
- package/dist/_chunks/code-block-BBWHhIc8.js.map +0 -1
- package/dist/_chunks/color-picker-C_fZl6sA.js +0 -718
- package/dist/_chunks/color-picker-C_fZl6sA.js.map +0 -1
- package/dist/_chunks/columns-2-BTOBZbep.js +0 -15
- package/dist/_chunks/columns-2-BTOBZbep.js.map +0 -1
- package/dist/_chunks/combobox-DnqSF0IH.js +0 -513
- package/dist/_chunks/combobox-DnqSF0IH.js.map +0 -1
- package/dist/_chunks/command-palette-CJzmc5pC.js +0 -473
- package/dist/_chunks/command-palette-CJzmc5pC.js.map +0 -1
- package/dist/_chunks/connection-status-CY1HV8Wg.js +0 -108
- package/dist/_chunks/connection-status-CY1HV8Wg.js.map +0 -1
- package/dist/_chunks/contact-card-Cf8Ktyt3.js +0 -121
- package/dist/_chunks/contact-card-Cf8Ktyt3.js.map +0 -1
- package/dist/_chunks/contact-profile-card-DDPwRFiP.js +0 -333
- package/dist/_chunks/contact-profile-card-DDPwRFiP.js.map +0 -1
- package/dist/_chunks/control-room-rail-FAQZrGVL.js +0 -333
- package/dist/_chunks/control-room-rail-FAQZrGVL.js.map +0 -1
- package/dist/_chunks/copy-B00HK7tj.js +0 -15
- package/dist/_chunks/copy-B00HK7tj.js.map +0 -1
- package/dist/_chunks/copy-field-Bjw9u2cV.js +0 -268
- package/dist/_chunks/copy-field-Bjw9u2cV.js.map +0 -1
- package/dist/_chunks/country-select-BwUZQvTa.js +0 -709
- package/dist/_chunks/country-select-BwUZQvTa.js.map +0 -1
- package/dist/_chunks/createLucideIcon-CrFbzy84.js +0 -117
- package/dist/_chunks/createLucideIcon-CrFbzy84.js.map +0 -1
- package/dist/_chunks/cycle-calculator-CCmPwcBl.js +0 -252
- package/dist/_chunks/cycle-calculator-CCmPwcBl.js.map +0 -1
- package/dist/_chunks/date-picker-Dl9RKxaV.js +0 -1845
- package/dist/_chunks/date-picker-Dl9RKxaV.js.map +0 -1
- package/dist/_chunks/date-picker-variants-DAcSLTua.js +0 -3224
- package/dist/_chunks/date-picker-variants-DAcSLTua.js.map +0 -1
- package/dist/_chunks/date-range-picker-CTUeR6Bj.js +0 -324
- package/dist/_chunks/date-range-picker-CTUeR6Bj.js.map +0 -1
- package/dist/_chunks/date-time-picker-BhoogS5Q.js +0 -336
- package/dist/_chunks/date-time-picker-BhoogS5Q.js.map +0 -1
- package/dist/_chunks/de-CrJs4ZsX.js +0 -477
- package/dist/_chunks/de-CrJs4ZsX.js.map +0 -1
- package/dist/_chunks/dependent-selector-DUV4thxX.js +0 -338
- package/dist/_chunks/dependent-selector-DUV4thxX.js.map +0 -1
- package/dist/_chunks/description-list-gkNGWk5G.js +0 -319
- package/dist/_chunks/description-list-gkNGWk5G.js.map +0 -1
- package/dist/_chunks/dialog-ZNuboNmy.js +0 -230
- package/dist/_chunks/dialog-ZNuboNmy.js.map +0 -1
- package/dist/_chunks/document-scanner-C_AxLooF.js +0 -711
- package/dist/_chunks/document-scanner-C_AxLooF.js.map +0 -1
- package/dist/_chunks/download-CDF1sbL9.js +0 -16
- package/dist/_chunks/download-CDF1sbL9.js.map +0 -1
- package/dist/_chunks/dropdown-menu-qrxjymfw.js +0 -355
- package/dist/_chunks/dropdown-menu-qrxjymfw.js.map +0 -1
- package/dist/_chunks/due-date-calculator-Brdj-euS.js +0 -256
- package/dist/_chunks/due-date-calculator-Brdj-euS.js.map +0 -1
- package/dist/_chunks/editable-currency-cell-renderer-CGELrkIj.js +0 -410
- package/dist/_chunks/editable-currency-cell-renderer-CGELrkIj.js.map +0 -1
- package/dist/_chunks/editor-overlay-wYm22wZK.js +0 -88
- package/dist/_chunks/editor-overlay-wYm22wZK.js.map +0 -1
- package/dist/_chunks/el-DHdMOIhL.js +0 -373
- package/dist/_chunks/el-DHdMOIhL.js.map +0 -1
- package/dist/_chunks/ellipsis-rgGdiK_9.js +0 -16
- package/dist/_chunks/ellipsis-rgGdiK_9.js.map +0 -1
- package/dist/_chunks/email-input-DJ7EXklP.js +0 -397
- package/dist/_chunks/email-input-DJ7EXklP.js.map +0 -1
- package/dist/_chunks/entity-card-DmrgYSEX.js +0 -87
- package/dist/_chunks/entity-card-DmrgYSEX.js.map +0 -1
- package/dist/_chunks/entity-summary-CaM1Y-xE.js +0 -291
- package/dist/_chunks/entity-summary-CaM1Y-xE.js.map +0 -1
- package/dist/_chunks/es-DCATCfqo.js +0 -373
- package/dist/_chunks/es-DCATCfqo.js.map +0 -1
- package/dist/_chunks/external-link-C6F25E6k.js +0 -16
- package/dist/_chunks/external-link-C6F25E6k.js.map +0 -1
- package/dist/_chunks/eye-LHlSU38h.js +0 -21
- package/dist/_chunks/eye-LHlSU38h.js.map +0 -1
- package/dist/_chunks/eye-off-xEXDAh5z.js +0 -29
- package/dist/_chunks/eye-off-xEXDAh5z.js.map +0 -1
- package/dist/_chunks/fetal-weight-DNCkyeVo.js +0 -122
- package/dist/_chunks/fetal-weight-DNCkyeVo.js.map +0 -1
- package/dist/_chunks/field-array-siUZzfYe.js +0 -146
- package/dist/_chunks/field-array-siUZzfYe.js.map +0 -1
- package/dist/_chunks/field-value-3jMM0uDx.js +0 -415
- package/dist/_chunks/field-value-3jMM0uDx.js.map +0 -1
- package/dist/_chunks/file-spreadsheet-zUkY8rJ2.js +0 -25
- package/dist/_chunks/file-spreadsheet-zUkY8rJ2.js.map +0 -1
- package/dist/_chunks/file-text-DSNuv2B8.js +0 -24
- package/dist/_chunks/file-text-DSNuv2B8.js.map +0 -1
- package/dist/_chunks/file-upload-DwZcAK8D.js +0 -819
- package/dist/_chunks/file-upload-DwZcAK8D.js.map +0 -1
- package/dist/_chunks/finished-terminal-VjZ_-eDD.js +0 -122
- package/dist/_chunks/finished-terminal-VjZ_-eDD.js.map +0 -1
- package/dist/_chunks/fiscal-code-input-Cf-8O4Fj.js +0 -553
- package/dist/_chunks/fiscal-code-input-Cf-8O4Fj.js.map +0 -1
- package/dist/_chunks/form-field-BOm9hK35.js +0 -123
- package/dist/_chunks/form-field-BOm9hK35.js.map +0 -1
- package/dist/_chunks/fr-BfGEMshF.js +0 -338
- package/dist/_chunks/fr-BfGEMshF.js.map +0 -1
- package/dist/_chunks/freemium-paywall-WYlNO7yT.js +0 -275
- package/dist/_chunks/freemium-paywall-WYlNO7yT.js.map +0 -1
- package/dist/_chunks/gestational-age-calculator-DKzEV5Qi.js +0 -311
- package/dist/_chunks/gestational-age-calculator-DKzEV5Qi.js.map +0 -1
- package/dist/_chunks/globe-BkEFMNSg.js +0 -16
- package/dist/_chunks/globe-BkEFMNSg.js.map +0 -1
- package/dist/_chunks/grip-vertical-Dlg0_k5C.js +0 -19
- package/dist/_chunks/grip-vertical-Dlg0_k5C.js.map +0 -1
- package/dist/_chunks/hash-CysBBS_N.js +0 -17
- package/dist/_chunks/hash-CysBBS_N.js.map +0 -1
- package/dist/_chunks/hcg-doubling-C7bmuaU3.js +0 -170
- package/dist/_chunks/hcg-doubling-C7bmuaU3.js.map +0 -1
- package/dist/_chunks/header-CNszv2WQ.js +0 -297
- package/dist/_chunks/header-CNszv2WQ.js.map +0 -1
- package/dist/_chunks/header-settings-DJqoAl5m.js +0 -284
- package/dist/_chunks/header-settings-DJqoAl5m.js.map +0 -1
- package/dist/_chunks/heart-C0faivFf.js +0 -20
- package/dist/_chunks/heart-C0faivFf.js.map +0 -1
- package/dist/_chunks/heart-pulse-CvuyFKHB.js +0 -21
- package/dist/_chunks/heart-pulse-CvuyFKHB.js.map +0 -1
- package/dist/_chunks/hi-CBFRXEIm.js +0 -433
- package/dist/_chunks/hi-CBFRXEIm.js.map +0 -1
- package/dist/_chunks/iban-input-B0TWzR1R.js +0 -436
- package/dist/_chunks/iban-input-B0TWzR1R.js.map +0 -1
- package/dist/_chunks/icon-picker-0B7KhrF1.js +0 -272
- package/dist/_chunks/icon-picker-0B7KhrF1.js.map +0 -1
- package/dist/_chunks/image-C6RM5hfF.js +0 -16
- package/dist/_chunks/image-C6RM5hfF.js.map +0 -1
- package/dist/_chunks/image-cropper-D9jqJy19.js +0 -367
- package/dist/_chunks/image-cropper-D9jqJy19.js.map +0 -1
- package/dist/_chunks/info-B9XNKn05.js +0 -16
- package/dist/_chunks/info-B9XNKn05.js.map +0 -1
- package/dist/_chunks/insert-result-njqBthzT.js +0 -742
- package/dist/_chunks/insert-result-njqBthzT.js.map +0 -1
- package/dist/_chunks/isSameWeek-I3DfXUp1.js +0 -14
- package/dist/_chunks/isSameWeek-I3DfXUp1.js.map +0 -1
- package/dist/_chunks/it-nz6vAKwG.js +0 -401
- package/dist/_chunks/it-nz6vAKwG.js.map +0 -1
- package/dist/_chunks/ja-DQcqdAEJ.js +0 -366
- package/dist/_chunks/ja-DQcqdAEJ.js.map +0 -1
- package/dist/_chunks/key-value-pair-BrgbMfbF.js +0 -144
- package/dist/_chunks/key-value-pair-BrgbMfbF.js.map +0 -1
- package/dist/_chunks/languages-DsVf_WzT.js +0 -19
- package/dist/_chunks/languages-DsVf_WzT.js.map +0 -1
- package/dist/_chunks/layers-pzGcbLPj.js +0 -34
- package/dist/_chunks/layers-pzGcbLPj.js.map +0 -1
- package/dist/_chunks/link-DrD_cRUg.js +0 -129
- package/dist/_chunks/link-DrD_cRUg.js.map +0 -1
- package/dist/_chunks/link-cell-renderer-De_SLjSq.js +0 -2185
- package/dist/_chunks/link-cell-renderer-De_SLjSq.js.map +0 -1
- package/dist/_chunks/list-checks-BUs75d_o.js +0 -18
- package/dist/_chunks/list-checks-BUs75d_o.js.map +0 -1
- package/dist/_chunks/locale-picker-ChYYSX2N.js +0 -739
- package/dist/_chunks/locale-picker-ChYYSX2N.js.map +0 -1
- package/dist/_chunks/lock-CKOIn0IK.js +0 -15
- package/dist/_chunks/lock-CKOIn0IK.js.map +0 -1
- package/dist/_chunks/log-out-616hnn2-.js +0 -16
- package/dist/_chunks/log-out-616hnn2-.js.map +0 -1
- package/dist/_chunks/mail-C8irm52s.js +0 -15
- package/dist/_chunks/mail-C8irm52s.js.map +0 -1
- package/dist/_chunks/map-pin-B8STOPMJ.js +0 -21
- package/dist/_chunks/map-pin-B8STOPMJ.js.map +0 -1
- package/dist/_chunks/map-view-BkOoGoX2.js +0 -378
- package/dist/_chunks/map-view-BkOoGoX2.js.map +0 -1
- package/dist/_chunks/marketplace-app-shell-BGqkywsi.js +0 -513
- package/dist/_chunks/marketplace-app-shell-BGqkywsi.js.map +0 -1
- package/dist/_chunks/maximize-2-Cm9OUQ2m.js +0 -17
- package/dist/_chunks/maximize-2-Cm9OUQ2m.js.map +0 -1
- package/dist/_chunks/menu-XRhW3_99.js +0 -16
- package/dist/_chunks/menu-XRhW3_99.js.map +0 -1
- package/dist/_chunks/message-card-DsHFFiL1.js +0 -319
- package/dist/_chunks/message-card-DsHFFiL1.js.map +0 -1
- package/dist/_chunks/message-circle-C23eicgb.js +0 -20
- package/dist/_chunks/message-circle-C23eicgb.js.map +0 -1
- package/dist/_chunks/message-tray-C0a6CL1_.js +0 -494
- package/dist/_chunks/message-tray-C0a6CL1_.js.map +0 -1
- package/dist/_chunks/mic-B4Gog3Gi.js +0 -16
- package/dist/_chunks/mic-B4Gog3Gi.js.map +0 -1
- package/dist/_chunks/monitor-D-SFdbrU.js +0 -16
- package/dist/_chunks/monitor-D-SFdbrU.js.map +0 -1
- package/dist/_chunks/multi-select-WE4S9FIF.js +0 -614
- package/dist/_chunks/multi-select-WE4S9FIF.js.map +0 -1
- package/dist/_chunks/nav-grid-9xphY3FM.js +0 -169
- package/dist/_chunks/nav-grid-9xphY3FM.js.map +0 -1
- package/dist/_chunks/navigation-menu-DRUi6sSj.js +0 -310
- package/dist/_chunks/navigation-menu-DRUi6sSj.js.map +0 -1
- package/dist/_chunks/nl-L5SuDjyl.js +0 -326
- package/dist/_chunks/nl-L5SuDjyl.js.map +0 -1
- package/dist/_chunks/notes-panel-DXiMfuvp.js +0 -320
- package/dist/_chunks/notes-panel-DXiMfuvp.js.map +0 -1
- package/dist/_chunks/notification-card-BMqNzCIt.js +0 -290
- package/dist/_chunks/notification-card-BMqNzCIt.js.map +0 -1
- package/dist/_chunks/notification-tray-BmUlCx3g.js +0 -499
- package/dist/_chunks/notification-tray-BmUlCx3g.js.map +0 -1
- package/dist/_chunks/number-input-DxphVG_A.js +0 -350
- package/dist/_chunks/number-input-DxphVG_A.js.map +0 -1
- package/dist/_chunks/operator-hero-BO8TqzX2.js +0 -202
- package/dist/_chunks/operator-hero-BO8TqzX2.js.map +0 -1
- package/dist/_chunks/pagination-D58kglCr.js +0 -486
- package/dist/_chunks/pagination-D58kglCr.js.map +0 -1
- package/dist/_chunks/patient-details-DgfTJimE.js +0 -759
- package/dist/_chunks/patient-details-DgfTJimE.js.map +0 -1
- package/dist/_chunks/patient-search-CSWQKOSP.js +0 -1167
- package/dist/_chunks/patient-search-CSWQKOSP.js.map +0 -1
- package/dist/_chunks/patient-shell-BMwsIKlW.js +0 -162
- package/dist/_chunks/patient-shell-BMwsIKlW.js.map +0 -1
- package/dist/_chunks/patient-summary-card-D4NdgYJB.js +0 -452
- package/dist/_chunks/patient-summary-card-D4NdgYJB.js.map +0 -1
- package/dist/_chunks/patient-table-CERknpd8.js +0 -1110
- package/dist/_chunks/patient-table-CERknpd8.js.map +0 -1
- package/dist/_chunks/payment-form-CxqIXqw7.js +0 -690
- package/dist/_chunks/payment-form-CxqIXqw7.js.map +0 -1
- package/dist/_chunks/payment-request-card-Blf-MFNY.js +0 -467
- package/dist/_chunks/payment-request-card-Blf-MFNY.js.map +0 -1
- package/dist/_chunks/pdf-viewer-QfebdLOd.js +0 -1005
- package/dist/_chunks/pdf-viewer-QfebdLOd.js.map +0 -1
- package/dist/_chunks/pencil-CfQX-0Qc.js +0 -21
- package/dist/_chunks/pencil-CfQX-0Qc.js.map +0 -1
- package/dist/_chunks/periodontal-chart-card-hRRJY1NN.js +0 -455
- package/dist/_chunks/periodontal-chart-card-hRRJY1NN.js.map +0 -1
- package/dist/_chunks/permission-matrix-Bw5oexUt.js +0 -174
- package/dist/_chunks/permission-matrix-Bw5oexUt.js.map +0 -1
- package/dist/_chunks/phone-Bi5yUm4I.js +0 -20
- package/dist/_chunks/phone-Bi5yUm4I.js.map +0 -1
- package/dist/_chunks/phone-input-DjU-XmO_.js +0 -580
- package/dist/_chunks/phone-input-DjU-XmO_.js.map +0 -1
- package/dist/_chunks/pl-YAn5z2wR.js +0 -514
- package/dist/_chunks/pl-YAn5z2wR.js.map +0 -1
- package/dist/_chunks/plus-CYKNmfuA.js +0 -15
- package/dist/_chunks/plus-CYKNmfuA.js.map +0 -1
- package/dist/_chunks/popover-B2qCDhJC.js +0 -302
- package/dist/_chunks/popover-B2qCDhJC.js.map +0 -1
- package/dist/_chunks/postal-code-input-UCOYuRY2.js +0 -192
- package/dist/_chunks/postal-code-input-UCOYuRY2.js.map +0 -1
- package/dist/_chunks/practice-results-El5Z-oVp.js +0 -1609
- package/dist/_chunks/practice-results-El5Z-oVp.js.map +0 -1
- package/dist/_chunks/pregnancy-dating-CunHrOpO.js +0 -421
- package/dist/_chunks/pregnancy-dating-CunHrOpO.js.map +0 -1
- package/dist/_chunks/pregnancy-weight-gain-BUNpTsH-.js +0 -322
- package/dist/_chunks/pregnancy-weight-gain-BUNpTsH-.js.map +0 -1
- package/dist/_chunks/printer-CeVEWfQq.js +0 -22
- package/dist/_chunks/printer-CeVEWfQq.js.map +0 -1
- package/dist/_chunks/privacy-lock-BzMLQu-j.js +0 -197
- package/dist/_chunks/privacy-lock-BzMLQu-j.js.map +0 -1
- package/dist/_chunks/product-hub-panel-DtU7KXxm.js +0 -678
- package/dist/_chunks/product-hub-panel-DtU7KXxm.js.map +0 -1
- package/dist/_chunks/province-select-D_TZvix3.js +0 -261
- package/dist/_chunks/province-select-D_TZvix3.js.map +0 -1
- package/dist/_chunks/pt-D9xdT5KQ.js +0 -370
- package/dist/_chunks/pt-D9xdT5KQ.js.map +0 -1
- package/dist/_chunks/public-footer.agent-D0cFbjWl.js +0 -596
- package/dist/_chunks/public-footer.agent-D0cFbjWl.js.map +0 -1
- package/dist/_chunks/public-header.agent-TxmC_x1I.js +0 -597
- package/dist/_chunks/public-header.agent-TxmC_x1I.js.map +0 -1
- package/dist/_chunks/radio-group-BPt7pKZW.js +0 -167
- package/dist/_chunks/radio-group-BPt7pKZW.js.map +0 -1
- package/dist/_chunks/radiograph-panel.agent-tWjN2nHX.js +0 -553
- package/dist/_chunks/radiograph-panel.agent-tWjN2nHX.js.map +0 -1
- package/dist/_chunks/rating-BRD7O74e.js +0 -171
- package/dist/_chunks/rating-BRD7O74e.js.map +0 -1
- package/dist/_chunks/refresh-cw-CC8jSKMr.js +0 -17
- package/dist/_chunks/refresh-cw-CC8jSKMr.js.map +0 -1
- package/dist/_chunks/reviews-panel-DxkSrgMl.js +0 -559
- package/dist/_chunks/reviews-panel-DxkSrgMl.js.map +0 -1
- package/dist/_chunks/rich-text-editor-C8tyGjfb.js +0 -2621
- package/dist/_chunks/rich-text-editor-C8tyGjfb.js.map +0 -1
- package/dist/_chunks/ro-Cp--52bT.js +0 -361
- package/dist/_chunks/ro-Cp--52bT.js.map +0 -1
- package/dist/_chunks/rotate-ccw-BWANpitO.js +0 -15
- package/dist/_chunks/rotate-ccw-BWANpitO.js.map +0 -1
- package/dist/_chunks/ru-BM8eX_Zz.js +0 -561
- package/dist/_chunks/ru-BM8eX_Zz.js.map +0 -1
- package/dist/_chunks/scan-line-lGioFwLC.js +0 -18
- package/dist/_chunks/scan-line-lGioFwLC.js.map +0 -1
- package/dist/_chunks/search-BonnQsHv.js +0 -15
- package/dist/_chunks/search-BonnQsHv.js.map +0 -1
- package/dist/_chunks/search-bar-C_T3pBJn.js +0 -612
- package/dist/_chunks/search-bar-C_T3pBJn.js.map +0 -1
- package/dist/_chunks/search-input-DQvGxR74.js +0 -237
- package/dist/_chunks/search-input-DQvGxR74.js.map +0 -1
- package/dist/_chunks/select-KsyRr8WH.js +0 -442
- package/dist/_chunks/select-KsyRr8WH.js.map +0 -1
- package/dist/_chunks/send-CySZIRPJ.js +0 -21
- package/dist/_chunks/send-CySZIRPJ.js.map +0 -1
- package/dist/_chunks/session-countdown-X1Ki6i0M.js +0 -214
- package/dist/_chunks/session-countdown-X1Ki6i0M.js.map +0 -1
- package/dist/_chunks/settings-ca2Yi9R8.js +0 -21
- package/dist/_chunks/settings-ca2Yi9R8.js.map +0 -1
- package/dist/_chunks/sheet-umkfZjF6.js +0 -296
- package/dist/_chunks/sheet-umkfZjF6.js.map +0 -1
- package/dist/_chunks/shield-check-BjCGH_Sr.js +0 -21
- package/dist/_chunks/shield-check-BjCGH_Sr.js.map +0 -1
- package/dist/_chunks/sidebar-QCp9wHNP.js +0 -1311
- package/dist/_chunks/sidebar-QCp9wHNP.js.map +0 -1
- package/dist/_chunks/sign-document-By6hMOra.js +0 -370
- package/dist/_chunks/sign-document-By6hMOra.js.map +0 -1
- package/dist/_chunks/signature-field-Dy1JRjzE.js +0 -197
- package/dist/_chunks/signature-field-Dy1JRjzE.js.map +0 -1
- package/dist/_chunks/smart-date-CWikAqZx.js +0 -114
- package/dist/_chunks/smart-date-CWikAqZx.js.map +0 -1
- package/dist/_chunks/sparkles-CuYXqQLg.js +0 -23
- package/dist/_chunks/sparkles-CuYXqQLg.js.map +0 -1
- package/dist/_chunks/sq-XRpr0r49.js +0 -355
- package/dist/_chunks/sq-XRpr0r49.js.map +0 -1
- package/dist/_chunks/square-CZoGU14v.js +0 -14
- package/dist/_chunks/square-CZoGU14v.js.map +0 -1
- package/dist/_chunks/square-check-big-Jr-0202D.js +0 -18
- package/dist/_chunks/square-check-big-Jr-0202D.js.map +0 -1
- package/dist/_chunks/star-vav0SJ9e.js +0 -20
- package/dist/_chunks/star-vav0SJ9e.js.map +0 -1
- package/dist/_chunks/stepper-accordion-DC-H-8v4.js +0 -247
- package/dist/_chunks/stepper-accordion-DC-H-8v4.js.map +0 -1
- package/dist/_chunks/stethoscope-DT5qCW8Y.js +0 -18
- package/dist/_chunks/stethoscope-DT5qCW8Y.js.map +0 -1
- package/dist/_chunks/streaming-text-BB9mvK4m.js +0 -131
- package/dist/_chunks/streaming-text-BB9mvK4m.js.map +0 -1
- package/dist/_chunks/subDays-BcYv1Lxi.js +0 -8
- package/dist/_chunks/subDays-BcYv1Lxi.js.map +0 -1
- package/dist/_chunks/sun-BuXE0xUS.js +0 -38
- package/dist/_chunks/sun-BuXE0xUS.js.map +0 -1
- package/dist/_chunks/sv-Z3APomE8.js +0 -376
- package/dist/_chunks/sv-Z3APomE8.js.map +0 -1
- package/dist/_chunks/tab-bar-Bv9nGNdO.js +0 -262
- package/dist/_chunks/tab-bar-Bv9nGNdO.js.map +0 -1
- package/dist/_chunks/tabs-CYZVKKDl.js +0 -408
- package/dist/_chunks/tabs-CYZVKKDl.js.map +0 -1
- package/dist/_chunks/tag-BQXwuJq1.js +0 -258
- package/dist/_chunks/tag-BQXwuJq1.js.map +0 -1
- package/dist/_chunks/task-card-DCdsI0ZT.js +0 -189
- package/dist/_chunks/task-card-DCdsI0ZT.js.map +0 -1
- package/dist/_chunks/task-tray-DNVejijD.js +0 -251
- package/dist/_chunks/task-tray-DNVejijD.js.map +0 -1
- package/dist/_chunks/tasks-panel-C9odmawT.js +0 -757
- package/dist/_chunks/tasks-panel-C9odmawT.js.map +0 -1
- package/dist/_chunks/text-input-B-OWQ1Je.js +0 -283
- package/dist/_chunks/text-input-B-OWQ1Je.js.map +0 -1
- package/dist/_chunks/theme-toggle-XB6o_lgs.js +0 -367
- package/dist/_chunks/theme-toggle-XB6o_lgs.js.map +0 -1
- package/dist/_chunks/timeline-CqA4nKTI.js +0 -294
- package/dist/_chunks/timeline-CqA4nKTI.js.map +0 -1
- package/dist/_chunks/toast.agent-57UzyR9U.js +0 -1005
- package/dist/_chunks/toast.agent-57UzyR9U.js.map +0 -1
- package/dist/_chunks/token-insert-menu-CFQqTe_n.js +0 -147
- package/dist/_chunks/token-insert-menu-CFQqTe_n.js.map +0 -1
- package/dist/_chunks/tooth-scheme-DJZtzfeY.js +0 -2133
- package/dist/_chunks/tooth-scheme-DJZtzfeY.js.map +0 -1
- package/dist/_chunks/tr-e0-P4FON.js +0 -378
- package/dist/_chunks/tr-e0-P4FON.js.map +0 -1
- package/dist/_chunks/transaction-chip-CscoQbxF.js +0 -225
- package/dist/_chunks/transaction-chip-CscoQbxF.js.map +0 -1
- package/dist/_chunks/transcript-panel-CHGHHHdT.js +0 -374
- package/dist/_chunks/transcript-panel-CHGHHHdT.js.map +0 -1
- package/dist/_chunks/trash-2-rPAKaRgB.js +0 -18
- package/dist/_chunks/trash-2-rPAKaRgB.js.map +0 -1
- package/dist/_chunks/triangle-alert-CBPUIzQo.js +0 -22
- package/dist/_chunks/triangle-alert-CBPUIzQo.js.map +0 -1
- package/dist/_chunks/unit-converter-CwlZbfdn.js +0 -337
- package/dist/_chunks/unit-converter-CwlZbfdn.js.map +0 -1
- package/dist/_chunks/use-password-requirements-BXvS2MBS.js +0 -453
- package/dist/_chunks/use-password-requirements-BXvS2MBS.js.map +0 -1
- package/dist/_chunks/user-CPxpqFjJ.js +0 -15
- package/dist/_chunks/user-CPxpqFjJ.js.map +0 -1
- package/dist/_chunks/user-cog-BS_qc8nA.js +0 -24
- package/dist/_chunks/user-cog-BS_qc8nA.js.map +0 -1
- package/dist/_chunks/users-MBVtUzwd.js +0 -17
- package/dist/_chunks/users-MBVtUzwd.js.map +0 -1
- package/dist/_chunks/video-BAeICxCT.js +0 -21
- package/dist/_chunks/video-BAeICxCT.js.map +0 -1
- package/dist/_chunks/warning-stack--sTrrBDA.js +0 -268
- package/dist/_chunks/warning-stack--sTrrBDA.js.map +0 -1
- package/dist/_chunks/workflow-map-M8MBBHQm.js +0 -1356
- package/dist/_chunks/workflow-map-M8MBBHQm.js.map +0 -1
- package/dist/_chunks/x-CCcI3eJp.js +0 -15
- package/dist/_chunks/x-CCcI3eJp.js.map +0 -1
- package/dist/_chunks/zh-CN-B-igM5gY.js +0 -388
- package/dist/_chunks/zh-CN-B-igM5gY.js.map +0 -1
- package/dist/_chunks/zoom-out-CgVtf2Wx.js +0 -29
- package/dist/_chunks/zoom-out-CgVtf2Wx.js.map +0 -1
- package/dist/components/anatomy-scheme/anatomy-face-paths.d.ts +0 -15
- package/dist/components/anatomy-scheme/anatomy-face-paths.d.ts.map +0 -1
- package/dist/components/anatomy-scheme/anatomy-muscle-paths.d.ts +0 -20
- package/dist/components/anatomy-scheme/anatomy-muscle-paths.d.ts.map +0 -1
- package/dist/components/anatomy-scheme/anatomy-scheme-data.d.ts +0 -121
- package/dist/components/anatomy-scheme/anatomy-scheme-data.d.ts.map +0 -1
- package/dist/components/anatomy-scheme/anatomy-scheme.agent.d.ts +0 -6
- package/dist/components/anatomy-scheme/anatomy-scheme.agent.d.ts.map +0 -1
- package/dist/components/anatomy-scheme/anatomy-scheme.d.ts +0 -69
- package/dist/components/anatomy-scheme/anatomy-scheme.d.ts.map +0 -1
- package/dist/components/anatomy-scheme/index.d.ts +0 -6
- package/dist/components/anatomy-scheme/index.d.ts.map +0 -1
- package/dist/components/anatomy-scheme/index.js +0 -17
- /package/dist/components/{anatomy-scheme → face-scheme}/index.js.map +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notes-panel-CMyjUXD4.js","sources":["../../node_modules/lucide-react/dist/esm/icons/notebook-pen.mjs","../../src/components/notes-panel/notes-panel.agent.ts","../../src/components/notes-panel/notes-panel.tsx"],"sourcesContent":["/**\n * @license lucide-react v1.22.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M13.4 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7.4\", key: \"re6nr2\" }],\n [\"path\", { d: \"M2 6h4\", key: \"aawbzj\" }],\n [\"path\", { d: \"M2 10h4\", key: \"l0bgd4\" }],\n [\"path\", { d: \"M2 14h4\", key: \"1gsvsf\" }],\n [\"path\", { d: \"M2 18h4\", key: \"1bu2t1\" }],\n [\n \"path\",\n {\n d: \"M21.378 5.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z\",\n key: \"pqwjuv\"\n }\n ]\n];\nconst NotebookPen = createLucideIcon(\"notebook-pen\", __iconNode);\n\nexport { __iconNode, NotebookPen as default };\n//# sourceMappingURL=notebook-pen.mjs.map\n","/* -------------------------------------------------------------------- */\n/* Agent adapter — NotesPanel. */\n/* */\n/* The Notes tool: a composer over a note timeline. The agent reads the */\n/* timeline STRUCTURE (note ids + pinned / flagged / clinical flags — */\n/* never the note body or author, both PHI), composes and commits a new */\n/* note, and toggles a note's pinned / flagged state. `add_note` carries */\n/* the `phi` safety class: a note body is patient-identifiable clinical */\n/* content, so the host gates it behind the same confirm-before-act as a */\n/* destructive write and never auto-confirms. A clinical submission also */\n/* requires the host's `practice_add_clinical_note` permission (the */\n/* handle drops it when the gate is closed). */\n/* -------------------------------------------------------------------- */\n\nimport type { AgentAdapter } from '../../agent/types';\nimport type { NotesPanelHandle } from './notes-panel';\n\nexport const notesPanelAgent: AgentAdapter<NotesPanelHandle> = {\n id: 'notes-panel',\n // 'submit' backs add_note (compose + commit a note). pin / flag are toggles\n // with no dedicated capability in the closed vocabulary.\n capabilities: ['submit'],\n state: {\n notes: {\n type: 'Array<{ id?: string; pinned: boolean; flagged: boolean; clinical: boolean }>',\n descriptionKey: 'ui.agent.notesPanel.state.notes',\n description:\n 'Timeline note ids + pinned / flagged / clinical flags. Never the note body or author (both PHI).',\n read: (handle) => handle.getNotes(),\n },\n canAddClinical: {\n type: 'boolean',\n descriptionKey: 'ui.agent.notesPanel.state.canAddClinical',\n description:\n 'Whether the current user may write clinical notes (the practice_add_clinical_note permission gate).',\n read: (handle) => handle.canAddClinical(),\n },\n },\n actions: {\n add_note: {\n // Writes a clinical/admin note body — patient-identifiable content. PHI.\n safety: 'phi',\n argsType: '{ content: string; clinical: boolean }',\n argsSchema: {\n type: 'object',\n properties: {\n content: {\n type: 'string',\n description:\n 'Note body. Rich HTML for the rich composer, else plain text.',\n },\n clinical: {\n type: 'boolean',\n description:\n 'Whether the note is clinical. Requires the clinical-note permission; the submission is dropped when the gate is closed.',\n },\n },\n required: ['content', 'clinical'],\n },\n openWorld: true,\n descriptionKey: 'ui.agent.notesPanel.actions.addNote',\n description:\n 'Compose and commit a new note. A clinical note requires the clinical-note permission (read canAddClinical first).',\n examples: [\n {\n args: { content: 'Patient reported improvement.', clinical: true },\n note: 'Add a clinical note.',\n },\n ],\n invoke: (handle, args: { content: string; clinical: boolean }) => {\n handle.addNote(args);\n },\n },\n toggle_pin: {\n // Re-orders the timeline (pinned notes lead) — reversible view write.\n safety: 'write',\n argsType: '{ id: string }',\n argsSchema: {\n type: 'object',\n properties: { id: { type: 'string' } },\n required: ['id'],\n },\n idempotent: false,\n descriptionKey: 'ui.agent.notesPanel.actions.togglePin',\n description: 'Toggle the pinned state of the note with the given id.',\n invoke: (handle, args: { id: string }) => {\n handle.togglePin(args.id);\n },\n },\n toggle_flag: {\n safety: 'write',\n argsType: '{ id: string }',\n argsSchema: {\n type: 'object',\n properties: { id: { type: 'string' } },\n required: ['id'],\n },\n idempotent: false,\n descriptionKey: 'ui.agent.notesPanel.actions.toggleFlag',\n description: 'Toggle the flagged state of the note with the given id.',\n invoke: (handle, args: { id: string }) => {\n handle.toggleFlag(args.id);\n },\n },\n },\n domHooks: {\n root: {\n attr: 'data-component',\n value: 'notes-panel',\n description: 'Marks the NotesPanel region.',\n },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description:\n 'Sourced from the id prop. Required to address a specific notes panel from the agent.',\n },\n },\n};\n","import {\n forwardRef,\n useCallback,\n useId,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type HTMLAttributes,\n type ReactNode,\n} from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useAgentRegistration } from '../../agent/registry';\nimport { notesPanelAgent } from './notes-panel.agent';\nimport { ClinicalNoteCard } from '../clinical-note-card';\nimport type { ClinicalNoteCardProps } from '../clinical-note-card';\nimport { RichTextEditor } from '../rich-text-editor';\nimport type {\n RichTextEditorHandle,\n RichTextEditorProps,\n RichTextEditorToolbar,\n RedactorFactory,\n} from '../rich-text-editor';\nimport { TextArea } from '../text-area';\nimport { Button } from '../button';\nimport { Checkbox } from '../checkbox';\nimport { NotebookPen } from 'lucide-react';\nimport { PanelHeader } from '../panel-header';\n\n/* ------------------------------------------------------------------ */\n/* NotesPanel — the Notes tool for the Control Room rail. */\n/* */\n/* A composer over an elevated ClinicalNoteCard timeline. Drops */\n/* into a ControlRoomRail tool `panel`, the patient profile, or the */\n/* care-plan editor — anywhere notes about the open entity belong. */\n/* The composer is the kit RichTextEditor by default (degrades to a */\n/* textarea where Redactor is absent), carries a permission-gated */\n/* \"clinical note\" toggle, and forwards the editor's AI affordances. */\n/* The note attaches to whatever entity the host is showing — the */\n/* host owns the attachment; the panel only emits content + clinical. */\n/* Pinned notes lead; pin / flag are inline per-note toggles. */\n/* ------------------------------------------------------------------ */\n\n/** One note in the panel — the data subset of `ClinicalNoteCard`. */\nexport type NotesPanelNote = Pick<\n ClinicalNoteCardProps,\n | 'id'\n | 'dateIso'\n | 'createdAtIso'\n | 'author'\n | 'clinical'\n | 'attachedTo'\n | 'content'\n | 'contentFormat'\n | 'pinned'\n | 'flagged'\n>;\n\n/**\n * Curated agent handle for NotesPanel. Reads the note timeline's STRUCTURE\n * (ids + pinned / flagged / clinical flags — never the note body or author,\n * both PHI) and drives the composer + per-note toggles. See\n * `notes-panel.agent.ts`.\n */\nexport interface NotesPanelHandle {\n /** Timeline snapshot — ids + flags only, never note content (PHI). */\n getNotes: () => Array<{\n id?: string;\n pinned: boolean;\n flagged: boolean;\n clinical: boolean;\n }>;\n /** Whether the composer is mounted (onAddNote is wired). */\n canAddNote: () => boolean;\n /** Whether clinical notes may be written (the permission gate). */\n canAddClinical: () => boolean;\n /** Commit a new note with explicit content (mirrors the composer's submit). */\n addNote: (submission: NotesPanelSubmission) => void;\n /** Toggle a note's pinned state (mirrors onTogglePin). */\n togglePin: (id: string) => void;\n /** Toggle a note's flagged state (mirrors onToggleFlag). */\n toggleFlag: (id: string) => void;\n}\n\n/** Payload handed to `onAddNote` when the composer commits. */\nexport interface NotesPanelSubmission {\n /** The note body — rich HTML (`composer='rich'`) or plain text. */\n content: string;\n /** Whether the \"clinical note\" toggle was set. */\n clinical: boolean;\n}\n\nexport interface NotesPanelProps extends Omit<\n HTMLAttributes<HTMLElement>,\n 'title' | 'children'\n> {\n /**\n * Stable instance id. Surfaced on the root as `data-component-id` so an\n * agent / MCP UI bridge can address this specific notes panel.\n */\n id?: string;\n /** Notes to render, newest-first by convention. Pinned notes lead. */\n notes: NotesPanelNote[];\n /** Commit a new note. Omit to hide the composer (read-only timeline). */\n onAddNote?: (submission: NotesPanelSubmission) => void;\n\n /* ----- Composer ----- */\n /**\n * `'rich'` (default) mounts the kit `RichTextEditor` (Redactor; degrades to a\n * textarea where Redactor is absent). `'plain'` keeps a simple `TextArea` for\n * lightweight surfaces / deterministic tests.\n */\n composer?: 'rich' | 'plain';\n /** Toolbar preset for the rich composer. Defaults to `'standard'`. */\n editorToolbar?: RichTextEditorToolbar;\n /** Inject the Redactor factory for the rich composer (else `window.$R`). */\n redactor?: RedactorFactory;\n /** Consumer image-upload endpoint for the rich composer. */\n imageUploadUrl?: string;\n\n /* ----- Clinical flag (permission-gated) ----- */\n /** Show the \"clinical note\" toggle in the composer. Default `true`. */\n showClinicalToggle?: boolean;\n /**\n * Permission gate — when `false` the clinical toggle is disabled and shows\n * `clinicalGatedReason` on hover/focus. Mirrors platform's\n * `practice_add_clinical_note` permission. Default `true`.\n */\n canAddClinicalNote?: boolean;\n /** Tooltip shown when the clinical toggle is gated off. */\n clinicalGatedReason?: string;\n /** Initial state of the clinical toggle. Default `false`. */\n defaultClinical?: boolean;\n\n /* ----- AI assistance (forwarded to RichTextEditor) ----- */\n onRequestAiDraft?: RichTextEditorProps['onRequestAiDraft'];\n aiDraftFormat?: RichTextEditorProps['aiDraftFormat'];\n aiPrivacyNotice?: RichTextEditorProps['aiPrivacyNotice'];\n onDictate?: RichTextEditorProps['onDictate'];\n onProofread?: RichTextEditorProps['onProofread'];\n onAutoFormat?: RichTextEditorProps['onAutoFormat'];\n\n /* ----- Per-note actions ----- */\n /** Toggle a note's pinned state — renders an inline pin button per note. */\n onTogglePin?: (id: string) => void;\n /** Toggle a note's flagged state — renders an inline flag button per note. */\n onToggleFlag?: (id: string) => void;\n\n /* ----- Labels / chrome ----- */\n /** Panel heading. Defaults to the localised \"Notes\". */\n title?: string;\n /** Composer placeholder. */\n composerPlaceholder?: string;\n /** Save-button label. */\n addNoteLabel?: string;\n /** Rendered when there are no notes. */\n emptyState?: ReactNode;\n /** Accessible name for the panel region (defaults to `title`). */\n 'aria-label'?: string;\n}\n\n/** Strip tags / entities to test whether a rich draft holds real content. */\nfunction hasRichContent(html: string): boolean {\n if (!html) return false;\n if (/<img\\b/i.test(html)) return true;\n return (\n html\n .replace(/<[^>]*>/g, '')\n .replace(/ /gi, ' ')\n .trim().length > 0\n );\n}\n\nexport const NotesPanel = forwardRef<HTMLElement, NotesPanelProps>(\n function NotesPanel(\n {\n id,\n notes,\n onAddNote,\n composer = 'rich',\n editorToolbar = 'standard',\n redactor,\n imageUploadUrl,\n showClinicalToggle = true,\n canAddClinicalNote = true,\n clinicalGatedReason,\n defaultClinical = false,\n onRequestAiDraft,\n aiDraftFormat,\n aiPrivacyNotice,\n onDictate,\n onProofread,\n onAutoFormat,\n onTogglePin,\n onToggleFlag,\n title,\n composerPlaceholder,\n addNoteLabel,\n emptyState,\n className,\n 'aria-label': ariaLabel,\n ...rest\n },\n ref,\n ) {\n const { t } = useTranslation();\n const editorRef = useRef<RichTextEditorHandle>(null);\n const [draft, setDraft] = useState('');\n const [clinical, setClinical] = useState(defaultClinical);\n\n const heading = title ?? t('notesPanel.title', { defaultValue: 'Notes' });\n const headingId = useId();\n const placeholder =\n composerPlaceholder ??\n t('notesPanel.placeholder', { defaultValue: 'Add a note…' });\n const composerLabel = t('notesPanel.composerLabel', {\n defaultValue: 'New note',\n });\n\n // Live content check: plain reads the draft directly; rich strips the draft\n // (debounced) for the disabled state but commits from the editor handle.\n const hasContent =\n composer === 'rich' ? hasRichContent(draft) : draft.trim().length > 0;\n\n const commit = useCallback(() => {\n if (!onAddNote) return;\n if (composer === 'rich') {\n const html = editorRef.current?.getHTML() ?? draft;\n if (!hasRichContent(html)) return;\n onAddNote({ content: html, clinical });\n editorRef.current?.clear();\n } else {\n const text = draft.trim();\n if (!text) return;\n onAddNote({ content: text, clinical });\n }\n setDraft('');\n setClinical(defaultClinical);\n }, [composer, draft, clinical, defaultClinical, onAddNote]);\n\n // Pinned notes lead; order within each group is preserved.\n const ordered = [...notes].sort(\n (a, b) => Number(b.pinned ?? false) - Number(a.pinned ?? false),\n );\n\n /* ----- Agent handle (structural reads + composer / toggles) ----- */\n const notesRef = useRef(notes);\n notesRef.current = notes;\n const onAddNoteRef = useRef(onAddNote);\n onAddNoteRef.current = onAddNote;\n const onTogglePinRef = useRef(onTogglePin);\n onTogglePinRef.current = onTogglePin;\n const onToggleFlagRef = useRef(onToggleFlag);\n onToggleFlagRef.current = onToggleFlag;\n const canAddClinicalRef = useRef(canAddClinicalNote);\n canAddClinicalRef.current = canAddClinicalNote;\n\n const rootRef = useRef<HTMLElement>(null);\n useImperativeHandle(ref, () => rootRef.current as HTMLElement, []);\n\n const handle = useMemo<NotesPanelHandle>(\n () => ({\n // Ids + flags only — never the note body or author (both PHI).\n getNotes: () =>\n notesRef.current.map((n) => ({\n id: n.id,\n pinned: !!n.pinned,\n flagged: !!n.flagged,\n clinical: !!n.clinical,\n })),\n canAddNote: () => !!onAddNoteRef.current,\n canAddClinical: () => canAddClinicalRef.current,\n addNote: (submission) => {\n // A clinical submission requires the permission gate to be open.\n if (submission.clinical && !canAddClinicalRef.current) return;\n onAddNoteRef.current?.(submission);\n },\n togglePin: (noteId) => onTogglePinRef.current?.(noteId),\n toggleFlag: (noteId) => onToggleFlagRef.current?.(noteId),\n }),\n [],\n );\n useAgentRegistration(notesPanelAgent, handle, id);\n\n return (\n <section\n ref={rootRef}\n data-component=\"notes-panel\"\n data-component-id={id}\n aria-labelledby={ariaLabel ? undefined : headingId}\n aria-label={ariaLabel}\n className={['ds:flex ds:flex-col', className].filter(Boolean).join(' ')}\n {...rest}\n >\n {/* Shared rail header — pins to the top of the panel's scroll region\n while the composer + note timeline scroll beneath it. The rail\n injects the favourite / close actions via PanelHeaderActionsProvider. */}\n <PanelHeader\n title={heading}\n icon={<NotebookPen aria-hidden=\"true\" />}\n headingId={ariaLabel ? undefined : headingId}\n sticky\n divider\n />\n\n <div className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:p-[var(--spacing-md)]\">\n {onAddNote ? (\n <div className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]\">\n {composer === 'rich' ? (\n <RichTextEditor\n ref={editorRef}\n ariaLabel={composerLabel}\n placeholder={placeholder}\n toolbar={editorToolbar}\n minHeight=\"sm\"\n redactor={redactor}\n imageUploadUrl={imageUploadUrl}\n onChange={({ html }) => setDraft(html)}\n onRequestAiDraft={onRequestAiDraft}\n aiDraftFormat={aiDraftFormat}\n aiPrivacyNotice={aiPrivacyNotice}\n onDictate={onDictate}\n onProofread={onProofread}\n onAutoFormat={onAutoFormat}\n />\n ) : (\n <TextArea\n value={draft}\n onChange={(event) => setDraft(event.target.value)}\n placeholder={placeholder}\n autoResize\n minRows={2}\n maxRows={6}\n aria-label={composerLabel}\n />\n )}\n <div\n className={[\n 'ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-sm)]',\n showClinicalToggle ? 'ds:justify-between' : 'ds:justify-end',\n ].join(' ')}\n >\n {showClinicalToggle ? (\n <Checkbox\n size=\"sm\"\n label={t('notesPanel.clinicalToggle', {\n defaultValue: 'Clinical note',\n })}\n checked={clinical}\n onCheckedChange={(next) => setClinical(next === true)}\n disabled={!canAddClinicalNote}\n disabledReason={\n canAddClinicalNote\n ? undefined\n : (clinicalGatedReason ??\n t('notesPanel.clinicalGated', {\n defaultValue:\n 'You do not have permission to write clinical notes.',\n }))\n }\n />\n ) : null}\n <Button\n type=\"button\"\n size=\"sm\"\n onClick={commit}\n disabled={!hasContent}\n >\n {addNoteLabel ??\n t('notesPanel.add', { defaultValue: 'Add note' })}\n </Button>\n </div>\n </div>\n ) : null}\n\n {ordered.length > 0 ? (\n <ul className=\"ds:m-0 ds:flex ds:list-none ds:flex-col ds:gap-[var(--spacing-sm)] ds:p-0\">\n {ordered.map((note, index) => (\n <li key={note.id ?? index} className=\"ds:flex ds:flex-col\">\n {/* Elevated card per note; the list gap (not a separator)\n spaces them. Bodies clamp to five lines with read-more —\n the timeline is a read-only display surface. */}\n <ClinicalNoteCard\n surface=\"elevated\"\n truncate\n {...note}\n onTogglePin={\n onTogglePin && note.id\n ? () => onTogglePin(note.id as string)\n : undefined\n }\n onToggleFlag={\n onToggleFlag && note.id\n ? () => onToggleFlag(note.id as string)\n : undefined\n }\n />\n </li>\n ))}\n </ul>\n ) : (\n (emptyState ?? (\n <p className=\"ds:m-0 type-body-sm ds:text-[color:var(--muted-foreground)]\">\n {t('notesPanel.empty', { defaultValue: 'No notes yet.' })}\n </p>\n ))\n )}\n </div>\n </section>\n );\n },\n);\n"],"names":["__iconNode","NotebookPen","createLucideIcon","notesPanelAgent","handle","args","hasRichContent","html","NotesPanel","forwardRef","id","notes","onAddNote","composer","editorToolbar","redactor","imageUploadUrl","showClinicalToggle","canAddClinicalNote","clinicalGatedReason","defaultClinical","onRequestAiDraft","aiDraftFormat","aiPrivacyNotice","onDictate","onProofread","onAutoFormat","onTogglePin","onToggleFlag","title","composerPlaceholder","addNoteLabel","emptyState","className","ariaLabel","rest","ref","t","useTranslation","editorRef","useRef","draft","setDraft","useState","clinical","setClinical","heading","headingId","useId","placeholder","composerLabel","hasContent","commit","useCallback","_a","_b","text","ordered","a","b","notesRef","onAddNoteRef","onTogglePinRef","onToggleFlagRef","canAddClinicalRef","rootRef","useImperativeHandle","useMemo","n","submission","noteId","useAgentRegistration","jsxs","jsx","PanelHeader","RichTextEditor","TextArea","event","Checkbox","next","Button","note","index","ClinicalNoteCard"],"mappings":";;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,KAAa;AAAA,EACjB,CAAC,QAAQ,EAAE,GAAG,kEAAkE,KAAK,SAAQ,CAAE;AAAA,EAC/F,CAAC,QAAQ,EAAE,GAAG,UAAU,KAAK,SAAQ,CAAE;AAAA,EACvC,CAAC,QAAQ,EAAE,GAAG,WAAW,KAAK,SAAQ,CAAE;AAAA,EACxC,CAAC,QAAQ,EAAE,GAAG,WAAW,KAAK,SAAQ,CAAE;AAAA,EACxC,CAAC,QAAQ,EAAE,GAAG,WAAW,KAAK,SAAQ,CAAE;AAAA,EACxC;AAAA,IACE;AAAA,IACA;AAAA,MACE,GAAG;AAAA,MACH,KAAK;AAAA,IACX;AAAA,EACA;AACA,GACMC,KAAcC,GAAiB,gBAAgBF,EAAU,GCNlDG,KAAkD;AAAA,EAC7D,IAAI;AAAA;AAAA;AAAA,EAGJ,cAAc,CAAC,QAAQ;AAAA,EACvB,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,gBAAgB;AAAA,MAChB,aACE;AAAA,MACF,MAAM,CAACC,MAAWA,EAAO,SAAA;AAAA,IAAS;AAAA,IAEpC,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,gBAAgB;AAAA,MAChB,aACE;AAAA,MACF,MAAM,CAACA,MAAWA,EAAO,eAAA;AAAA,IAAe;AAAA,EAC1C;AAAA,EAEF,SAAS;AAAA,IACP,UAAU;AAAA;AAAA,MAER,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,YAAY;AAAA,QACV,MAAM;AAAA,QACN,YAAY;AAAA,UACV,SAAS;AAAA,YACP,MAAM;AAAA,YACN,aACE;AAAA,UAAA;AAAA,UAEJ,UAAU;AAAA,YACR,MAAM;AAAA,YACN,aACE;AAAA,UAAA;AAAA,QACJ;AAAA,QAEF,UAAU,CAAC,WAAW,UAAU;AAAA,MAAA;AAAA,MAElC,WAAW;AAAA,MACX,gBAAgB;AAAA,MAChB,aACE;AAAA,MACF,UAAU;AAAA,QACR;AAAA,UACE,MAAM,EAAE,SAAS,iCAAiC,UAAU,GAAA;AAAA,UAC5D,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,MAEF,QAAQ,CAACA,GAAQC,MAAiD;AAChE,QAAAD,EAAO,QAAQC,CAAI;AAAA,MACrB;AAAA,IAAA;AAAA,IAEF,YAAY;AAAA;AAAA,MAEV,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,YAAY;AAAA,QACV,MAAM;AAAA,QACN,YAAY,EAAE,IAAI,EAAE,MAAM,WAAS;AAAA,QACnC,UAAU,CAAC,IAAI;AAAA,MAAA;AAAA,MAEjB,YAAY;AAAA,MACZ,gBAAgB;AAAA,MAChB,aAAa;AAAA,MACb,QAAQ,CAACD,GAAQC,MAAyB;AACxC,QAAAD,EAAO,UAAUC,EAAK,EAAE;AAAA,MAC1B;AAAA,IAAA;AAAA,IAEF,aAAa;AAAA,MACX,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,YAAY;AAAA,QACV,MAAM;AAAA,QACN,YAAY,EAAE,IAAI,EAAE,MAAM,WAAS;AAAA,QACnC,UAAU,CAAC,IAAI;AAAA,MAAA;AAAA,MAEjB,YAAY;AAAA,MACZ,gBAAgB;AAAA,MAChB,aAAa;AAAA,MACb,QAAQ,CAACD,GAAQC,MAAyB;AACxC,QAAAD,EAAO,WAAWC,EAAK,EAAE;AAAA,MAC3B;AAAA,IAAA;AAAA,EACF;AAAA,EAEF,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,OAAO;AAAA,MACP,aAAa;AAAA,IAAA;AAAA,IAEf,YAAY;AAAA,MACV,MAAM;AAAA,MACN,YAAY;AAAA,MACZ,aACE;AAAA,IAAA;AAAA,EACJ;AAEJ;AC4CA,SAASC,EAAeC,GAAuB;AAC7C,SAAKA,IACD,UAAU,KAAKA,CAAI,IAAU,KAE/BA,EACG,QAAQ,YAAY,EAAE,EACtB,QAAQ,YAAY,GAAG,EACvB,KAAA,EAAO,SAAS,IANH;AAQpB;AAEO,MAAMC,KAAaC;AAAA,EACxB,SACE;AAAA,IACE,IAAAC;AAAA,IACA,OAAAC;AAAA,IACA,WAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,eAAAC,IAAgB;AAAA,IAChB,UAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,oBAAAC,IAAqB;AAAA,IACrB,oBAAAC,IAAqB;AAAA,IACrB,qBAAAC;AAAA,IACA,iBAAAC,IAAkB;AAAA,IAClB,kBAAAC;AAAA,IACA,eAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,aAAAC;AAAA,IACA,cAAAC;AAAA,IACA,aAAAC;AAAA,IACA,cAAAC;AAAA,IACA,OAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,YAAAC;AAAA,IACA,WAAAC;AAAA,IACA,cAAcC;AAAA,IACd,GAAGC;AAAA,EAAA,GAELC,GACA;AACA,UAAM,EAAE,GAAAC,EAAA,IAAMC,GAAA,GACRC,IAAYC,EAA6B,IAAI,GAC7C,CAACC,GAAOC,CAAQ,IAAIC,EAAS,EAAE,GAC/B,CAACC,GAAUC,CAAW,IAAIF,EAASvB,CAAe,GAElD0B,IAAUjB,KAASQ,EAAE,oBAAoB,EAAE,cAAc,SAAS,GAClEU,IAAYC,GAAA,GACZC,IACJnB,KACAO,EAAE,0BAA0B,EAAE,cAAc,eAAe,GACvDa,IAAgBb,EAAE,4BAA4B;AAAA,MAClD,cAAc;AAAA,IAAA,CACf,GAIKc,IACJtC,MAAa,SAASP,EAAemC,CAAK,IAAIA,EAAM,OAAO,SAAS,GAEhEW,KAASC,GAAY,MAAM;;AAC/B,UAAKzC,GACL;AAAA,YAAIC,MAAa,QAAQ;AACvB,gBAAMN,MAAO+C,IAAAf,EAAU,YAAV,gBAAAe,EAAmB,cAAab;AAC7C,cAAI,CAACnC,EAAeC,CAAI,EAAG;AAC3B,UAAAK,EAAU,EAAE,SAASL,GAAM,UAAAqC,EAAA,CAAU,IACrCW,IAAAhB,EAAU,YAAV,QAAAgB,EAAmB;AAAA,QACrB,OAAO;AACL,gBAAMC,IAAOf,EAAM,KAAA;AACnB,cAAI,CAACe,EAAM;AACX,UAAA5C,EAAU,EAAE,SAAS4C,GAAM,UAAAZ,EAAA,CAAU;AAAA,QACvC;AACA,QAAAF,EAAS,EAAE,GACXG,EAAYzB,CAAe;AAAA;AAAA,IAC7B,GAAG,CAACP,GAAU4B,GAAOG,GAAUxB,GAAiBR,CAAS,CAAC,GAGpD6C,IAAU,CAAC,GAAG9C,CAAK,EAAE;AAAA,MACzB,CAAC+C,GAAGC,MAAM,OAAOA,EAAE,UAAU,EAAK,IAAI,OAAOD,EAAE,UAAU,EAAK;AAAA,IAAA,GAI1DE,IAAWpB,EAAO7B,CAAK;AAC7B,IAAAiD,EAAS,UAAUjD;AACnB,UAAMkD,IAAerB,EAAO5B,CAAS;AACrC,IAAAiD,EAAa,UAAUjD;AACvB,UAAMkD,IAAiBtB,EAAOb,CAAW;AACzC,IAAAmC,EAAe,UAAUnC;AACzB,UAAMoC,IAAkBvB,EAAOZ,CAAY;AAC3C,IAAAmC,EAAgB,UAAUnC;AAC1B,UAAMoC,IAAoBxB,EAAOtB,CAAkB;AACnD,IAAA8C,EAAkB,UAAU9C;AAE5B,UAAM+C,IAAUzB,EAAoB,IAAI;AACxC,IAAA0B,GAAoB9B,GAAK,MAAM6B,EAAQ,SAAwB,CAAA,CAAE;AAEjE,UAAM7D,KAAS+D;AAAA,MACb,OAAO;AAAA;AAAA,QAEL,UAAU,MACRP,EAAS,QAAQ,IAAI,CAACQ,OAAO;AAAA,UAC3B,IAAIA,EAAE;AAAA,UACN,QAAQ,CAAC,CAACA,EAAE;AAAA,UACZ,SAAS,CAAC,CAACA,EAAE;AAAA,UACb,UAAU,CAAC,CAACA,EAAE;AAAA,QAAA,EACd;AAAA,QACJ,YAAY,MAAM,CAAC,CAACP,EAAa;AAAA,QACjC,gBAAgB,MAAMG,EAAkB;AAAA,QACxC,SAAS,CAACK,MAAe;;AAEvB,UAAIA,EAAW,YAAY,CAACL,EAAkB,YAC9CV,IAAAO,EAAa,YAAb,QAAAP,EAAA,KAAAO,GAAuBQ;AAAA,QACzB;AAAA,QACA,WAAW,CAACC,MAAA;;AAAW,kBAAAhB,IAAAQ,EAAe,YAAf,gBAAAR,EAAA,KAAAQ,GAAyBQ;AAAA;AAAA,QAChD,YAAY,CAACA;;AAAW,kBAAAhB,IAAAS,EAAgB,YAAhB,gBAAAT,EAAA,KAAAS,GAA0BO;AAAA;AAAA,MAAM;AAAA,MAE1D,CAAA;AAAA,IAAC;AAEH,WAAAC,GAAqBpE,IAAiBC,IAAQM,CAAE,GAG9C,gBAAA8D;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAKP;AAAA,QACL,kBAAe;AAAA,QACf,qBAAmBvD;AAAA,QACnB,mBAAiBwB,IAAY,SAAYa;AAAA,QACzC,cAAYb;AAAA,QACZ,WAAW,CAAC,uBAAuBD,CAAS,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAAA,QACrE,GAAGE;AAAA,QAKJ,UAAA;AAAA,UAAA,gBAAAsC;AAAA,YAACC;AAAA,YAAA;AAAA,cACC,OAAO5B;AAAA,cACP,MAAM,gBAAA2B,EAACxE,IAAA,EAAY,eAAY,OAAA,CAAO;AAAA,cACtC,WAAWiC,IAAY,SAAYa;AAAA,cACnC,QAAM;AAAA,cACN,SAAO;AAAA,YAAA;AAAA,UAAA;AAAA,UAGT,gBAAAyB,EAAC,OAAA,EAAI,WAAU,2EACZ,UAAA;AAAA,YAAA5D,IACC,gBAAA4D,EAAC,OAAA,EAAI,WAAU,kDACZ,UAAA;AAAA,cAAA3D,MAAa,SACZ,gBAAA4D;AAAA,gBAACE;AAAA,gBAAA;AAAA,kBACC,KAAKpC;AAAA,kBACL,WAAWW;AAAA,kBACX,aAAAD;AAAA,kBACA,SAASnC;AAAA,kBACT,WAAU;AAAA,kBACV,UAAAC;AAAA,kBACA,gBAAAC;AAAA,kBACA,UAAU,CAAC,EAAE,MAAAT,QAAWmC,EAASnC,CAAI;AAAA,kBACrC,kBAAAc;AAAA,kBACA,eAAAC;AAAA,kBACA,iBAAAC;AAAA,kBACA,WAAAC;AAAA,kBACA,aAAAC;AAAA,kBACA,cAAAC;AAAA,gBAAA;AAAA,cAAA,IAGF,gBAAA+C;AAAA,gBAACG;AAAA,gBAAA;AAAA,kBACC,OAAOnC;AAAA,kBACP,UAAU,CAACoC,MAAUnC,EAASmC,EAAM,OAAO,KAAK;AAAA,kBAChD,aAAA5B;AAAA,kBACA,YAAU;AAAA,kBACV,SAAS;AAAA,kBACT,SAAS;AAAA,kBACT,cAAYC;AAAA,gBAAA;AAAA,cAAA;AAAA,cAGhB,gBAAAsB;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,WAAW;AAAA,oBACT;AAAA,oBACAvD,IAAqB,uBAAuB;AAAA,kBAAA,EAC5C,KAAK,GAAG;AAAA,kBAET,UAAA;AAAA,oBAAAA,IACC,gBAAAwD;AAAA,sBAACK;AAAA,sBAAA;AAAA,wBACC,MAAK;AAAA,wBACL,OAAOzC,EAAE,6BAA6B;AAAA,0BACpC,cAAc;AAAA,wBAAA,CACf;AAAA,wBACD,SAASO;AAAA,wBACT,iBAAiB,CAACmC,MAASlC,EAAYkC,MAAS,EAAI;AAAA,wBACpD,UAAU,CAAC7D;AAAA,wBACX,gBACEA,IACI,SACCC,KACDkB,EAAE,4BAA4B;AAAA,0BAC5B,cACE;AAAA,wBAAA,CACH;AAAA,sBAAA;AAAA,oBAAA,IAGP;AAAA,oBACJ,gBAAAoC;AAAA,sBAACO;AAAA,sBAAA;AAAA,wBACC,MAAK;AAAA,wBACL,MAAK;AAAA,wBACL,SAAS5B;AAAA,wBACT,UAAU,CAACD;AAAA,wBAEV,eACCd,EAAE,kBAAkB,EAAE,cAAc,YAAY;AAAA,sBAAA;AAAA,oBAAA;AAAA,kBACpD;AAAA,gBAAA;AAAA,cAAA;AAAA,YACF,EAAA,CACF,IACE;AAAA,YAEHoB,EAAQ,SAAS,IAChB,gBAAAgB,EAAC,QAAG,WAAU,6EACX,UAAAhB,EAAQ,IAAI,CAACwB,GAAMC,MAClB,gBAAAT,EAAC,MAAA,EAA0B,WAAU,uBAInC,UAAA,gBAAAA;AAAA,cAACU;AAAA,cAAA;AAAA,gBACC,SAAQ;AAAA,gBACR,UAAQ;AAAA,gBACP,GAAGF;AAAA,gBACJ,aACEtD,KAAesD,EAAK,KAChB,MAAMtD,EAAYsD,EAAK,EAAY,IACnC;AAAA,gBAEN,cACErD,KAAgBqD,EAAK,KACjB,MAAMrD,EAAaqD,EAAK,EAAY,IACpC;AAAA,cAAA;AAAA,YAAA,KAhBDA,EAAK,MAAMC,CAmBpB,CACD,GACH,IAEClD,KACC,gBAAAyC,EAAC,KAAA,EAAE,WAAU,+DACV,UAAApC,EAAE,oBAAoB,EAAE,cAAc,gBAAA,CAAiB,EAAA,CAC1D;AAAA,UAAA,EAAA,CAGN;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
import { jsx as a, jsxs as l } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as W, useMemo as E, useState as H, useRef as X, useCallback as q } from "react";
|
|
3
|
+
import { c as G } from "./index-D2ZczOXr.js";
|
|
4
|
+
import { useTranslation as J } from "react-i18next";
|
|
5
|
+
import { I as O } from "./icon-button-LqoiKcUN.js";
|
|
6
|
+
import { B as K } from "./button-DD_0Xdmr.js";
|
|
7
|
+
import { T as Q } from "./timestamp-BV2lC-wV.js";
|
|
8
|
+
import { X as Y } from "./x-B5YnXwCz.js";
|
|
9
|
+
const Z = G(
|
|
10
|
+
[
|
|
11
|
+
// `group` so the hover/focus-revealed close button can react to the whole
|
|
12
|
+
// row, not just itself.
|
|
13
|
+
"ds:group ds:relative ds:flex ds:gap-[var(--spacing-sm)]",
|
|
14
|
+
"ds:rounded-[var(--radius-sm)]",
|
|
15
|
+
"ds:transition-colors",
|
|
16
|
+
// Mount: fade + slide-down so a fresh notification reads as arriving.
|
|
17
|
+
// `data-leaving=true` plays the matching exit, driven by the owning
|
|
18
|
+
// tray's AnimatePresence loop.
|
|
19
|
+
"ds:motion-safe:animate-in ds:motion-safe:fade-in-0 ds:motion-safe:slide-in-from-top-2 ds:motion-safe:duration-[var(--animation-duration)]",
|
|
20
|
+
"ds:data-[leaving=true]:motion-safe:animate-out ds:data-[leaving=true]:motion-safe:fade-out-0 ds:data-[leaving=true]:motion-safe:slide-out-to-top-2",
|
|
21
|
+
// Pin the exit's end-state until React unmounts. Without `fill-mode-forwards`
|
|
22
|
+
// tw-animate-css leaves the element at opacity:1 for one paint frame after
|
|
23
|
+
// the animation ends — the "flicker before it animates away" bug.
|
|
24
|
+
"ds:data-[leaving=true]:motion-safe:fill-mode-forwards",
|
|
25
|
+
"ds:data-[leaving=true]:pointer-events-none",
|
|
26
|
+
"ds:motion-reduce:transition-none",
|
|
27
|
+
"ds:text-start",
|
|
28
|
+
// Compact rows are borderless (flat list — the tray panel is the frame);
|
|
29
|
+
// the dashboard variant adds its own card border below. Forced-colors keeps
|
|
30
|
+
// a border on both so rows stay separated in High Contrast Mode.
|
|
31
|
+
"ds:forced-colors:border ds:forced-colors:border-[CanvasText]"
|
|
32
|
+
].join(" "),
|
|
33
|
+
{
|
|
34
|
+
variants: {
|
|
35
|
+
variant: {
|
|
36
|
+
// Flat rows by default; the accessible (AAA) theme restores a hairline
|
|
37
|
+
// row divider so consecutive rows keep a visible boundary.
|
|
38
|
+
compact: "ds:items-start ds:[.theme-accessible_&]:border-b ds:[.theme-accessible_&]:border-[color:var(--card-border)]",
|
|
39
|
+
dashboard: "ds:flex-col ds:sm:flex-row ds:items-stretch ds:sm:items-start ds:border ds:border-[color:var(--card-border)] ds:[.theme-accessible_&]:border-2 ds:shadow-[var(--shadow-card)] ds:bg-[color:var(--card)]"
|
|
40
|
+
},
|
|
41
|
+
size: {
|
|
42
|
+
sm: "ds:p-[var(--spacing-sm)]",
|
|
43
|
+
md: "ds:p-[var(--spacing-md)]"
|
|
44
|
+
},
|
|
45
|
+
state: {
|
|
46
|
+
unread: "",
|
|
47
|
+
read: "ds:bg-transparent"
|
|
48
|
+
},
|
|
49
|
+
// Compact-row chrome: flat (tray) vs elevated (own card on a rail).
|
|
50
|
+
// Mirrors AppointmentCard's `surface` so a rail feed of mixed cards
|
|
51
|
+
// reads consistently.
|
|
52
|
+
surface: {
|
|
53
|
+
flat: "",
|
|
54
|
+
elevated: "ds:border ds:border-[color:var(--card-border)] ds:[.theme-accessible_&]:border-2 ds:shadow-[var(--shadow-sm)]"
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
compoundVariants: [
|
|
58
|
+
// Compact rows no longer tint the background for unread — the read state
|
|
59
|
+
// is carried by the icon's corner status ball instead. Both states
|
|
60
|
+
// share the same neutral hover.
|
|
61
|
+
{
|
|
62
|
+
variant: "compact",
|
|
63
|
+
state: "unread",
|
|
64
|
+
class: "ds:hover:bg-[color:var(--muted)]/40"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
variant: "compact",
|
|
68
|
+
state: "read",
|
|
69
|
+
class: "ds:hover:bg-[color:var(--muted)]/40"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
variant: "dashboard",
|
|
73
|
+
state: "unread",
|
|
74
|
+
class: "ds:bg-[color:var(--accent)]/5"
|
|
75
|
+
}
|
|
76
|
+
],
|
|
77
|
+
defaultVariants: {
|
|
78
|
+
variant: "compact",
|
|
79
|
+
size: "sm",
|
|
80
|
+
state: "read",
|
|
81
|
+
surface: "flat"
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
), S = [
|
|
85
|
+
"ds:focus-visible:outline-none",
|
|
86
|
+
"ds:after:content-[''] ds:after:absolute ds:after:inset-0 ds:after:rounded-[var(--radius-sm)]",
|
|
87
|
+
"ds:after:pointer-events-auto",
|
|
88
|
+
"ds:focus-visible:after:outline-[length:var(--focus-ring-width)]",
|
|
89
|
+
"ds:focus-visible:after:outline-solid",
|
|
90
|
+
"ds:focus-visible:after:outline-[color:var(--ring)]",
|
|
91
|
+
"ds:focus-visible:after:outline-offset-[length:var(--focus-ring-offset)]",
|
|
92
|
+
"ds:forced-colors:focus-visible:after:outline-[CanvasText]"
|
|
93
|
+
].join(" ");
|
|
94
|
+
function A(s) {
|
|
95
|
+
return /^(https?:\/\/(?!\/)|\/(?!\/)|#)/.test(s);
|
|
96
|
+
}
|
|
97
|
+
const ss = W(
|
|
98
|
+
({
|
|
99
|
+
item: s,
|
|
100
|
+
variant: r = "compact",
|
|
101
|
+
surface: j = "flat",
|
|
102
|
+
size: v = "sm",
|
|
103
|
+
onActivate: o,
|
|
104
|
+
onToggleRead: b,
|
|
105
|
+
onDismiss: d,
|
|
106
|
+
ctaLabel: c,
|
|
107
|
+
dismissLabel: u,
|
|
108
|
+
leaving: g,
|
|
109
|
+
className: M,
|
|
110
|
+
...V
|
|
111
|
+
}, _) => {
|
|
112
|
+
const { t: n, i18n: h } = J(), B = E(() => {
|
|
113
|
+
const e = new Date(s.createdAt);
|
|
114
|
+
return Number.isNaN(e.getTime()) ? "" : new Intl.DateTimeFormat(h.language, {
|
|
115
|
+
dateStyle: "medium",
|
|
116
|
+
timeStyle: "short"
|
|
117
|
+
}).format(e);
|
|
118
|
+
}, [s.createdAt, h.language]), f = g !== void 0, [I, P] = H(!1), m = X(null), x = f ? g : I, w = typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches, y = q(() => {
|
|
119
|
+
if (!d) return;
|
|
120
|
+
if (f || w) {
|
|
121
|
+
d(s);
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
P(!0), m.current && clearTimeout(m.current);
|
|
125
|
+
const e = typeof window < "u" && window.getComputedStyle(document.documentElement).getPropertyValue("--animation-duration") || "200ms", T = e.trim().endsWith("ms") ? parseFloat(e) : parseFloat(e) * 1e3;
|
|
126
|
+
m.current = setTimeout(
|
|
127
|
+
() => d(s),
|
|
128
|
+
Number.isFinite(T) ? T : 200
|
|
129
|
+
);
|
|
130
|
+
}, [d, s, f, w]), R = s.read ? "read" : "unread", $ = s.read ? "" : n("notificationCard.unreadSuffix", ", unread"), N = n("notificationCard.itemLabel", {
|
|
131
|
+
title: s.title,
|
|
132
|
+
time: B,
|
|
133
|
+
unreadSuffix: $,
|
|
134
|
+
defaultValue: "{{title}}, {{time}}{{unreadSuffix}}"
|
|
135
|
+
}), p = !!s.url && A(s.url), F = v === "md" ? "ds:top-[var(--spacing-md)] ds:end-[var(--spacing-md)]" : "ds:top-[var(--spacing-sm)] ds:end-[var(--spacing-sm)]", C = "ds:absolute ds:top-[calc(var(--spacing-xs)*-1)] ds:end-[calc(var(--spacing-xs)*-1)] ds:z-[1]", D = "ds:block ds:size-[calc(var(--spacing-sm)+var(--spacing-xs))] ds:rounded-[var(--radius-full)] ds:bg-[color:var(--primary)] ds:ring-2 ds:ring-[color:var(--card)] ds:forced-colors:bg-[Highlight]", L = "ds:block ds:size-[calc(var(--spacing-sm)+var(--spacing-xs))] ds:rounded-[var(--radius-full)] ds:bg-[color:var(--card)] ds:border-2 ds:border-[color:color-mix(in_srgb,var(--muted-foreground)_55%,transparent)] ds:forced-colors:border-[CanvasText]", U = 'ds:cursor-pointer ds:outline-none ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)] ds:forced-colors:focus-visible:outline-[CanvasText] ds:before:absolute ds:before:inset-x-[calc((var(--min-target-size)-100%)/-2)] ds:before:inset-y-[calc((var(--min-target-size)-100%)/-2)] ds:before:content-[""] ds:sm:before:hidden', k = s.read ? L : D, z = r !== "compact" ? null : b ? /* @__PURE__ */ a(
|
|
136
|
+
"button",
|
|
137
|
+
{
|
|
138
|
+
type: "button",
|
|
139
|
+
onClick: () => b(s),
|
|
140
|
+
"aria-label": s.read ? n("notificationCard.markAsUnread", "Mark as unread") : n("notificationCard.markAsRead", "Mark as read"),
|
|
141
|
+
className: `${C} ${k} ${U}`
|
|
142
|
+
}
|
|
143
|
+
) : /* @__PURE__ */ a("span", { "aria-hidden": "true", className: `${C} ${k}` }), i = /* @__PURE__ */ a(
|
|
144
|
+
"span",
|
|
145
|
+
{
|
|
146
|
+
className: [
|
|
147
|
+
"ds:flex-1 ds:min-w-0 ds:truncate",
|
|
148
|
+
s.read ? "ds:font-normal" : "ds:font-semibold"
|
|
149
|
+
].join(" "),
|
|
150
|
+
children: s.title
|
|
151
|
+
}
|
|
152
|
+
);
|
|
153
|
+
let t;
|
|
154
|
+
return r === "compact" && p && o ? t = /* @__PURE__ */ a(
|
|
155
|
+
"a",
|
|
156
|
+
{
|
|
157
|
+
href: s.url,
|
|
158
|
+
"aria-label": N,
|
|
159
|
+
className: S + " ds:contents",
|
|
160
|
+
onClick: (e) => {
|
|
161
|
+
e.defaultPrevented || e.metaKey || e.ctrlKey || e.shiftKey || (e.preventDefault(), o(s));
|
|
162
|
+
},
|
|
163
|
+
children: i
|
|
164
|
+
}
|
|
165
|
+
) : r === "compact" && o ? t = /* @__PURE__ */ a(
|
|
166
|
+
"button",
|
|
167
|
+
{
|
|
168
|
+
type: "button",
|
|
169
|
+
"aria-label": N,
|
|
170
|
+
className: S + " ds:contents ds:bg-transparent ds:border-0 ds:p-0",
|
|
171
|
+
onClick: () => o(s),
|
|
172
|
+
children: i
|
|
173
|
+
}
|
|
174
|
+
) : r === "dashboard" && p && o ? t = /* @__PURE__ */ a(
|
|
175
|
+
"a",
|
|
176
|
+
{
|
|
177
|
+
href: s.url,
|
|
178
|
+
className: "ds:text-[color:var(--foreground)] ds:no-underline ds:hover:underline ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
|
|
179
|
+
onClick: (e) => {
|
|
180
|
+
e.defaultPrevented || e.metaKey || e.ctrlKey || e.shiftKey || (e.preventDefault(), o(s));
|
|
181
|
+
},
|
|
182
|
+
children: i
|
|
183
|
+
}
|
|
184
|
+
) : t = i, /* @__PURE__ */ l(
|
|
185
|
+
"div",
|
|
186
|
+
{
|
|
187
|
+
ref: _,
|
|
188
|
+
role: "listitem",
|
|
189
|
+
"data-component": "notification-card",
|
|
190
|
+
"data-component-id": s.id,
|
|
191
|
+
"data-read": s.read ? "true" : "false",
|
|
192
|
+
"data-leaving": x ? "true" : void 0,
|
|
193
|
+
"aria-hidden": x || void 0,
|
|
194
|
+
className: Z({
|
|
195
|
+
variant: r,
|
|
196
|
+
size: v,
|
|
197
|
+
state: R,
|
|
198
|
+
// Elevated chrome only applies to the compact row; the dashboard
|
|
199
|
+
// variant brings its own border + shadow.
|
|
200
|
+
surface: r === "compact" ? j : "flat",
|
|
201
|
+
className: M
|
|
202
|
+
}),
|
|
203
|
+
...V,
|
|
204
|
+
children: [
|
|
205
|
+
s.icon || z ? /* @__PURE__ */ l("span", { className: "ds:relative ds:size-8 ds:shrink-0", children: [
|
|
206
|
+
s.icon ? /* @__PURE__ */ a(
|
|
207
|
+
"span",
|
|
208
|
+
{
|
|
209
|
+
"aria-hidden": "true",
|
|
210
|
+
className: "ds:inline-flex ds:size-8 ds:items-center ds:justify-center ds:rounded-[var(--radius-full)] ds:bg-[color:var(--accent)]/10 ds:text-[color:var(--accent)] ds:[&>svg]:size-4",
|
|
211
|
+
children: s.icon
|
|
212
|
+
}
|
|
213
|
+
) : null,
|
|
214
|
+
z
|
|
215
|
+
] }) : null,
|
|
216
|
+
/* @__PURE__ */ l("div", { className: "ds:flex-1 ds:min-w-0 ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
|
|
217
|
+
/* @__PURE__ */ a("div", { className: "ds:flex ds:items-center ds:gap-[var(--spacing-sm)]", children: r === "dashboard" ? (
|
|
218
|
+
// `h3` keeps the dashboard heading ladder continuous:
|
|
219
|
+
// h1 (page) → h2 (WarningStack + NotificationsPanel) → h3 (notification title).
|
|
220
|
+
/* @__PURE__ */ a("h3", { className: "ds:m-0 ds:flex-1 ds:min-w-0 type-title-item", children: t })
|
|
221
|
+
) : /* @__PURE__ */ a("span", { className: "ds:flex-1 ds:min-w-0 type-title-item ds:text-[color:var(--foreground)]", children: t }) }),
|
|
222
|
+
s.description ? /* @__PURE__ */ a("p", { className: "ds:m-0 type-body-sm ds:text-[color:var(--muted-foreground)] ds:[overflow:hidden] ds:[display:-webkit-box] ds:[-webkit-box-orient:vertical] ds:[-webkit-line-clamp:2] ds:break-words", children: s.description }) : null,
|
|
223
|
+
/* @__PURE__ */ a(
|
|
224
|
+
Q,
|
|
225
|
+
{
|
|
226
|
+
value: s.createdAt,
|
|
227
|
+
shape: "chip",
|
|
228
|
+
size: "sm",
|
|
229
|
+
relativeWindow: 720 * 60 * 1e3
|
|
230
|
+
}
|
|
231
|
+
),
|
|
232
|
+
r === "dashboard" && (c || u) ? /* @__PURE__ */ l("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-sm)]", children: [
|
|
233
|
+
c && p ? /* @__PURE__ */ a(
|
|
234
|
+
K,
|
|
235
|
+
{
|
|
236
|
+
intent: "outline",
|
|
237
|
+
size: "sm",
|
|
238
|
+
asChild: !0,
|
|
239
|
+
className: "ds:relative ds:z-[1]",
|
|
240
|
+
children: /* @__PURE__ */ a(
|
|
241
|
+
"a",
|
|
242
|
+
{
|
|
243
|
+
href: s.url,
|
|
244
|
+
onClick: (e) => {
|
|
245
|
+
e.defaultPrevented || e.metaKey || e.ctrlKey || e.shiftKey || (e.preventDefault(), o == null || o(s));
|
|
246
|
+
},
|
|
247
|
+
children: c
|
|
248
|
+
}
|
|
249
|
+
)
|
|
250
|
+
}
|
|
251
|
+
) : null,
|
|
252
|
+
u && d ? /* @__PURE__ */ a(
|
|
253
|
+
K,
|
|
254
|
+
{
|
|
255
|
+
intent: "link",
|
|
256
|
+
size: "sm",
|
|
257
|
+
onClick: y,
|
|
258
|
+
className: "ds:relative ds:z-[1]",
|
|
259
|
+
children: u
|
|
260
|
+
}
|
|
261
|
+
) : null
|
|
262
|
+
] }) : null
|
|
263
|
+
] }),
|
|
264
|
+
r === "compact" && d ? /* @__PURE__ */ a(
|
|
265
|
+
"span",
|
|
266
|
+
{
|
|
267
|
+
className: "ds:absolute ds:z-[2] ds:opacity-0 ds:pointer-events-none ds:transition-opacity ds:motion-reduce:transition-none ds:group-hover:opacity-100 ds:group-hover:pointer-events-auto ds:group-focus-within:opacity-100 ds:group-focus-within:pointer-events-auto " + F,
|
|
268
|
+
children: /* @__PURE__ */ a(
|
|
269
|
+
O,
|
|
270
|
+
{
|
|
271
|
+
icon: /* @__PURE__ */ a(Y, {}),
|
|
272
|
+
intent: "ghost",
|
|
273
|
+
size: "sm",
|
|
274
|
+
"aria-label": n("notificationCard.dismiss", "Dismiss notification"),
|
|
275
|
+
onClick: y
|
|
276
|
+
}
|
|
277
|
+
)
|
|
278
|
+
}
|
|
279
|
+
) : null
|
|
280
|
+
]
|
|
281
|
+
}
|
|
282
|
+
);
|
|
283
|
+
}
|
|
284
|
+
);
|
|
285
|
+
ss.displayName = "NotificationCard";
|
|
286
|
+
export {
|
|
287
|
+
ss as N,
|
|
288
|
+
A as i
|
|
289
|
+
};
|
|
290
|
+
//# sourceMappingURL=notification-card-BHJ07FkH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notification-card-BHJ07FkH.js","sources":["../../src/components/notification-card/notification-card.tsx"],"sourcesContent":["import {\n forwardRef,\n useCallback,\n useMemo,\n useRef,\n useState,\n type HTMLAttributes,\n type ReactNode,\n} from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { X } from 'lucide-react';\nimport { IconButton } from '../button/icon-button';\nimport { Button } from '../button/button';\nimport { Timestamp } from '../timestamp';\n\n/* ------------------------------------------------------------------ */\n/* Types */\n/* ------------------------------------------------------------------ */\n\nexport interface NotificationItem {\n /** Unique identifier for the notification. */\n id: string;\n /** Notification title — rendered on the first line. */\n title: string;\n /** Notification body — rendered as plain text. */\n description?: string;\n /** Optional leading glyph — a React node (usually a Lucide icon). */\n icon?: ReactNode;\n /** Optional action URL — when present the card title is an anchor. */\n url?: string;\n /** ISO-8601 timestamp of when the notification was created. */\n createdAt: string;\n /** Whether the notification has been seen. Unread items get accent styling. */\n read?: boolean;\n}\n\nexport interface NotificationCardProps\n extends\n Omit<HTMLAttributes<HTMLDivElement>, 'onClick' | 'role' | 'title'>,\n VariantProps<typeof cardVariants> {\n /** The notification to render. */\n item: NotificationItem;\n /**\n * Layout shape.\n * - `compact` — single-line row with the whole card clickable (used by\n * NotificationTray).\n * - `dashboard` — alert-style block with explicit CTA and mark-as-read\n * controls (used by dashboards / sidebars).\n */\n variant?: 'compact' | 'dashboard';\n /**\n * Row chrome for the `compact` variant (ignored for `dashboard`, which\n * always carries its own card border). `'flat'` (default) — chrome-less row\n * for use inside a bordered tray. `'elevated'` — each row carries its own\n * card chrome (border + `--shadow-sm`), matching `AppointmentCard` /\n * `ClinicalNoteCard` for placing rows directly on a rail (e.g. the Inbox).\n */\n surface?: 'flat' | 'elevated';\n /** Visual density. */\n size?: 'sm' | 'md';\n /** Fires when the card title / body is activated. */\n onActivate?: (item: NotificationItem) => void;\n /**\n * Fires when the read/unread status ball (the corner badge on the category\n * icon) is activated. Supply to make the ball an interactive toggle; omit and\n * it renders as a static read-state indicator.\n */\n onToggleRead?: (item: NotificationItem) => void;\n /** Fires when the dismiss control is activated. */\n onDismiss?: (item: NotificationItem) => void;\n /**\n * Label for the dashboard-variant CTA. Only rendered when `variant` is\n * `'dashboard'` and the item has a `url`.\n */\n ctaLabel?: string;\n /**\n * Label for the dashboard-variant mark-as-read link. Only rendered when\n * `variant` is `'dashboard'` and `onDismiss` is supplied.\n */\n dismissLabel?: string;\n /**\n * External exit-animation control. When supplied the card plays its\n * fade-out when this turns `true` and the consumer owns the subsequent\n * unmount (see NotificationTray). If omitted, the card self-manages the\n * exit on internal dismiss.\n */\n leaving?: boolean;\n}\n\n/* ------------------------------------------------------------------ */\n/* CVA */\n/* ------------------------------------------------------------------ */\n\nconst cardVariants = cva(\n [\n // `group` so the hover/focus-revealed close button can react to the whole\n // row, not just itself.\n 'ds:group ds:relative ds:flex ds:gap-[var(--spacing-sm)]',\n 'ds:rounded-[var(--radius-sm)]',\n 'ds:transition-colors',\n // Mount: fade + slide-down so a fresh notification reads as arriving.\n // `data-leaving=true` plays the matching exit, driven by the owning\n // tray's AnimatePresence loop.\n 'ds:motion-safe:animate-in ds:motion-safe:fade-in-0 ds:motion-safe:slide-in-from-top-2 ds:motion-safe:duration-[var(--animation-duration)]',\n 'ds:data-[leaving=true]:motion-safe:animate-out ds:data-[leaving=true]:motion-safe:fade-out-0 ds:data-[leaving=true]:motion-safe:slide-out-to-top-2',\n // Pin the exit's end-state until React unmounts. Without `fill-mode-forwards`\n // tw-animate-css leaves the element at opacity:1 for one paint frame after\n // the animation ends — the \"flicker before it animates away\" bug.\n 'ds:data-[leaving=true]:motion-safe:fill-mode-forwards',\n 'ds:data-[leaving=true]:pointer-events-none',\n 'ds:motion-reduce:transition-none',\n 'ds:text-start',\n // Compact rows are borderless (flat list — the tray panel is the frame);\n // the dashboard variant adds its own card border below. Forced-colors keeps\n // a border on both so rows stay separated in High Contrast Mode.\n 'ds:forced-colors:border ds:forced-colors:border-[CanvasText]',\n ].join(' '),\n {\n variants: {\n variant: {\n // Flat rows by default; the accessible (AAA) theme restores a hairline\n // row divider so consecutive rows keep a visible boundary.\n compact:\n 'ds:items-start ds:[.theme-accessible_&]:border-b ds:[.theme-accessible_&]:border-[color:var(--card-border)]',\n dashboard:\n 'ds:flex-col ds:sm:flex-row ds:items-stretch ds:sm:items-start ds:border ds:border-[color:var(--card-border)] ds:[.theme-accessible_&]:border-2 ds:shadow-[var(--shadow-card)] ds:bg-[color:var(--card)]',\n },\n size: {\n sm: 'ds:p-[var(--spacing-sm)]',\n md: 'ds:p-[var(--spacing-md)]',\n },\n state: {\n unread: '',\n read: 'ds:bg-transparent',\n },\n // Compact-row chrome: flat (tray) vs elevated (own card on a rail).\n // Mirrors AppointmentCard's `surface` so a rail feed of mixed cards\n // reads consistently.\n surface: {\n flat: '',\n elevated:\n 'ds:border ds:border-[color:var(--card-border)] ds:[.theme-accessible_&]:border-2 ds:shadow-[var(--shadow-sm)]',\n },\n },\n compoundVariants: [\n // Compact rows no longer tint the background for unread — the read state\n // is carried by the icon's corner status ball instead. Both states\n // share the same neutral hover.\n {\n variant: 'compact',\n state: 'unread',\n class: 'ds:hover:bg-[color:var(--muted)]/40',\n },\n {\n variant: 'compact',\n state: 'read',\n class: 'ds:hover:bg-[color:var(--muted)]/40',\n },\n {\n variant: 'dashboard',\n state: 'unread',\n class: 'ds:bg-[color:var(--accent)]/5',\n },\n ],\n defaultVariants: {\n variant: 'compact',\n size: 'sm',\n state: 'read',\n surface: 'flat',\n },\n },\n);\n\nconst stretchedLinkClass = [\n 'ds:focus-visible:outline-none',\n \"ds:after:content-[''] ds:after:absolute ds:after:inset-0 ds:after:rounded-[var(--radius-sm)]\",\n 'ds:after:pointer-events-auto',\n 'ds:focus-visible:after:outline-[length:var(--focus-ring-width)]',\n 'ds:focus-visible:after:outline-solid',\n 'ds:focus-visible:after:outline-[color:var(--ring)]',\n 'ds:focus-visible:after:outline-offset-[length:var(--focus-ring-offset)]',\n 'ds:forced-colors:focus-visible:after:outline-[CanvasText]',\n].join(' ');\n\n/* ------------------------------------------------------------------ */\n/* Helpers */\n/* ------------------------------------------------------------------ */\n\nexport function isSafeNotificationUrl(url: string): boolean {\n // Reject protocol-relative (//host), javascript:, data:, mailto: etc.\n // Only http(s), same-origin absolute paths (/), and hash (#) anchors pass.\n return /^(https?:\\/\\/(?!\\/)|\\/(?!\\/)|#)/.test(url);\n}\n\n/* ------------------------------------------------------------------ */\n/* Component */\n/* ------------------------------------------------------------------ */\n\nexport const NotificationCard = forwardRef<\n HTMLDivElement,\n NotificationCardProps\n>(\n (\n {\n item,\n variant = 'compact',\n surface = 'flat',\n size = 'sm',\n onActivate,\n onToggleRead,\n onDismiss,\n ctaLabel,\n dismissLabel,\n leaving,\n className,\n ...rest\n },\n ref,\n ) => {\n const { t, i18n } = useTranslation();\n // Screen-reader time context — absolute & unambiguous rather than the\n // visible relative phrase, which drifts and reads less clearly aloud.\n const accessibleTime = useMemo(() => {\n const date = new Date(item.createdAt);\n if (Number.isNaN(date.getTime())) return '';\n return new Intl.DateTimeFormat(i18n.language, {\n dateStyle: 'medium',\n timeStyle: 'short',\n }).format(date);\n }, [item.createdAt, i18n.language]);\n\n /* Exit animation.\n * - When `leaving` is undefined (uncontrolled): the card owns the\n * fade-out — dismiss click flips `isLeaving`, waits for\n * --animation-duration, then fires onDismiss.\n * - When `leaving` is boolean (controlled, e.g. NotificationTray): the\n * parent owns the lifecycle — dismiss click fires onDismiss\n * immediately and the parent schedules unmount after the animation. */\n const isControlledLeaving = leaving !== undefined;\n const [isLeaving, setIsLeaving] = useState(false);\n const dismissTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const effectiveLeaving = isControlledLeaving ? leaving : isLeaving;\n\n const prefersReducedMotion =\n typeof window !== 'undefined' &&\n typeof window.matchMedia === 'function' &&\n window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\n const handleDismiss = useCallback(() => {\n if (!onDismiss) return;\n if (isControlledLeaving || prefersReducedMotion) {\n onDismiss(item);\n return;\n }\n setIsLeaving(true);\n if (dismissTimerRef.current) clearTimeout(dismissTimerRef.current);\n const raw =\n (typeof window !== 'undefined' &&\n window\n .getComputedStyle(document.documentElement)\n .getPropertyValue('--animation-duration')) ||\n '200ms';\n const ms = raw.trim().endsWith('ms')\n ? parseFloat(raw)\n : parseFloat(raw) * 1000;\n dismissTimerRef.current = setTimeout(\n () => onDismiss(item),\n Number.isFinite(ms) ? ms : 200,\n );\n }, [onDismiss, item, isControlledLeaving, prefersReducedMotion]);\n\n const state = item.read ? 'read' : 'unread';\n\n const unreadSuffix = item.read\n ? ''\n : t('notificationCard.unreadSuffix', ', unread');\n const ariaLabel = t('notificationCard.itemLabel', {\n title: item.title,\n time: accessibleTime,\n unreadSuffix,\n defaultValue: '{{title}}, {{time}}{{unreadSuffix}}',\n });\n\n const hasSafeUrl = !!item.url && isSafeNotificationUrl(item.url);\n\n // Close insets track the card padding so it aligns with the title's first\n // line at either size.\n const closeInset =\n size === 'md'\n ? 'ds:top-[var(--spacing-md)] ds:end-[var(--spacing-md)]'\n : 'ds:top-[var(--spacing-sm)] ds:end-[var(--spacing-sm)]';\n\n // Compact \"status ball\" — a corner badge on the category icon carrying\n // read/unread. Replaces the old inline Mail toggle so a variable-width\n // indicator no longer ragged-edges the titles.\n const ballPos =\n 'ds:absolute ds:top-[calc(var(--spacing-xs)*-1)] ds:end-[calc(var(--spacing-xs)*-1)] ds:z-[1]';\n const ballDot =\n 'ds:block ds:size-[calc(var(--spacing-sm)+var(--spacing-xs))] ds:rounded-[var(--radius-full)] ds:bg-[color:var(--primary)] ds:ring-2 ds:ring-[color:var(--card)] ds:forced-colors:bg-[Highlight]';\n const ballRing =\n 'ds:block ds:size-[calc(var(--spacing-sm)+var(--spacing-xs))] ds:rounded-[var(--radius-full)] ds:bg-[color:var(--card)] ds:border-2 ds:border-[color:color-mix(in_srgb,var(--muted-foreground)_55%,transparent)] ds:forced-colors:border-[CanvasText]';\n // Interactive ball gets the kit focus ring + pointer cursor (a bare\n // <button> falls back to the browser default outline). The transparent\n // ::before grows the touch target to --min-target-size on coarse pointers\n // (matches IconButton) while the visual ball stays small; dropped at sm+.\n const ballBtn =\n 'ds:cursor-pointer ds:outline-none ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)] ds:forced-colors:focus-visible:outline-[CanvasText] ds:before:absolute ds:before:inset-x-[calc((var(--min-target-size)-100%)/-2)] ds:before:inset-y-[calc((var(--min-target-size)-100%)/-2)] ds:before:content-[\"\"] ds:sm:before:hidden';\n const ballVisual = item.read ? ballRing : ballDot;\n const statusBall =\n variant !== 'compact' ? null : onToggleRead ? (\n <button\n type=\"button\"\n onClick={() => onToggleRead(item)}\n aria-label={\n item.read\n ? t('notificationCard.markAsUnread', 'Mark as unread')\n : t('notificationCard.markAsRead', 'Mark as read')\n }\n className={`${ballPos} ${ballVisual} ${ballBtn}`}\n />\n ) : (\n <span aria-hidden=\"true\" className={`${ballPos} ${ballVisual}`} />\n );\n\n /* ------- Title rendering (stretched link in compact mode) ------- */\n\n const titleText = (\n <span\n className={[\n 'ds:flex-1 ds:min-w-0 ds:truncate',\n item.read ? 'ds:font-normal' : 'ds:font-semibold',\n ].join(' ')}\n >\n {item.title}\n </span>\n );\n\n let titleNode: ReactNode;\n if (variant === 'compact' && hasSafeUrl && onActivate) {\n titleNode = (\n <a\n href={item.url}\n aria-label={ariaLabel}\n className={stretchedLinkClass + ' ds:contents'}\n onClick={(event) => {\n if (\n event.defaultPrevented ||\n event.metaKey ||\n event.ctrlKey ||\n event.shiftKey\n )\n return;\n event.preventDefault();\n onActivate(item);\n }}\n >\n {titleText}\n </a>\n );\n } else if (variant === 'compact' && onActivate) {\n titleNode = (\n <button\n type=\"button\"\n aria-label={ariaLabel}\n className={\n stretchedLinkClass +\n ' ds:contents ds:bg-transparent ds:border-0 ds:p-0'\n }\n onClick={() => onActivate(item)}\n >\n {titleText}\n </button>\n );\n } else if (variant === 'dashboard' && hasSafeUrl && onActivate) {\n titleNode = (\n <a\n href={item.url}\n className=\"ds:text-[color:var(--foreground)] ds:no-underline ds:hover:underline ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]\"\n onClick={(event) => {\n if (\n event.defaultPrevented ||\n event.metaKey ||\n event.ctrlKey ||\n event.shiftKey\n )\n return;\n event.preventDefault();\n onActivate(item);\n }}\n >\n {titleText}\n </a>\n );\n } else {\n titleNode = titleText;\n }\n\n return (\n <div\n ref={ref}\n role=\"listitem\"\n data-component=\"notification-card\"\n data-component-id={item.id}\n data-read={item.read ? 'true' : 'false'}\n data-leaving={effectiveLeaving ? 'true' : undefined}\n aria-hidden={effectiveLeaving || undefined}\n className={cardVariants({\n variant,\n size,\n state,\n // Elevated chrome only applies to the compact row; the dashboard\n // variant brings its own border + shadow.\n surface: variant === 'compact' ? surface : 'flat',\n className,\n })}\n {...rest}\n >\n {/* Leading category icon with the status ball overlaid on its corner.\n `relative` anchors the ball; a 32px box keeps titles aligned even\n when an icon-less row only shows the ball. */}\n {item.icon || statusBall ? (\n <span className=\"ds:relative ds:size-8 ds:shrink-0\">\n {item.icon ? (\n <span\n aria-hidden=\"true\"\n className=\"ds:inline-flex ds:size-8 ds:items-center ds:justify-center ds:rounded-[var(--radius-full)] ds:bg-[color:var(--accent)]/10 ds:text-[color:var(--accent)] ds:[&>svg]:size-4\"\n >\n {item.icon}\n </span>\n ) : null}\n {statusBall}\n </span>\n ) : null}\n\n <div className=\"ds:flex-1 ds:min-w-0 ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]\">\n <div className=\"ds:flex ds:items-center ds:gap-[var(--spacing-sm)]\">\n {variant === 'dashboard' ? (\n // `h3` keeps the dashboard heading ladder continuous:\n // h1 (page) → h2 (WarningStack + NotificationsPanel) → h3 (notification title).\n <h3 className=\"ds:m-0 ds:flex-1 ds:min-w-0 type-title-item\">\n {titleNode}\n </h3>\n ) : (\n <span className=\"ds:flex-1 ds:min-w-0 type-title-item ds:text-[color:var(--foreground)]\">\n {titleNode}\n </span>\n )}\n </div>\n\n {item.description ? (\n <p className=\"ds:m-0 type-body-sm ds:text-[color:var(--muted-foreground)] ds:[overflow:hidden] ds:[display:-webkit-box] ds:[-webkit-box-orient:vertical] ds:[-webkit-line-clamp:2] ds:break-words\">\n {item.description}\n </p>\n ) : null}\n\n <Timestamp\n value={item.createdAt}\n shape=\"chip\"\n size=\"sm\"\n relativeWindow={12 * 60 * 60 * 1000}\n />\n\n {variant === 'dashboard' && (ctaLabel || dismissLabel) ? (\n <div className=\"ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-sm)]\">\n {ctaLabel && hasSafeUrl ? (\n <Button\n intent=\"outline\"\n size=\"sm\"\n asChild\n className=\"ds:relative ds:z-[1]\"\n >\n <a\n href={item.url}\n onClick={(event) => {\n if (\n event.defaultPrevented ||\n event.metaKey ||\n event.ctrlKey ||\n event.shiftKey\n )\n return;\n event.preventDefault();\n onActivate?.(item);\n }}\n >\n {ctaLabel}\n </a>\n </Button>\n ) : null}\n {dismissLabel && onDismiss ? (\n <Button\n intent=\"link\"\n size=\"sm\"\n onClick={handleDismiss}\n className=\"ds:relative ds:z-[1]\"\n >\n {dismissLabel}\n </Button>\n ) : null}\n </div>\n ) : null}\n </div>\n\n {/* Close — inline-end, hover/focus-revealed. Absolutely positioned so it\n claims no width at rest: the title fills the row and there's no empty\n gap when the row isn't hovered. */}\n {variant === 'compact' && onDismiss ? (\n <span\n className={\n 'ds:absolute ds:z-[2] ds:opacity-0 ds:pointer-events-none ds:transition-opacity ds:motion-reduce:transition-none ds:group-hover:opacity-100 ds:group-hover:pointer-events-auto ds:group-focus-within:opacity-100 ds:group-focus-within:pointer-events-auto ' +\n closeInset\n }\n >\n <IconButton\n icon={<X />}\n intent=\"ghost\"\n size=\"sm\"\n aria-label={t('notificationCard.dismiss', 'Dismiss notification')}\n onClick={handleDismiss}\n />\n </span>\n ) : null}\n </div>\n );\n },\n);\n\nNotificationCard.displayName = 'NotificationCard';\n"],"names":["cardVariants","cva","stretchedLinkClass","isSafeNotificationUrl","url","NotificationCard","forwardRef","item","variant","surface","size","onActivate","onToggleRead","onDismiss","ctaLabel","dismissLabel","leaving","className","rest","ref","t","i18n","useTranslation","accessibleTime","useMemo","date","isControlledLeaving","isLeaving","setIsLeaving","useState","dismissTimerRef","useRef","effectiveLeaving","prefersReducedMotion","handleDismiss","useCallback","raw","ms","state","unreadSuffix","ariaLabel","hasSafeUrl","closeInset","ballPos","ballDot","ballRing","ballBtn","ballVisual","statusBall","jsx","titleText","titleNode","event","jsxs","Timestamp","Button","IconButton","X"],"mappings":"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"}
|