@alfadocs/ui-kit-debug 0.70.0 → 0.71.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_chunks/address-fields-CPbFJ8e8.js +246 -0
- package/dist/_chunks/address-fields-CPbFJ8e8.js.map +1 -0
- package/dist/_chunks/{ai-prompt-input-CuhTo9mh.js → ai-prompt-input-V4DdOeqv.js} +2 -2
- package/dist/_chunks/{ai-prompt-input-CuhTo9mh.js.map → ai-prompt-input-V4DdOeqv.js.map} +1 -1
- package/dist/_chunks/{alia-sidebar-B47qRQb5.js → alia-sidebar-DvIUzIX9.js} +107 -106
- package/dist/_chunks/alia-sidebar-DvIUzIX9.js.map +1 -0
- package/dist/_chunks/{anatomy-scheme-CJB6dI6p.js → anatomy-scheme-CXSk11UJ.js} +2 -2
- package/dist/_chunks/{anatomy-scheme-CJB6dI6p.js.map → anatomy-scheme-CXSk11UJ.js.map} +1 -1
- package/dist/_chunks/{app-frame-BYx1gcV7.js → app-frame-DIEMIC5V.js} +67 -56
- package/dist/_chunks/app-frame-DIEMIC5V.js.map +1 -0
- package/dist/_chunks/{appointment-card-C06aZqA7.js → appointment-card-DVaeJNVB.js} +82 -98
- package/dist/_chunks/appointment-card-DVaeJNVB.js.map +1 -0
- package/dist/_chunks/{appointment-timeline-BJM0S_Fg.js → appointment-timeline-PJgnrjFb.js} +159 -157
- package/dist/_chunks/appointment-timeline-PJgnrjFb.js.map +1 -0
- package/dist/_chunks/{appointment-tray-DRRw5ROi.js → appointment-tray-B16QPGbm.js} +2 -2
- package/dist/_chunks/{appointment-tray-DRRw5ROi.js.map → appointment-tray-B16QPGbm.js.map} +1 -1
- package/dist/_chunks/{audio-recorder-Cpdk5qpQ.js → audio-recorder-DNDsOLqO.js} +2 -2
- package/dist/_chunks/{audio-recorder-Cpdk5qpQ.js.map → audio-recorder-DNDsOLqO.js.map} +1 -1
- package/dist/_chunks/{autocomplete-DOeGouCL.js → autocomplete-BrONKN8l.js} +168 -146
- package/dist/_chunks/autocomplete-BrONKN8l.js.map +1 -0
- package/dist/_chunks/{bishop-score-DnYWtZa_.js → bishop-score-Cym_TeQY.js} +2 -2
- package/dist/_chunks/{bishop-score-DnYWtZa_.js.map → bishop-score-Cym_TeQY.js.map} +1 -1
- package/dist/_chunks/{booking-DUBI0oqt.js → booking-C7do4vaR.js} +4 -4
- package/dist/_chunks/{booking-DUBI0oqt.js.map → booking-C7do4vaR.js.map} +1 -1
- package/dist/_chunks/{button-group-Ciq6J4IW.js → button-group-CvEnVzY7.js} +32 -35
- package/dist/_chunks/{button-group-Ciq6J4IW.js.map → button-group-CvEnVzY7.js.map} +1 -1
- package/dist/_chunks/{care-plan-card-C5sTfY9G.js → care-plan-card-DzPDYgtK.js} +3 -3
- package/dist/_chunks/{care-plan-card-C5sTfY9G.js.map → care-plan-card-DzPDYgtK.js.map} +1 -1
- package/dist/_chunks/{care-plan-entry-card-CXnxGCWA.js → care-plan-entry-card-CEnQy7YP.js} +3 -3
- package/dist/_chunks/{care-plan-entry-card-CXnxGCWA.js.map → care-plan-entry-card-CEnQy7YP.js.map} +1 -1
- package/dist/_chunks/care-plan-header-DcXFXWit.js +198 -0
- package/dist/_chunks/care-plan-header-DcXFXWit.js.map +1 -0
- package/dist/_chunks/{chat-message-3V54YipB.js → chat-message-DzpcJR-q.js} +25 -23
- package/dist/_chunks/chat-message-DzpcJR-q.js.map +1 -0
- package/dist/_chunks/city-input-Dkgaak7I.js +169 -0
- package/dist/_chunks/city-input-Dkgaak7I.js.map +1 -0
- package/dist/_chunks/clipboard-list-S7s-MXQq.js +25 -0
- package/dist/_chunks/clipboard-list-S7s-MXQq.js.map +1 -0
- package/dist/_chunks/{combobox-Clum7gJ1.js → combobox-DnqSF0IH.js} +131 -114
- package/dist/_chunks/combobox-DnqSF0IH.js.map +1 -0
- package/dist/_chunks/connection-status-CY1HV8Wg.js +108 -0
- package/dist/_chunks/connection-status-CY1HV8Wg.js.map +1 -0
- package/dist/_chunks/control-room-rail-FAQZrGVL.js +333 -0
- package/dist/_chunks/control-room-rail-FAQZrGVL.js.map +1 -0
- package/dist/_chunks/country-select-BwUZQvTa.js +709 -0
- package/dist/_chunks/country-select-BwUZQvTa.js.map +1 -0
- package/dist/_chunks/editable-currency-cell-renderer-CGELrkIj.js +410 -0
- package/dist/_chunks/editable-currency-cell-renderer-CGELrkIj.js.map +1 -0
- package/dist/_chunks/{entity-card-9_62gY7l.js → entity-card-DmrgYSEX.js} +4 -4
- package/dist/_chunks/{entity-card-9_62gY7l.js.map → entity-card-DmrgYSEX.js.map} +1 -1
- package/dist/_chunks/entity-summary-CaM1Y-xE.js +291 -0
- package/dist/_chunks/entity-summary-CaM1Y-xE.js.map +1 -0
- package/dist/_chunks/field-array-siUZzfYe.js +146 -0
- package/dist/_chunks/field-array-siUZzfYe.js.map +1 -0
- package/dist/_chunks/{field-value-NXYczdpO.js → field-value-3jMM0uDx.js} +2 -2
- package/dist/_chunks/field-value-3jMM0uDx.js.map +1 -0
- package/dist/_chunks/{gestational-age-calculator-CF2ISaYQ.js → gestational-age-calculator-DKzEV5Qi.js} +2 -2
- package/dist/_chunks/{gestational-age-calculator-CF2ISaYQ.js.map → gestational-age-calculator-DKzEV5Qi.js.map} +1 -1
- package/dist/_chunks/iban-input-B0TWzR1R.js +436 -0
- package/dist/_chunks/iban-input-B0TWzR1R.js.map +1 -0
- package/dist/_chunks/icon-picker-0B7KhrF1.js +272 -0
- package/dist/_chunks/icon-picker-0B7KhrF1.js.map +1 -0
- package/dist/_chunks/image-cropper-D9jqJy19.js +367 -0
- package/dist/_chunks/image-cropper-D9jqJy19.js.map +1 -0
- package/dist/_chunks/{link-cell-renderer-CTXqtXV-.js → link-cell-renderer-De_SLjSq.js} +262 -261
- package/dist/_chunks/link-cell-renderer-De_SLjSq.js.map +1 -0
- package/dist/_chunks/list-checks-BUs75d_o.js +18 -0
- package/dist/_chunks/list-checks-BUs75d_o.js.map +1 -0
- package/dist/_chunks/{marketplace-app-shell-Skhfp6vK.js → marketplace-app-shell-BGqkywsi.js} +3 -3
- package/dist/_chunks/{marketplace-app-shell-Skhfp6vK.js.map → marketplace-app-shell-BGqkywsi.js.map} +1 -1
- package/dist/_chunks/message-card-DsHFFiL1.js +319 -0
- package/dist/_chunks/message-card-DsHFFiL1.js.map +1 -0
- package/dist/_chunks/{message-tray-DwrBLJlf.js → message-tray-C0a6CL1_.js} +172 -135
- package/dist/_chunks/message-tray-C0a6CL1_.js.map +1 -0
- package/dist/_chunks/{multi-select-BdHHDrRN.js → multi-select-WE4S9FIF.js} +75 -63
- package/dist/_chunks/{multi-select-BdHHDrRN.js.map → multi-select-WE4S9FIF.js.map} +1 -1
- package/dist/_chunks/nav-grid-9xphY3FM.js +169 -0
- package/dist/_chunks/nav-grid-9xphY3FM.js.map +1 -0
- package/dist/_chunks/notes-panel-DXiMfuvp.js +320 -0
- package/dist/_chunks/notes-panel-DXiMfuvp.js.map +1 -0
- package/dist/_chunks/notification-card-BMqNzCIt.js +290 -0
- package/dist/_chunks/notification-card-BMqNzCIt.js.map +1 -0
- package/dist/_chunks/{notification-tray-AEun6DN2.js → notification-tray-BmUlCx3g.js} +201 -166
- package/dist/_chunks/notification-tray-BmUlCx3g.js.map +1 -0
- package/dist/_chunks/{operator-hero-CR0Rqh4-.js → operator-hero-BO8TqzX2.js} +2 -2
- package/dist/_chunks/{operator-hero-CR0Rqh4-.js.map → operator-hero-BO8TqzX2.js.map} +1 -1
- package/dist/_chunks/panel-header-D313n_9-.js +105 -0
- package/dist/_chunks/panel-header-D313n_9-.js.map +1 -0
- package/dist/_chunks/{patient-details-Dlhqb5ig.js → patient-details-DgfTJimE.js} +280 -196
- package/dist/_chunks/patient-details-DgfTJimE.js.map +1 -0
- package/dist/_chunks/{patient-search-Be6cLrHR.js → patient-search-CSWQKOSP.js} +2 -2
- package/dist/_chunks/{patient-search-Be6cLrHR.js.map → patient-search-CSWQKOSP.js.map} +1 -1
- package/dist/_chunks/{patient-shell-DV3XEtIB.js → patient-shell-BMwsIKlW.js} +3 -3
- package/dist/_chunks/{patient-shell-DV3XEtIB.js.map → patient-shell-BMwsIKlW.js.map} +1 -1
- package/dist/_chunks/{patient-summary-card-WySCMwwA.js → patient-summary-card-D4NdgYJB.js} +27 -12
- package/dist/_chunks/{patient-summary-card-WySCMwwA.js.map → patient-summary-card-D4NdgYJB.js.map} +1 -1
- package/dist/_chunks/{patient-table-CHxf3Oqk.js → patient-table-CERknpd8.js} +3 -3
- package/dist/_chunks/{patient-table-CHxf3Oqk.js.map → patient-table-CERknpd8.js.map} +1 -1
- package/dist/_chunks/{payment-request-card-BcZJwu9z.js → payment-request-card-Blf-MFNY.js} +2 -2
- package/dist/_chunks/{payment-request-card-BcZJwu9z.js.map → payment-request-card-Blf-MFNY.js.map} +1 -1
- package/dist/_chunks/permission-matrix-Bw5oexUt.js +174 -0
- package/dist/_chunks/permission-matrix-Bw5oexUt.js.map +1 -0
- package/dist/_chunks/position-grid-CcvqHaKN.js +169 -0
- package/dist/_chunks/position-grid-CcvqHaKN.js.map +1 -0
- package/dist/_chunks/postal-code-input-UCOYuRY2.js +192 -0
- package/dist/_chunks/postal-code-input-UCOYuRY2.js.map +1 -0
- package/dist/_chunks/{practice-results-C6qDfxos.js → practice-results-El5Z-oVp.js} +2 -2
- package/dist/_chunks/{practice-results-C6qDfxos.js.map → practice-results-El5Z-oVp.js.map} +1 -1
- package/dist/_chunks/{pregnancy-dating-CRVWswD-.js → pregnancy-dating-CunHrOpO.js} +2 -2
- package/dist/_chunks/{pregnancy-dating-CRVWswD-.js.map → pregnancy-dating-CunHrOpO.js.map} +1 -1
- package/dist/_chunks/{product-hub-panel-e6pW220e.js → product-hub-panel-DtU7KXxm.js} +257 -217
- package/dist/_chunks/product-hub-panel-DtU7KXxm.js.map +1 -0
- package/dist/_chunks/province-select-D_TZvix3.js +261 -0
- package/dist/_chunks/province-select-D_TZvix3.js.map +1 -0
- package/dist/_chunks/{public-header.agent-DqkqA-ca.js → public-header.agent-TxmC_x1I.js} +2 -2
- package/dist/_chunks/{public-header.agent-DqkqA-ca.js.map → public-header.agent-TxmC_x1I.js.map} +1 -1
- package/dist/_chunks/radiograph-panel.agent-tWjN2nHX.js +553 -0
- package/dist/_chunks/radiograph-panel.agent-tWjN2nHX.js.map +1 -0
- package/dist/_chunks/reviews-panel-DxkSrgMl.js +559 -0
- package/dist/_chunks/reviews-panel-DxkSrgMl.js.map +1 -0
- package/dist/_chunks/rich-text-editor-C8tyGjfb.js +2621 -0
- package/dist/_chunks/rich-text-editor-C8tyGjfb.js.map +1 -0
- package/dist/_chunks/{scroll-area-5wNK0Cyz.js → scroll-area-BZOvUhwQ.js} +2 -2
- package/dist/_chunks/scroll-area-BZOvUhwQ.js.map +1 -0
- package/dist/_chunks/{select-DMLG44F5.js → select-KsyRr8WH.js} +114 -102
- package/dist/_chunks/select-KsyRr8WH.js.map +1 -0
- package/dist/_chunks/{sheet-BxsE7eQm.js → sheet-umkfZjF6.js} +53 -42
- package/dist/_chunks/sheet-umkfZjF6.js.map +1 -0
- package/dist/_chunks/{sidebar-DY9jGjgt.js → sidebar-QCp9wHNP.js} +125 -113
- package/dist/_chunks/sidebar-QCp9wHNP.js.map +1 -0
- package/dist/_chunks/{tabs-BxcOziCo.js → tabs-CYZVKKDl.js} +2 -2
- package/dist/_chunks/{tabs-BxcOziCo.js.map → tabs-CYZVKKDl.js.map} +1 -1
- package/dist/_chunks/task-card-DCdsI0ZT.js +189 -0
- package/dist/_chunks/task-card-DCdsI0ZT.js.map +1 -0
- package/dist/_chunks/{task-tray-qOEQflu4.js → task-tray-DNVejijD.js} +2 -2
- package/dist/_chunks/{task-tray-qOEQflu4.js.map → task-tray-DNVejijD.js.map} +1 -1
- package/dist/_chunks/tasks-panel-C9odmawT.js +757 -0
- package/dist/_chunks/tasks-panel-C9odmawT.js.map +1 -0
- package/dist/_chunks/token-insert-menu-CFQqTe_n.js +147 -0
- package/dist/_chunks/token-insert-menu-CFQqTe_n.js.map +1 -0
- package/dist/_chunks/{ai-tools-rail-B5NEghsp.js → tool-rail-BZx0-yIr.js} +152 -139
- package/dist/_chunks/tool-rail-BZx0-yIr.js.map +1 -0
- package/dist/_chunks/{tooth-scheme-BhQoPNBD.js → tooth-scheme-DJZtzfeY.js} +470 -468
- package/dist/_chunks/tooth-scheme-DJZtzfeY.js.map +1 -0
- package/dist/_chunks/{transcript-panel-3THQX6nJ.js → transcript-panel-CHGHHHdT.js} +95 -83
- package/dist/_chunks/transcript-panel-CHGHHHdT.js.map +1 -0
- package/dist/_chunks/{unit-converter-YEpD9evj.js → unit-converter-CwlZbfdn.js} +2 -2
- package/dist/_chunks/{unit-converter-YEpD9evj.js.map → unit-converter-CwlZbfdn.js.map} +1 -1
- package/dist/_chunks/use-edge-resize-ZnGG7gyO.js.map +1 -1
- package/dist/_chunks/{workflow-map-Dy8mLCqF.js → workflow-map-M8MBBHQm.js} +106 -118
- package/dist/_chunks/workflow-map-M8MBBHQm.js.map +1 -0
- package/dist/agent-catalog.json +2062 -226
- package/dist/agent-i18n/en.json +206 -8
- package/dist/components/_shared/option.d.ts +2 -0
- package/dist/components/_shared/option.d.ts.map +1 -1
- package/dist/components/_shared/patient-fields.d.ts +1 -1
- package/dist/components/_shared/patient-fields.d.ts.map +1 -1
- package/dist/components/address-fields/address-fields.agent.d.ts +9 -0
- package/dist/components/address-fields/address-fields.agent.d.ts.map +1 -0
- package/dist/components/address-fields/address-fields.d.ts +29 -0
- package/dist/components/address-fields/address-fields.d.ts.map +1 -0
- package/dist/components/address-fields/index.d.ts +5 -0
- package/dist/components/address-fields/index.d.ts.map +1 -0
- package/dist/components/address-fields/index.js +6 -0
- package/dist/components/ai-prompt-input/index.js +1 -1
- package/dist/components/anatomy-scheme/index.js +1 -1
- package/dist/components/app-frame/app-frame.d.ts +2 -2
- package/dist/components/app-frame/app-frame.d.ts.map +1 -1
- package/dist/components/app-frame/index.js +1 -1
- package/dist/components/appointment-card/appointment-card.d.ts.map +1 -1
- package/dist/components/appointment-card/index.js +2 -2
- package/dist/components/appointment-timeline/appointment-timeline.d.ts.map +1 -1
- package/dist/components/appointment-timeline/index.js +1 -1
- package/dist/components/audio-recorder/index.js +1 -1
- package/dist/components/autocomplete/autocomplete.d.ts +10 -0
- package/dist/components/autocomplete/autocomplete.d.ts.map +1 -1
- package/dist/components/autocomplete/index.js +1 -1
- package/dist/components/bishop-score/index.js +1 -1
- package/dist/components/booking/index.js +1 -1
- package/dist/components/button-group/button-group.d.ts.map +1 -1
- package/dist/components/button-group/index.js +1 -1
- package/dist/components/care-plan-card/index.js +1 -1
- package/dist/components/care-plan-entry-card/index.js +1 -1
- package/dist/components/care-plan-header/care-plan-header.d.ts +16 -5
- package/dist/components/care-plan-header/care-plan-header.d.ts.map +1 -1
- package/dist/components/care-plan-header/index.js +1 -1
- package/dist/components/chat-message/chat-message.d.ts.map +1 -1
- package/dist/components/chat-message/index.js +1 -1
- package/dist/components/city-input/city-input.agent.d.ts +8 -0
- package/dist/components/city-input/city-input.agent.d.ts.map +1 -0
- package/dist/components/city-input/city-input.d.ts +57 -0
- package/dist/components/city-input/city-input.d.ts.map +1 -0
- package/dist/components/city-input/index.d.ts +5 -0
- package/dist/components/city-input/index.d.ts.map +1 -0
- package/dist/components/city-input/index.js +6 -0
- package/dist/components/city-input/index.js.map +1 -0
- package/dist/components/combobox/combobox.d.ts +17 -0
- package/dist/components/combobox/combobox.d.ts.map +1 -1
- package/dist/components/combobox/index.js +1 -1
- package/dist/components/connection-status/connection-status.agent.d.ts +4 -0
- package/dist/components/connection-status/connection-status.agent.d.ts.map +1 -0
- package/dist/components/connection-status/connection-status.d.ts +36 -0
- package/dist/components/connection-status/connection-status.d.ts.map +1 -0
- package/dist/components/connection-status/index.d.ts +4 -0
- package/dist/components/connection-status/index.d.ts.map +1 -0
- package/dist/components/connection-status/index.js +6 -0
- package/dist/components/connection-status/index.js.map +1 -0
- package/dist/components/control-room-rail/control-room-context.d.ts +5 -5
- package/dist/components/control-room-rail/control-room-context.d.ts.map +1 -1
- package/dist/components/control-room-rail/control-room-rail.agent.d.ts +4 -0
- package/dist/components/control-room-rail/control-room-rail.agent.d.ts.map +1 -0
- package/dist/components/control-room-rail/control-room-rail.d.ts +5 -5
- package/dist/components/control-room-rail/control-room-rail.d.ts.map +1 -1
- package/dist/components/control-room-rail/index.d.ts +1 -0
- package/dist/components/control-room-rail/index.d.ts.map +1 -1
- package/dist/components/control-room-rail/index.js +4 -3
- package/dist/components/counter/counter.d.ts +1 -1
- package/dist/components/country-select/country-select.agent.d.ts +8 -0
- package/dist/components/country-select/country-select.agent.d.ts.map +1 -0
- package/dist/components/country-select/country-select.d.ts +51 -0
- package/dist/components/country-select/country-select.d.ts.map +1 -0
- package/dist/components/country-select/index.d.ts +6 -0
- package/dist/components/country-select/index.d.ts.map +1 -0
- package/dist/components/country-select/index.js +9 -0
- package/dist/components/country-select/index.js.map +1 -0
- package/dist/components/country-select/iso-3166.d.ts +15 -0
- package/dist/components/country-select/iso-3166.d.ts.map +1 -0
- package/dist/components/data-table/cell-renderers/reorder-cell-renderer.d.ts +34 -0
- package/dist/components/data-table/cell-renderers/reorder-cell-renderer.d.ts.map +1 -0
- package/dist/components/data-table/filters/select-filter.d.ts.map +1 -1
- package/dist/components/data-table/index.d.ts +2 -0
- package/dist/components/data-table/index.d.ts.map +1 -1
- package/dist/components/data-table/index.js +13 -11
- package/dist/components/entity-summary/entity-summary.agent.d.ts +4 -0
- package/dist/components/entity-summary/entity-summary.agent.d.ts.map +1 -0
- package/dist/components/entity-summary/entity-summary.d.ts +53 -4
- package/dist/components/entity-summary/entity-summary.d.ts.map +1 -1
- package/dist/components/entity-summary/index.js +1 -1
- package/dist/components/field-array/field-array.agent.d.ts +4 -0
- package/dist/components/field-array/field-array.agent.d.ts.map +1 -0
- package/dist/components/field-array/field-array.d.ts +45 -0
- package/dist/components/field-array/field-array.d.ts.map +1 -0
- package/dist/components/field-array/index.d.ts +4 -0
- package/dist/components/field-array/index.d.ts.map +1 -0
- package/dist/components/field-array/index.js +6 -0
- package/dist/components/field-array/index.js.map +1 -0
- package/dist/components/freemium-paywall/freemium-paywall.d.ts +1 -1
- package/dist/components/gestational-age-calculator/index.js +1 -1
- package/dist/components/iban-input/iban-input.agent.d.ts +4 -0
- package/dist/components/iban-input/iban-input.agent.d.ts.map +1 -0
- package/dist/components/iban-input/iban-input.d.ts +51 -0
- package/dist/components/iban-input/iban-input.d.ts.map +1 -0
- package/dist/components/iban-input/index.d.ts +5 -0
- package/dist/components/iban-input/index.d.ts.map +1 -0
- package/dist/components/iban-input/index.js +13 -0
- package/dist/components/iban-input/index.js.map +1 -0
- package/dist/components/iban-input/is-valid-iban.d.ts +31 -0
- package/dist/components/iban-input/is-valid-iban.d.ts.map +1 -0
- package/dist/components/icon-picker/icon-picker.agent.d.ts +4 -0
- package/dist/components/icon-picker/icon-picker.agent.d.ts.map +1 -0
- package/dist/components/icon-picker/icon-picker.d.ts +41 -0
- package/dist/components/icon-picker/icon-picker.d.ts.map +1 -0
- package/dist/components/icon-picker/index.d.ts +4 -0
- package/dist/components/icon-picker/index.d.ts.map +1 -0
- package/dist/components/icon-picker/index.js +6 -0
- package/dist/components/icon-picker/index.js.map +1 -0
- package/dist/components/image-cropper/crop-geometry.d.ts +30 -0
- package/dist/components/image-cropper/crop-geometry.d.ts.map +1 -0
- package/dist/components/image-cropper/image-cropper.agent.d.ts +4 -0
- package/dist/components/image-cropper/image-cropper.agent.d.ts.map +1 -0
- package/dist/components/image-cropper/image-cropper.d.ts +32 -0
- package/dist/components/image-cropper/image-cropper.d.ts.map +1 -0
- package/dist/components/image-cropper/index.d.ts +5 -0
- package/dist/components/image-cropper/index.d.ts.map +1 -0
- package/dist/components/image-cropper/index.js +11 -0
- package/dist/components/image-cropper/index.js.map +1 -0
- package/dist/components/index.d.ts +16 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/message-card/index.js +1 -1
- package/dist/components/message-card/message-card.d.ts +14 -0
- package/dist/components/message-card/message-card.d.ts.map +1 -1
- package/dist/components/message-tray/index.js +1 -1
- package/dist/components/message-tray/message-tray.agent.d.ts.map +1 -1
- package/dist/components/message-tray/message-tray.d.ts +4 -0
- package/dist/components/message-tray/message-tray.d.ts.map +1 -1
- package/dist/components/multi-select/index.js +1 -1
- package/dist/components/multi-select/multi-select.d.ts.map +1 -1
- package/dist/components/nav-grid/index.d.ts +4 -0
- package/dist/components/nav-grid/index.d.ts.map +1 -0
- package/dist/components/nav-grid/index.js +7 -0
- package/dist/components/nav-grid/index.js.map +1 -0
- package/dist/components/nav-grid/nav-grid.agent.d.ts +4 -0
- package/dist/components/nav-grid/nav-grid.agent.d.ts.map +1 -0
- package/dist/components/nav-grid/nav-grid.d.ts +41 -0
- package/dist/components/nav-grid/nav-grid.d.ts.map +1 -0
- package/dist/components/notes-panel/index.js +1 -1
- package/dist/components/notes-panel/notes-panel.agent.d.ts +4 -0
- package/dist/components/notes-panel/notes-panel.agent.d.ts.map +1 -0
- package/dist/components/notes-panel/notes-panel.d.ts +30 -0
- package/dist/components/notes-panel/notes-panel.d.ts.map +1 -1
- package/dist/components/notification-card/index.js +1 -1
- package/dist/components/notification-card/notification-card.d.ts +15 -0
- package/dist/components/notification-card/notification-card.d.ts.map +1 -1
- package/dist/components/notification-tray/index.js +1 -1
- package/dist/components/notification-tray/notification-tray.agent.d.ts.map +1 -1
- package/dist/components/notification-tray/notification-tray.d.ts +4 -0
- package/dist/components/notification-tray/notification-tray.d.ts.map +1 -1
- package/dist/components/operator-hero/index.js +1 -1
- package/dist/components/panel-header/index.d.ts +3 -0
- package/dist/components/panel-header/index.d.ts.map +1 -0
- package/dist/components/panel-header/index.js +7 -0
- package/dist/components/panel-header/index.js.map +1 -0
- package/dist/components/panel-header/panel-header.d.ts +41 -0
- package/dist/components/panel-header/panel-header.d.ts.map +1 -0
- package/dist/components/patient-details/index.js +1 -1
- package/dist/components/patient-details/patient-details.d.ts.map +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-summary-card/patient-summary-card.d.ts.map +1 -1
- package/dist/components/patient-table/index.js +1 -1
- package/dist/components/payment-card/index.js +1 -1
- package/dist/components/permission-matrix/index.d.ts +4 -0
- package/dist/components/permission-matrix/index.d.ts.map +1 -0
- package/dist/components/permission-matrix/index.js +7 -0
- package/dist/components/permission-matrix/index.js.map +1 -0
- package/dist/components/permission-matrix/permission-matrix.agent.d.ts +4 -0
- package/dist/components/permission-matrix/permission-matrix.agent.d.ts.map +1 -0
- package/dist/components/permission-matrix/permission-matrix.d.ts +47 -0
- package/dist/components/permission-matrix/permission-matrix.d.ts.map +1 -0
- package/dist/components/position-grid/index.d.ts +4 -0
- package/dist/components/position-grid/index.d.ts.map +1 -0
- package/dist/components/position-grid/index.js +7 -0
- package/dist/components/position-grid/index.js.map +1 -0
- package/dist/components/position-grid/position-grid.agent.d.ts +4 -0
- package/dist/components/position-grid/position-grid.agent.d.ts.map +1 -0
- package/dist/components/position-grid/position-grid.d.ts +39 -0
- package/dist/components/position-grid/position-grid.d.ts.map +1 -0
- package/dist/components/postal-code-input/index.d.ts +5 -0
- package/dist/components/postal-code-input/index.d.ts.map +1 -0
- package/dist/components/postal-code-input/index.js +6 -0
- package/dist/components/postal-code-input/index.js.map +1 -0
- package/dist/components/postal-code-input/postal-code-input.agent.d.ts +8 -0
- package/dist/components/postal-code-input/postal-code-input.agent.d.ts.map +1 -0
- package/dist/components/postal-code-input/postal-code-input.d.ts +27 -0
- package/dist/components/postal-code-input/postal-code-input.d.ts.map +1 -0
- package/dist/components/practice-results/index.js +1 -1
- package/dist/components/pregnancy-dating/index.js +1 -1
- package/dist/components/product-hub-tray/index.js +1 -1
- package/dist/components/product-hub-tray/product-hub-tray.d.ts +13 -1
- package/dist/components/product-hub-tray/product-hub-tray.d.ts.map +1 -1
- package/dist/components/province-select/index.d.ts +6 -0
- package/dist/components/province-select/index.d.ts.map +1 -0
- package/dist/components/province-select/index.js +7 -0
- package/dist/components/province-select/index.js.map +1 -0
- package/dist/components/province-select/it-provinces.d.ts +8 -0
- package/dist/components/province-select/it-provinces.d.ts.map +1 -0
- package/dist/components/province-select/province-select.agent.d.ts +8 -0
- package/dist/components/province-select/province-select.agent.d.ts.map +1 -0
- package/dist/components/province-select/province-select.d.ts +38 -0
- package/dist/components/province-select/province-select.d.ts.map +1 -0
- package/dist/components/public-footer/public-footer.d.ts +1 -1
- package/dist/components/public-header/index.js +1 -1
- package/dist/components/radiograph-panel/index.js +1 -1
- package/dist/components/radiograph-panel/radiograph-panel.d.ts.map +1 -1
- package/dist/components/reviews-panel/index.js +1 -1
- package/dist/components/reviews-panel/reviews-panel.d.ts.map +1 -1
- package/dist/components/rich-text-editor/editor-toolbar.d.ts +17 -0
- package/dist/components/rich-text-editor/editor-toolbar.d.ts.map +1 -1
- package/dist/components/rich-text-editor/index.js +1 -1
- package/dist/components/rich-text-editor/rich-text-editor.agent.d.ts.map +1 -1
- package/dist/components/rich-text-editor/rich-text-editor.d.ts.map +1 -1
- package/dist/components/scroll-area/index.js +1 -1
- package/dist/components/select/index.js +1 -1
- package/dist/components/select/select.d.ts +8 -2
- package/dist/components/select/select.d.ts.map +1 -1
- package/dist/components/sheet/index.js +1 -1
- package/dist/components/sheet/sheet.d.ts.map +1 -1
- package/dist/components/sidebar/index.js +1 -1
- package/dist/components/sidebar/sidebar.d.ts.map +1 -1
- package/dist/components/skeleton/skeleton.d.ts +1 -1
- package/dist/components/tabs/index.js +1 -1
- package/dist/components/task-card/index.js +1 -1
- package/dist/components/task-card/task-card.d.ts +14 -6
- package/dist/components/task-card/task-card.d.ts.map +1 -1
- package/dist/components/task-tray/index.js +1 -1
- package/dist/components/tasks-panel/index.d.ts +4 -0
- package/dist/components/tasks-panel/index.d.ts.map +1 -0
- package/dist/components/tasks-panel/index.js +6 -0
- package/dist/components/tasks-panel/index.js.map +1 -0
- package/dist/components/tasks-panel/tasks-panel.agent.d.ts +4 -0
- package/dist/components/tasks-panel/tasks-panel.agent.d.ts.map +1 -0
- package/dist/components/tasks-panel/tasks-panel.d.ts +152 -0
- package/dist/components/tasks-panel/tasks-panel.d.ts.map +1 -0
- package/dist/components/token-insert-menu/index.d.ts +4 -0
- package/dist/components/token-insert-menu/index.d.ts.map +1 -0
- package/dist/components/token-insert-menu/index.js +6 -0
- package/dist/components/token-insert-menu/index.js.map +1 -0
- package/dist/components/token-insert-menu/token-insert-menu.agent.d.ts +4 -0
- package/dist/components/token-insert-menu/token-insert-menu.agent.d.ts.map +1 -0
- package/dist/components/token-insert-menu/token-insert-menu.d.ts +33 -0
- package/dist/components/token-insert-menu/token-insert-menu.d.ts.map +1 -0
- package/dist/components/tool-rail/index.d.ts +4 -0
- package/dist/components/tool-rail/index.d.ts.map +1 -0
- package/dist/components/tool-rail/index.js +6 -0
- package/dist/components/tool-rail/index.js.map +1 -0
- package/dist/components/tool-rail/tool-rail.agent.d.ts +4 -0
- package/dist/components/tool-rail/tool-rail.agent.d.ts.map +1 -0
- package/dist/components/{ai-tools-rail/ai-tools-rail.d.ts → tool-rail/tool-rail.d.ts} +29 -12
- package/dist/components/tool-rail/tool-rail.d.ts.map +1 -0
- package/dist/components/tooth-scheme/index.js +1 -1
- package/dist/components/tooth-scheme/tooth-scheme.d.ts +9 -0
- package/dist/components/tooth-scheme/tooth-scheme.d.ts.map +1 -1
- package/dist/components/transcript-panel/index.js +1 -1
- package/dist/components/transcript-panel/transcript-panel.d.ts +2 -2
- package/dist/components/transcript-panel/transcript-panel.d.ts.map +1 -1
- package/dist/components/unit-converter/index.js +1 -1
- package/dist/components/workflow/index.js +1 -1
- package/dist/hooks/use-edge-resize.d.ts +2 -2
- package/dist/i18n/locales/ar.d.ts +167 -2
- package/dist/i18n/locales/ar.d.ts.map +1 -1
- package/dist/i18n/locales/ar.js +157 -5
- package/dist/i18n/locales/ar.js.map +1 -1
- package/dist/i18n/locales/de.d.ts +167 -2
- package/dist/i18n/locales/de.d.ts.map +1 -1
- package/dist/i18n/locales/de.js +159 -5
- package/dist/i18n/locales/de.js.map +1 -1
- package/dist/i18n/locales/el.d.ts +167 -2
- package/dist/i18n/locales/el.d.ts.map +1 -1
- package/dist/i18n/locales/el.js +164 -5
- package/dist/i18n/locales/el.js.map +1 -1
- package/dist/i18n/locales/en.d.ts +167 -2
- package/dist/i18n/locales/en.d.ts.map +1 -1
- package/dist/i18n/locales/en.js +170 -5
- package/dist/i18n/locales/en.js.map +1 -1
- package/dist/i18n/locales/es.d.ts +167 -2
- package/dist/i18n/locales/es.d.ts.map +1 -1
- package/dist/i18n/locales/es.js +156 -5
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.d.ts +167 -2
- package/dist/i18n/locales/fr.d.ts.map +1 -1
- package/dist/i18n/locales/fr.js +159 -5
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hi.d.ts +167 -2
- package/dist/i18n/locales/hi.d.ts.map +1 -1
- package/dist/i18n/locales/hi.js +155 -5
- package/dist/i18n/locales/hi.js.map +1 -1
- package/dist/i18n/locales/it.d.ts +167 -2
- package/dist/i18n/locales/it.d.ts.map +1 -1
- package/dist/i18n/locales/it.js +159 -5
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/ja.d.ts +167 -2
- package/dist/i18n/locales/ja.d.ts.map +1 -1
- package/dist/i18n/locales/ja.js +160 -5
- package/dist/i18n/locales/ja.js.map +1 -1
- package/dist/i18n/locales/nl.d.ts +167 -2
- package/dist/i18n/locales/nl.d.ts.map +1 -1
- package/dist/i18n/locales/nl.js +152 -5
- package/dist/i18n/locales/nl.js.map +1 -1
- package/dist/i18n/locales/pl.d.ts +167 -2
- package/dist/i18n/locales/pl.d.ts.map +1 -1
- package/dist/i18n/locales/pl.js +160 -5
- package/dist/i18n/locales/pl.js.map +1 -1
- package/dist/i18n/locales/pt.d.ts +167 -2
- package/dist/i18n/locales/pt.d.ts.map +1 -1
- package/dist/i18n/locales/pt.js +164 -5
- package/dist/i18n/locales/pt.js.map +1 -1
- package/dist/i18n/locales/ro.d.ts +167 -2
- package/dist/i18n/locales/ro.d.ts.map +1 -1
- package/dist/i18n/locales/ro.js +164 -5
- package/dist/i18n/locales/ro.js.map +1 -1
- package/dist/i18n/locales/ru.d.ts +167 -2
- package/dist/i18n/locales/ru.d.ts.map +1 -1
- package/dist/i18n/locales/ru.js +157 -5
- package/dist/i18n/locales/ru.js.map +1 -1
- package/dist/i18n/locales/sq.d.ts +167 -2
- package/dist/i18n/locales/sq.d.ts.map +1 -1
- package/dist/i18n/locales/sq.js +161 -5
- package/dist/i18n/locales/sq.js.map +1 -1
- package/dist/i18n/locales/sv.d.ts +167 -2
- package/dist/i18n/locales/sv.d.ts.map +1 -1
- package/dist/i18n/locales/sv.js +159 -5
- package/dist/i18n/locales/sv.js.map +1 -1
- package/dist/i18n/locales/tr.d.ts +167 -2
- package/dist/i18n/locales/tr.d.ts.map +1 -1
- package/dist/i18n/locales/tr.js +157 -5
- package/dist/i18n/locales/tr.js.map +1 -1
- package/dist/i18n/locales/zh.d.ts +167 -2
- package/dist/i18n/locales/zh.d.ts.map +1 -1
- package/dist/i18n/locales/zh.js +152 -5
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/index.js +823 -755
- package/dist/index.js.map +1 -1
- package/dist/locales/ar.json +170 -5
- package/dist/locales/de.json +170 -5
- package/dist/locales/el.json +170 -5
- package/dist/locales/en.json +170 -5
- package/dist/locales/es.json +170 -5
- package/dist/locales/fr.json +170 -5
- package/dist/locales/hi.json +170 -5
- package/dist/locales/it.json +170 -5
- package/dist/locales/ja.json +170 -5
- package/dist/locales/nl.json +170 -5
- package/dist/locales/pl.json +170 -5
- package/dist/locales/pt.json +170 -5
- package/dist/locales/ro.json +170 -5
- package/dist/locales/ru.json +170 -5
- package/dist/locales/sq.json +170 -5
- package/dist/locales/sv.json +170 -5
- package/dist/locales/tr.json +170 -5
- package/dist/locales/zh.json +170 -5
- package/dist/patterns/alia-assistant/alia-chat-surface.d.ts.map +1 -1
- package/dist/patterns/alia-assistant/alia-types.d.ts +9 -0
- package/dist/patterns/alia-assistant/alia-types.d.ts.map +1 -1
- package/dist/patterns/alia-assistant/index.js +1 -1
- package/dist/patterns/marketplace-app-shell/index.js +1 -1
- package/dist/patterns/patient-shell/index.js +1 -1
- package/dist/tokens.css +9 -1
- package/package.json +65 -5
- package/dist/_chunks/ai-tools-rail-B5NEghsp.js.map +0 -1
- package/dist/_chunks/alia-sidebar-B47qRQb5.js.map +0 -1
- package/dist/_chunks/app-frame-BYx1gcV7.js.map +0 -1
- package/dist/_chunks/appointment-card-C06aZqA7.js.map +0 -1
- package/dist/_chunks/appointment-timeline-BJM0S_Fg.js.map +0 -1
- package/dist/_chunks/autocomplete-DOeGouCL.js.map +0 -1
- package/dist/_chunks/care-plan-header-BUwqDTtz.js +0 -206
- package/dist/_chunks/care-plan-header-BUwqDTtz.js.map +0 -1
- package/dist/_chunks/chat-message-3V54YipB.js.map +0 -1
- package/dist/_chunks/combobox-Clum7gJ1.js.map +0 -1
- package/dist/_chunks/control-room-rail-Y8ryLYsP.js +0 -229
- package/dist/_chunks/control-room-rail-Y8ryLYsP.js.map +0 -1
- package/dist/_chunks/editable-currency-cell-renderer-C9twtALM.js +0 -328
- package/dist/_chunks/editable-currency-cell-renderer-C9twtALM.js.map +0 -1
- package/dist/_chunks/entity-summary-BxRjFh_4.js +0 -138
- package/dist/_chunks/entity-summary-BxRjFh_4.js.map +0 -1
- package/dist/_chunks/field-value-NXYczdpO.js.map +0 -1
- package/dist/_chunks/link-cell-renderer-CTXqtXV-.js.map +0 -1
- package/dist/_chunks/message-card-Bx4GmLvf.js +0 -277
- package/dist/_chunks/message-card-Bx4GmLvf.js.map +0 -1
- package/dist/_chunks/message-tray-DwrBLJlf.js.map +0 -1
- package/dist/_chunks/notes-panel-ay8_lPrA.js +0 -158
- package/dist/_chunks/notes-panel-ay8_lPrA.js.map +0 -1
- package/dist/_chunks/notification-card-D2jiKSJJ.js +0 -259
- package/dist/_chunks/notification-card-D2jiKSJJ.js.map +0 -1
- package/dist/_chunks/notification-tray-AEun6DN2.js.map +0 -1
- package/dist/_chunks/patient-details-Dlhqb5ig.js.map +0 -1
- package/dist/_chunks/product-hub-panel-e6pW220e.js.map +0 -1
- package/dist/_chunks/radiograph-panel.agent-CAX-C3g3.js +0 -558
- package/dist/_chunks/radiograph-panel.agent-CAX-C3g3.js.map +0 -1
- package/dist/_chunks/reviews-panel-Dq7LMDcH.js +0 -555
- package/dist/_chunks/reviews-panel-Dq7LMDcH.js.map +0 -1
- package/dist/_chunks/rich-text-editor-DlCqPixb.js +0 -2158
- package/dist/_chunks/rich-text-editor-DlCqPixb.js.map +0 -1
- package/dist/_chunks/scroll-area-5wNK0Cyz.js.map +0 -1
- package/dist/_chunks/select-DMLG44F5.js.map +0 -1
- package/dist/_chunks/sheet-BxsE7eQm.js.map +0 -1
- package/dist/_chunks/sidebar-DY9jGjgt.js.map +0 -1
- package/dist/_chunks/task-card-BwY9jaV1.js +0 -124
- package/dist/_chunks/task-card-BwY9jaV1.js.map +0 -1
- package/dist/_chunks/tooth-scheme-BhQoPNBD.js.map +0 -1
- package/dist/_chunks/transcript-panel-3THQX6nJ.js.map +0 -1
- package/dist/_chunks/workflow-map-Dy8mLCqF.js.map +0 -1
- package/dist/components/ai-tools-rail/ai-tools-rail.agent.d.ts +0 -4
- package/dist/components/ai-tools-rail/ai-tools-rail.agent.d.ts.map +0 -1
- package/dist/components/ai-tools-rail/ai-tools-rail.d.ts.map +0 -1
- package/dist/components/ai-tools-rail/index.d.ts +0 -4
- package/dist/components/ai-tools-rail/index.d.ts.map +0 -1
- package/dist/components/ai-tools-rail/index.js +0 -6
- /package/dist/components/{ai-tools-rail → address-fields}/index.js.map +0 -0
|
@@ -7,7 +7,7 @@ import { R as L } from "./radio-group-BPt7pKZW.js";
|
|
|
7
7
|
import { F as g } from "./form-field-BOm9hK35.js";
|
|
8
8
|
import { D as O } from "./date-picker-Dl9RKxaV.js";
|
|
9
9
|
import { N as _ } from "./number-input-DxphVG_A.js";
|
|
10
|
-
import { S as xe } from "./select-
|
|
10
|
+
import { S as xe } from "./select-KsyRr8WH.js";
|
|
11
11
|
import { S as Ne } from "./switch-OILsBLWo.js";
|
|
12
12
|
import { C as M } from "./card-DPmk26CL.js";
|
|
13
13
|
import { B as j } from "./badge-DCOqV9mI.js";
|
|
@@ -418,4 +418,4 @@ je.displayName = "PregnancyDating";
|
|
|
418
418
|
export {
|
|
419
419
|
je as P
|
|
420
420
|
};
|
|
421
|
-
//# sourceMappingURL=pregnancy-dating-
|
|
421
|
+
//# sourceMappingURL=pregnancy-dating-CunHrOpO.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pregnancy-dating-CRVWswD-.js","sources":["../../src/components/pregnancy-dating/pregnancy-dating.tsx"],"sourcesContent":["/* ------------------------------------------------------------------ */\n/* PregnancyDating — the unified obstetric dating widget. */\n/* */\n/* Supersedes DueDateCalculator + GestationalAgeCalculator: takes any */\n/* known anchor (LMP / conception / IVF transfer / known EDD) and shows */\n/* BOTH the estimated due date AND the current gestational age, */\n/* trimester and milestones. Two dating refinements: a precise CRL + */\n/* scan-date ACOG CO 700 re-dating (LMP), and a quick manual ±days */\n/* adjustment for an uncertain LMP/conception. `showSchedule` appends */\n/* the antenatal exam schedule with plurality / chorionicity / risk */\n/* inputs. All maths lives in `_shared/obstetrics` + `_shared/antenatal- */\n/* schedule` (pure, separately tested). */\n/* ------------------------------------------------------------------ */\n\nimport { forwardRef, useEffect, useMemo, useState } from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { isAfter, subDays } from 'date-fns';\nimport { RadioGroup, Radio } from '../radio-group';\nimport { FormField } from '../form-field';\nimport { DatePicker } from '../date-picker';\nimport { NumberInput } from '../number-input';\nimport { Select } from '../select';\nimport { Switch } from '../switch';\nimport { Card } from '../card';\nimport { Badge } from '../badge';\nimport {\n InsertButton,\n type InsertPayload,\n type InsertVariant,\n type InsertMode,\n} from '../_shared/insert-result';\nimport {\n type EmbryoAge,\n type GestationalAge,\n type DueDateResult,\n type Plurality,\n type Chorionicity,\n computeDueDate,\n redateByCrl,\n gestationalMilestones,\n GESTATION_DAYS,\n CONCEPTION_OFFSET_DAYS,\n DEFAULT_CYCLE_LENGTH,\n TRIMESTER_BADGE_VARIANT,\n trimesterHighlightToken,\n} from '../_shared/obstetrics';\nimport {\n computeAntenatalSchedule,\n type AntenatalScheduleOptions,\n type GdmRisk,\n} from '../_shared/antenatal-schedule';\nimport {\n AntenatalScheduleTimeline,\n buildScheduleInsertFields,\n} from '../_shared/antenatal-schedule-timeline';\n\nconst rootVariants = cva('ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]', {\n variants: {\n width: { full: 'ds:w-full', auto: 'ds:inline-flex' },\n },\n defaultVariants: { width: 'full' },\n});\n\n/** Any known anchor the pregnancy can be dated from. */\nexport type DatingMethod = 'lmp' | 'conception' | 'ivf' | 'edd';\n\n/** i18n key for each method's reference-date field. */\nconst DATE_LABEL_KEY: Record<DatingMethod, string> = {\n lmp: 'pregnancyDating.lmpDate',\n conception: 'pregnancyDating.conceptionDate',\n ivf: 'pregnancyDating.transferDate',\n edd: 'pregnancyDating.eddDate',\n};\n\nexport interface PregnancyDatingResult {\n /** Estimated date of delivery. */\n dueDate: Date;\n /** GA day-0 anchor (effective LMP) after any re-dating / adjustment. */\n gestationalStart: Date;\n /** Gestational age as of the evaluation date; `null` before conception. */\n gestationalAge: GestationalAge | null;\n trimester: DueDateResult['trimester'];\n}\n\nexport interface PregnancyDatingProps extends VariantProps<\n typeof rootVariants\n> {\n /** Initial dating method. Defaults to `'lmp'`. */\n defaultMethod?: DatingMethod;\n /** Pre-fill the reference date (e.g. a known LMP from the patient record). */\n defaultReferenceDate?: Date;\n /** Fires whenever a result can be computed (and `null` when it can't). */\n onResultChange?: (result: PregnancyDatingResult | null) => void;\n /** When provided, shows the result-action buttons that emit / copy the result. */\n onInsert?: (payload: InsertPayload) => void;\n /** Which verb the result button performs. Defaults to `'insert'`. */\n insertVariant?: InsertVariant;\n /** `copy` variant only — fired after a successful clipboard write. */\n onCopy?: (mode: InsertMode) => void;\n /** `copy` variant only — fired if the clipboard write can't proceed. */\n onError?: (error: unknown) => void;\n /** Brand wordmark printed in the inserted/copied result-card footer. */\n insertBrand?: string | false;\n /** Append the antenatal exam schedule + reveal the plurality / risk inputs. */\n showSchedule?: boolean;\n /** `showSchedule` only — initial number of babies. Defaults to `'singleton'`. */\n defaultPlurality?: Plurality;\n /** `showSchedule` only — initial chorionicity for multiples. Defaults to `'unknown'`. */\n defaultChorionicity?: Chorionicity;\n /** `showSchedule` only — initial Rh-negative state (surfaces anti-D). */\n defaultRhNegative?: boolean;\n /** `showSchedule` only — initial gestational-diabetes risk tier (surfaces OGTT). */\n defaultGdmRisk?: GdmRisk;\n /**\n * Passthrough options for the appended schedule (national `schedule`,\n * `includeOnIndication`, `birthGuideline`). `today`, `plurality`,\n * `chorionicity`, `rhNegative` and `gdmRisk` come from the component's own\n * inputs. Ignored unless `showSchedule` is set.\n */\n scheduleOptions?: Omit<\n AntenatalScheduleOptions,\n 'today' | 'plurality' | 'chorionicity' | 'rhNegative' | 'gdmRisk'\n >;\n /** Opaque instance id, emitted as `data-component-id`. */\n id?: string;\n /** Extra class names on the wrapper. */\n className?: string;\n}\n\nexport const PregnancyDating = forwardRef<HTMLDivElement, PregnancyDatingProps>(\n (\n {\n defaultMethod = 'lmp',\n defaultReferenceDate,\n onResultChange,\n onInsert,\n insertVariant = 'insert',\n onCopy,\n onError,\n insertBrand,\n showSchedule = false,\n defaultPlurality = 'singleton',\n defaultChorionicity = 'unknown',\n defaultRhNegative = false,\n defaultGdmRisk,\n scheduleOptions,\n id,\n width,\n className,\n },\n ref,\n ) => {\n const { t, i18n } = useTranslation();\n\n const [method, setMethod] = useState<DatingMethod>(defaultMethod);\n const [refDate, setRefDate] = useState<Date | undefined>(\n defaultReferenceDate,\n );\n const [cycleLength, setCycleLength] = useState<number | null>(\n DEFAULT_CYCLE_LENGTH,\n );\n const [embryoAge, setEmbryoAge] = useState<EmbryoAge>(5);\n // Precise re-dating (LMP method) and the quick ±days nudge.\n const [crlMm, setCrlMm] = useState<number | null>(null);\n const [scanDate, setScanDate] = useState<Date | undefined>(undefined);\n const [datingAdjustment, setDatingAdjustment] = useState<number | null>(\n null,\n );\n // Evaluation date (\"as of\") + multiple-pregnancy / risk inputs.\n const [asOfDate, setAsOfDate] = useState<Date>(() => new Date());\n const [plurality, setPlurality] = useState<Plurality>(defaultPlurality);\n const [chorionicity, setChorionicity] =\n useState<Chorionicity>(defaultChorionicity);\n const [rhNegative, setRhNegative] = useState<boolean>(defaultRhNegative);\n const [gdmRisk, setGdmRisk] = useState<GdmRisk | 'none'>(\n defaultGdmRisk ?? 'none',\n );\n\n // Real today caps the past-only date inputs (LMP, conception, transfer, scan).\n const today = useMemo(() => new Date(), []);\n\n // CRL re-dating (LMP method only) — the measurement-based path.\n const redating = useMemo(() => {\n if (method !== 'lmp' || !refDate || crlMm === null || !scanDate) {\n return null;\n }\n return redateByCrl({ lmp: refDate, scanDate, crlMm });\n }, [method, refDate, crlMm, scanDate]);\n\n const data = useMemo(() => {\n if (!refDate) return null;\n\n // Resolve the method's anchor to an effective LMP (GA day 0).\n let effectiveLmp: Date;\n let cycleForEdd = DEFAULT_CYCLE_LENGTH;\n if (method === 'lmp') {\n effectiveLmp = refDate;\n cycleForEdd = cycleLength ?? DEFAULT_CYCLE_LENGTH;\n } else if (method === 'conception') {\n effectiveLmp = subDays(refDate, CONCEPTION_OFFSET_DAYS);\n } else if (method === 'ivf') {\n effectiveLmp = subDays(refDate, embryoAge + CONCEPTION_OFFSET_DAYS);\n } else {\n effectiveLmp = subDays(refDate, GESTATION_DAYS);\n }\n\n // A confirmed CRL re-dating wins over everything (measurement-based); else\n // apply the quick ±days nudge (+ = pregnancy further along → earlier LMP).\n if (method === 'lmp' && redating?.redated) {\n effectiveLmp = redating.gestationalStart;\n cycleForEdd = DEFAULT_CYCLE_LENGTH;\n } else if (datingAdjustment) {\n effectiveLmp = subDays(effectiveLmp, datingAdjustment);\n }\n\n const r = computeDueDate(\n { method: 'lmp', date: effectiveLmp, cycleLength: cycleForEdd },\n asOfDate,\n );\n return {\n result: {\n dueDate: r.dueDate,\n gestationalStart: r.gestationalStart,\n gestationalAge: r.gestationalAge,\n trimester: r.trimester,\n } satisfies PregnancyDatingResult,\n milestones: gestationalMilestones(r.gestationalStart),\n };\n }, [\n method,\n refDate,\n cycleLength,\n embryoAge,\n redating,\n datingAdjustment,\n asOfDate,\n ]);\n\n const result = data?.result ?? null;\n\n const schedule = useMemo(() => {\n if (!showSchedule || !result) return null;\n return computeAntenatalSchedule(result.gestationalStart, {\n ...scheduleOptions,\n today: asOfDate,\n plurality,\n chorionicity,\n rhNegative,\n gdmRisk: gdmRisk === 'none' ? undefined : gdmRisk,\n });\n }, [\n showSchedule,\n result,\n asOfDate,\n scheduleOptions,\n plurality,\n chorionicity,\n rhNegative,\n gdmRisk,\n ]);\n\n const longDate = useMemo(\n () => new Intl.DateTimeFormat(i18n.language, { dateStyle: 'long' }),\n [i18n.language],\n );\n const medDate = useMemo(\n () => new Intl.DateTimeFormat(i18n.language, { dateStyle: 'medium' }),\n [i18n.language],\n );\n\n useEffect(() => {\n onResultChange?.(result);\n }, [result, onResultChange]);\n\n const chorionicityOptions = useMemo(\n () =>\n (\n [\n 'unknown',\n 'dichorionic-diamniotic',\n 'monochorionic-diamniotic',\n 'monochorionic-monoamniotic',\n ] as const\n ).map((c) => ({\n value: c,\n label: t(`antenatalSchedule.chorionicity.${c}`),\n })),\n [t],\n );\n\n const gaText = (ga: GestationalAge | null): string =>\n ga\n ? t('pregnancyDating.result.gestation', {\n weeks: ga.weeks,\n days: ga.days,\n })\n : '—';\n\n return (\n <div\n ref={ref}\n data-component=\"pregnancy-dating\"\n data-component-id={id}\n className={rootVariants({ width, className })}\n >\n <RadioGroup\n label={t('pregnancyDating.method.label')}\n variant=\"horizontal\"\n value={method}\n onValueChange={(next) => setMethod(next as DatingMethod)}\n >\n <Radio label={t('pregnancyDating.method.lmp')} value=\"lmp\" />\n <Radio\n label={t('pregnancyDating.method.conception')}\n value=\"conception\"\n />\n <Radio label={t('pregnancyDating.method.ivf')} value=\"ivf\" />\n <Radio label={t('pregnancyDating.method.edd')} value=\"edd\" />\n </RadioGroup>\n\n <div className=\"ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:sm:grid-cols-2\">\n <FormField label={t(DATE_LABEL_KEY[method])}>\n <DatePicker\n value={refDate}\n onChange={setRefDate}\n maxDate={method === 'edd' ? undefined : today}\n />\n </FormField>\n\n {method === 'lmp' && (\n <FormField\n label={t('pregnancyDating.cycleLength')}\n description={t('pregnancyDating.cycleLengthHint')}\n >\n <NumberInput\n mode=\"integer\"\n min={20}\n max={45}\n value={cycleLength}\n onChange={setCycleLength}\n />\n </FormField>\n )}\n\n {method === 'ivf' && (\n <RadioGroup\n label={t('pregnancyDating.embryoAge')}\n variant=\"horizontal\"\n value={String(embryoAge)}\n onValueChange={(next) => setEmbryoAge(Number(next) as EmbryoAge)}\n >\n <Radio label={t('pregnancyDating.day3')} value=\"3\" />\n <Radio label={t('pregnancyDating.day5')} value=\"5\" />\n </RadioGroup>\n )}\n\n <FormField\n label={t('pregnancyDating.datingAdjustment')}\n description={t('pregnancyDating.datingAdjustmentHint')}\n >\n <NumberInput\n mode=\"integer\"\n value={datingAdjustment}\n onChange={setDatingAdjustment}\n />\n </FormField>\n\n <FormField\n label={t('pregnancyDating.asOfDate')}\n description={t('pregnancyDating.asOfDateHint')}\n >\n <DatePicker\n value={asOfDate}\n onChange={(d) => d && setAsOfDate(d)}\n />\n </FormField>\n </div>\n\n {method === 'lmp' ? (\n <div className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]\">\n <div className=\"ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:sm:grid-cols-2\">\n <FormField\n label={t('pregnancyDating.crl')}\n description={t('pregnancyDating.crlHint')}\n >\n <NumberInput\n mode=\"decimal\"\n min={0}\n step={0.1}\n value={crlMm}\n onChange={setCrlMm}\n />\n </FormField>\n <FormField label={t('pregnancyDating.scanDate')}>\n <DatePicker\n value={scanDate}\n onChange={setScanDate}\n maxDate={today}\n />\n </FormField>\n </div>\n {redating ? (\n <div className=\"ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-sm)]\">\n <Badge variant={redating.redated ? 'warning' : 'success'}>\n {redating.redated\n ? t('pregnancyDating.redated', {\n days: redating.discrepancyDays,\n })\n : t('pregnancyDating.datesAgree')}\n </Badge>\n {!redating.crlInRange ? (\n <span className=\"type-meta ds:text-muted-foreground\">\n {t('pregnancyDating.crlOutOfRange')}\n </span>\n ) : null}\n </div>\n ) : null}\n </div>\n ) : null}\n\n {showSchedule ? (\n <>\n <RadioGroup\n label={t('antenatalSchedule.plurality.label')}\n variant=\"horizontal\"\n value={plurality}\n onValueChange={(next) => setPlurality(next as Plurality)}\n >\n <Radio\n label={t('antenatalSchedule.plurality.singleton')}\n value=\"singleton\"\n />\n <Radio\n label={t('antenatalSchedule.plurality.twin')}\n value=\"twin\"\n />\n <Radio\n label={t('antenatalSchedule.plurality.triplet')}\n value=\"triplet\"\n />\n </RadioGroup>\n\n {plurality !== 'singleton' ? (\n <FormField label={t('antenatalSchedule.chorionicity.label')}>\n <Select\n options={chorionicityOptions}\n value={chorionicity}\n onValueChange={(next) =>\n setChorionicity(next as Chorionicity)\n }\n />\n </FormField>\n ) : null}\n\n <Switch\n label={t('antenatalSchedule.rhNegative')}\n checked={rhNegative}\n onCheckedChange={setRhNegative}\n />\n\n <RadioGroup\n label={t('antenatalSchedule.gdmRisk.label')}\n variant=\"horizontal\"\n value={gdmRisk}\n onValueChange={(next) => setGdmRisk(next as GdmRisk | 'none')}\n >\n <Radio label={t('antenatalSchedule.gdmRisk.none')} value=\"none\" />\n <Radio\n label={t('antenatalSchedule.gdmRisk.medium')}\n value=\"medium\"\n />\n <Radio label={t('antenatalSchedule.gdmRisk.high')} value=\"high\" />\n </RadioGroup>\n </>\n ) : null}\n\n <p className=\"ds:sr-only\" role=\"status\" aria-live=\"polite\">\n {result\n ? `${t('pregnancyDating.result.dueDateLabel')}: ${longDate.format(\n result.dueDate,\n )}. ${t('pregnancyDating.result.gestationLabel')}: ${gaText(\n result.gestationalAge,\n )}.`\n : ''}\n </p>\n\n {data && result ? (\n <Card variant=\"elevated\">\n <Card.Body className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-md)]\">\n {/* EDD is the headline — full width so a long localized date\n never wraps; gestational age + trimester flow beneath it,\n packed to the start so they don't strand a gap at narrow /\n modal widths. */}\n <dl className=\"ds:flex ds:flex-wrap ds:items-start ds:gap-x-[var(--spacing-xl)] ds:gap-y-[var(--spacing-md)]\">\n <div className=\"ds:basis-full ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]\">\n <dt className=\"type-label ds:text-muted-foreground\">\n {t('pregnancyDating.result.dueDateLabel')}\n </dt>\n <dd className=\"type-metric ds:text-foreground\">\n {longDate.format(result.dueDate)}\n </dd>\n </div>\n <div className=\"ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]\">\n <dt className=\"type-label ds:text-muted-foreground\">\n {t('pregnancyDating.result.gestationLabel')}\n </dt>\n <dd className=\"type-body ds:text-foreground\">\n {gaText(result.gestationalAge)}\n </dd>\n </div>\n <div className=\"ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]\">\n <dt className=\"type-label ds:text-muted-foreground\">\n {t('pregnancyDating.result.trimesterLabel')}\n </dt>\n <dd>\n <Badge\n variant={TRIMESTER_BADGE_VARIANT[result.trimester]}\n size=\"lg\"\n >\n {t(`pregnancyDating.trimester.${result.trimester}`)}\n </Badge>\n </dd>\n </div>\n </dl>\n\n <div className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]\">\n <span className=\"type-label ds:text-muted-foreground\">\n {t('pregnancyDating.milestonesLabel')}\n </span>\n <ul className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]\">\n {data.milestones.map((m) => {\n const reached = isAfter(asOfDate, m.date);\n return (\n <li\n key={m.key}\n className=\"ds:flex ds:items-center ds:justify-between ds:gap-[var(--spacing-md)]\"\n >\n <span className=\"type-body ds:text-foreground\">\n {t(`pregnancyDating.milestone.${m.key}`)}\n </span>\n <span className=\"ds:flex ds:items-center ds:gap-[var(--spacing-sm)]\">\n <span className=\"type-body ds:text-muted-foreground\">\n {medDate.format(m.date)}\n </span>\n {reached ? (\n <Badge variant=\"success\">\n {t('pregnancyDating.reached')}\n </Badge>\n ) : null}\n </span>\n </li>\n );\n })}\n </ul>\n </div>\n </Card.Body>\n </Card>\n ) : (\n <p className=\"type-body ds:text-muted-foreground\">\n {t('pregnancyDating.empty')}\n </p>\n )}\n\n {schedule ? <AntenatalScheduleTimeline events={schedule} /> : null}\n\n {result && (insertVariant === 'copy' || onInsert) ? (\n <InsertButton\n onInsert={onInsert}\n variant={insertVariant}\n onCopy={onCopy}\n onError={onError}\n card={{\n title: t('insert.title.pregnancyDating'),\n icon: 'calendar-heart',\n highlight: longDate.format(result.dueDate),\n highlightToken: trimesterHighlightToken(result.trimester),\n brand: insertBrand,\n fields: [\n {\n icon: 'calendar',\n label: t('pregnancyDating.result.dueDateLabel'),\n value: longDate.format(result.dueDate),\n },\n {\n icon: 'clock',\n label: t('pregnancyDating.result.gestationLabel'),\n value: gaText(result.gestationalAge),\n },\n {\n icon: 'tag',\n label: t('pregnancyDating.result.trimesterLabel'),\n value: t(`pregnancyDating.trimester.${result.trimester}`),\n },\n ...(schedule\n ? buildScheduleInsertFields(schedule, t, (d) =>\n medDate.format(d),\n )\n : []),\n ],\n }}\n />\n ) : null}\n </div>\n );\n },\n);\n\nPregnancyDating.displayName = 'PregnancyDating';\n"],"names":["rootVariants","cva","DATE_LABEL_KEY","PregnancyDating","forwardRef","defaultMethod","defaultReferenceDate","onResultChange","onInsert","insertVariant","onCopy","onError","insertBrand","showSchedule","defaultPlurality","defaultChorionicity","defaultRhNegative","defaultGdmRisk","scheduleOptions","id","width","className","ref","t","i18n","useTranslation","method","setMethod","useState","refDate","setRefDate","cycleLength","setCycleLength","DEFAULT_CYCLE_LENGTH","embryoAge","setEmbryoAge","crlMm","setCrlMm","scanDate","setScanDate","datingAdjustment","setDatingAdjustment","asOfDate","setAsOfDate","plurality","setPlurality","chorionicity","setChorionicity","rhNegative","setRhNegative","gdmRisk","setGdmRisk","today","useMemo","redating","redateByCrl","data","effectiveLmp","cycleForEdd","subDays","CONCEPTION_OFFSET_DAYS","GESTATION_DAYS","r","computeDueDate","gestationalMilestones","result","schedule","computeAntenatalSchedule","longDate","medDate","useEffect","chorionicityOptions","c","gaText","ga","jsxs","RadioGroup","next","jsx","Radio","FormField","DatePicker","NumberInput","d","Badge","Fragment","Select","Switch","Card","TRIMESTER_BADGE_VARIANT","m","reached","isAfter","AntenatalScheduleTimeline","InsertButton","trimesterHighlightToken","buildScheduleInsertFields"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pregnancy-dating-CunHrOpO.js","sources":["../../src/components/pregnancy-dating/pregnancy-dating.tsx"],"sourcesContent":["/* ------------------------------------------------------------------ */\n/* PregnancyDating — the unified obstetric dating widget. */\n/* */\n/* Supersedes DueDateCalculator + GestationalAgeCalculator: takes any */\n/* known anchor (LMP / conception / IVF transfer / known EDD) and shows */\n/* BOTH the estimated due date AND the current gestational age, */\n/* trimester and milestones. Two dating refinements: a precise CRL + */\n/* scan-date ACOG CO 700 re-dating (LMP), and a quick manual ±days */\n/* adjustment for an uncertain LMP/conception. `showSchedule` appends */\n/* the antenatal exam schedule with plurality / chorionicity / risk */\n/* inputs. All maths lives in `_shared/obstetrics` + `_shared/antenatal- */\n/* schedule` (pure, separately tested). */\n/* ------------------------------------------------------------------ */\n\nimport { forwardRef, useEffect, useMemo, useState } from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { isAfter, subDays } from 'date-fns';\nimport { RadioGroup, Radio } from '../radio-group';\nimport { FormField } from '../form-field';\nimport { DatePicker } from '../date-picker';\nimport { NumberInput } from '../number-input';\nimport { Select } from '../select';\nimport { Switch } from '../switch';\nimport { Card } from '../card';\nimport { Badge } from '../badge';\nimport {\n InsertButton,\n type InsertPayload,\n type InsertVariant,\n type InsertMode,\n} from '../_shared/insert-result';\nimport {\n type EmbryoAge,\n type GestationalAge,\n type DueDateResult,\n type Plurality,\n type Chorionicity,\n computeDueDate,\n redateByCrl,\n gestationalMilestones,\n GESTATION_DAYS,\n CONCEPTION_OFFSET_DAYS,\n DEFAULT_CYCLE_LENGTH,\n TRIMESTER_BADGE_VARIANT,\n trimesterHighlightToken,\n} from '../_shared/obstetrics';\nimport {\n computeAntenatalSchedule,\n type AntenatalScheduleOptions,\n type GdmRisk,\n} from '../_shared/antenatal-schedule';\nimport {\n AntenatalScheduleTimeline,\n buildScheduleInsertFields,\n} from '../_shared/antenatal-schedule-timeline';\n\nconst rootVariants = cva('ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]', {\n variants: {\n width: { full: 'ds:w-full', auto: 'ds:inline-flex' },\n },\n defaultVariants: { width: 'full' },\n});\n\n/** Any known anchor the pregnancy can be dated from. */\nexport type DatingMethod = 'lmp' | 'conception' | 'ivf' | 'edd';\n\n/** i18n key for each method's reference-date field. */\nconst DATE_LABEL_KEY: Record<DatingMethod, string> = {\n lmp: 'pregnancyDating.lmpDate',\n conception: 'pregnancyDating.conceptionDate',\n ivf: 'pregnancyDating.transferDate',\n edd: 'pregnancyDating.eddDate',\n};\n\nexport interface PregnancyDatingResult {\n /** Estimated date of delivery. */\n dueDate: Date;\n /** GA day-0 anchor (effective LMP) after any re-dating / adjustment. */\n gestationalStart: Date;\n /** Gestational age as of the evaluation date; `null` before conception. */\n gestationalAge: GestationalAge | null;\n trimester: DueDateResult['trimester'];\n}\n\nexport interface PregnancyDatingProps extends VariantProps<\n typeof rootVariants\n> {\n /** Initial dating method. Defaults to `'lmp'`. */\n defaultMethod?: DatingMethod;\n /** Pre-fill the reference date (e.g. a known LMP from the patient record). */\n defaultReferenceDate?: Date;\n /** Fires whenever a result can be computed (and `null` when it can't). */\n onResultChange?: (result: PregnancyDatingResult | null) => void;\n /** When provided, shows the result-action buttons that emit / copy the result. */\n onInsert?: (payload: InsertPayload) => void;\n /** Which verb the result button performs. Defaults to `'insert'`. */\n insertVariant?: InsertVariant;\n /** `copy` variant only — fired after a successful clipboard write. */\n onCopy?: (mode: InsertMode) => void;\n /** `copy` variant only — fired if the clipboard write can't proceed. */\n onError?: (error: unknown) => void;\n /** Brand wordmark printed in the inserted/copied result-card footer. */\n insertBrand?: string | false;\n /** Append the antenatal exam schedule + reveal the plurality / risk inputs. */\n showSchedule?: boolean;\n /** `showSchedule` only — initial number of babies. Defaults to `'singleton'`. */\n defaultPlurality?: Plurality;\n /** `showSchedule` only — initial chorionicity for multiples. Defaults to `'unknown'`. */\n defaultChorionicity?: Chorionicity;\n /** `showSchedule` only — initial Rh-negative state (surfaces anti-D). */\n defaultRhNegative?: boolean;\n /** `showSchedule` only — initial gestational-diabetes risk tier (surfaces OGTT). */\n defaultGdmRisk?: GdmRisk;\n /**\n * Passthrough options for the appended schedule (national `schedule`,\n * `includeOnIndication`, `birthGuideline`). `today`, `plurality`,\n * `chorionicity`, `rhNegative` and `gdmRisk` come from the component's own\n * inputs. Ignored unless `showSchedule` is set.\n */\n scheduleOptions?: Omit<\n AntenatalScheduleOptions,\n 'today' | 'plurality' | 'chorionicity' | 'rhNegative' | 'gdmRisk'\n >;\n /** Opaque instance id, emitted as `data-component-id`. */\n id?: string;\n /** Extra class names on the wrapper. */\n className?: string;\n}\n\nexport const PregnancyDating = forwardRef<HTMLDivElement, PregnancyDatingProps>(\n (\n {\n defaultMethod = 'lmp',\n defaultReferenceDate,\n onResultChange,\n onInsert,\n insertVariant = 'insert',\n onCopy,\n onError,\n insertBrand,\n showSchedule = false,\n defaultPlurality = 'singleton',\n defaultChorionicity = 'unknown',\n defaultRhNegative = false,\n defaultGdmRisk,\n scheduleOptions,\n id,\n width,\n className,\n },\n ref,\n ) => {\n const { t, i18n } = useTranslation();\n\n const [method, setMethod] = useState<DatingMethod>(defaultMethod);\n const [refDate, setRefDate] = useState<Date | undefined>(\n defaultReferenceDate,\n );\n const [cycleLength, setCycleLength] = useState<number | null>(\n DEFAULT_CYCLE_LENGTH,\n );\n const [embryoAge, setEmbryoAge] = useState<EmbryoAge>(5);\n // Precise re-dating (LMP method) and the quick ±days nudge.\n const [crlMm, setCrlMm] = useState<number | null>(null);\n const [scanDate, setScanDate] = useState<Date | undefined>(undefined);\n const [datingAdjustment, setDatingAdjustment] = useState<number | null>(\n null,\n );\n // Evaluation date (\"as of\") + multiple-pregnancy / risk inputs.\n const [asOfDate, setAsOfDate] = useState<Date>(() => new Date());\n const [plurality, setPlurality] = useState<Plurality>(defaultPlurality);\n const [chorionicity, setChorionicity] =\n useState<Chorionicity>(defaultChorionicity);\n const [rhNegative, setRhNegative] = useState<boolean>(defaultRhNegative);\n const [gdmRisk, setGdmRisk] = useState<GdmRisk | 'none'>(\n defaultGdmRisk ?? 'none',\n );\n\n // Real today caps the past-only date inputs (LMP, conception, transfer, scan).\n const today = useMemo(() => new Date(), []);\n\n // CRL re-dating (LMP method only) — the measurement-based path.\n const redating = useMemo(() => {\n if (method !== 'lmp' || !refDate || crlMm === null || !scanDate) {\n return null;\n }\n return redateByCrl({ lmp: refDate, scanDate, crlMm });\n }, [method, refDate, crlMm, scanDate]);\n\n const data = useMemo(() => {\n if (!refDate) return null;\n\n // Resolve the method's anchor to an effective LMP (GA day 0).\n let effectiveLmp: Date;\n let cycleForEdd = DEFAULT_CYCLE_LENGTH;\n if (method === 'lmp') {\n effectiveLmp = refDate;\n cycleForEdd = cycleLength ?? DEFAULT_CYCLE_LENGTH;\n } else if (method === 'conception') {\n effectiveLmp = subDays(refDate, CONCEPTION_OFFSET_DAYS);\n } else if (method === 'ivf') {\n effectiveLmp = subDays(refDate, embryoAge + CONCEPTION_OFFSET_DAYS);\n } else {\n effectiveLmp = subDays(refDate, GESTATION_DAYS);\n }\n\n // A confirmed CRL re-dating wins over everything (measurement-based); else\n // apply the quick ±days nudge (+ = pregnancy further along → earlier LMP).\n if (method === 'lmp' && redating?.redated) {\n effectiveLmp = redating.gestationalStart;\n cycleForEdd = DEFAULT_CYCLE_LENGTH;\n } else if (datingAdjustment) {\n effectiveLmp = subDays(effectiveLmp, datingAdjustment);\n }\n\n const r = computeDueDate(\n { method: 'lmp', date: effectiveLmp, cycleLength: cycleForEdd },\n asOfDate,\n );\n return {\n result: {\n dueDate: r.dueDate,\n gestationalStart: r.gestationalStart,\n gestationalAge: r.gestationalAge,\n trimester: r.trimester,\n } satisfies PregnancyDatingResult,\n milestones: gestationalMilestones(r.gestationalStart),\n };\n }, [\n method,\n refDate,\n cycleLength,\n embryoAge,\n redating,\n datingAdjustment,\n asOfDate,\n ]);\n\n const result = data?.result ?? null;\n\n const schedule = useMemo(() => {\n if (!showSchedule || !result) return null;\n return computeAntenatalSchedule(result.gestationalStart, {\n ...scheduleOptions,\n today: asOfDate,\n plurality,\n chorionicity,\n rhNegative,\n gdmRisk: gdmRisk === 'none' ? undefined : gdmRisk,\n });\n }, [\n showSchedule,\n result,\n asOfDate,\n scheduleOptions,\n plurality,\n chorionicity,\n rhNegative,\n gdmRisk,\n ]);\n\n const longDate = useMemo(\n () => new Intl.DateTimeFormat(i18n.language, { dateStyle: 'long' }),\n [i18n.language],\n );\n const medDate = useMemo(\n () => new Intl.DateTimeFormat(i18n.language, { dateStyle: 'medium' }),\n [i18n.language],\n );\n\n useEffect(() => {\n onResultChange?.(result);\n }, [result, onResultChange]);\n\n const chorionicityOptions = useMemo(\n () =>\n (\n [\n 'unknown',\n 'dichorionic-diamniotic',\n 'monochorionic-diamniotic',\n 'monochorionic-monoamniotic',\n ] as const\n ).map((c) => ({\n value: c,\n label: t(`antenatalSchedule.chorionicity.${c}`),\n })),\n [t],\n );\n\n const gaText = (ga: GestationalAge | null): string =>\n ga\n ? t('pregnancyDating.result.gestation', {\n weeks: ga.weeks,\n days: ga.days,\n })\n : '—';\n\n return (\n <div\n ref={ref}\n data-component=\"pregnancy-dating\"\n data-component-id={id}\n className={rootVariants({ width, className })}\n >\n <RadioGroup\n label={t('pregnancyDating.method.label')}\n variant=\"horizontal\"\n value={method}\n onValueChange={(next) => setMethod(next as DatingMethod)}\n >\n <Radio label={t('pregnancyDating.method.lmp')} value=\"lmp\" />\n <Radio\n label={t('pregnancyDating.method.conception')}\n value=\"conception\"\n />\n <Radio label={t('pregnancyDating.method.ivf')} value=\"ivf\" />\n <Radio label={t('pregnancyDating.method.edd')} value=\"edd\" />\n </RadioGroup>\n\n <div className=\"ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:sm:grid-cols-2\">\n <FormField label={t(DATE_LABEL_KEY[method])}>\n <DatePicker\n value={refDate}\n onChange={setRefDate}\n maxDate={method === 'edd' ? undefined : today}\n />\n </FormField>\n\n {method === 'lmp' && (\n <FormField\n label={t('pregnancyDating.cycleLength')}\n description={t('pregnancyDating.cycleLengthHint')}\n >\n <NumberInput\n mode=\"integer\"\n min={20}\n max={45}\n value={cycleLength}\n onChange={setCycleLength}\n />\n </FormField>\n )}\n\n {method === 'ivf' && (\n <RadioGroup\n label={t('pregnancyDating.embryoAge')}\n variant=\"horizontal\"\n value={String(embryoAge)}\n onValueChange={(next) => setEmbryoAge(Number(next) as EmbryoAge)}\n >\n <Radio label={t('pregnancyDating.day3')} value=\"3\" />\n <Radio label={t('pregnancyDating.day5')} value=\"5\" />\n </RadioGroup>\n )}\n\n <FormField\n label={t('pregnancyDating.datingAdjustment')}\n description={t('pregnancyDating.datingAdjustmentHint')}\n >\n <NumberInput\n mode=\"integer\"\n value={datingAdjustment}\n onChange={setDatingAdjustment}\n />\n </FormField>\n\n <FormField\n label={t('pregnancyDating.asOfDate')}\n description={t('pregnancyDating.asOfDateHint')}\n >\n <DatePicker\n value={asOfDate}\n onChange={(d) => d && setAsOfDate(d)}\n />\n </FormField>\n </div>\n\n {method === 'lmp' ? (\n <div className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]\">\n <div className=\"ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:sm:grid-cols-2\">\n <FormField\n label={t('pregnancyDating.crl')}\n description={t('pregnancyDating.crlHint')}\n >\n <NumberInput\n mode=\"decimal\"\n min={0}\n step={0.1}\n value={crlMm}\n onChange={setCrlMm}\n />\n </FormField>\n <FormField label={t('pregnancyDating.scanDate')}>\n <DatePicker\n value={scanDate}\n onChange={setScanDate}\n maxDate={today}\n />\n </FormField>\n </div>\n {redating ? (\n <div className=\"ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-sm)]\">\n <Badge variant={redating.redated ? 'warning' : 'success'}>\n {redating.redated\n ? t('pregnancyDating.redated', {\n days: redating.discrepancyDays,\n })\n : t('pregnancyDating.datesAgree')}\n </Badge>\n {!redating.crlInRange ? (\n <span className=\"type-meta ds:text-muted-foreground\">\n {t('pregnancyDating.crlOutOfRange')}\n </span>\n ) : null}\n </div>\n ) : null}\n </div>\n ) : null}\n\n {showSchedule ? (\n <>\n <RadioGroup\n label={t('antenatalSchedule.plurality.label')}\n variant=\"horizontal\"\n value={plurality}\n onValueChange={(next) => setPlurality(next as Plurality)}\n >\n <Radio\n label={t('antenatalSchedule.plurality.singleton')}\n value=\"singleton\"\n />\n <Radio\n label={t('antenatalSchedule.plurality.twin')}\n value=\"twin\"\n />\n <Radio\n label={t('antenatalSchedule.plurality.triplet')}\n value=\"triplet\"\n />\n </RadioGroup>\n\n {plurality !== 'singleton' ? (\n <FormField label={t('antenatalSchedule.chorionicity.label')}>\n <Select\n options={chorionicityOptions}\n value={chorionicity}\n onValueChange={(next) =>\n setChorionicity(next as Chorionicity)\n }\n />\n </FormField>\n ) : null}\n\n <Switch\n label={t('antenatalSchedule.rhNegative')}\n checked={rhNegative}\n onCheckedChange={setRhNegative}\n />\n\n <RadioGroup\n label={t('antenatalSchedule.gdmRisk.label')}\n variant=\"horizontal\"\n value={gdmRisk}\n onValueChange={(next) => setGdmRisk(next as GdmRisk | 'none')}\n >\n <Radio label={t('antenatalSchedule.gdmRisk.none')} value=\"none\" />\n <Radio\n label={t('antenatalSchedule.gdmRisk.medium')}\n value=\"medium\"\n />\n <Radio label={t('antenatalSchedule.gdmRisk.high')} value=\"high\" />\n </RadioGroup>\n </>\n ) : null}\n\n <p className=\"ds:sr-only\" role=\"status\" aria-live=\"polite\">\n {result\n ? `${t('pregnancyDating.result.dueDateLabel')}: ${longDate.format(\n result.dueDate,\n )}. ${t('pregnancyDating.result.gestationLabel')}: ${gaText(\n result.gestationalAge,\n )}.`\n : ''}\n </p>\n\n {data && result ? (\n <Card variant=\"elevated\">\n <Card.Body className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-md)]\">\n {/* EDD is the headline — full width so a long localized date\n never wraps; gestational age + trimester flow beneath it,\n packed to the start so they don't strand a gap at narrow /\n modal widths. */}\n <dl className=\"ds:flex ds:flex-wrap ds:items-start ds:gap-x-[var(--spacing-xl)] ds:gap-y-[var(--spacing-md)]\">\n <div className=\"ds:basis-full ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]\">\n <dt className=\"type-label ds:text-muted-foreground\">\n {t('pregnancyDating.result.dueDateLabel')}\n </dt>\n <dd className=\"type-metric ds:text-foreground\">\n {longDate.format(result.dueDate)}\n </dd>\n </div>\n <div className=\"ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]\">\n <dt className=\"type-label ds:text-muted-foreground\">\n {t('pregnancyDating.result.gestationLabel')}\n </dt>\n <dd className=\"type-body ds:text-foreground\">\n {gaText(result.gestationalAge)}\n </dd>\n </div>\n <div className=\"ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]\">\n <dt className=\"type-label ds:text-muted-foreground\">\n {t('pregnancyDating.result.trimesterLabel')}\n </dt>\n <dd>\n <Badge\n variant={TRIMESTER_BADGE_VARIANT[result.trimester]}\n size=\"lg\"\n >\n {t(`pregnancyDating.trimester.${result.trimester}`)}\n </Badge>\n </dd>\n </div>\n </dl>\n\n <div className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]\">\n <span className=\"type-label ds:text-muted-foreground\">\n {t('pregnancyDating.milestonesLabel')}\n </span>\n <ul className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]\">\n {data.milestones.map((m) => {\n const reached = isAfter(asOfDate, m.date);\n return (\n <li\n key={m.key}\n className=\"ds:flex ds:items-center ds:justify-between ds:gap-[var(--spacing-md)]\"\n >\n <span className=\"type-body ds:text-foreground\">\n {t(`pregnancyDating.milestone.${m.key}`)}\n </span>\n <span className=\"ds:flex ds:items-center ds:gap-[var(--spacing-sm)]\">\n <span className=\"type-body ds:text-muted-foreground\">\n {medDate.format(m.date)}\n </span>\n {reached ? (\n <Badge variant=\"success\">\n {t('pregnancyDating.reached')}\n </Badge>\n ) : null}\n </span>\n </li>\n );\n })}\n </ul>\n </div>\n </Card.Body>\n </Card>\n ) : (\n <p className=\"type-body ds:text-muted-foreground\">\n {t('pregnancyDating.empty')}\n </p>\n )}\n\n {schedule ? <AntenatalScheduleTimeline events={schedule} /> : null}\n\n {result && (insertVariant === 'copy' || onInsert) ? (\n <InsertButton\n onInsert={onInsert}\n variant={insertVariant}\n onCopy={onCopy}\n onError={onError}\n card={{\n title: t('insert.title.pregnancyDating'),\n icon: 'calendar-heart',\n highlight: longDate.format(result.dueDate),\n highlightToken: trimesterHighlightToken(result.trimester),\n brand: insertBrand,\n fields: [\n {\n icon: 'calendar',\n label: t('pregnancyDating.result.dueDateLabel'),\n value: longDate.format(result.dueDate),\n },\n {\n icon: 'clock',\n label: t('pregnancyDating.result.gestationLabel'),\n value: gaText(result.gestationalAge),\n },\n {\n icon: 'tag',\n label: t('pregnancyDating.result.trimesterLabel'),\n value: t(`pregnancyDating.trimester.${result.trimester}`),\n },\n ...(schedule\n ? buildScheduleInsertFields(schedule, t, (d) =>\n medDate.format(d),\n )\n : []),\n ],\n }}\n />\n ) : null}\n </div>\n );\n },\n);\n\nPregnancyDating.displayName = 'PregnancyDating';\n"],"names":["rootVariants","cva","DATE_LABEL_KEY","PregnancyDating","forwardRef","defaultMethod","defaultReferenceDate","onResultChange","onInsert","insertVariant","onCopy","onError","insertBrand","showSchedule","defaultPlurality","defaultChorionicity","defaultRhNegative","defaultGdmRisk","scheduleOptions","id","width","className","ref","t","i18n","useTranslation","method","setMethod","useState","refDate","setRefDate","cycleLength","setCycleLength","DEFAULT_CYCLE_LENGTH","embryoAge","setEmbryoAge","crlMm","setCrlMm","scanDate","setScanDate","datingAdjustment","setDatingAdjustment","asOfDate","setAsOfDate","plurality","setPlurality","chorionicity","setChorionicity","rhNegative","setRhNegative","gdmRisk","setGdmRisk","today","useMemo","redating","redateByCrl","data","effectiveLmp","cycleForEdd","subDays","CONCEPTION_OFFSET_DAYS","GESTATION_DAYS","r","computeDueDate","gestationalMilestones","result","schedule","computeAntenatalSchedule","longDate","medDate","useEffect","chorionicityOptions","c","gaText","ga","jsxs","RadioGroup","next","jsx","Radio","FormField","DatePicker","NumberInput","d","Badge","Fragment","Select","Switch","Card","TRIMESTER_BADGE_VARIANT","m","reached","isAfter","AntenatalScheduleTimeline","InsertButton","trimesterHighlightToken","buildScheduleInsertFields"],"mappings":"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"}
|