@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
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-map-M8MBBHQm.js","sources":["../../node_modules/lucide-react/dist/esm/icons/circle-dashed.js","../../node_modules/lucide-react/dist/esm/icons/circle-pause.js","../../node_modules/lucide-react/dist/esm/icons/power-off.js","../../node_modules/lucide-react/dist/esm/icons/power.js","../../node_modules/lucide-react/dist/esm/icons/smartphone.js","../../src/components/workflow/workflow-card.tsx","../../src/components/workflow/workflow.agent.ts","../../src/components/workflow/workflow-types.ts","../../src/components/workflow/workflow-editor.tsx","../../src/components/workflow/workflow-map.tsx"],"sourcesContent":["/**\n * @license lucide-react v1.8.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.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M10.1 2.182a10 10 0 0 1 3.8 0\", key: \"5ilxe3\" }],\n [\"path\", { d: \"M13.9 21.818a10 10 0 0 1-3.8 0\", key: \"11zvb9\" }],\n [\"path\", { d: \"M17.609 3.721a10 10 0 0 1 2.69 2.7\", key: \"1iw5b2\" }],\n [\"path\", { d: \"M2.182 13.9a10 10 0 0 1 0-3.8\", key: \"c0bmvh\" }],\n [\"path\", { d: \"M20.279 17.609a10 10 0 0 1-2.7 2.69\", key: \"1ruxm7\" }],\n [\"path\", { d: \"M21.818 10.1a10 10 0 0 1 0 3.8\", key: \"qkgqxc\" }],\n [\"path\", { d: \"M3.721 6.391a10 10 0 0 1 2.7-2.69\", key: \"1mcia2\" }],\n [\"path\", { d: \"M6.391 20.279a10 10 0 0 1-2.69-2.7\", key: \"1fvljs\" }]\n];\nconst CircleDashed = createLucideIcon(\"circle-dashed\", __iconNode);\n\nexport { __iconNode, CircleDashed as default };\n//# sourceMappingURL=circle-dashed.js.map\n","/**\n * @license lucide-react v1.8.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.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"line\", { x1: \"10\", x2: \"10\", y1: \"15\", y2: \"9\", key: \"c1nkhi\" }],\n [\"line\", { x1: \"14\", x2: \"14\", y1: \"15\", y2: \"9\", key: \"h65svq\" }]\n];\nconst CirclePause = createLucideIcon(\"circle-pause\", __iconNode);\n\nexport { __iconNode, CirclePause as default };\n//# sourceMappingURL=circle-pause.js.map\n","/**\n * @license lucide-react v1.8.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.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M18.36 6.64A9 9 0 0 1 20.77 15\", key: \"dxknvb\" }],\n [\"path\", { d: \"M6.16 6.16a9 9 0 1 0 12.68 12.68\", key: \"1x7qb5\" }],\n [\"path\", { d: \"M12 2v4\", key: \"3427ic\" }],\n [\"path\", { d: \"m2 2 20 20\", key: \"1ooewy\" }]\n];\nconst PowerOff = createLucideIcon(\"power-off\", __iconNode);\n\nexport { __iconNode, PowerOff as default };\n//# sourceMappingURL=power-off.js.map\n","/**\n * @license lucide-react v1.8.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.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 2v10\", key: \"mnfbl\" }],\n [\"path\", { d: \"M18.4 6.6a9 9 0 1 1-12.77.04\", key: \"obofu9\" }]\n];\nconst Power = createLucideIcon(\"power\", __iconNode);\n\nexport { __iconNode, Power as default };\n//# sourceMappingURL=power.js.map\n","/**\n * @license lucide-react v1.8.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.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"14\", height: \"20\", x: \"5\", y: \"2\", rx: \"2\", ry: \"2\", key: \"1yt0o3\" }],\n [\"path\", { d: \"M12 18h.01\", key: \"mhygvu\" }]\n];\nconst Smartphone = createLucideIcon(\"smartphone\", __iconNode);\n\nexport { __iconNode, Smartphone as default };\n//# sourceMappingURL=smartphone.js.map\n","import { forwardRef, type MouseEvent, type ReactNode } from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport {\n Circle,\n CircleDashed,\n CirclePause,\n Pencil,\n Power,\n PowerOff,\n Trash2,\n} from 'lucide-react';\nimport { Card } from '../card';\nimport { Badge } from '../badge';\nimport { KeyValuePair } from '../key-value-pair';\nimport { Timestamp } from '../timestamp';\nimport { IconButton } from '../button/icon-button';\nimport type { WorkflowStatus, WorkflowSummary } from './workflow-types';\n\n/* ------------------------------------------------------------------ */\n/* Variants */\n/* ------------------------------------------------------------------ */\n\nconst workflowCardVariants = cva('ds:relative ds:w-full', {\n variants: {\n density: {\n comfortable: '',\n compact: '',\n },\n },\n defaultVariants: {\n density: 'comfortable',\n },\n});\n\n/* ------------------------------------------------------------------ */\n/* Status → badge + icon mapping */\n/* ------------------------------------------------------------------ */\n\ntype BadgeVariant = 'neutral' | 'success' | 'warning';\n\ninterface StatusMeta {\n badgeVariant: BadgeVariant;\n icon: ReactNode;\n}\n\nfunction getStatusMeta(status: WorkflowStatus): StatusMeta {\n switch (status) {\n case 'active':\n // Filled dot for `active` — readable without hue (WCAG 1.4.1).\n return {\n badgeVariant: 'success',\n icon: <Circle className=\"ds:fill-current\" aria-hidden=\"true\" />,\n };\n case 'paused':\n return {\n badgeVariant: 'warning',\n icon: <CirclePause aria-hidden=\"true\" />,\n };\n case 'inactive':\n default:\n return {\n badgeVariant: 'neutral',\n icon: <CircleDashed aria-hidden=\"true\" />,\n };\n }\n}\n\n/* ------------------------------------------------------------------ */\n/* Props */\n/* ------------------------------------------------------------------ */\n\nexport interface WorkflowCardProps extends VariantProps<\n typeof workflowCardVariants\n> {\n workflow: WorkflowSummary;\n density?: 'comfortable' | 'compact';\n /** Fires when the card body is clicked. Absent → card is not interactive. */\n onView?: (id: string) => void;\n /** Fires when the edit IconButton is clicked. Absent → no edit button. */\n onEdit?: (id: string) => void;\n /** Fires when the delete IconButton is clicked. Absent → no delete button. */\n onDelete?: (id: string) => void;\n /**\n * Fires when the activate/deactivate IconButton is clicked. The second\n * argument is the TARGET state (the opposite of the current status), so the\n * consumer's handler is idempotent. Absent → no toggle button.\n */\n onToggleActive?: (id: string, active: boolean) => void;\n className?: string;\n}\n\n/* ------------------------------------------------------------------ */\n/* WorkflowCard */\n/* ------------------------------------------------------------------ */\n\nexport const WorkflowCard = forwardRef<HTMLElement, WorkflowCardProps>(\n function WorkflowCard(\n {\n workflow,\n density = 'comfortable',\n onView,\n onEdit,\n onDelete,\n onToggleActive,\n className,\n },\n ref,\n ) {\n const { t } = useTranslation();\n\n const statusMeta = getStatusMeta(workflow.status);\n const isActive = workflow.status === 'active';\n const isCompact = density === 'compact';\n\n // Icon-button clicks must not bubble up to the card body so that\n // `onView` doesn't fire along with edit / delete / toggle.\n const stop =\n (handler: (() => void) | undefined) =>\n (event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n handler?.();\n };\n\n const statusBadge = (\n <Badge\n variant={statusMeta.badgeVariant}\n leading={statusMeta.icon}\n withDot={false}\n >\n {t(`workflow.status.${workflow.status}`)}\n </Badge>\n );\n\n const activeCountLabel = t('workflow.card.activeEnrollments');\n\n // When `onView` is provided we can't make the `<article>` itself a\n // role=\"button\" — that would violate both `aria-allowed-role`\n // (article forbids role=button) and `nested-interactive` (the\n // IconButtons in the footer would nest inside an outer button).\n // Instead we expose a single accessible-name-carrying `<button>`\n // on the title, styled to span the whole card via an inset ::after\n // pseudo-element so the hit target stays card-wide.\n return (\n <Card\n ref={ref}\n variant=\"default\"\n className={workflowCardVariants({ density, className })}\n data-component=\"workflow-card\"\n data-component-id={workflow.id}\n >\n <Card.Header>\n <div className=\"ds:flex ds:items-start ds:justify-between ds:gap-[var(--spacing-sm)]\">\n <div className=\"ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-xs)]\">\n <h3 className=\"ds:m-0 type-title-card ds:text-[color:var(--foreground)] ds:[overflow-wrap:anywhere] ds:break-words\">\n {onView ? (\n <button\n type=\"button\"\n onClick={() => onView(workflow.id)}\n className={[\n 'ds:text-start ds:font-inherit ds:text-inherit',\n // Inset overlay that turns the whole card into a\n // click target without nesting buttons. The\n // IconButton cluster in the footer paints above\n // this pseudo via `position: relative` + z-10.\n 'ds:after:absolute ds:after:inset-0 ds:after:content-[\"\"]',\n 'ds:after:rounded-[var(--radius-lg)]',\n 'ds:focus-visible:outline-none',\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 ].join(' ')}\n >\n {workflow.name}\n </button>\n ) : (\n workflow.name\n )}\n </h3>\n {isCompact && (\n <span className=\"ds:flex ds:items-baseline ds:gap-[var(--spacing-xs)] type-body-sm ds:text-[color:var(--muted-foreground)]\">\n <span>{activeCountLabel}</span>\n <span className=\"ds:font-medium ds:text-[color:var(--foreground)]\">\n {workflow.stats.activeEnrollments}\n </span>\n </span>\n )}\n </div>\n <div className=\"ds:shrink-0\">{statusBadge}</div>\n </div>\n </Card.Header>\n\n {!isCompact && (\n <Card.Body className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]\">\n <KeyValuePair\n label={t('workflow.card.activeEnrollments')}\n value={workflow.stats.activeEnrollments}\n />\n <KeyValuePair\n label={t('workflow.card.totalEnrollments')}\n value={workflow.stats.totalEnrollments}\n />\n </Card.Body>\n )}\n\n <Card.Footer className=\"ds:flex-wrap ds:items-center ds:justify-between ds:gap-[var(--spacing-sm)]\">\n <div className=\"ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-xs)] type-body-sm ds:text-[color:var(--muted-foreground)]\">\n <span className=\"ds:truncate\" title={workflow.createdBy}>\n {t('workflow.createdBy', { name: workflow.createdBy })}\n </span>\n {workflow.updatedAt && (\n <Timestamp\n value={workflow.updatedAt}\n format=\"absolute\"\n shape=\"bare\"\n absoluteFormat={{ dateStyle: 'medium' }}\n className=\"ds:truncate\"\n />\n )}\n </div>\n\n <div className=\"ds:relative ds:z-10 ds:flex ds:shrink-0 ds:items-center ds:gap-[var(--spacing-xs)] ds:ms-auto\">\n {onEdit && (\n <IconButton\n icon={<Pencil />}\n size=\"sm\"\n intent=\"ghost\"\n aria-label={t('workflow.card.edit')}\n onClick={stop(() => onEdit(workflow.id))}\n />\n )}\n {onToggleActive && (\n <IconButton\n icon={isActive ? <PowerOff /> : <Power />}\n size=\"sm\"\n intent=\"ghost\"\n aria-label={t(\n isActive\n ? 'workflow.card.deactivate'\n : 'workflow.card.activate',\n )}\n onClick={stop(() => onToggleActive(workflow.id, !isActive))}\n />\n )}\n {onDelete && (\n <IconButton\n icon={<Trash2 />}\n size=\"sm\"\n intent=\"destructive\"\n aria-label={t('workflow.card.delete')}\n onClick={stop(() => onDelete(workflow.id))}\n />\n )}\n </div>\n </Card.Footer>\n </Card>\n );\n },\n);\n\nWorkflowCard.displayName = 'WorkflowCard';\n","/* -------------------------------------------------------------------- */\n/* Agent adapters — Workflow surfaces. */\n/* */\n/* The `workflow/` directory ships three distinct components — each with */\n/* its own `data-component` value (workflow-card, workflow-editor, */\n/* workflow-map). Three adapters are declared here, one per surface, so */\n/* the catalog reflects what's actually rendered in the DOM. The editor */\n/* is the only mutation surface; card and map are presentational and ship */\n/* root hooks only. */\n/* -------------------------------------------------------------------- */\n\nimport type { AgentAdapter } from '../../agent/types';\nimport type { WorkflowEditorHandle } from './workflow-editor';\n\nexport const workflowCardAgent: AgentAdapter = {\n id: 'workflow-card',\n // Presentational summary card — no agent-facing action or state. Navigation\n // is owned by the host pattern, so no capability is declared here.\n capabilities: [],\n state: {},\n actions: {},\n domHooks: {\n root: {\n attr: 'data-component',\n value: 'workflow-card',\n description:\n 'Marks a Workflow summary card. Presentational — actions are owned by the host pattern.',\n },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop.',\n },\n },\n};\n\nexport const workflowMapAgent: AgentAdapter = {\n id: 'workflow-map',\n // Presentational linear visualisation — no agent-facing action or state.\n capabilities: [],\n state: {},\n actions: {},\n domHooks: {\n root: {\n attr: 'data-component',\n value: 'workflow-map',\n description:\n 'Marks a Workflow map (linear visualisation). Presentational.',\n },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop.',\n },\n item: {\n attr: 'data-node-id',\n description: 'Stable opaque workflow node id emitted on each step.',\n },\n },\n};\n\nexport const workflowEditorAgent: AgentAdapter<WorkflowEditorHandle> = {\n id: 'workflow-editor',\n // `goto_step` focuses a node (navigation). No `expand` capability: the\n // WorkflowEditorHandle exposes no expand/collapse method to back it.\n capabilities: ['navigate'],\n state: {\n totalSteps: {\n type: 'number',\n descriptionKey: 'ui.agent.workflowEditor.state.totalSteps',\n description: 'Total number of nodes currently in the workflow graph.',\n read: (handle) => handle.getTotalSteps(),\n },\n currentStep: {\n type: 'string | null',\n descriptionKey: 'ui.agent.workflowEditor.state.currentStep',\n description: 'Opaque node id of the currently-focused step, or null.',\n read: (handle) => handle.getCurrentStep(),\n },\n },\n actions: {\n goto_step: {\n safety: 'read',\n argsType: '{ id: string }',\n argsSchema: {\n type: 'object',\n properties: { id: { type: 'string' } },\n required: ['id'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.workflowEditor.actions.gotoStep',\n description: 'Focus a node by its opaque id.',\n invoke: (handle, args: { id: string }) => {\n handle.gotoStep(args.id);\n },\n },\n },\n domHooks: {\n root: {\n attr: 'data-component',\n value: 'workflow-editor',\n description: 'Marks the WorkflowEditor surface.',\n },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop.',\n },\n item: {\n attr: 'data-node-id',\n description: 'Stable opaque workflow node id emitted on each node card.',\n },\n },\n};\n","/**\n * Shared types and helpers for the Workflow component suite\n * (WorkflowCard · WorkflowEditor · WorkflowMap).\n *\n * The prop surface is DAG-shaped from day one — { nodes, edges } —\n * even though v1 renders workflows linearly. A linear pipeline is a\n * degenerate DAG where every node has exactly one outgoing edge with\n * a null condition. This means v2 branching (if/else) can ship as an\n * additive change without breaking v1 consumers.\n *\n * Authoritative user story: src/user_stories/domain-specific/workflow.mdx\n */\n\n// ---------------------------------------------------------------\n// Node types\n// ---------------------------------------------------------------\n\nexport type WorkflowActionType =\n | 'add_delay'\n | 'send_email'\n | 'send_sms'\n | 'create_task'\n // v2 types accepted by the type system today; the editor renders a\n // generic card for these until bespoke summariser UI ships.\n | 'send_whatsapp'\n | 'update_patient_field'\n | 'webhook';\n\nexport type WorkflowStatus = 'active' | 'inactive' | 'paused';\n\n// ---------------------------------------------------------------\n// Discriminated settings — `kind` narrows `WorkflowNode['settings']`\n// without the consumer needing a cast.\n// ---------------------------------------------------------------\n\nexport interface DelaySettings {\n kind: 'add_delay';\n days?: number;\n hours?: number;\n minutes?: number;\n}\n\nexport interface EmailSettings {\n kind: 'send_email';\n subject: string;\n body?: string;\n templateId?: string;\n}\n\nexport interface SmsSettings {\n kind: 'send_sms';\n body: string;\n}\n\nexport interface TaskSettings {\n kind: 'create_task';\n title: string;\n description?: string;\n assigneeId?: string;\n}\n\nexport interface WhatsAppSettings {\n kind: 'send_whatsapp';\n templateName: string;\n body?: string;\n}\n\nexport interface UpdateFieldSettings {\n kind: 'update_patient_field';\n /** Custom ObjectField id — NEVER a core patient column. */\n fieldId: string;\n fieldLabel: string;\n value: string;\n}\n\nexport interface WebhookSettings {\n kind: 'webhook';\n url: string;\n method: 'POST' | 'PUT';\n headers?: Record<string, string>;\n}\n\nexport type WorkflowActionSettings =\n | DelaySettings\n | EmailSettings\n | SmsSettings\n | TaskSettings\n | WhatsAppSettings\n | UpdateFieldSettings\n | WebhookSettings;\n\n// ---------------------------------------------------------------\n// Graph shape\n// ---------------------------------------------------------------\n\nexport interface WorkflowNode {\n id: string;\n type: WorkflowActionType;\n settings: WorkflowActionSettings;\n}\n\nexport interface WorkflowEdge {\n from: string;\n to: string;\n /**\n * Edge condition label. Null / omitted for linear pipelines.\n * Reserved for v2 branching: 'true' | 'false' for if_else nodes.\n */\n condition?: string | null;\n}\n\nexport interface WorkflowGraph {\n nodes: WorkflowNode[];\n edges: WorkflowEdge[];\n}\n\n// ---------------------------------------------------------------\n// Summary & stats (WorkflowCard)\n// ---------------------------------------------------------------\n\nexport interface WorkflowStats {\n totalEnrollments: number;\n activeEnrollments: number;\n}\n\nexport interface WorkflowSummary {\n id: string;\n name: string;\n status: WorkflowStatus;\n stats: WorkflowStats;\n actionCount: number;\n createdBy: string;\n createdAt: Date;\n updatedAt: Date;\n}\n\nexport interface EnrollmentCriteria {\n ruleCount: number;\n summary?: string;\n}\n\n// ---------------------------------------------------------------\n// Pure graph helpers — never mutate their inputs.\n// ---------------------------------------------------------------\n\n/**\n * Walk the linear chain starting from the first node (the one that\n * has no incoming linear edge). Returns nodes in execution order.\n * Throws in dev if the graph has a cycle or a node with multiple\n * linear outgoing edges (reserved for v2 branching).\n */\nexport function linearOrder(graph: WorkflowGraph): WorkflowNode[] {\n if (graph.nodes.length === 0) return [];\n\n const linearEdges = graph.edges.filter((e) => e.condition == null);\n const targets = new Set(linearEdges.map((e) => e.to));\n const roots = graph.nodes.filter((n) => !targets.has(n.id));\n\n // Fall back to the first declared node if the edges don't identify\n // a root (e.g. a brand-new graph with a single node and no edges).\n const start = roots[0] ?? graph.nodes[0];\n const byId = new Map(graph.nodes.map((n) => [n.id, n]));\n const edgesFrom = new Map<string, WorkflowEdge[]>();\n for (const edge of linearEdges) {\n const bucket = edgesFrom.get(edge.from) ?? [];\n bucket.push(edge);\n edgesFrom.set(edge.from, bucket);\n }\n\n const seen = new Set<string>();\n const order: WorkflowNode[] = [];\n let cursor: WorkflowNode | undefined = start;\n while (cursor && !seen.has(cursor.id)) {\n seen.add(cursor.id);\n order.push(cursor);\n const outgoing: WorkflowEdge[] = edgesFrom.get(cursor.id) ?? [];\n if (outgoing.length > 1) {\n // v2 branching surface — v1 renderer should warn but not crash.\n if (typeof console !== 'undefined') {\n console.warn(\n `[workflow] node ${cursor.id} has ${outgoing.length} outgoing linear edges; v1 walks the first only.`,\n );\n }\n }\n cursor = outgoing[0] ? byId.get(outgoing[0].to) : undefined;\n }\n\n // Append any orphan nodes (not reachable from the root) so callers\n // still see them in the UI instead of silently dropping them.\n for (const node of graph.nodes) {\n if (!seen.has(node.id)) order.push(node);\n }\n return order;\n}\n\n/**\n * Insert a new node after `afterNodeId` (or at the head when null).\n * Rewrites edges so the linear chain stays singly-linked.\n */\nexport function addNodeAfter(\n graph: WorkflowGraph,\n afterNodeId: string | null,\n node: WorkflowNode,\n): WorkflowGraph {\n const nodes = [...graph.nodes, node];\n\n if (afterNodeId === null) {\n // Insert at head.\n const oldHead = graph.nodes[0];\n if (!oldHead) {\n return { nodes, edges: [] };\n }\n return {\n nodes,\n edges: [\n { from: node.id, to: oldHead.id, condition: null },\n ...graph.edges,\n ],\n };\n }\n\n const outgoing = graph.edges.find(\n (e) => e.from === afterNodeId && e.condition == null,\n );\n\n if (!outgoing) {\n // Append at tail.\n return {\n nodes,\n edges: [\n ...graph.edges,\n { from: afterNodeId, to: node.id, condition: null },\n ],\n };\n }\n\n // Splice into the middle.\n const otherEdges = graph.edges.filter((e) => e !== outgoing);\n return {\n nodes,\n edges: [\n ...otherEdges,\n { from: afterNodeId, to: node.id, condition: null },\n { from: node.id, to: outgoing.to, condition: null },\n ],\n };\n}\n\n/** Remove a node and reconnect its neighbours so the chain stays intact. */\nexport function removeNode(\n graph: WorkflowGraph,\n nodeId: string,\n): WorkflowGraph {\n const incoming = graph.edges.find(\n (e) => e.to === nodeId && e.condition == null,\n );\n const outgoing = graph.edges.find(\n (e) => e.from === nodeId && e.condition == null,\n );\n\n const kept = graph.edges.filter((e) => e.from !== nodeId && e.to !== nodeId);\n\n const bridged =\n incoming && outgoing\n ? [...kept, { from: incoming.from, to: outgoing.to, condition: null }]\n : kept;\n\n return {\n nodes: graph.nodes.filter((n) => n.id !== nodeId),\n edges: bridged,\n };\n}\n\n/** Swap a node with its neighbour in the linear chain. */\nexport function moveNode(\n graph: WorkflowGraph,\n nodeId: string,\n direction: 'up' | 'down',\n): WorkflowGraph {\n const order = linearOrder(graph);\n const index = order.findIndex((n) => n.id === nodeId);\n if (index === -1) return graph;\n\n const swapIndex = direction === 'up' ? index - 1 : index + 1;\n if (swapIndex < 0 || swapIndex >= order.length) return graph;\n\n const a = order[index];\n const b = order[swapIndex];\n if (!a || !b) return graph;\n\n // Remove both, then re-insert in swapped order via the helpers above.\n // This is O(n) but keeps the invariant maintenance in one place.\n const afterRemove = removeNode(removeNode(graph, a.id), b.id);\n\n const first = direction === 'up' ? a : b;\n const second = direction === 'up' ? b : a;\n\n // Identify the node that now precedes the swap pair (or null for head).\n const firstPredecessor = order[Math.min(index, swapIndex) - 1]?.id ?? null;\n\n const step1 = addNodeAfter(afterRemove, firstPredecessor, first);\n return addNodeAfter(step1, first.id, second);\n}\n\n// ---------------------------------------------------------------\n// Action-type registry — single source of truth for icons + labels.\n// Adding a new action type requires: (a) extending\n// `WorkflowActionType`, (b) adding an entry here, (c) adding i18n\n// keys under `ui.workflow.action.*`. Nothing else.\n// ---------------------------------------------------------------\n\nexport interface WorkflowActionMeta {\n /** i18n key for the type label — full path under `ui.*`. */\n labelKey: string;\n /** lucide-react icon name for dynamic lookup by consumers. */\n iconName:\n | 'Clock'\n | 'Mail'\n | 'Smartphone'\n | 'CheckSquare'\n | 'MessageCircle'\n | 'UserCog'\n | 'Globe';\n}\n\n/**\n * Core patient columns that a workflow MUST NOT overwrite. The\n * `update_patient_field` action is scoped to custom `ObjectField`\n * entries only; passing one of these ids is a misconfiguration and\n * the editor surfaces a warning strip.\n *\n * See `src/user_stories/domain-specific/workflow.mdx` — the\n * maintainability group pins this down with: \"a misconfigured\n * workflow can't overwrite a patient's legal name or contact info\".\n */\nexport const CORE_PATIENT_FIELDS: ReadonlySet<string> = new Set([\n 'dateOfBirth',\n 'date_of_birth',\n 'firstName',\n 'first_name',\n 'lastName',\n 'last_name',\n 'name',\n 'email',\n 'phone',\n 'phoneNumber',\n 'phone_number',\n 'fiscalCode',\n 'fiscal_code',\n 'taxId',\n 'tax_id',\n 'gender',\n 'address',\n 'id',\n]);\n\n/** True when the field id targets a core patient column (never allowed). */\nexport function isCorePatientField(fieldId: string): boolean {\n return CORE_PATIENT_FIELDS.has(fieldId);\n}\n\nexport const workflowActionRegistry: Record<\n WorkflowActionType,\n WorkflowActionMeta\n> = {\n add_delay: {\n labelKey: 'workflow.action.addDelay',\n iconName: 'Clock',\n },\n send_email: {\n labelKey: 'workflow.action.sendEmail',\n iconName: 'Mail',\n },\n send_sms: {\n labelKey: 'workflow.action.sendSms',\n iconName: 'Smartphone',\n },\n create_task: {\n labelKey: 'workflow.action.createTask',\n iconName: 'CheckSquare',\n },\n send_whatsapp: {\n labelKey: 'workflow.action.sendWhatsapp',\n iconName: 'MessageCircle',\n },\n update_patient_field: {\n labelKey: 'workflow.action.updateField',\n iconName: 'UserCog',\n },\n webhook: {\n labelKey: 'workflow.action.webhook',\n iconName: 'Globe',\n },\n};\n","import {\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type KeyboardEvent as ReactKeyboardEvent,\n type MutableRefObject,\n type ReactNode,\n} from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useAgentRegistration } from '../../agent/registry';\nimport { workflowEditorAgent } from './workflow.agent';\nimport {\n CheckSquare,\n ChevronDown,\n ChevronUp,\n Clock,\n Globe,\n Mail,\n MessageCircle,\n Pencil,\n Plus,\n Smartphone,\n Trash2,\n UserCog,\n type LucideIcon,\n} from 'lucide-react';\nimport { Card } from '../card';\nimport { Alert } from '../alert';\nimport { Button } from '../button';\nimport { IconButton } from '../button/icon-button';\nimport { DropdownMenu } from '../dropdown-menu';\nimport { EmptyState } from '../empty-state';\nimport {\n addNodeAfter,\n isCorePatientField,\n linearOrder,\n moveNode,\n workflowActionRegistry,\n type EnrollmentCriteria,\n type WorkflowActionMeta,\n type WorkflowActionSettings,\n type WorkflowActionType,\n type WorkflowGraph,\n type WorkflowNode,\n} from './workflow-types';\n\n/* ------------------------------------------------------------------ */\n/* Icon map — explicit so the bundler can tree-shake lucide-react */\n/* properly. Driven by `iconName` from the action registry. */\n/* ------------------------------------------------------------------ */\n\nconst ACTION_ICONS: Record<WorkflowActionMeta['iconName'], LucideIcon> = {\n Clock,\n Mail,\n Smartphone,\n CheckSquare,\n MessageCircle,\n UserCog,\n Globe,\n};\n\nfunction ActionIcon({\n iconName,\n className,\n}: {\n iconName: WorkflowActionMeta['iconName'];\n className?: string;\n}) {\n const Glyph = ACTION_ICONS[iconName];\n return <Glyph aria-hidden=\"true\" className={className ?? 'ds:size-4'} />;\n}\n\n/* ------------------------------------------------------------------ */\n/* Settings summary helper — narrows on the discriminated-union */\n/* `kind` so every branch reads its type-specific fields safely. */\n/* ------------------------------------------------------------------ */\n\nconst TRUNCATE_EMAIL = 40;\nconst TRUNCATE_SMS = 60;\n\nfunction truncate(value: string, max: number): string {\n if (value.length <= max) return value;\n return `${value.slice(0, max - 1)}\\u2026`;\n}\n\ninterface SummaryResult {\n /** Displayed (possibly truncated) text. */\n text: string;\n /** Full, un-truncated text for `title` and `aria-label`. */\n full: string;\n}\n\nfunction summariseSettings(\n settings: WorkflowActionSettings,\n t: (key: string, options?: Record<string, unknown>) => string,\n): SummaryResult | null {\n switch (settings.kind) {\n case 'add_delay': {\n const days = settings.days ?? 0;\n const summary = t('workflow.delay.summary', { count: days });\n return { text: summary, full: summary };\n }\n case 'send_email': {\n const subject = settings.subject ?? '';\n const prefix = t('workflow.action.sendEmail');\n const full = `${prefix}: ${subject}`;\n return { text: truncate(full, TRUNCATE_EMAIL), full };\n }\n case 'send_sms': {\n const body = settings.body ?? '';\n return { text: truncate(body, TRUNCATE_SMS), full: body };\n }\n case 'create_task': {\n const title = settings.title ?? '';\n return { text: title, full: title };\n }\n // v2 types — generic fallback (no bespoke summariser yet).\n case 'send_whatsapp':\n case 'update_patient_field':\n case 'webhook':\n default:\n return null;\n }\n}\n\n/* ------------------------------------------------------------------ */\n/* Classes (no hardcoded colours / physical props / inline styles) */\n/* ------------------------------------------------------------------ */\n\nconst rootClasses = [\n 'ds:flex ds:flex-col',\n 'ds:w-full',\n 'ds:text-start',\n 'ds:gap-[var(--spacing-sm)]',\n].join(' ');\n\n// Connector line between items. Uses `border-inline-start` so the rule\n// automatically mirrors in RTL without any physical left/right reference.\nconst connectorClasses = [\n 'ds:block',\n 'ds:self-start',\n 'ds:h-[var(--spacing-md)]',\n 'ds:ms-[calc(var(--min-target-size)/2)]',\n 'ds:border-inline-start-[var(--border-width-hairline)]',\n 'ds:border-solid',\n 'ds:border-[color:var(--border)]',\n].join(' ');\n\nconst addButtonClasses = [\n 'ds:inline-flex ds:items-center ds:justify-center ds:gap-[var(--spacing-xs)]',\n 'ds:min-h-[var(--min-target-size)] ds:min-w-[var(--min-target-size)]',\n 'ds:rounded-[var(--radius-full)]',\n 'ds:border ds:border-dashed ds:border-[color:var(--border)]',\n 'ds:bg-[color:var(--background)]',\n 'ds:text-[color:var(--muted-foreground)]',\n 'ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]',\n 'ds:text-[length:var(--font-size-sm)]',\n 'ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none',\n 'ds:hover:bg-[color:var(--muted)]/20 ds:hover:text-[color:var(--foreground)]',\n 'ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid',\n 'ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]',\n 'ds:forced-colors:focus-visible:outline-[CanvasText]',\n 'ds:disabled:opacity-50 ds:disabled:cursor-not-allowed',\n].join(' ');\n\nconst nodeCardFocusableClasses = [\n 'ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid',\n 'ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]',\n 'ds:forced-colors:focus-visible:outline-[CanvasText]',\n 'ds:rounded-[var(--radius-lg)]',\n].join(' ');\n\n/* ------------------------------------------------------------------ */\n/* Props */\n/* ------------------------------------------------------------------ */\n\n/** Curated imperative handle for agent / external automation. */\nexport interface WorkflowEditorHandle {\n getTotalSteps: () => number;\n getCurrentStep: () => string | null;\n gotoStep: (id: string) => void;\n}\n\nexport interface WorkflowEditorProps {\n /** DAG-shaped graph. v1 renders the linear chain via `linearOrder`. */\n graph: WorkflowGraph;\n /**\n * Fires for INTERNAL mutations only — add / reorder. Never fired for\n * edit or delete (those have their own callbacks). When `isActive`\n * is true the editor MUST NOT call this.\n */\n onChange: (graph: WorkflowGraph) => void;\n /** Optional enrollment-criteria summary rendered as a fixed header card. */\n enrollmentCriteria?: EnrollmentCriteria;\n /** Fires when the \"Edit criteria\" CTA in the criteria header is clicked. */\n onEditEnrollmentCriteria?: () => void;\n /** Locks ALL mutation controls and shows the active-lock banner. */\n isActive?: boolean;\n /**\n * Action types available in the add-action DropdownMenu.\n * Defaults to every key in `workflowActionRegistry`.\n */\n availableActions?: WorkflowActionType[];\n /** Fires when a node's edit IconButton is clicked. Consumer owns the form. */\n onEditNode?: (nodeId: string) => void;\n /** Fires when a node's delete IconButton is clicked. Consumer confirms. */\n onDeleteNode?: (nodeId: string) => void;\n className?: string;\n}\n\n/* ------------------------------------------------------------------ */\n/* Defaults */\n/* ------------------------------------------------------------------ */\n\nconst ALL_ACTION_TYPES = Object.keys(\n workflowActionRegistry,\n) as WorkflowActionType[];\n\nlet nodeIdCounter = 0;\nfunction generateNodeId(): string {\n nodeIdCounter += 1;\n const random = Math.random().toString(36).slice(2, 8);\n return `wf-node-${Date.now()}-${nodeIdCounter}-${random}`;\n}\n\nfunction defaultSettingsFor(type: WorkflowActionType): WorkflowActionSettings {\n switch (type) {\n case 'add_delay':\n return { kind: 'add_delay', days: 1 };\n case 'send_email':\n return { kind: 'send_email', subject: '' };\n case 'send_sms':\n return { kind: 'send_sms', body: '' };\n case 'create_task':\n return { kind: 'create_task', title: '' };\n case 'send_whatsapp':\n return { kind: 'send_whatsapp', templateName: '' };\n case 'update_patient_field':\n return {\n kind: 'update_patient_field',\n fieldId: '',\n fieldLabel: '',\n value: '',\n };\n case 'webhook':\n return { kind: 'webhook', url: '', method: 'POST' };\n }\n}\n\n/* ------------------------------------------------------------------ */\n/* Roving-tabindex helper: a `useRef`-backed mutable index without */\n/* re-rendering on every arrow keystroke. */\n/* ------------------------------------------------------------------ */\n\nfunction useMutableIndex(\n initial = 0,\n): [MutableRefObject<number>, (v: number) => void] {\n const ref = useRef(initial);\n const setter = useCallback((v: number) => {\n ref.current = v;\n }, []);\n return [ref, setter];\n}\n\n/* ------------------------------------------------------------------ */\n/* Action-node card */\n/* ------------------------------------------------------------------ */\n\ninterface ActionNodeCardProps {\n node: WorkflowNode;\n position: number;\n total: number;\n disabled: boolean;\n onEdit?: (id: string) => void;\n onDelete?: (id: string) => void;\n onMove: (id: string, direction: 'up' | 'down') => void;\n registerRef: (id: string, el: HTMLDivElement | null) => void;\n}\n\nfunction ActionNodeCard({\n node,\n position,\n total,\n disabled,\n onEdit,\n onDelete,\n onMove,\n registerRef,\n}: ActionNodeCardProps) {\n const { t } = useTranslation();\n const meta = workflowActionRegistry[node.type];\n\n // Roving tabindex: the card itself is tabbable; once focused, arrow\n // keys step through its internal controls.\n const controlsRef = useRef<HTMLDivElement | null>(null);\n const [activeControl, setActiveControl] = useMutableIndex(0);\n\n const focusControl = useCallback(\n (index: number) => {\n const controls = controlsRef.current?.querySelectorAll<HTMLButtonElement>(\n 'button[data-wf-control]:not([disabled])',\n );\n if (!controls || controls.length === 0) return;\n const clamped = Math.max(0, Math.min(index, controls.length - 1));\n controls[clamped]?.focus();\n setActiveControl(clamped);\n },\n [setActiveControl],\n );\n\n const handleCardKeyDown = (event: ReactKeyboardEvent<HTMLDivElement>) => {\n // Only intercept keystrokes landing on the card wrapper itself.\n if (event.target !== event.currentTarget) return;\n if (event.key === 'ArrowRight' || event.key === 'ArrowDown') {\n event.preventDefault();\n focusControl(0);\n }\n };\n\n const handleControlsKeyDown = (event: ReactKeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n focusControl(activeControl.current + 1);\n } else if (event.key === 'ArrowLeft') {\n event.preventDefault();\n focusControl(activeControl.current - 1);\n } else if (event.key === 'Home') {\n event.preventDefault();\n focusControl(0);\n } else if (event.key === 'End') {\n event.preventDefault();\n focusControl(Number.POSITIVE_INFINITY);\n }\n };\n\n const summary = summariseSettings(node.settings, t);\n const typeLabel = t(meta.labelKey);\n const canMoveUp = position > 0;\n const canMoveDown = position < total - 1;\n\n const positionText = t('workflow.editor.position', {\n current: position + 1,\n total,\n });\n const nodeAriaLabel = t('workflow.editor.nodeAriaLabel', {\n type: typeLabel,\n current: position + 1,\n total,\n });\n\n return (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions -- node card is keyboard-actionable via roving tabindex; pipeline keys handled in onKeyDown\n <div\n ref={(el) => registerRef(node.id, el)}\n tabIndex={disabled ? -1 : 0}\n onKeyDown={handleCardKeyDown}\n aria-label={nodeAriaLabel}\n data-node-id={node.id}\n className={nodeCardFocusableClasses}\n >\n <Card variant=\"outlined\">\n <Card.Header className=\"ds:pb-[var(--spacing-sm)]\">\n <div className=\"ds:flex ds:items-center ds:gap-[var(--spacing-sm)]\">\n <span\n aria-hidden=\"true\"\n className=\"ds:inline-flex ds:size-8 ds:shrink-0 ds:items-center ds:justify-center ds:rounded-[var(--radius-sm)] ds:bg-[color:var(--muted)]/20 ds:text-[color:var(--foreground)]\"\n >\n <ActionIcon iconName={meta.iconName} className=\"ds:size-4\" />\n </span>\n <div className=\"ds:flex ds:min-w-0 ds:flex-1 ds:flex-col\">\n <span className=\"ds:text-[length:var(--font-size-sm)] ds:font-[var(--font-weight-semibold)] ds:text-[color:var(--foreground)] ds:[overflow-wrap:anywhere] ds:break-words\">\n {typeLabel}\n </span>\n <span className=\"ds:text-[length:var(--font-size-xs)] ds:text-[color:var(--muted-foreground)]\">\n {positionText}\n </span>\n </div>\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions -- inner controls subtree handles arrow-key navigation between edit/delete buttons */}\n <div\n ref={controlsRef}\n onKeyDown={handleControlsKeyDown}\n className=\"ds:flex ds:shrink-0 ds:items-center ds:gap-[var(--spacing-xs)] ds:ms-auto\"\n >\n {onEdit ? (\n <IconButton\n data-wf-control=\"edit\"\n icon={<Pencil />}\n size=\"sm\"\n intent=\"ghost\"\n disabled={disabled}\n tabIndex={-1}\n aria-label={t('workflow.editor.editAction')}\n onClick={() => onEdit(node.id)}\n />\n ) : null}\n <IconButton\n data-wf-control=\"up\"\n icon={<ChevronUp />}\n size=\"sm\"\n intent=\"ghost\"\n disabled={disabled || !canMoveUp}\n tabIndex={-1}\n aria-label={t('workflow.editor.moveUp')}\n onClick={() => onMove(node.id, 'up')}\n />\n <IconButton\n data-wf-control=\"down\"\n icon={<ChevronDown />}\n size=\"sm\"\n intent=\"ghost\"\n disabled={disabled || !canMoveDown}\n tabIndex={-1}\n aria-label={t('workflow.editor.moveDown')}\n onClick={() => onMove(node.id, 'down')}\n />\n {onDelete ? (\n <IconButton\n data-wf-control=\"delete\"\n icon={<Trash2 />}\n size=\"sm\"\n intent=\"destructive\"\n disabled={disabled}\n tabIndex={-1}\n aria-label={t('workflow.editor.deleteAction')}\n onClick={() => onDelete(node.id)}\n />\n ) : null}\n </div>\n </div>\n </Card.Header>\n {summary ? (\n <Card.Body className=\"ds:pt-0\">\n <p\n className=\"ds:text-[length:var(--font-size-sm)] ds:text-[color:var(--muted-foreground)] ds:[overflow-wrap:anywhere] ds:break-words\"\n title={summary.full}\n >\n {summary.text}\n </p>\n </Card.Body>\n ) : null}\n {node.settings.kind === 'update_patient_field' &&\n isCorePatientField(node.settings.fieldId) ? (\n <Card.Body className=\"ds:pt-0\">\n <Alert variant=\"error\" data-testid=\"workflow-editor-invalid-field\">\n {t('workflow.editor.invalidField')}\n </Alert>\n </Card.Body>\n ) : null}\n </Card>\n </div>\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* Add-action trigger + DropdownMenu */\n/* ------------------------------------------------------------------ */\n\ninterface AddActionMenuProps {\n availableActions: WorkflowActionType[];\n onSelect: (type: WorkflowActionType) => void;\n disabled: boolean;\n label: string;\n compact?: boolean;\n}\n\nfunction AddActionMenu({\n availableActions,\n onSelect,\n disabled,\n label,\n compact = true,\n}: AddActionMenuProps) {\n const { t } = useTranslation();\n\n return (\n <DropdownMenu.Root>\n <DropdownMenu.Trigger asChild>\n <button\n type=\"button\"\n disabled={disabled}\n aria-label={label}\n className={addButtonClasses}\n >\n <Plus aria-hidden=\"true\" className=\"ds:size-4\" />\n {compact ? null : (\n <span className=\"ds:text-[length:var(--font-size-sm)]\">\n {label}\n </span>\n )}\n </button>\n </DropdownMenu.Trigger>\n <DropdownMenu.Content align=\"start\" sideOffset={6}>\n <DropdownMenu.Label>\n {t('workflow.editor.addAction')}\n </DropdownMenu.Label>\n {availableActions.map((type) => {\n const meta = workflowActionRegistry[type];\n return (\n <DropdownMenu.Item\n key={type}\n startIcon={<ActionIcon iconName={meta.iconName} />}\n onSelect={() => onSelect(type)}\n >\n {t(meta.labelKey)}\n </DropdownMenu.Item>\n );\n })}\n </DropdownMenu.Content>\n </DropdownMenu.Root>\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* Criteria header */\n/* ------------------------------------------------------------------ */\n\ninterface CriteriaHeaderProps {\n criteria?: EnrollmentCriteria;\n onEdit?: () => void;\n disabled: boolean;\n}\n\nfunction CriteriaHeader({ criteria, onEdit, disabled }: CriteriaHeaderProps) {\n const { t } = useTranslation();\n const count = criteria?.ruleCount ?? 0;\n const summaryText =\n count > 0\n ? t('workflow.editor.criteriaCount', { count })\n : t('workflow.editor.noCriteria');\n\n return (\n <Card variant=\"outlined\">\n <Card.Header className=\"ds:pb-[var(--spacing-sm)]\">\n <div className=\"ds:flex ds:items-center ds:gap-[var(--spacing-sm)]\">\n <div className=\"ds:flex ds:min-w-0 ds:flex-1 ds:flex-col\">\n <span className=\"ds:text-[length:var(--font-size-sm)] ds:font-[var(--font-weight-semibold)] ds:text-[color:var(--foreground)]\">\n {t('workflow.editor.enrollmentCriteria')}\n </span>\n <span className=\"ds:text-[length:var(--font-size-sm)] ds:text-[color:var(--muted-foreground)] ds:[overflow-wrap:anywhere] ds:break-words\">\n {criteria?.summary ?? summaryText}\n </span>\n </div>\n {onEdit ? (\n <IconButton\n icon={<Pencil />}\n size=\"sm\"\n intent=\"ghost\"\n disabled={disabled}\n aria-label={t('workflow.editor.editCriteria')}\n onClick={onEdit}\n />\n ) : null}\n </div>\n </Card.Header>\n </Card>\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* WorkflowEditor */\n/* ------------------------------------------------------------------ */\n\nexport const WorkflowEditor = forwardRef<HTMLDivElement, WorkflowEditorProps>(\n function WorkflowEditor(\n {\n graph,\n onChange,\n enrollmentCriteria,\n onEditEnrollmentCriteria,\n isActive = false,\n availableActions,\n onEditNode,\n onDeleteNode,\n className,\n },\n ref,\n ) {\n const { t } = useTranslation();\n const types = availableActions ?? ALL_ACTION_TYPES;\n const ordered = useMemo(() => linearOrder(graph), [graph]);\n const nodeRefs = useRef<Map<string, HTMLDivElement | null>>(new Map());\n const focusTargetRef = useRef<string | null>(null);\n\n // Dev-mode guard: `onChange` should never fire while the editor is\n // locked. We wrap the consumer-supplied handler so internal calls\n // cannot violate the contract even if disabled state leaks.\n const safeOnChange = useCallback(\n (next: WorkflowGraph) => {\n if (isActive) {\n if (import.meta.env.DEV) {\n console.warn(\n '[WorkflowEditor] onChange suppressed — editor is active-locked.',\n );\n }\n return;\n }\n onChange(next);\n },\n [isActive, onChange],\n );\n\n const registerRef = useCallback((id: string, el: HTMLDivElement | null) => {\n if (el) {\n nodeRefs.current.set(id, el);\n } else {\n nodeRefs.current.delete(id);\n }\n }, []);\n\n const [currentStep, setCurrentStep] = useState<string | null>(null);\n const currentStepRef = useRef<string | null>(null);\n currentStepRef.current = currentStep;\n\n const rootRef = useRef<HTMLDivElement>(null);\n useImperativeHandle(ref, () => rootRef.current as HTMLDivElement, []);\n\n const agentHandle = useMemo<WorkflowEditorHandle>(\n () => ({\n getTotalSteps: () => ordered.length,\n getCurrentStep: () => currentStepRef.current,\n gotoStep: (id: string) => {\n const el = nodeRefs.current.get(id);\n if (el) {\n el.focus();\n setCurrentStep(id);\n }\n },\n }),\n [ordered.length],\n );\n useAgentRegistration(workflowEditorAgent, agentHandle, undefined);\n\n // After a mutation, focus returns to the inserted / moved card.\n useEffect(() => {\n const id = focusTargetRef.current;\n if (!id) return;\n const el = nodeRefs.current.get(id);\n if (el) {\n el.focus();\n focusTargetRef.current = null;\n }\n });\n\n const handleAddAfter = (\n afterId: string | null,\n type: WorkflowActionType,\n ) => {\n if (isActive) return;\n const node: WorkflowNode = {\n id: generateNodeId(),\n type,\n settings: defaultSettingsFor(type),\n };\n focusTargetRef.current = node.id;\n safeOnChange(addNodeAfter(graph, afterId, node));\n };\n\n const handleMove = (id: string, direction: 'up' | 'down') => {\n if (isActive) return;\n focusTargetRef.current = id;\n safeOnChange(moveNode(graph, id, direction));\n };\n\n const handleEdit = (id: string) => {\n if (isActive || !onEditNode) return;\n onEditNode(id);\n };\n\n const handleDelete = (id: string) => {\n if (isActive || !onDeleteNode) return;\n onDeleteNode(id);\n };\n\n const renderBanner = (): ReactNode =>\n isActive ? (\n <Alert variant=\"warning\">\n <Alert.Title as=\"p\">{t('workflow.editor.activeLock')}</Alert.Title>\n </Alert>\n ) : null;\n\n const renderCriteria = (): ReactNode =>\n enrollmentCriteria || onEditEnrollmentCriteria ? (\n <>\n <CriteriaHeader\n criteria={enrollmentCriteria}\n onEdit={onEditEnrollmentCriteria}\n disabled={isActive}\n />\n <span aria-hidden=\"true\" className={connectorClasses} />\n </>\n ) : null;\n\n const total = ordered.length;\n\n if (total === 0) {\n return (\n <div\n ref={rootRef}\n className={[rootClasses, className].filter(Boolean).join(' ')}\n >\n {renderBanner()}\n {renderCriteria()}\n <EmptyState\n variant=\"first-use\"\n title={t('workflow.editor.addFirstAction')}\n description={t('workflow.editor.empty')}\n >\n <EmptyState.Illustration>\n <svg\n viewBox=\"0 0 120 120\"\n fill=\"none\"\n aria-hidden=\"true\"\n className=\"ds:w-full ds:h-full\"\n >\n <circle\n cx=\"60\"\n cy=\"60\"\n r=\"50\"\n fill=\"var(--muted)\"\n stroke=\"var(--border)\"\n strokeWidth=\"2\"\n />\n <rect\n x=\"55\"\n y=\"30\"\n width=\"10\"\n height=\"60\"\n rx=\"5\"\n fill=\"var(--primary)\"\n />\n <rect\n x=\"30\"\n y=\"55\"\n width=\"60\"\n height=\"10\"\n rx=\"5\"\n fill=\"var(--primary)\"\n />\n </svg>\n </EmptyState.Illustration>\n <EmptyState.Title>\n {t('workflow.editor.addFirstAction')}\n </EmptyState.Title>\n <EmptyState.Description>\n {t('workflow.editor.empty')}\n </EmptyState.Description>\n <EmptyState.Actions>\n <DropdownMenu.Root>\n <DropdownMenu.Trigger asChild>\n <Button intent=\"primary\" disabled={isActive}>\n <Plus aria-hidden=\"true\" className=\"ds:size-4\" />\n <span>{t('workflow.editor.addFirstAction')}</span>\n </Button>\n </DropdownMenu.Trigger>\n <DropdownMenu.Content align=\"center\" sideOffset={6}>\n <DropdownMenu.Label>\n {t('workflow.editor.addAction')}\n </DropdownMenu.Label>\n {types.map((type) => {\n const meta = workflowActionRegistry[type];\n return (\n <DropdownMenu.Item\n key={type}\n startIcon={<ActionIcon iconName={meta.iconName} />}\n onSelect={() => handleAddAfter(null, type)}\n >\n {t(meta.labelKey)}\n </DropdownMenu.Item>\n );\n })}\n </DropdownMenu.Content>\n </DropdownMenu.Root>\n </EmptyState.Actions>\n </EmptyState>\n </div>\n );\n }\n\n // Non-empty: render the full pipeline.\n //\n // Structure:\n // [banner?]\n // [criteria header? + connector]\n // [leading ⊕]\n // <ol role=\"list\" aria-label=\"Workflow pipeline\">\n // <li> ← native role=\"listitem\"\n // connector + action-card + connector + trailing ⊕ (per-item)\n // </li>\n // …\n // </ol>\n //\n // The interleaved ⊕ buttons live inside each <li> — they are NOT\n // listitems themselves (they're <button>s), so the accessible tree\n // still reports \"list with N items\". The card-focus wrapper carries\n // `role=\"listitem\"` redundantly to keep the wrapper the single\n // focusable interactive surface; native <li> also implies listitem\n // but the browser already dedupes identical roles.\n return (\n <div\n ref={rootRef}\n data-component=\"workflow-editor\"\n className={[rootClasses, className].filter(Boolean).join(' ')}\n >\n {renderBanner()}\n {renderCriteria()}\n\n {/* Leading ⊕ button — OUTSIDE the list. */}\n <div>\n <AddActionMenu\n availableActions={types}\n disabled={isActive}\n label={t('workflow.editor.addAction')}\n onSelect={(type) => handleAddAfter(null, type)}\n />\n </div>\n\n {/* eslint-disable-next-line jsx-a11y/no-redundant-roles -- Safari strips the implicit list role on <ol> with list-style:none; this guard puts it back in the accessibility tree */}\n <ol\n role=\"list\"\n aria-label={t('workflow.editor.pipeline')}\n className=\"ds:list-none ds:m-0 ds:p-0 ds:flex ds:flex-col\"\n >\n {ordered.map((node, index) => (\n <li key={node.id} className=\"ds:list-none ds:flex ds:flex-col\">\n <span aria-hidden=\"true\" className={connectorClasses} />\n <ActionNodeCard\n node={node}\n position={index}\n total={total}\n disabled={isActive}\n onEdit={onEditNode ? handleEdit : undefined}\n onDelete={onDeleteNode ? handleDelete : undefined}\n onMove={handleMove}\n registerRef={registerRef}\n />\n <span aria-hidden=\"true\" className={connectorClasses} />\n <div>\n <AddActionMenu\n availableActions={types}\n disabled={isActive}\n label={t('workflow.editor.addActionAfter')}\n onSelect={(type) => handleAddAfter(node.id, type)}\n />\n </div>\n </li>\n ))}\n </ol>\n </div>\n );\n },\n);\n\nWorkflowEditor.displayName = 'WorkflowEditor';\n","import {\n forwardRef,\n useMemo,\n type ComponentType,\n type KeyboardEvent as ReactKeyboardEvent,\n type MouseEvent as ReactMouseEvent,\n type SVGProps,\n} from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport {\n Check,\n CheckSquare,\n Clock,\n Globe,\n ListChecks,\n Mail,\n MessageCircle,\n Smartphone,\n UserCog,\n} from 'lucide-react';\nimport {\n linearOrder,\n workflowActionRegistry,\n type EnrollmentCriteria,\n type WorkflowActionMeta,\n type WorkflowActionSettings,\n type WorkflowGraph,\n type WorkflowNode,\n} from './workflow-types';\n\n/* ------------------------------------------------------------------ */\n/* Icon lookup — typed map over the registry's `iconName` union so we */\n/* get exhaustiveness + tree-shakeable named imports from lucide-react. */\n/* ------------------------------------------------------------------ */\n\ntype LucideIcon = ComponentType<SVGProps<SVGSVGElement>>;\n\nconst iconByName: Record<WorkflowActionMeta['iconName'], LucideIcon> = {\n Clock,\n Mail,\n Smartphone,\n CheckSquare,\n MessageCircle,\n UserCog,\n Globe,\n};\n\n/* ------------------------------------------------------------------ */\n/* CVA variants */\n/* ------------------------------------------------------------------ */\n\nconst rootVariants = cva(\n // The map is a list of steps — never a list of meaningful controls.\n // Layout via logical properties only; connectors are sibling spacers\n // styled with border-inline-start / border-block-end (see node/spacer).\n 'ds:flex ds:list-none ds:p-0 ds:m-0',\n {\n variants: {\n orientation: {\n vertical: 'ds:flex-col ds:items-stretch',\n horizontal: 'ds:flex-row ds:items-stretch ds:flex-wrap',\n },\n compact: {\n true: 'ds:gap-0',\n false: 'ds:gap-0',\n },\n },\n defaultVariants: {\n orientation: 'vertical',\n compact: false,\n },\n },\n);\n\n// Each node's <li> stacks the node card and the trailing connector along\n// the root's main axis so the chain reads continuously in either\n// orientation. Vertical root (flex-col) → li is flex-col; horizontal root\n// (flex-row) → li is flex-row.\nconst nodeWrapperVariants = cva('ds:flex', {\n variants: {\n orientation: {\n vertical: 'ds:flex-col ds:items-stretch',\n horizontal: 'ds:flex-row ds:items-center',\n },\n },\n});\n\nconst nodeCardVariants = cva(\n [\n 'ds:relative ds:flex ds:items-center',\n 'ds:gap-[var(--spacing-sm)]',\n 'ds:rounded-[var(--radius-md)]',\n // Flat-hairline: 1px card-border, no shadow; accessible theme bumps to 2px.\n 'ds:border ds:border-[color:var(--card-border)] ds:[.theme-accessible_&]:border-2',\n 'ds:bg-[var(--card)] ds:text-[var(--card-foreground)]',\n // Motion honours the accessible theme (--animation-duration → 0ms).\n 'ds:transition-[box-shadow,transform,opacity] ds:duration-[var(--animation-duration)]',\n 'ds:motion-reduce:transition-none',\n // Content wraps instead of pushing siblings off-screen (DE / CJK story contract).\n 'ds:[word-break:break-word] ds:[overflow-wrap:anywhere]',\n ].join(' '),\n {\n variants: {\n orientation: {\n vertical: 'ds:inline-size-full',\n horizontal: 'ds:block-size-full',\n },\n compact: {\n true: 'ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)] ds:py-[var(--spacing-xs)] ds:min-h-[var(--spacing-xl)]',\n false:\n 'ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)] ds:py-[var(--spacing-sm)]',\n },\n state: {\n completed: '',\n current:\n 'ds:ring-2 ds:ring-[color:var(--ring)] ds:font-[var(--font-weight-semibold)]',\n // Pending state uses a dashed border + muted foreground so the\n // step reads as \"upcoming\" without dropping text contrast below\n // the 4.5:1 AA floor in dark-accessible. Applying opacity to\n // text that is already on --muted-foreground fails axe on the\n // dark themes (contrast ~3.6:1 after a 50 % dim).\n pending:\n 'ds:border-dashed ds:text-[color:var(--muted-foreground)] ds:[&_[data-testid=workflow-map-summary]]:text-[color:var(--muted-foreground)]',\n neutral: '',\n },\n interactive: {\n true: [\n 'ds:cursor-pointer',\n 'ds:hover:shadow-[var(--shadow-sm)]',\n 'ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid',\n 'ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]',\n ].join(' '),\n false: '',\n },\n },\n },\n);\n\n/**\n * Connector spacer — a bare <span aria-hidden=\"true\"> that draws the\n * line between nodes via logical-property borders. Vertical maps get\n * `border-inline-start`; horizontal maps get `border-block-end`. No\n * physical direction properties, no SVG.\n */\nconst spacerVariants = cva(\n ['ds:block', 'ds:border-solid', 'ds:border-[color:var(--border)]'].join(' '),\n {\n variants: {\n orientation: {\n vertical: [\n // Single edge: `border-s-[length:…]` maps to\n // `border-inline-start-width` in Tailwind v4, so only the\n // inline-start side renders — the other three stay at 0.\n // `ms-[…]` aligns the line under the icon column.\n 'ds:ms-[calc(var(--spacing-md)+var(--spacing-sm))]',\n 'ds:border-s-[length:var(--border-width-hairline)]',\n 'ds:border-inline-start',\n ].join(' '),\n horizontal: [\n 'ds:self-center',\n 'ds:border-b-[length:var(--border-width-hairline)]',\n 'ds:border-block-end',\n ].join(' '),\n },\n compact: {\n true: '',\n false: '',\n },\n },\n compoundVariants: [\n {\n orientation: 'vertical',\n compact: false,\n class: 'ds:h-[var(--spacing-md)]',\n },\n {\n orientation: 'vertical',\n compact: true,\n class: 'ds:h-[var(--spacing-sm)]',\n },\n {\n orientation: 'horizontal',\n compact: false,\n class: 'ds:w-[var(--spacing-md)]',\n },\n {\n orientation: 'horizontal',\n compact: true,\n class: 'ds:w-[var(--spacing-sm)]',\n },\n ],\n },\n);\n\n/* ------------------------------------------------------------------ */\n/* Settings summariser — short, token-aware one-liner per action type. */\n/* The i18n key is resolved by the caller; this returns either a */\n/* {key, options} pair for pluralised strings or a plain string literal. */\n/* ------------------------------------------------------------------ */\n\ninterface SummaryKey {\n key: string;\n options?: Record<string, unknown>;\n}\n\nfunction summariseSettings(\n settings: WorkflowActionSettings,\n): SummaryKey | string | undefined {\n switch (settings.kind) {\n case 'add_delay': {\n if (typeof settings.days === 'number' && settings.days > 0) {\n return {\n key: 'workflow.delay.days',\n options: { count: settings.days },\n };\n }\n if (typeof settings.hours === 'number' && settings.hours > 0) {\n return {\n key: 'workflow.delay.hours',\n options: { count: settings.hours },\n };\n }\n if (typeof settings.minutes === 'number' && settings.minutes > 0) {\n return {\n key: 'workflow.delay.minutes',\n options: { count: settings.minutes },\n };\n }\n return undefined;\n }\n case 'send_email':\n return settings.subject || undefined;\n case 'send_sms':\n return settings.body || undefined;\n case 'create_task':\n return settings.title || undefined;\n case 'send_whatsapp':\n return settings.templateName || undefined;\n case 'update_patient_field':\n return settings.fieldLabel || undefined;\n case 'webhook':\n return settings.url || undefined;\n default:\n return undefined;\n }\n}\n\ntype TFn = (key: string, options?: Record<string, unknown>) => string;\n\nfunction resolveSummary(\n summary: SummaryKey | string | undefined,\n t: TFn,\n): string | undefined {\n if (summary === undefined) return undefined;\n if (typeof summary === 'string') return summary;\n return t(summary.key, summary.options);\n}\n\n/* ------------------------------------------------------------------ */\n/* Props */\n/* ------------------------------------------------------------------ */\n\nexport interface WorkflowMapProps extends VariantProps<typeof rootVariants> {\n /** Instance id surfaced as `data-component-id` on the root. */\n id?: string;\n /** Workflow graph (DAG-shaped, linear in v1). */\n graph: WorkflowGraph;\n /** Id of the currently active step. When unset, the map is structural. */\n activeNodeId?: string;\n /** When provided, nodes become focusable buttons. */\n onNodeClick?: (nodeId: string) => void;\n /** Optional leading criteria summary card — NOT part of the graph. */\n enrollmentCriteria?: EnrollmentCriteria;\n /** Orientation. @default 'vertical' */\n orientation?: 'vertical' | 'horizontal';\n /** Compact mode: smaller padding, hides settings summary text. */\n compact?: boolean;\n className?: string;\n /** Override the auto-generated aria-label on the list root. */\n 'aria-label'?: string;\n}\n\n/* ------------------------------------------------------------------ */\n/* Component */\n/* ------------------------------------------------------------------ */\n\ntype NodeState = 'completed' | 'current' | 'pending' | 'neutral';\n\nexport const WorkflowMap = forwardRef<HTMLOListElement, WorkflowMapProps>(\n function WorkflowMap(\n {\n graph,\n activeNodeId,\n onNodeClick,\n enrollmentCriteria,\n orientation = 'vertical',\n compact = false,\n className,\n 'aria-label': ariaLabelOverride,\n ...rest\n },\n ref,\n ) {\n const { t } = useTranslation();\n\n const ordered = useMemo(() => linearOrder(graph), [graph]);\n const activeIndex = useMemo(\n () =>\n activeNodeId ? ordered.findIndex((n) => n.id === activeNodeId) : -1,\n [ordered, activeNodeId],\n );\n\n const ariaLabel =\n ariaLabelOverride ?? t('workflow.map.label', { count: ordered.length });\n\n const nodeState = (index: number): NodeState => {\n if (activeIndex === -1) return 'neutral';\n if (index === activeIndex) return 'current';\n if (index < activeIndex) return 'completed';\n return 'pending';\n };\n\n return (\n // eslint-disable-next-line jsx-a11y/no-redundant-roles -- Safari strips the implicit list role on <ol> with list-style:none; this guard puts it back in the accessibility tree\n <ol\n ref={ref}\n role=\"list\"\n aria-label={ariaLabel}\n data-component=\"workflow-map\"\n data-component-id={rest.id}\n className={rootVariants({ orientation, compact, className })}\n {...rest}\n >\n {enrollmentCriteria ? (\n <EnrollmentCriteriaHeader\n orientation={orientation}\n compact={compact}\n criteria={enrollmentCriteria}\n />\n ) : null}\n {ordered.map((node, index) => {\n const state = nodeState(index);\n const isLast = index === ordered.length - 1;\n return (\n <MapNode\n key={node.id}\n node={node}\n state={state}\n orientation={orientation}\n compact={compact}\n isLast={isLast}\n onNodeClick={onNodeClick}\n />\n );\n })}\n </ol>\n );\n },\n);\n\nWorkflowMap.displayName = 'WorkflowMap';\n\n/* ------------------------------------------------------------------ */\n/* Internal: MapNode */\n/* ------------------------------------------------------------------ */\n\ninterface MapNodeProps {\n node: WorkflowNode;\n state: NodeState;\n orientation: 'vertical' | 'horizontal';\n compact: boolean;\n isLast: boolean;\n onNodeClick?: (nodeId: string) => void;\n}\n\nfunction MapNode({\n node,\n state,\n orientation,\n compact,\n isLast,\n onNodeClick,\n}: MapNodeProps) {\n const { t } = useTranslation();\n const meta = workflowActionRegistry[node.type];\n const Icon = iconByName[meta.iconName];\n const typeLabel = t(meta.labelKey);\n const summary = resolveSummary(summariseSettings(node.settings), t);\n const isInteractive = typeof onNodeClick === 'function';\n\n const isCurrent = state === 'current';\n const isCompleted = state === 'completed';\n\n const handleClick = (event: ReactMouseEvent<HTMLDivElement>) => {\n if (!isInteractive) return;\n event.preventDefault();\n onNodeClick?.(node.id);\n };\n\n const handleKeyDown = (event: ReactKeyboardEvent<HTMLDivElement>) => {\n if (!isInteractive) return;\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n onNodeClick?.(node.id);\n }\n };\n\n // sr-only state label so greyscale / colour-blind users get\n // an announceable state hint alongside the visual cue.\n const stateLabel = isCurrent\n ? t('workflow.map.current')\n : isCompleted\n ? t('workflow.map.completed')\n : state === 'pending'\n ? t('workflow.map.pending')\n : null;\n\n return (\n // `<li>` has implicit role=\"listitem\"; no explicit role needed.\n <li data-node-id={node.id} className={nodeWrapperVariants({ orientation })}>\n <div\n role={isInteractive ? 'button' : undefined}\n tabIndex={isInteractive ? 0 : undefined}\n aria-current={isCurrent ? 'step' : undefined}\n aria-label={\n isInteractive && compact\n ? summary\n ? t('workflow.map.nodeLabelWithSummary', {\n type: typeLabel,\n summary,\n })\n : t('workflow.map.nodeLabel', { type: typeLabel })\n : undefined\n }\n // Expose the full text on truncation (compact mode) so DE / CJK\n // long compound labels remain discoverable via tooltip.\n title={\n compact && summary\n ? t('workflow.map.nodeLabelWithSummary', {\n type: typeLabel,\n summary,\n })\n : undefined\n }\n onClick={isInteractive ? handleClick : undefined}\n onKeyDown={isInteractive ? handleKeyDown : undefined}\n className={nodeCardVariants({\n orientation,\n compact,\n state,\n interactive: isInteractive,\n })}\n data-node-id={node.id}\n data-state={state}\n >\n <span\n aria-hidden=\"true\"\n className=\"ds:flex ds:items-center ds:justify-center ds:shrink-0 ds:size-[var(--spacing-md)] ds:text-[var(--muted-foreground)]\"\n >\n {isCompleted ? (\n <Check\n className=\"ds:size-[var(--spacing-md)] ds:text-[color:var(--success)]\"\n data-testid=\"workflow-map-check\"\n />\n ) : (\n <Icon className=\"ds:size-[var(--spacing-md)]\" />\n )}\n </span>\n <span className=\"ds:flex ds:flex-col ds:min-w-0 ds:flex-1\">\n <span className={compact ? 'type-meta ds:truncate' : 'type-body-sm'}>\n {typeLabel}\n </span>\n {!compact && summary ? (\n <span\n className=\"type-meta ds:text-[var(--muted-foreground)]\"\n data-testid=\"workflow-map-summary\"\n >\n {summary}\n </span>\n ) : null}\n </span>\n {stateLabel ? <span className=\"ds:sr-only\">{stateLabel}</span> : null}\n </div>\n {!isLast ? (\n <span\n aria-hidden=\"true\"\n className={spacerVariants({ orientation, compact })}\n data-testid=\"workflow-map-connector\"\n />\n ) : null}\n </li>\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* Internal: Enrollment criteria header */\n/* ------------------------------------------------------------------ */\n\ninterface EnrollmentCriteriaHeaderProps {\n orientation: 'vertical' | 'horizontal';\n compact: boolean;\n criteria: EnrollmentCriteria;\n}\n\nfunction EnrollmentCriteriaHeader({\n orientation,\n compact,\n criteria,\n}: EnrollmentCriteriaHeaderProps) {\n const { t } = useTranslation();\n\n // Not part of the graph; rendered as a leading listitem. The root's\n // aria-label advertises the graph step count (not list-item count) so\n // the SR announcement stays accurate for the pipeline proper.\n return (\n <li className={nodeWrapperVariants({ orientation })}>\n <div\n className={nodeCardVariants({\n orientation,\n compact,\n state: 'neutral',\n interactive: false,\n })}\n data-testid=\"workflow-map-criteria\"\n >\n <span\n aria-hidden=\"true\"\n className=\"ds:flex ds:items-center ds:justify-center ds:shrink-0 ds:size-[var(--spacing-md)] ds:text-[var(--muted-foreground)]\"\n >\n <ListChecks className=\"ds:size-[var(--spacing-md)]\" />\n </span>\n <span className=\"ds:flex ds:flex-col ds:min-w-0 ds:flex-1\">\n <span className={compact ? 'type-meta ds:truncate' : 'type-body-sm'}>\n {t('workflow.editor.enrollmentCriteria')}\n </span>\n {!compact ? (\n <span className=\"type-meta ds:text-[var(--muted-foreground)]\">\n {criteria.summary ??\n t('workflow.editor.criteriaCount', {\n count: criteria.ruleCount,\n })}\n </span>\n ) : null}\n </span>\n </div>\n <span\n aria-hidden=\"true\"\n className={spacerVariants({ orientation, compact })}\n />\n </li>\n );\n}\n"],"names":["__iconNode","CircleDashed","createLucideIcon","CirclePause","PowerOff","Power","Smartphone","workflowCardVariants","cva","getStatusMeta","status","jsx","Circle","WorkflowCard","forwardRef","workflow","density","onView","onEdit","onDelete","onToggleActive","className","ref","t","useTranslation","statusMeta","isActive","isCompact","stop","handler","event","statusBadge","Badge","activeCountLabel","jsxs","Card","KeyValuePair","Timestamp","IconButton","Pencil","Trash2","workflowCardAgent","workflowMapAgent","workflowEditorAgent","handle","args","linearOrder","graph","linearEdges","e","targets","start","n","byId","edgesFrom","edge","bucket","seen","order","cursor","outgoing","node","addNodeAfter","afterNodeId","nodes","oldHead","otherEdges","removeNode","nodeId","incoming","kept","bridged","moveNode","direction","index","swapIndex","b","afterRemove","first","second","firstPredecessor","_a","step1","CORE_PATIENT_FIELDS","isCorePatientField","fieldId","workflowActionRegistry","ACTION_ICONS","Clock","Mail","CheckSquare","MessageCircle","UserCog","Globe","ActionIcon","iconName","Glyph","TRUNCATE_EMAIL","TRUNCATE_SMS","truncate","value","max","summariseSettings","settings","days","summary","subject","full","body","title","rootClasses","connectorClasses","addButtonClasses","nodeCardFocusableClasses","ALL_ACTION_TYPES","nodeIdCounter","generateNodeId","random","defaultSettingsFor","type","useMutableIndex","initial","useRef","setter","useCallback","v","ActionNodeCard","position","total","disabled","onMove","registerRef","meta","controlsRef","activeControl","setActiveControl","focusControl","controls","clamped","_b","handleCardKeyDown","handleControlsKeyDown","typeLabel","canMoveUp","canMoveDown","positionText","nodeAriaLabel","el","ChevronUp","ChevronDown","Alert","AddActionMenu","availableActions","onSelect","label","compact","DropdownMenu","Plus","CriteriaHeader","criteria","count","summaryText","WorkflowEditor","onChange","enrollmentCriteria","onEditEnrollmentCriteria","onEditNode","onDeleteNode","types","ordered","useMemo","nodeRefs","focusTargetRef","safeOnChange","next","id","currentStep","setCurrentStep","useState","currentStepRef","rootRef","useImperativeHandle","agentHandle","useAgentRegistration","useEffect","handleAddAfter","afterId","handleMove","handleEdit","handleDelete","renderBanner","renderCriteria","Fragment","EmptyState","Button","iconByName","rootVariants","nodeWrapperVariants","nodeCardVariants","spacerVariants","resolveSummary","WorkflowMap","activeNodeId","onNodeClick","orientation","ariaLabelOverride","rest","activeIndex","ariaLabel","nodeState","EnrollmentCriteriaHeader","state","isLast","MapNode","Icon","isInteractive","isCurrent","isCompleted","handleClick","handleKeyDown","stateLabel","Check","ListChecks"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4]}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { c as o } from "./createLucideIcon-CrFbzy84.js";
|
|
2
|
-
/**
|
|
3
|
-
* @license lucide-react v1.8.0 - ISC
|
|
4
|
-
*
|
|
5
|
-
* This source code is licensed under the ISC license.
|
|
6
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
7
|
-
*/
|
|
8
|
-
const c = [
|
|
9
|
-
["path", { d: "M18 6 6 18", key: "1bl5f8" }],
|
|
10
|
-
["path", { d: "m6 6 12 12", key: "d8bk6v" }]
|
|
11
|
-
], t = o("x", c);
|
|
12
|
-
export {
|
|
13
|
-
t as X
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=x-CCcI3eJp.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"x-CCcI3eJp.js","sources":["../../node_modules/lucide-react/dist/esm/icons/x.js"],"sourcesContent":["/**\n * @license lucide-react v1.8.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.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M18 6 6 18\", key: \"1bl5f8\" }],\n [\"path\", { d: \"m6 6 12 12\", key: \"d8bk6v\" }]\n];\nconst X = createLucideIcon(\"x\", __iconNode);\n\nexport { __iconNode, X as default };\n//# sourceMappingURL=x.js.map\n"],"names":["__iconNode","X","createLucideIcon"],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa;AAAA,EACjB,CAAC,QAAQ,EAAE,GAAG,cAAc,KAAK,SAAQ,CAAE;AAAA,EAC3C,CAAC,QAAQ,EAAE,GAAG,cAAc,KAAK,SAAQ,CAAE;AAC7C,GACMC,IAAIC,EAAiB,KAAKF,CAAU;","x_google_ignoreList":[0]}
|