@alfadocs/ui-kit-debug 0.48.0 → 0.50.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-autocomplete-CSjMrBvu.js → address-autocomplete-CT-9AOli.js} +2 -2
- package/dist/_chunks/{address-autocomplete-CSjMrBvu.js.map → address-autocomplete-CT-9AOli.js.map} +1 -1
- package/dist/_chunks/{ai-consent-banner-DO5ingMq.js → ai-consent-banner-F2md5JD3.js} +2 -2
- package/dist/_chunks/{ai-consent-banner-DO5ingMq.js.map → ai-consent-banner-F2md5JD3.js.map} +1 -1
- package/dist/_chunks/{ai-tools-rail-CxYG04cw.js → ai-tools-rail-CYLWrRmm.js} +6 -6
- package/dist/_chunks/ai-tools-rail-CYLWrRmm.js.map +1 -0
- package/dist/_chunks/{alert-ywPR59NE.js → alert-CUTxnym2.js} +56 -35
- package/dist/_chunks/alert-CUTxnym2.js.map +1 -0
- package/dist/_chunks/antenatal-schedule-timeline-CdiqkF05.js +413 -0
- package/dist/_chunks/antenatal-schedule-timeline-CdiqkF05.js.map +1 -0
- package/dist/_chunks/{ar-DEz65ZJW.js → ar-C68WKG5a.js} +2 -2
- package/dist/_chunks/{ar-DEz65ZJW.js.map → ar-C68WKG5a.js.map} +1 -1
- package/dist/_chunks/{audio-recorder-DC-v9YFW.js → audio-recorder-DVJXV7_k.js} +2 -2
- package/dist/_chunks/{audio-recorder-DC-v9YFW.js.map → audio-recorder-DVJXV7_k.js.map} +1 -1
- package/dist/_chunks/bishop-score-2MzAz8NE.js +185 -0
- package/dist/_chunks/bishop-score-2MzAz8NE.js.map +1 -0
- package/dist/_chunks/{booking-WV2GSru5.js → booking-DljH0JkS.js} +5 -5
- package/dist/_chunks/{booking-WV2GSru5.js.map → booking-DljH0JkS.js.map} +1 -1
- package/dist/_chunks/circle-arrow-up-CC_85SuH.js +16 -0
- package/dist/_chunks/circle-arrow-up-CC_85SuH.js.map +1 -0
- package/dist/_chunks/cycle-calculator-oOkj5wlB.js +252 -0
- package/dist/_chunks/cycle-calculator-oOkj5wlB.js.map +1 -0
- package/dist/_chunks/{date-picker-Bq7xhMA-.js → date-picker-BfHblqwA.js} +2 -2
- package/dist/_chunks/{date-picker-Bq7xhMA-.js.map → date-picker-BfHblqwA.js.map} +1 -1
- package/dist/_chunks/{date-picker-variants-DLi1Va_e.js → date-picker-variants-CXEAx3O_.js} +22 -22
- package/dist/_chunks/{date-picker-variants-DLi1Va_e.js.map → date-picker-variants-CXEAx3O_.js.map} +1 -1
- package/dist/_chunks/{date-range-picker-DcXuI9y7.js → date-range-picker-hcAMs1wO.js} +3 -3
- package/dist/_chunks/{date-range-picker-DcXuI9y7.js.map → date-range-picker-hcAMs1wO.js.map} +1 -1
- package/dist/_chunks/{date-time-picker-RimumeLR.js → date-time-picker-H-3Pwqlb.js} +9 -9
- package/dist/_chunks/{date-time-picker-RimumeLR.js.map → date-time-picker-H-3Pwqlb.js.map} +1 -1
- package/dist/_chunks/{de-bTBGdjPS.js → de-DK4A9_a8.js} +2 -2
- package/dist/_chunks/{de-bTBGdjPS.js.map → de-DK4A9_a8.js.map} +1 -1
- package/dist/_chunks/{document-scanner-BqLsGs4Y.js → document-scanner-Cxqvq7GR.js} +2 -2
- package/dist/_chunks/{document-scanner-BqLsGs4Y.js.map → document-scanner-Cxqvq7GR.js.map} +1 -1
- package/dist/_chunks/due-date-calculator-DykajWzh.js +256 -0
- package/dist/_chunks/due-date-calculator-DykajWzh.js.map +1 -0
- package/dist/_chunks/{editable-currency-cell-renderer-CLil9B29.js → editable-currency-cell-renderer-Bh48OHRv.js} +2 -2
- package/dist/_chunks/{editable-currency-cell-renderer-CLil9B29.js.map → editable-currency-cell-renderer-Bh48OHRv.js.map} +1 -1
- package/dist/_chunks/{el-BWG5RXxa.js → el-B29HXhG5.js} +2 -2
- package/dist/_chunks/{el-BWG5RXxa.js.map → el-B29HXhG5.js.map} +1 -1
- package/dist/_chunks/{es-DfO_G435.js → es-BOwPVwWn.js} +2 -2
- package/dist/_chunks/{es-DfO_G435.js.map → es-BOwPVwWn.js.map} +1 -1
- package/dist/_chunks/fetal-weight-Da-B4P4k.js +122 -0
- package/dist/_chunks/fetal-weight-Da-B4P4k.js.map +1 -0
- package/dist/_chunks/{fr-BTn24bs8.js → fr-DoDBtn0T.js} +2 -2
- package/dist/_chunks/{fr-BTn24bs8.js.map → fr-DoDBtn0T.js.map} +1 -1
- package/dist/_chunks/{freemium-paywall-DzpD63WY.js → freemium-paywall-BWaLWje-.js} +2 -2
- package/dist/_chunks/{freemium-paywall-DzpD63WY.js.map → freemium-paywall-BWaLWje-.js.map} +1 -1
- package/dist/_chunks/gestational-age-calculator-Bc55hq6t.js +311 -0
- package/dist/_chunks/gestational-age-calculator-Bc55hq6t.js.map +1 -0
- package/dist/_chunks/hcg-doubling-DAnpbale.js +170 -0
- package/dist/_chunks/hcg-doubling-DAnpbale.js.map +1 -0
- package/dist/_chunks/{hi-Dj3oYd84.js → hi-DGByrKby.js} +2 -2
- package/dist/_chunks/{hi-Dj3oYd84.js.map → hi-DGByrKby.js.map} +1 -1
- package/dist/_chunks/{isSameWeek-HfxKk6Lz.js → isSameWeek-B1odL2vR.js} +2 -2
- package/dist/_chunks/{isSameWeek-HfxKk6Lz.js.map → isSameWeek-B1odL2vR.js.map} +1 -1
- package/dist/_chunks/{it-Y85ofIQQ.js → it-B16rEecm.js} +3 -3
- package/dist/_chunks/{it-Y85ofIQQ.js.map → it-B16rEecm.js.map} +1 -1
- package/dist/_chunks/{ja-CQ7J6YoA.js → ja-B0viOgft.js} +2 -2
- package/dist/_chunks/{ja-CQ7J6YoA.js.map → ja-B0viOgft.js.map} +1 -1
- package/dist/_chunks/{marketplace-app-shell-Gfsf78ge.js → marketplace-app-shell-UKSLx9K_.js} +3 -3
- package/dist/_chunks/{marketplace-app-shell-Gfsf78ge.js.map → marketplace-app-shell-UKSLx9K_.js.map} +1 -1
- package/dist/_chunks/{nl-D9kHCmp3.js → nl-cBxEX2QU.js} +2 -2
- package/dist/_chunks/{nl-D9kHCmp3.js.map → nl-cBxEX2QU.js.map} +1 -1
- package/dist/_chunks/{patient-search-CocVcGJ3.js → patient-search-BJOmTmDA.js} +2 -2
- package/dist/_chunks/{patient-search-CocVcGJ3.js.map → patient-search-BJOmTmDA.js.map} +1 -1
- package/dist/_chunks/{patient-shell-CnT4L8gn.js → patient-shell-DUmhXnFq.js} +2 -2
- package/dist/_chunks/{patient-shell-CnT4L8gn.js.map → patient-shell-DUmhXnFq.js.map} +1 -1
- package/dist/_chunks/{payment-form-BNTx4876.js → payment-form-xmeCkxas.js} +2 -2
- package/dist/_chunks/{payment-form-BNTx4876.js.map → payment-form-xmeCkxas.js.map} +1 -1
- package/dist/_chunks/{pdf-viewer-G8SU6Azw.js → pdf-viewer-q1D3Uion.js} +2 -2
- package/dist/_chunks/{pdf-viewer-G8SU6Azw.js.map → pdf-viewer-q1D3Uion.js.map} +1 -1
- package/dist/_chunks/{pl-B3Smqpkr.js → pl-DtS08ioY.js} +3 -3
- package/dist/_chunks/{pl-B3Smqpkr.js.map → pl-DtS08ioY.js.map} +1 -1
- package/dist/_chunks/{practice-results-BFL_mcDW.js → practice-results-Cq1y8JFD.js} +2 -2
- package/dist/_chunks/{practice-results-BFL_mcDW.js.map → practice-results-Cq1y8JFD.js.map} +1 -1
- package/dist/_chunks/pregnancy-dating-48Gfvod1.js +421 -0
- package/dist/_chunks/pregnancy-dating-48Gfvod1.js.map +1 -0
- package/dist/_chunks/pregnancy-weight-gain-CCGrvarh.js +322 -0
- package/dist/_chunks/pregnancy-weight-gain-CCGrvarh.js.map +1 -0
- package/dist/_chunks/product-hub-panel-CkfZBA3t.js +620 -0
- package/dist/_chunks/product-hub-panel-CkfZBA3t.js.map +1 -0
- package/dist/_chunks/{pt-D3J-1c_7.js → pt-yFXs1VvH.js} +2 -2
- package/dist/_chunks/{pt-D3J-1c_7.js.map → pt-yFXs1VvH.js.map} +1 -1
- package/dist/_chunks/{ro-BKAbbEA3.js → ro-DsCzSrzR.js} +2 -2
- package/dist/_chunks/{ro-BKAbbEA3.js.map → ro-DsCzSrzR.js.map} +1 -1
- package/dist/_chunks/{ru-BeG8f0Ep.js → ru-DgDxL0pc.js} +3 -3
- package/dist/_chunks/{ru-BeG8f0Ep.js.map → ru-DgDxL0pc.js.map} +1 -1
- package/dist/_chunks/{sidebar-_vJXI9rB.js → sidebar-h78cTNLh.js} +440 -338
- package/dist/_chunks/sidebar-h78cTNLh.js.map +1 -0
- package/dist/_chunks/{sign-document-DPI2pY9V.js → sign-document-CZkAf28g.js} +2 -2
- package/dist/_chunks/{sign-document-DPI2pY9V.js.map → sign-document-CZkAf28g.js.map} +1 -1
- package/dist/_chunks/{sq-_hRPaeUy.js → sq-DHlCYN67.js} +2 -2
- package/dist/_chunks/{sq-_hRPaeUy.js.map → sq-DHlCYN67.js.map} +1 -1
- package/dist/_chunks/subDays-Bs00akhK.js +8 -0
- package/dist/_chunks/{subDays-Dv7q9S7u.js.map → subDays-Bs00akhK.js.map} +1 -1
- package/dist/_chunks/{sv-g009fSpe.js → sv-O0QaQs_s.js} +2 -2
- package/dist/_chunks/{sv-g009fSpe.js.map → sv-O0QaQs_s.js.map} +1 -1
- package/dist/_chunks/{tr-OKUOuhMW.js → tr-BmNDRuio.js} +2 -2
- package/dist/_chunks/{tr-OKUOuhMW.js.map → tr-BmNDRuio.js.map} +1 -1
- package/dist/_chunks/warning-stack-CXfoAT-_.js +220 -0
- package/dist/_chunks/warning-stack-CXfoAT-_.js.map +1 -0
- package/dist/_chunks/{workflow-map-ZXw-zsZ8.js → workflow-map-DzX_LI4y.js} +2 -2
- package/dist/_chunks/{workflow-map-ZXw-zsZ8.js.map → workflow-map-DzX_LI4y.js.map} +1 -1
- package/dist/_chunks/{zh-CN-De4zwEhx.js → zh-CN-CgVJZEzz.js} +3 -3
- package/dist/_chunks/{zh-CN-De4zwEhx.js.map → zh-CN-CgVJZEzz.js.map} +1 -1
- package/dist/agent-catalog.json +44 -1
- package/dist/components/_shared/antenatal-schedule-timeline.d.ts +18 -0
- package/dist/components/_shared/antenatal-schedule-timeline.d.ts.map +1 -0
- package/dist/components/_shared/antenatal-schedule.d.ts +68 -0
- package/dist/components/_shared/antenatal-schedule.d.ts.map +1 -0
- package/dist/components/_shared/index.d.ts +3 -0
- package/dist/components/_shared/index.d.ts.map +1 -1
- package/dist/components/_shared/obstetrics.d.ts +138 -0
- package/dist/components/_shared/obstetrics.d.ts.map +1 -0
- package/dist/components/address-autocomplete/index.js +1 -1
- package/dist/components/ai-consent-banner/index.js +1 -1
- package/dist/components/ai-tools-rail/ai-tools-rail.d.ts.map +1 -1
- package/dist/components/ai-tools-rail/index.js +1 -1
- package/dist/components/alert/alert.d.ts +2 -2
- package/dist/components/alert/alert.d.ts.map +1 -1
- package/dist/components/alert/index.js +1 -1
- package/dist/components/audio-recorder/index.js +1 -1
- package/dist/components/bishop-score/bishop-score.d.ts +27 -0
- package/dist/components/bishop-score/bishop-score.d.ts.map +1 -0
- package/dist/components/bishop-score/bishop.d.ts +30 -0
- package/dist/components/bishop-score/bishop.d.ts.map +1 -0
- package/dist/components/bishop-score/index.d.ts +4 -0
- package/dist/components/bishop-score/index.d.ts.map +1 -0
- package/dist/components/bishop-score/index.js +10 -0
- package/dist/components/bishop-score/index.js.map +1 -0
- package/dist/components/booking/index.js +1 -1
- package/dist/components/cycle-calculator/cycle-calculator.d.ts.map +1 -1
- package/dist/components/cycle-calculator/cycle.d.ts +5 -0
- package/dist/components/cycle-calculator/cycle.d.ts.map +1 -1
- package/dist/components/cycle-calculator/index.js +1 -1
- package/dist/components/data-table/index.js +1 -1
- 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/document-scanner/index.js +1 -1
- package/dist/components/due-date-calculator/due-date-calculator.d.ts +19 -1
- package/dist/components/due-date-calculator/due-date-calculator.d.ts.map +1 -1
- package/dist/components/due-date-calculator/gestation.d.ts +1 -59
- package/dist/components/due-date-calculator/gestation.d.ts.map +1 -1
- package/dist/components/due-date-calculator/index.d.ts +1 -1
- package/dist/components/due-date-calculator/index.d.ts.map +1 -1
- package/dist/components/due-date-calculator/index.js +16 -10
- package/dist/components/fetal-weight/efw.d.ts +25 -0
- package/dist/components/fetal-weight/efw.d.ts.map +1 -0
- package/dist/components/fetal-weight/fetal-weight.d.ts +27 -0
- package/dist/components/fetal-weight/fetal-weight.d.ts.map +1 -0
- package/dist/components/fetal-weight/index.d.ts +4 -0
- package/dist/components/fetal-weight/index.d.ts.map +1 -0
- package/dist/components/fetal-weight/index.js +6 -0
- package/dist/components/fetal-weight/index.js.map +1 -0
- package/dist/components/freemium-paywall/index.js +1 -1
- package/dist/components/gestational-age-calculator/gestational-age-calculator.d.ts +32 -1
- package/dist/components/gestational-age-calculator/gestational-age-calculator.d.ts.map +1 -1
- package/dist/components/gestational-age-calculator/index.js +1 -1
- package/dist/components/hcg-doubling/hcg-doubling.d.ts +31 -0
- package/dist/components/hcg-doubling/hcg-doubling.d.ts.map +1 -0
- package/dist/components/hcg-doubling/hcg.d.ts +33 -0
- package/dist/components/hcg-doubling/hcg.d.ts.map +1 -0
- package/dist/components/hcg-doubling/index.d.ts +4 -0
- package/dist/components/hcg-doubling/index.d.ts.map +1 -0
- package/dist/components/hcg-doubling/index.js +7 -0
- package/dist/components/hcg-doubling/index.js.map +1 -0
- package/dist/components/index.d.ts +5 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/patient-search/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/practice-results/index.js +1 -1
- package/dist/components/pregnancy-dating/index.d.ts +3 -0
- package/dist/components/pregnancy-dating/index.d.ts.map +1 -0
- package/dist/components/pregnancy-dating/index.js +5 -0
- package/dist/components/pregnancy-dating/index.js.map +1 -0
- package/dist/components/pregnancy-dating/pregnancy-dating.d.ts +60 -0
- package/dist/components/pregnancy-dating/pregnancy-dating.d.ts.map +1 -0
- package/dist/components/pregnancy-weight-gain/index.js +1 -1
- package/dist/components/pregnancy-weight-gain/pregnancy-weight-gain.d.ts +7 -0
- package/dist/components/pregnancy-weight-gain/pregnancy-weight-gain.d.ts.map +1 -1
- package/dist/components/pregnancy-weight-gain/weight-gain.d.ts +33 -8
- package/dist/components/pregnancy-weight-gain/weight-gain.d.ts.map +1 -1
- package/dist/components/product-hub-tray/index.d.ts +8 -0
- package/dist/components/product-hub-tray/index.d.ts.map +1 -0
- package/dist/components/product-hub-tray/index.js +10 -0
- package/dist/components/product-hub-tray/index.js.map +1 -0
- package/dist/components/product-hub-tray/product-hub-panel.agent.d.ts +4 -0
- package/dist/components/product-hub-tray/product-hub-panel.agent.d.ts.map +1 -0
- package/dist/components/product-hub-tray/product-hub-panel.d.ts +54 -0
- package/dist/components/product-hub-tray/product-hub-panel.d.ts.map +1 -0
- package/dist/components/product-hub-tray/product-hub-tray.agent.d.ts +4 -0
- package/dist/components/product-hub-tray/product-hub-tray.agent.d.ts.map +1 -0
- package/dist/components/product-hub-tray/product-hub-tray.d.ts +115 -0
- package/dist/components/product-hub-tray/product-hub-tray.d.ts.map +1 -0
- package/dist/components/sidebar/index.d.ts +2 -2
- package/dist/components/sidebar/index.d.ts.map +1 -1
- package/dist/components/sidebar/index.js +12 -11
- package/dist/components/sidebar/sidebar.d.ts +14 -1
- package/dist/components/sidebar/sidebar.d.ts.map +1 -1
- package/dist/components/sign-document/index.js +1 -1
- package/dist/components/warning-stack/index.js +1 -1
- package/dist/components/warning-stack/warning-stack.d.ts.map +1 -1
- package/dist/components/workflow/index.js +1 -1
- package/dist/i18n/locales/ar.d.ts +262 -1
- package/dist/i18n/locales/ar.d.ts.map +1 -1
- package/dist/i18n/locales/ar.js +261 -2
- package/dist/i18n/locales/ar.js.map +1 -1
- package/dist/i18n/locales/de.d.ts +262 -1
- package/dist/i18n/locales/de.d.ts.map +1 -1
- package/dist/i18n/locales/de.js +261 -2
- package/dist/i18n/locales/de.js.map +1 -1
- package/dist/i18n/locales/el.d.ts +262 -1
- package/dist/i18n/locales/el.d.ts.map +1 -1
- package/dist/i18n/locales/el.js +261 -2
- package/dist/i18n/locales/el.js.map +1 -1
- package/dist/i18n/locales/en.d.ts +262 -1
- package/dist/i18n/locales/en.d.ts.map +1 -1
- package/dist/i18n/locales/en.js +261 -2
- package/dist/i18n/locales/en.js.map +1 -1
- package/dist/i18n/locales/es.d.ts +262 -1
- package/dist/i18n/locales/es.d.ts.map +1 -1
- package/dist/i18n/locales/es.js +261 -2
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.d.ts +262 -1
- package/dist/i18n/locales/fr.d.ts.map +1 -1
- package/dist/i18n/locales/fr.js +261 -2
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hi.d.ts +262 -1
- package/dist/i18n/locales/hi.d.ts.map +1 -1
- package/dist/i18n/locales/hi.js +261 -2
- package/dist/i18n/locales/hi.js.map +1 -1
- package/dist/i18n/locales/it.d.ts +262 -1
- package/dist/i18n/locales/it.d.ts.map +1 -1
- package/dist/i18n/locales/it.js +261 -2
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/ja.d.ts +262 -1
- package/dist/i18n/locales/ja.d.ts.map +1 -1
- package/dist/i18n/locales/ja.js +261 -2
- package/dist/i18n/locales/ja.js.map +1 -1
- package/dist/i18n/locales/nl.d.ts +262 -1
- package/dist/i18n/locales/nl.d.ts.map +1 -1
- package/dist/i18n/locales/nl.js +261 -2
- package/dist/i18n/locales/nl.js.map +1 -1
- package/dist/i18n/locales/pl.d.ts +262 -1
- package/dist/i18n/locales/pl.d.ts.map +1 -1
- package/dist/i18n/locales/pl.js +261 -2
- package/dist/i18n/locales/pl.js.map +1 -1
- package/dist/i18n/locales/pt.d.ts +262 -1
- package/dist/i18n/locales/pt.d.ts.map +1 -1
- package/dist/i18n/locales/pt.js +261 -2
- package/dist/i18n/locales/pt.js.map +1 -1
- package/dist/i18n/locales/ro.d.ts +262 -1
- package/dist/i18n/locales/ro.d.ts.map +1 -1
- package/dist/i18n/locales/ro.js +261 -2
- package/dist/i18n/locales/ro.js.map +1 -1
- package/dist/i18n/locales/ru.d.ts +262 -1
- package/dist/i18n/locales/ru.d.ts.map +1 -1
- package/dist/i18n/locales/ru.js +261 -2
- package/dist/i18n/locales/ru.js.map +1 -1
- package/dist/i18n/locales/sq.d.ts +262 -1
- package/dist/i18n/locales/sq.d.ts.map +1 -1
- package/dist/i18n/locales/sq.js +261 -2
- package/dist/i18n/locales/sq.js.map +1 -1
- package/dist/i18n/locales/sv.d.ts +262 -1
- package/dist/i18n/locales/sv.d.ts.map +1 -1
- package/dist/i18n/locales/sv.js +261 -2
- package/dist/i18n/locales/sv.js.map +1 -1
- package/dist/i18n/locales/tr.d.ts +262 -1
- package/dist/i18n/locales/tr.d.ts.map +1 -1
- package/dist/i18n/locales/tr.js +261 -2
- package/dist/i18n/locales/tr.js.map +1 -1
- package/dist/i18n/locales/zh.d.ts +262 -1
- package/dist/i18n/locales/zh.d.ts.map +1 -1
- package/dist/i18n/locales/zh.js +261 -2
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/index.js +661 -632
- package/dist/index.js.map +1 -1
- package/dist/locales/ar.json +263 -2
- package/dist/locales/de.json +263 -2
- package/dist/locales/el.json +263 -2
- package/dist/locales/en.json +263 -2
- package/dist/locales/es.json +263 -2
- package/dist/locales/fr.json +263 -2
- package/dist/locales/hi.json +263 -2
- package/dist/locales/it.json +263 -2
- package/dist/locales/ja.json +263 -2
- package/dist/locales/nl.json +263 -2
- package/dist/locales/pl.json +263 -2
- package/dist/locales/pt.json +263 -2
- package/dist/locales/ro.json +263 -2
- package/dist/locales/ru.json +263 -2
- package/dist/locales/sq.json +263 -2
- package/dist/locales/sv.json +263 -2
- package/dist/locales/tr.json +263 -2
- package/dist/locales/zh.json +263 -2
- package/dist/patterns/marketplace-app-shell/index.js +1 -1
- package/dist/patterns/patient-shell/index.js +1 -1
- package/dist/tokens.css +1 -1
- package/package.json +21 -1
- package/dist/_chunks/ai-tools-rail-CxYG04cw.js.map +0 -1
- package/dist/_chunks/alert-ywPR59NE.js.map +0 -1
- package/dist/_chunks/cycle-calculator-DYvGm_m1.js +0 -211
- package/dist/_chunks/cycle-calculator-DYvGm_m1.js.map +0 -1
- package/dist/_chunks/due-date-calculator-BXd3ANj7.js +0 -216
- package/dist/_chunks/due-date-calculator-BXd3ANj7.js.map +0 -1
- package/dist/_chunks/gestation-mWF4AXea.js +0 -50
- package/dist/_chunks/gestation-mWF4AXea.js.map +0 -1
- package/dist/_chunks/gestational-age-calculator-Crj6FgZw.js +0 -203
- package/dist/_chunks/gestational-age-calculator-Crj6FgZw.js.map +0 -1
- package/dist/_chunks/pregnancy-weight-gain-C7dK89jE.js +0 -246
- package/dist/_chunks/pregnancy-weight-gain-C7dK89jE.js.map +0 -1
- package/dist/_chunks/sidebar-_vJXI9rB.js.map +0 -1
- package/dist/_chunks/subDays-Dv7q9S7u.js +0 -8
- package/dist/_chunks/warning-stack-DNR3-IbP.js +0 -180
- package/dist/_chunks/warning-stack-DNR3-IbP.js.map +0 -1
|
@@ -2,13 +2,14 @@ import { jsxs as E, jsx as t } from "react/jsx-runtime";
|
|
|
2
2
|
import { forwardRef as a, useState as R, useRef as V, useCallback as z, Children as B, isValidElement as D } from "react";
|
|
3
3
|
import { c as F } from "./index-D2ZczOXr.js";
|
|
4
4
|
import { useTranslation as L } from "react-i18next";
|
|
5
|
-
import { u as
|
|
6
|
-
import { X } from "./x-CCcI3eJp.js";
|
|
5
|
+
import { u as U } from "./use-controllable-state-BiY4xTzM.js";
|
|
6
|
+
import { X as W } from "./x-CCcI3eJp.js";
|
|
7
|
+
import { C as X } from "./circle-arrow-up-CC_85SuH.js";
|
|
7
8
|
import { C as G } from "./circle-x-Du2CmjaU.js";
|
|
8
9
|
import { T as H } from "./triangle-alert-CBPUIzQo.js";
|
|
9
10
|
import { C as M } from "./circle-check-9AeSgJD_.js";
|
|
10
11
|
import { I as P } from "./info-B9XNKn05.js";
|
|
11
|
-
const
|
|
12
|
+
const $ = F(
|
|
12
13
|
[
|
|
13
14
|
// Default `items-center` keeps the icon + dismiss optically aligned
|
|
14
15
|
// with a single-line description. The `data-[has-title=true]`
|
|
@@ -58,6 +59,19 @@ const U = F(
|
|
|
58
59
|
"ds:text-[var(--error-foreground)]",
|
|
59
60
|
"ds:[&_[data-intent=tonal]]:bg-[color:var(--error-foreground)]",
|
|
60
61
|
"ds:[&_[data-intent=tonal]]:text-[color:var(--background)]"
|
|
62
|
+
].join(" "),
|
|
63
|
+
// Sales / marketing upsell — accent magenta via the --promo
|
|
64
|
+
// semantic pair so marketing pushes (product hub → warning
|
|
65
|
+
// stack) read as offers, not operational warnings. Surface is
|
|
66
|
+
// the same subtle accent gradient as SidebarUpgradeChip (it
|
|
67
|
+
// flattens in the accessible themes and follows Canvas in
|
|
68
|
+
// forced-colors), keeping the two upsell affordances kin.
|
|
69
|
+
promo: [
|
|
70
|
+
"ds:border-[color:var(--promo)]",
|
|
71
|
+
"ds:bg-[image:var(--gradient-surface-subtle-accent)]",
|
|
72
|
+
"ds:text-[var(--promo-foreground)]",
|
|
73
|
+
"ds:[&_[data-intent=tonal]]:bg-[color:var(--promo-foreground)]",
|
|
74
|
+
"ds:[&_[data-intent=tonal]]:text-[color:var(--background)]"
|
|
61
75
|
].join(" ")
|
|
62
76
|
}
|
|
63
77
|
},
|
|
@@ -65,7 +79,7 @@ const U = F(
|
|
|
65
79
|
variant: "info"
|
|
66
80
|
}
|
|
67
81
|
}
|
|
68
|
-
), h = "ds:shrink-0 ds:size-5",
|
|
82
|
+
), h = "ds:shrink-0 ds:size-5", q = `${h} ds:mt-0.5`, J = [
|
|
69
83
|
// Default (no title): the alert root uses `items-center` and the
|
|
70
84
|
// button centres in the cross-axis. A centred 16×16 glyph inside a
|
|
71
85
|
// 44×44 button aligns optically with a single-line description.
|
|
@@ -89,7 +103,7 @@ const U = F(
|
|
|
89
103
|
"ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid",
|
|
90
104
|
"ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
|
|
91
105
|
"ds:forced-colors:focus-visible:outline-[CanvasText]"
|
|
92
|
-
].join(" "),
|
|
106
|
+
].join(" "), K = {
|
|
93
107
|
info: { icon: /* @__PURE__ */ t(P, { "aria-hidden": "true" }), role: "status", live: "polite" },
|
|
94
108
|
success: {
|
|
95
109
|
icon: /* @__PURE__ */ t(M, { "aria-hidden": "true" }),
|
|
@@ -105,70 +119,76 @@ const U = F(
|
|
|
105
119
|
icon: /* @__PURE__ */ t(G, { "aria-hidden": "true" }),
|
|
106
120
|
role: "alert",
|
|
107
121
|
live: "assertive"
|
|
122
|
+
},
|
|
123
|
+
// Promotions never interrupt — same polite semantics as info.
|
|
124
|
+
promo: {
|
|
125
|
+
icon: /* @__PURE__ */ t(X, { "aria-hidden": "true" }),
|
|
126
|
+
role: "status",
|
|
127
|
+
live: "polite"
|
|
108
128
|
}
|
|
109
129
|
}, c = a(
|
|
110
|
-
({ as: e = "h5", className:
|
|
130
|
+
({ as: e = "h5", className: o, ...r }, n) => /* @__PURE__ */ t(
|
|
111
131
|
e,
|
|
112
132
|
{
|
|
113
133
|
ref: n,
|
|
114
|
-
className: ["type-title-item",
|
|
115
|
-
...
|
|
134
|
+
className: ["type-title-item", o].filter(Boolean).join(" "),
|
|
135
|
+
...r
|
|
116
136
|
}
|
|
117
137
|
)
|
|
118
138
|
);
|
|
119
139
|
c.displayName = "Alert.Title";
|
|
120
|
-
const x = a(({ className: e, ...
|
|
140
|
+
const x = a(({ className: e, ...o }, r) => /* @__PURE__ */ t(
|
|
121
141
|
"p",
|
|
122
142
|
{
|
|
123
|
-
ref:
|
|
143
|
+
ref: r,
|
|
124
144
|
className: [
|
|
125
145
|
"ds:[[data-has-title=true]_&]:mt-[var(--spacing-xs)] type-body-sm",
|
|
126
146
|
e
|
|
127
147
|
].filter(Boolean).join(" "),
|
|
128
|
-
...
|
|
148
|
+
...o
|
|
129
149
|
}
|
|
130
150
|
));
|
|
131
151
|
x.displayName = "Alert.Description";
|
|
132
152
|
const _ = a(
|
|
133
|
-
({ className: e, ...
|
|
153
|
+
({ className: e, ...o }, r) => /* @__PURE__ */ t(
|
|
134
154
|
"div",
|
|
135
155
|
{
|
|
136
|
-
ref:
|
|
156
|
+
ref: r,
|
|
137
157
|
className: [
|
|
138
158
|
"ds:mt-[var(--spacing-sm)] ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-sm)]",
|
|
139
159
|
e
|
|
140
160
|
].filter(Boolean).join(" "),
|
|
141
|
-
...
|
|
161
|
+
...o
|
|
142
162
|
}
|
|
143
163
|
)
|
|
144
164
|
);
|
|
145
165
|
_.displayName = "Alert.Action";
|
|
146
|
-
const
|
|
166
|
+
const C = a(
|
|
147
167
|
({
|
|
148
168
|
variant: e = "info",
|
|
149
|
-
dismissible:
|
|
150
|
-
open:
|
|
169
|
+
dismissible: o = !1,
|
|
170
|
+
open: r,
|
|
151
171
|
onOpenChange: n,
|
|
152
172
|
icon: m,
|
|
153
|
-
live:
|
|
173
|
+
live: w,
|
|
154
174
|
className: A,
|
|
155
175
|
children: u,
|
|
156
176
|
...N
|
|
157
177
|
}, y) => {
|
|
158
|
-
const { t: T } = L(), [j, k] =
|
|
159
|
-
value:
|
|
178
|
+
const { t: T } = L(), [j, k] = U({
|
|
179
|
+
value: r,
|
|
160
180
|
defaultValue: !0,
|
|
161
181
|
onChange: n
|
|
162
182
|
}), I = j ?? !0, [f, g] = R(!1), i = V(null), O = z(() => {
|
|
163
183
|
if (typeof window > "u") return 200;
|
|
164
|
-
const
|
|
165
|
-
if (!
|
|
166
|
-
const b =
|
|
184
|
+
const s = window.getComputedStyle(document.documentElement).getPropertyValue("--animation-duration");
|
|
185
|
+
if (!s) return 200;
|
|
186
|
+
const b = s.trim(), l = parseFloat(b);
|
|
167
187
|
return Number.isFinite(l) ? b.endsWith("ms") ? l : l * 1e3 : 200;
|
|
168
188
|
}, []);
|
|
169
189
|
if (!I) return null;
|
|
170
|
-
const d =
|
|
171
|
-
(
|
|
190
|
+
const d = K[e], v = m !== void 0 ? m : d.icon, p = B.toArray(u).some(
|
|
191
|
+
(s) => D(s) && s.type === c
|
|
172
192
|
), S = () => {
|
|
173
193
|
f || (g(!0), i.current && clearTimeout(i.current), i.current = setTimeout(() => {
|
|
174
194
|
g(!1), k(!1);
|
|
@@ -179,12 +199,12 @@ const w = a(
|
|
|
179
199
|
{
|
|
180
200
|
ref: y,
|
|
181
201
|
role: d.role,
|
|
182
|
-
"aria-live":
|
|
202
|
+
"aria-live": w ?? d.live,
|
|
183
203
|
"data-component": "alert",
|
|
184
204
|
"data-has-title": p ? "true" : "false",
|
|
185
205
|
"data-state": f ? "closing" : "open",
|
|
186
206
|
className: [
|
|
187
|
-
|
|
207
|
+
$({ variant: e, className: A }),
|
|
188
208
|
// Entry: fade + slide-down on mount. Exit: fade + slide-up + slight
|
|
189
209
|
// scale when dismissed. Driven by `tw-animate-css`. Respects
|
|
190
210
|
// `prefers-reduced-motion` via `motion-safe:` and zeroes under the
|
|
@@ -200,16 +220,17 @@ const w = a(
|
|
|
200
220
|
].join(" "),
|
|
201
221
|
...N,
|
|
202
222
|
children: [
|
|
203
|
-
v ? /* @__PURE__ */ t("span", { className: p ?
|
|
223
|
+
v ? /* @__PURE__ */ t("span", { className: p ? q : h, children: v }) : null,
|
|
204
224
|
/* @__PURE__ */ t("div", { className: "ds:flex-1 ds:min-w-0", children: u }),
|
|
205
|
-
|
|
225
|
+
o ? /* @__PURE__ */ t(
|
|
206
226
|
"button",
|
|
207
227
|
{
|
|
208
228
|
type: "button",
|
|
209
229
|
"aria-label": T("common.close", "Close"),
|
|
210
230
|
onClick: S,
|
|
211
|
-
|
|
212
|
-
|
|
231
|
+
"data-alert-dismiss": "",
|
|
232
|
+
className: J,
|
|
233
|
+
children: /* @__PURE__ */ t(W, { "aria-hidden": "true", className: "ds:size-4" })
|
|
213
234
|
}
|
|
214
235
|
) : null
|
|
215
236
|
]
|
|
@@ -217,13 +238,13 @@ const w = a(
|
|
|
217
238
|
);
|
|
218
239
|
}
|
|
219
240
|
);
|
|
220
|
-
|
|
221
|
-
const
|
|
241
|
+
C.displayName = "Alert";
|
|
242
|
+
const dt = Object.assign(C, {
|
|
222
243
|
Title: c,
|
|
223
244
|
Description: x,
|
|
224
245
|
Action: _
|
|
225
246
|
});
|
|
226
247
|
export {
|
|
227
|
-
|
|
248
|
+
dt as A
|
|
228
249
|
};
|
|
229
|
-
//# sourceMappingURL=alert-
|
|
250
|
+
//# sourceMappingURL=alert-CUTxnym2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alert-CUTxnym2.js","sources":["../../src/components/alert/alert.tsx"],"sourcesContent":["import {\n Children,\n forwardRef,\n isValidElement,\n useCallback,\n useRef,\n useState,\n type HTMLAttributes,\n type ReactNode,\n} from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport {\n CircleArrowUp,\n CircleCheck,\n CircleX,\n Info,\n TriangleAlert,\n X,\n} from 'lucide-react';\nimport { useControllableState } from '../../hooks/use-controllable-state';\n\nconst alertVariants = cva(\n [\n // Default `items-center` keeps the icon + dismiss optically aligned\n // with a single-line description. The `data-[has-title=true]`\n // selector flips to `items-start` when an `<Alert.Title>` is\n // present so the icon anchors to the heading's top instead of\n // floating against the centre of the title+description block.\n // For multi-line descriptions without a title, `items-center` still\n // looks right at 2–3 lines and matches Toast / Notification.\n 'ds:flex ds:items-center ds:data-[has-title=true]:items-start ds:gap-[var(--spacing-md)]',\n 'ds:rounded-[var(--radius-md)]',\n 'ds:border ds:border-[length:var(--border-width-sm)]',\n 'ds:p-[var(--spacing-md)]',\n 'ds:break-words',\n ].join(' '),\n {\n variants: {\n // Each variant paints `<Button intent=\"tonal\">` descendants via a\n // child selector — the button carries `data-intent=\"tonal\"`, the\n // Alert applies the matching tint (`*-foreground` for bg + the\n // surface `--background` for fg). Descendant selectors sidestep\n // custom-property inheritance and are rock-solid across themes.\n variant: {\n info: [\n 'ds:border-[color:var(--info)]',\n 'ds:bg-[color-mix(in_srgb,var(--info)_10%,transparent)]',\n 'ds:text-[var(--info-foreground)]',\n 'ds:[&_[data-intent=tonal]]:bg-[color:var(--info-foreground)]',\n 'ds:[&_[data-intent=tonal]]:text-[color:var(--background)]',\n ].join(' '),\n success: [\n 'ds:border-[color:var(--success)]',\n 'ds:bg-[color-mix(in_srgb,var(--success)_10%,transparent)]',\n 'ds:text-[var(--success-foreground)]',\n 'ds:[&_[data-intent=tonal]]:bg-[color:var(--success-foreground)]',\n 'ds:[&_[data-intent=tonal]]:text-[color:var(--background)]',\n ].join(' '),\n warning: [\n 'ds:border-[color:var(--warning)]',\n 'ds:bg-[color-mix(in_srgb,var(--warning)_10%,transparent)]',\n 'ds:text-[var(--warning-foreground)]',\n 'ds:[&_[data-intent=tonal]]:bg-[color:var(--warning-foreground)]',\n 'ds:[&_[data-intent=tonal]]:text-[color:var(--background)]',\n ].join(' '),\n error: [\n 'ds:border-[color:var(--error)]',\n 'ds:bg-[color-mix(in_srgb,var(--error)_10%,transparent)]',\n 'ds:text-[var(--error-foreground)]',\n 'ds:[&_[data-intent=tonal]]:bg-[color:var(--error-foreground)]',\n 'ds:[&_[data-intent=tonal]]:text-[color:var(--background)]',\n ].join(' '),\n // Sales / marketing upsell — accent magenta via the --promo\n // semantic pair so marketing pushes (product hub → warning\n // stack) read as offers, not operational warnings. Surface is\n // the same subtle accent gradient as SidebarUpgradeChip (it\n // flattens in the accessible themes and follows Canvas in\n // forced-colors), keeping the two upsell affordances kin.\n promo: [\n 'ds:border-[color:var(--promo)]',\n 'ds:bg-[image:var(--gradient-surface-subtle-accent)]',\n 'ds:text-[var(--promo-foreground)]',\n 'ds:[&_[data-intent=tonal]]:bg-[color:var(--promo-foreground)]',\n 'ds:[&_[data-intent=tonal]]:text-[color:var(--background)]',\n ].join(' '),\n },\n },\n defaultVariants: {\n variant: 'info',\n },\n },\n);\n\n// Icon stays `mt-0.5` only when an `<Alert.Title>` is present — that\n// offset compensates for the title's cap-height vs. line-box origin so\n// the glyph aligns with the heading's caps. Without a title, the\n// container uses `items-center` and the offset would push the icon\n// 2px off the optical axis.\nconst ICON_BASE = 'ds:shrink-0 ds:size-5';\nconst ICON_WITH_TITLE = `${ICON_BASE} ds:mt-0.5`;\n\nconst CLOSE_BUTTON_CLASSES = [\n // Default (no title): the alert root uses `items-center` and the\n // button centres in the cross-axis. A centred 16×16 glyph inside a\n // 44×44 button aligns optically with a single-line description.\n // With a title: the root flips to `items-start` so the button's top\n // edge aligns with the title row top. A centred glyph would then\n // land ~11 px below the title's optical centre (button height is\n // --min-target-size, much taller than the title's line-height). The\n // `[data-has-title=true]` variant below flips the button to\n // `items-start` and adds a block-start padding that pulls the glyph\n // up onto the title row — same cap-height compensation idea as the\n // leading icon's `mt-0.5`.\n 'ds:ms-auto ds:shrink-0 ds:inline-flex ds:items-center ds:justify-center',\n 'ds:[[data-has-title=true]_&]:items-start',\n 'ds:[[data-has-title=true]_&]:pt-[var(--spacing-sm)]',\n 'ds:rounded-[var(--radius-sm)]',\n 'ds:min-h-[var(--min-target-size)] ds:min-w-[var(--min-target-size)]',\n 'ds:-mt-[var(--spacing-xs)] ds:-me-[var(--spacing-xs)]',\n 'ds:text-current ds:opacity-70',\n 'ds:hover:opacity-100',\n 'ds:transition-opacity ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none',\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].join(' ');\n\nconst VARIANT_CONFIG = {\n info: { icon: <Info aria-hidden=\"true\" />, role: 'status', live: 'polite' },\n success: {\n icon: <CircleCheck aria-hidden=\"true\" />,\n role: 'status',\n live: 'polite',\n },\n warning: {\n icon: <TriangleAlert aria-hidden=\"true\" />,\n role: 'alert',\n live: 'assertive',\n },\n error: {\n icon: <CircleX aria-hidden=\"true\" />,\n role: 'alert',\n live: 'assertive',\n },\n // Promotions never interrupt — same polite semantics as info.\n promo: {\n icon: <CircleArrowUp aria-hidden=\"true\" />,\n role: 'status',\n live: 'polite',\n },\n} as const;\n\ninterface AlertTitleProps extends HTMLAttributes<HTMLHeadingElement> {\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span';\n}\n\nconst AlertTitle = forwardRef<HTMLHeadingElement, AlertTitleProps>(\n ({ as: Tag = 'h5', className, ...props }, ref) => (\n <Tag\n ref={ref}\n className={['type-title-item', className].filter(Boolean).join(' ')}\n {...props}\n />\n ),\n);\nAlertTitle.displayName = 'Alert.Title';\n\nconst AlertDescription = forwardRef<\n HTMLParagraphElement,\n HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n // `mt` is gated on the root's `data-has-title=\"true\"` attribute so\n // the margin only paints when there's a Title above the\n // Description to separate from. Without this gate, a Description\n // rendered alone sits a few pixels below the icon + dismiss ×\n // optical centre — visible on the AlfaDocs marketing privacy\n // generator before HTP-4860's follow-up fix.\n className={[\n 'ds:[[data-has-title=true]_&]:mt-[var(--spacing-xs)] type-body-sm',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n />\n));\nAlertDescription.displayName = 'Alert.Description';\n\nconst AlertAction = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={[\n 'ds:mt-[var(--spacing-sm)] ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-sm)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n />\n ),\n);\nAlertAction.displayName = 'Alert.Action';\n\nexport interface AlertProps\n extends\n Omit<HTMLAttributes<HTMLDivElement>, 'role'>,\n VariantProps<typeof alertVariants> {\n variant?: 'info' | 'success' | 'warning' | 'error' | 'promo';\n dismissible?: boolean;\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n icon?: ReactNode;\n live?: 'assertive' | 'polite' | 'off';\n}\n\nexport type { AlertTitleProps };\n\nconst AlertRoot = forwardRef<HTMLDivElement, AlertProps>(\n (\n {\n variant = 'info',\n dismissible = false,\n open: controlledOpen,\n onOpenChange,\n icon,\n live,\n className,\n children,\n ...props\n },\n ref,\n ) => {\n const { t } = useTranslation();\n const [isOpenRaw, setOpen] = useControllableState<boolean>({\n value: controlledOpen,\n defaultValue: true,\n onChange: onOpenChange,\n });\n const isOpen = isOpenRaw ?? true;\n const [isClosing, setIsClosing] = useState(false);\n const closeTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const animationDurationMs = useCallback((): number => {\n if (typeof window === 'undefined') return 200;\n const raw = window\n .getComputedStyle(document.documentElement)\n .getPropertyValue('--animation-duration');\n if (!raw) return 200;\n const trimmed = raw.trim();\n const n = parseFloat(trimmed);\n if (!Number.isFinite(n)) return 200;\n return trimmed.endsWith('ms') ? n : n * 1000;\n }, []);\n\n if (!isOpen) return null;\n\n const config = VARIANT_CONFIG[variant];\n const effectiveIcon = icon !== undefined ? icon : config.icon;\n\n // Detect an `<Alert.Title>` anywhere in the immediate children so\n // the root can flip its cross-axis alignment. Nested wrappers\n // around a Title aren't supported — keep the API as flat as the\n // existing `Alert.Title` / `Alert.Description` convention.\n const hasTitle = Children.toArray(children).some(\n (child) => isValidElement(child) && child.type === AlertTitle,\n );\n\n const handleDismiss = () => {\n if (isClosing) return;\n setIsClosing(true);\n if (closeTimerRef.current) clearTimeout(closeTimerRef.current);\n closeTimerRef.current = setTimeout(() => {\n setIsClosing(false);\n setOpen(false);\n }, animationDurationMs());\n };\n\n return (\n <div\n ref={ref}\n role={config.role}\n aria-live={live ?? config.live}\n data-component=\"alert\"\n data-has-title={hasTitle ? 'true' : 'false'}\n data-state={isClosing ? 'closing' : 'open'}\n className={[\n alertVariants({ variant, className }),\n // Entry: fade + slide-down on mount. Exit: fade + slide-up + slight\n // scale when dismissed. Driven by `tw-animate-css`. Respects\n // `prefers-reduced-motion` via `motion-safe:` and zeroes under the\n // accessible theme (`--animation-duration: 0ms`).\n 'ds:motion-safe:animate-in ds:motion-safe:fade-in-0 ds:motion-safe:slide-in-from-top-2',\n 'ds:motion-safe:data-[state=closing]:animate-out ds:motion-safe:data-[state=closing]:fade-out-0',\n 'ds:motion-safe:data-[state=closing]:slide-out-to-top-2 ds:motion-safe:data-[state=closing]:zoom-out-95',\n // Pin the exit's end-state until React unmounts. Without\n // `fill-mode-forwards` the element snaps back to opacity:1 for one\n // paint frame after the animation ends.\n 'ds:motion-safe:data-[state=closing]:fill-mode-forwards',\n 'ds:motion-safe:duration-[var(--animation-duration)]',\n ].join(' ')}\n {...props}\n >\n {effectiveIcon ? (\n <span className={hasTitle ? ICON_WITH_TITLE : ICON_BASE}>\n {effectiveIcon}\n </span>\n ) : null}\n\n <div className=\"ds:flex-1 ds:min-w-0\">{children}</div>\n\n {dismissible ? (\n <button\n type=\"button\"\n aria-label={t('common.close', 'Close')}\n onClick={handleDismiss}\n // Stable hook for containers (WarningStack) that hand focus to\n // a neighbouring dismiss control after this one unmounts.\n data-alert-dismiss=\"\"\n className={CLOSE_BUTTON_CLASSES}\n >\n <X aria-hidden=\"true\" className=\"ds:size-4\" />\n </button>\n ) : null}\n </div>\n );\n },\n);\n\nAlertRoot.displayName = 'Alert';\n\nexport const Alert = Object.assign(AlertRoot, {\n Title: AlertTitle,\n Description: AlertDescription,\n Action: AlertAction,\n});\n"],"names":["alertVariants","cva","ICON_BASE","ICON_WITH_TITLE","CLOSE_BUTTON_CLASSES","VARIANT_CONFIG","jsx","Info","CircleCheck","TriangleAlert","CircleX","CircleArrowUp","AlertTitle","forwardRef","Tag","className","props","ref","AlertDescription","AlertAction","AlertRoot","variant","dismissible","controlledOpen","onOpenChange","icon","live","children","t","useTranslation","isOpenRaw","setOpen","useControllableState","isOpen","isClosing","setIsClosing","useState","closeTimerRef","useRef","animationDurationMs","useCallback","raw","trimmed","n","config","effectiveIcon","hasTitle","Children","child","isValidElement","handleDismiss","jsxs","X","Alert"],"mappings":"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"}
|
|
@@ -0,0 +1,413 @@
|
|
|
1
|
+
import { a as y, j as N } from "./date-picker-variants-CXEAx3O_.js";
|
|
2
|
+
import { s as p } from "./subDays-Bs00akhK.js";
|
|
3
|
+
import { jsx as u, jsxs as f } from "react/jsx-runtime";
|
|
4
|
+
import { useMemo as M } from "react";
|
|
5
|
+
import { useTranslation as T } from "react-i18next";
|
|
6
|
+
import { C as I } from "./card-DPmk26CL.js";
|
|
7
|
+
import { B as x } from "./badge-zsf5i5bH.js";
|
|
8
|
+
const _ = 280, S = 14, b = 266, C = 28;
|
|
9
|
+
function w(t) {
|
|
10
|
+
if (t < 0) return "preconception";
|
|
11
|
+
const a = Math.floor(t / 7);
|
|
12
|
+
return a < 14 ? "first" : a < 28 ? "second" : a < 42 ? "third" : "postterm";
|
|
13
|
+
}
|
|
14
|
+
function mt(t, a) {
|
|
15
|
+
const { method: s, date: r } = t;
|
|
16
|
+
let o, c;
|
|
17
|
+
if (s === "lmp") {
|
|
18
|
+
const m = t.cycleLength ?? C;
|
|
19
|
+
o = r, c = y(r, _ + (m - C));
|
|
20
|
+
} else if (s === "conception")
|
|
21
|
+
o = p(r, S), c = y(r, b);
|
|
22
|
+
else {
|
|
23
|
+
const m = t.embryoAge ?? 5, h = p(r, m);
|
|
24
|
+
o = p(h, S), c = y(h, b);
|
|
25
|
+
}
|
|
26
|
+
const e = N(a, o), l = e < 0 ? null : {
|
|
27
|
+
weeks: Math.floor(e / 7),
|
|
28
|
+
days: e % 7,
|
|
29
|
+
totalDays: e
|
|
30
|
+
};
|
|
31
|
+
return {
|
|
32
|
+
dueDate: c,
|
|
33
|
+
gestationalStart: o,
|
|
34
|
+
gestationalAge: l,
|
|
35
|
+
trimester: w(e)
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
const R = [12, 24, 28, 37, 40];
|
|
39
|
+
function gt(t) {
|
|
40
|
+
return R.map((a) => ({
|
|
41
|
+
key: `w${a}`,
|
|
42
|
+
week: a,
|
|
43
|
+
date: y(t, a * 7)
|
|
44
|
+
}));
|
|
45
|
+
}
|
|
46
|
+
const Dt = {
|
|
47
|
+
preconception: "neutral",
|
|
48
|
+
first: "info",
|
|
49
|
+
second: "success",
|
|
50
|
+
third: "warning",
|
|
51
|
+
postterm: "error"
|
|
52
|
+
}, $ = {
|
|
53
|
+
preconception: "--muted",
|
|
54
|
+
first: "--info",
|
|
55
|
+
second: "--success",
|
|
56
|
+
third: "--warning-readable",
|
|
57
|
+
postterm: "--destructive"
|
|
58
|
+
};
|
|
59
|
+
function ft(t) {
|
|
60
|
+
return $[t];
|
|
61
|
+
}
|
|
62
|
+
const i = (t, a = 0) => t * 7 + a;
|
|
63
|
+
function F(t, a = "unknown", s = "nice") {
|
|
64
|
+
if (t === "singleton") return null;
|
|
65
|
+
if (t === "triplet")
|
|
66
|
+
return { startDay: i(35, 0), endDay: i(35, 6), source: "NICE-NG137" };
|
|
67
|
+
const r = a === "unknown" ? "monochorionic-diamniotic" : a;
|
|
68
|
+
if (s === "acog")
|
|
69
|
+
switch (r) {
|
|
70
|
+
case "dichorionic-diamniotic":
|
|
71
|
+
return {
|
|
72
|
+
startDay: i(38, 0),
|
|
73
|
+
endDay: i(38, 6),
|
|
74
|
+
source: "ACOG-PB231"
|
|
75
|
+
};
|
|
76
|
+
case "monochorionic-diamniotic":
|
|
77
|
+
return {
|
|
78
|
+
startDay: i(36, 0),
|
|
79
|
+
endDay: i(37, 6),
|
|
80
|
+
source: "ACOG-PB231"
|
|
81
|
+
};
|
|
82
|
+
case "monochorionic-monoamniotic":
|
|
83
|
+
return {
|
|
84
|
+
startDay: i(32, 0),
|
|
85
|
+
endDay: i(34, 0),
|
|
86
|
+
source: "ACOG-PB231"
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
switch (r) {
|
|
90
|
+
case "dichorionic-diamniotic":
|
|
91
|
+
return { startDay: i(37, 0), endDay: i(37, 6), source: "NICE-NG137" };
|
|
92
|
+
case "monochorionic-diamniotic":
|
|
93
|
+
return { startDay: i(36, 0), endDay: i(36, 6), source: "NICE-NG137" };
|
|
94
|
+
case "monochorionic-monoamniotic":
|
|
95
|
+
return { startDay: i(32, 0), endDay: i(33, 6), source: "NICE-NG137" };
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
const L = 45, B = 84;
|
|
99
|
+
function H(t) {
|
|
100
|
+
return 8.052 * Math.sqrt(t * 1.037) + 23.73;
|
|
101
|
+
}
|
|
102
|
+
function U(t) {
|
|
103
|
+
return t <= i(8, 6) ? 5 : t <= i(15, 6) ? 7 : t <= i(21, 6) ? 10 : t <= i(27, 6) ? 14 : 21;
|
|
104
|
+
}
|
|
105
|
+
function ht(t) {
|
|
106
|
+
const a = N(t.scanDate, t.lmp), s = Math.round(H(t.crlMm)), r = Math.abs(a - s), o = U(a), c = r > o;
|
|
107
|
+
return {
|
|
108
|
+
gestationalStart: c ? p(t.scanDate, s) : t.lmp,
|
|
109
|
+
redated: c,
|
|
110
|
+
discrepancyDays: r,
|
|
111
|
+
thresholdDays: o,
|
|
112
|
+
ecoDiffDays: s - a,
|
|
113
|
+
crlInRange: t.crlMm >= L && t.crlMm <= B
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
const n = (t, a = 0) => t * 7 + a, j = (t) => t === "uk" ? {
|
|
117
|
+
key: "dating-nt",
|
|
118
|
+
category: "screening",
|
|
119
|
+
startDay: n(11, 2),
|
|
120
|
+
endDay: n(14, 1),
|
|
121
|
+
source: "NICE-NG201"
|
|
122
|
+
} : {
|
|
123
|
+
key: "dating-nt",
|
|
124
|
+
category: "screening",
|
|
125
|
+
startDay: n(11, 0),
|
|
126
|
+
endDay: n(13, 6),
|
|
127
|
+
source: "SIEOG-2021"
|
|
128
|
+
}, P = {
|
|
129
|
+
key: "nipt",
|
|
130
|
+
category: "screening",
|
|
131
|
+
startDay: n(10, 0),
|
|
132
|
+
endDay: n(13, 6),
|
|
133
|
+
condition: "on-indication",
|
|
134
|
+
source: "ACOG-CO700"
|
|
135
|
+
}, W = {
|
|
136
|
+
key: "cvs",
|
|
137
|
+
category: "diagnostic",
|
|
138
|
+
startDay: n(11, 0),
|
|
139
|
+
endDay: n(13, 6),
|
|
140
|
+
condition: "on-indication",
|
|
141
|
+
source: "ISS"
|
|
142
|
+
}, Y = {
|
|
143
|
+
key: "amnio",
|
|
144
|
+
category: "diagnostic",
|
|
145
|
+
startDay: n(15, 0),
|
|
146
|
+
endDay: n(18, 0),
|
|
147
|
+
condition: "on-indication",
|
|
148
|
+
source: "ISS"
|
|
149
|
+
}, K = (t) => t === "uk" ? {
|
|
150
|
+
key: "morphology",
|
|
151
|
+
category: "scan",
|
|
152
|
+
startDay: n(18, 0),
|
|
153
|
+
endDay: n(20, 6),
|
|
154
|
+
source: "NICE-NG201"
|
|
155
|
+
} : t === "international" ? {
|
|
156
|
+
key: "morphology",
|
|
157
|
+
category: "scan",
|
|
158
|
+
startDay: n(18, 0),
|
|
159
|
+
endDay: n(22, 0),
|
|
160
|
+
source: "ACOG-CO700"
|
|
161
|
+
} : {
|
|
162
|
+
key: "morphology",
|
|
163
|
+
category: "scan",
|
|
164
|
+
startDay: n(19, 0),
|
|
165
|
+
endDay: n(21, 6),
|
|
166
|
+
source: "SIEOG-2021"
|
|
167
|
+
}, V = {
|
|
168
|
+
key: "growth",
|
|
169
|
+
category: "scan",
|
|
170
|
+
startDay: n(30, 0),
|
|
171
|
+
endDay: n(33, 6),
|
|
172
|
+
condition: "on-indication",
|
|
173
|
+
source: "SIEOG-2021"
|
|
174
|
+
}, q = {
|
|
175
|
+
key: "ogtt-high",
|
|
176
|
+
category: "lab",
|
|
177
|
+
startDay: n(16, 0),
|
|
178
|
+
endDay: n(18, 6),
|
|
179
|
+
condition: "gdm-high",
|
|
180
|
+
source: "SID-AMD"
|
|
181
|
+
}, X = {
|
|
182
|
+
key: "ogtt-medium",
|
|
183
|
+
category: "lab",
|
|
184
|
+
startDay: n(24, 0),
|
|
185
|
+
endDay: n(28, 6),
|
|
186
|
+
condition: "gdm-medium",
|
|
187
|
+
source: "SID-AMD"
|
|
188
|
+
}, v = (t) => t === "it" ? {
|
|
189
|
+
key: "gbs",
|
|
190
|
+
category: "lab",
|
|
191
|
+
startDay: n(36, 0),
|
|
192
|
+
endDay: n(37, 6),
|
|
193
|
+
source: "ISS"
|
|
194
|
+
} : {
|
|
195
|
+
// CDC / legacy international protocols open a week earlier.
|
|
196
|
+
key: "gbs",
|
|
197
|
+
category: "lab",
|
|
198
|
+
startDay: n(35, 0),
|
|
199
|
+
endDay: n(37, 6),
|
|
200
|
+
source: "NICE-NG201"
|
|
201
|
+
}, z = {
|
|
202
|
+
key: "anti-d",
|
|
203
|
+
category: "prophylaxis",
|
|
204
|
+
startDay: n(28, 0),
|
|
205
|
+
endDay: n(28, 0),
|
|
206
|
+
condition: "rh-negative",
|
|
207
|
+
source: "ISS"
|
|
208
|
+
}, J = {
|
|
209
|
+
key: "term",
|
|
210
|
+
category: "milestone",
|
|
211
|
+
startDay: n(37, 0),
|
|
212
|
+
endDay: n(37, 0),
|
|
213
|
+
plurality: ["singleton"],
|
|
214
|
+
source: "ACOG-CO700"
|
|
215
|
+
}, Q = {
|
|
216
|
+
key: "edd",
|
|
217
|
+
category: "milestone",
|
|
218
|
+
startDay: n(40, 0),
|
|
219
|
+
endDay: n(40, 0),
|
|
220
|
+
plurality: ["singleton"],
|
|
221
|
+
source: "ACOG-CO700"
|
|
222
|
+
}, Z = {
|
|
223
|
+
key: "chorionicity",
|
|
224
|
+
category: "scan",
|
|
225
|
+
startDay: n(11, 2),
|
|
226
|
+
endDay: n(14, 1),
|
|
227
|
+
plurality: ["twin", "triplet"],
|
|
228
|
+
source: "ISUOG-2025"
|
|
229
|
+
};
|
|
230
|
+
function tt(t) {
|
|
231
|
+
return [
|
|
232
|
+
j(t),
|
|
233
|
+
P,
|
|
234
|
+
W,
|
|
235
|
+
Z,
|
|
236
|
+
Y,
|
|
237
|
+
K(t),
|
|
238
|
+
q,
|
|
239
|
+
V,
|
|
240
|
+
X,
|
|
241
|
+
J,
|
|
242
|
+
v(t),
|
|
243
|
+
z,
|
|
244
|
+
Q
|
|
245
|
+
];
|
|
246
|
+
}
|
|
247
|
+
function at(t, a, s) {
|
|
248
|
+
if (t === "singleton") return [];
|
|
249
|
+
const r = a === "dichorionic-diamniotic", o = r ? 4 : 2, c = r ? 20 : 16, e = F(t, a, s), l = [
|
|
250
|
+
{
|
|
251
|
+
key: "surveillance",
|
|
252
|
+
category: "scan",
|
|
253
|
+
startDay: n(c, 0),
|
|
254
|
+
// Runs until the planned-birth window opens (fallback 36w if none).
|
|
255
|
+
endDay: e ? e.startDay : n(36, 0),
|
|
256
|
+
source: r ? "NICE-NG137" : "ISUOG-2025",
|
|
257
|
+
meta: { everyWeeks: o, fromWeek: c }
|
|
258
|
+
}
|
|
259
|
+
];
|
|
260
|
+
return e && l.push({
|
|
261
|
+
key: "birth",
|
|
262
|
+
category: "milestone",
|
|
263
|
+
startDay: e.startDay,
|
|
264
|
+
endDay: e.endDay,
|
|
265
|
+
source: e.source
|
|
266
|
+
}), l;
|
|
267
|
+
}
|
|
268
|
+
function et(t, a) {
|
|
269
|
+
if (t.plurality && !t.plurality.includes(a.plurality) || t.chorionicity && !t.chorionicity.includes(a.chorionicity))
|
|
270
|
+
return !1;
|
|
271
|
+
switch (t.condition) {
|
|
272
|
+
case "rh-negative":
|
|
273
|
+
return a.rhNegative;
|
|
274
|
+
case "gdm-high":
|
|
275
|
+
return a.gdmRisk === "high";
|
|
276
|
+
case "gdm-medium":
|
|
277
|
+
return a.gdmRisk === "medium";
|
|
278
|
+
case "on-indication":
|
|
279
|
+
return a.includeOnIndication;
|
|
280
|
+
default:
|
|
281
|
+
return !0;
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
function nt(t, a, s, r) {
|
|
285
|
+
const o = N(t, s);
|
|
286
|
+
return N(a, s) < 0 ? { status: "past", near: !1 } : o <= 0 ? { status: "current", near: !0 } : { status: "upcoming", near: o <= r };
|
|
287
|
+
}
|
|
288
|
+
function pt(t, a = {}) {
|
|
289
|
+
const {
|
|
290
|
+
today: s = /* @__PURE__ */ new Date(),
|
|
291
|
+
schedule: r = "it",
|
|
292
|
+
plurality: o = "singleton",
|
|
293
|
+
chorionicity: c = "unknown",
|
|
294
|
+
rhNegative: e = !1,
|
|
295
|
+
gdmRisk: l,
|
|
296
|
+
includeOnIndication: m = !1,
|
|
297
|
+
birthGuideline: h = "nice",
|
|
298
|
+
nearDays: G = 14
|
|
299
|
+
} = a;
|
|
300
|
+
return [
|
|
301
|
+
...tt(r),
|
|
302
|
+
...at(o, c, h)
|
|
303
|
+
].filter(
|
|
304
|
+
(d) => et(d, {
|
|
305
|
+
plurality: o,
|
|
306
|
+
chorionicity: c,
|
|
307
|
+
rhNegative: e,
|
|
308
|
+
gdmRisk: l,
|
|
309
|
+
includeOnIndication: m
|
|
310
|
+
})
|
|
311
|
+
).map((d) => {
|
|
312
|
+
const g = y(t, d.startDay), D = y(t, d.endDay), { status: O, near: A } = nt(g, D, s, G);
|
|
313
|
+
return {
|
|
314
|
+
...d,
|
|
315
|
+
start: g,
|
|
316
|
+
end: D,
|
|
317
|
+
single: d.startDay === d.endDay,
|
|
318
|
+
status: O,
|
|
319
|
+
near: A
|
|
320
|
+
};
|
|
321
|
+
}).sort((d, g) => {
|
|
322
|
+
const D = d.startDay - g.startDay;
|
|
323
|
+
return D !== 0 ? D : d.endDay - g.endDay;
|
|
324
|
+
});
|
|
325
|
+
}
|
|
326
|
+
function rt(t, a) {
|
|
327
|
+
return t === "past" ? "neutral" : t === "current" || a ? "warning" : "info";
|
|
328
|
+
}
|
|
329
|
+
function k(t) {
|
|
330
|
+
return `${Math.floor(t / 7)}+${t % 7}`;
|
|
331
|
+
}
|
|
332
|
+
const st = {
|
|
333
|
+
scan: "activity",
|
|
334
|
+
screening: "activity",
|
|
335
|
+
diagnostic: "activity",
|
|
336
|
+
lab: "droplets",
|
|
337
|
+
prophylaxis: "heart",
|
|
338
|
+
milestone: "calendar"
|
|
339
|
+
};
|
|
340
|
+
function E(t, a) {
|
|
341
|
+
return a(`antenatalSchedule.event.${t.key}`, t.meta ?? {});
|
|
342
|
+
}
|
|
343
|
+
function Nt(t, a, s) {
|
|
344
|
+
return t.map((r) => ({
|
|
345
|
+
icon: st[r.category],
|
|
346
|
+
label: E(r, a),
|
|
347
|
+
value: r.single ? s(r.start) : `${s(r.start)} – ${s(r.end)}`
|
|
348
|
+
}));
|
|
349
|
+
}
|
|
350
|
+
function It({
|
|
351
|
+
events: t
|
|
352
|
+
}) {
|
|
353
|
+
const { t: a, i18n: s } = T(), r = M(
|
|
354
|
+
() => new Intl.DateTimeFormat(s.language, { dateStyle: "medium" }),
|
|
355
|
+
[s.language]
|
|
356
|
+
), o = (e) => E(e, a), c = (e) => e.single ? r.format(e.start) : `${r.format(e.start)} – ${r.format(
|
|
357
|
+
e.end
|
|
358
|
+
)}`;
|
|
359
|
+
return /* @__PURE__ */ u(I, { variant: "elevated", children: /* @__PURE__ */ f(I.Body, { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
|
|
360
|
+
/* @__PURE__ */ u("span", { className: "type-label ds:text-muted-foreground", children: a("antenatalSchedule.scheduleLabel") }),
|
|
361
|
+
/* @__PURE__ */ u("ul", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: t.map((e) => /* @__PURE__ */ f(
|
|
362
|
+
"li",
|
|
363
|
+
{
|
|
364
|
+
"data-status": e.status,
|
|
365
|
+
className: "ds:flex ds:flex-wrap ds:items-start ds:justify-between ds:gap-x-[var(--spacing-md)] ds:gap-y-[var(--spacing-xs)] ds:border-b ds:border-border ds:pb-[var(--spacing-sm)] ds:last:border-b-0 ds:last:pb-0",
|
|
366
|
+
children: [
|
|
367
|
+
/* @__PURE__ */ f("span", { className: "ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-2xs)]", children: [
|
|
368
|
+
/* @__PURE__ */ u("span", { className: "type-body ds:text-foreground", children: o(e) }),
|
|
369
|
+
/* @__PURE__ */ f("span", { className: "type-meta ds:text-muted-foreground", children: [
|
|
370
|
+
a(`antenatalSchedule.category.${e.category}`),
|
|
371
|
+
" ·",
|
|
372
|
+
" ",
|
|
373
|
+
k(e.startDay),
|
|
374
|
+
e.single ? "" : ` – ${k(e.endDay)}`,
|
|
375
|
+
" ·",
|
|
376
|
+
" ",
|
|
377
|
+
a(`antenatalSchedule.source.${e.source}`),
|
|
378
|
+
e.condition === "on-indication" ? ` · ${a("antenatalSchedule.onIndication")}` : ""
|
|
379
|
+
] })
|
|
380
|
+
] }),
|
|
381
|
+
/* @__PURE__ */ f("span", { className: "ds:flex ds:flex-col ds:items-end ds:gap-[var(--spacing-2xs)] ds:text-end", children: [
|
|
382
|
+
/* @__PURE__ */ u("span", { className: "type-body ds:text-foreground", children: c(e) }),
|
|
383
|
+
/* @__PURE__ */ u(x, { variant: rt(e.status, e.near), children: e.status === "upcoming" && e.near ? a("antenatalSchedule.near") : a(`antenatalSchedule.status.${e.status}`) })
|
|
384
|
+
] })
|
|
385
|
+
]
|
|
386
|
+
},
|
|
387
|
+
e.key
|
|
388
|
+
)) }),
|
|
389
|
+
/* @__PURE__ */ u("p", { className: "type-meta ds:text-muted-foreground", children: a("antenatalSchedule.disclaimer") })
|
|
390
|
+
] }) });
|
|
391
|
+
}
|
|
392
|
+
export {
|
|
393
|
+
It as A,
|
|
394
|
+
B as C,
|
|
395
|
+
C as D,
|
|
396
|
+
_ as G,
|
|
397
|
+
R as M,
|
|
398
|
+
b as T,
|
|
399
|
+
L as a,
|
|
400
|
+
H as b,
|
|
401
|
+
mt as c,
|
|
402
|
+
U as d,
|
|
403
|
+
pt as e,
|
|
404
|
+
Dt as f,
|
|
405
|
+
gt as g,
|
|
406
|
+
Nt as h,
|
|
407
|
+
ft as i,
|
|
408
|
+
S as j,
|
|
409
|
+
F as p,
|
|
410
|
+
ht as r,
|
|
411
|
+
w as t
|
|
412
|
+
};
|
|
413
|
+
//# sourceMappingURL=antenatal-schedule-timeline-CdiqkF05.js.map
|