@alfadocs/ui-kit-debug 1.95.1 → 1.96.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/{anamnesis-card-BcadMmEM.js → anamnesis-card-BzuluoD1.js} +2 -2
- package/dist/_chunks/{anamnesis-card-BcadMmEM.js.map → anamnesis-card-BzuluoD1.js.map} +1 -1
- package/dist/_chunks/{anamnesis-summary-card-DQ3iE1gD.js → anamnesis-summary-card-DdTRdNrQ.js} +2 -2
- package/dist/_chunks/{anamnesis-summary-card-DQ3iE1gD.js.map → anamnesis-summary-card-DdTRdNrQ.js.map} +1 -1
- package/dist/_chunks/{anamnesis-summary-rows-krsCC-F4.js → anamnesis-summary-rows-CdRUXoaA.js} +3 -3
- package/dist/_chunks/{anamnesis-summary-rows-krsCC-F4.js.map → anamnesis-summary-rows-CdRUXoaA.js.map} +1 -1
- package/dist/_chunks/{antenatal-schedule-timeline-BGewPfEX.js → antenatal-schedule-timeline-DmsY5g28.js} +2 -2
- package/dist/_chunks/{antenatal-schedule-timeline-BGewPfEX.js.map → antenatal-schedule-timeline-DmsY5g28.js.map} +1 -1
- package/dist/_chunks/{balance-badge-cell-DbgEQsou.js → balance-badge-cell-DcBmtijD.js} +2 -2
- package/dist/_chunks/{balance-badge-cell-DbgEQsou.js.map → balance-badge-cell-DcBmtijD.js.map} +1 -1
- package/dist/_chunks/{bishop-score-BBYuyk2k.js → bishop-score-BhMomGcX.js} +2 -2
- package/dist/_chunks/{bishop-score-BBYuyk2k.js.map → bishop-score-BhMomGcX.js.map} +1 -1
- package/dist/_chunks/{bmi-calculator-BIExHBZV.js → bmi-calculator-NMkXc079.js} +2 -2
- package/dist/_chunks/{bmi-calculator-BIExHBZV.js.map → bmi-calculator-NMkXc079.js.map} +1 -1
- package/dist/_chunks/{calendar-appointment-editor-dialog-D3tQ8N34.js → calendar-appointment-editor-dialog-BOZ5wk96.js} +8 -8
- package/dist/_chunks/{calendar-appointment-editor-dialog-D3tQ8N34.js.map → calendar-appointment-editor-dialog-BOZ5wk96.js.map} +1 -1
- package/dist/_chunks/{card-BA4Ig_kn.js → card-C85_Ndhb.js} +96 -68
- package/dist/_chunks/card-C85_Ndhb.js.map +1 -0
- package/dist/_chunks/{clinical-note-card-Cut2lNmu.js → clinical-note-card-CWHFnCmY.js} +2 -2
- package/dist/_chunks/{clinical-note-card-Cut2lNmu.js.map → clinical-note-card-CWHFnCmY.js.map} +1 -1
- package/dist/_chunks/{connection-status-CVyCqxiY.js → connection-status-CWSU3eiq.js} +2 -2
- package/dist/_chunks/{connection-status-CVyCqxiY.js.map → connection-status-CWSU3eiq.js.map} +1 -1
- package/dist/_chunks/{contact-card-ClvEDM9e.js → contact-card-CymtNvy3.js} +2 -2
- package/dist/_chunks/{contact-card-ClvEDM9e.js.map → contact-card-CymtNvy3.js.map} +1 -1
- package/dist/_chunks/{contact-profile-card-CX45mZA3.js → contact-profile-card-jBf9U4At.js} +2 -2
- package/dist/_chunks/{contact-profile-card-CX45mZA3.js.map → contact-profile-card-jBf9U4At.js.map} +1 -1
- package/dist/_chunks/{cycle-calculator-CQkjVSD2.js → cycle-calculator-ZMDvToIm.js} +2 -2
- package/dist/_chunks/{cycle-calculator-CQkjVSD2.js.map → cycle-calculator-ZMDvToIm.js.map} +1 -1
- package/dist/_chunks/{data-table-tabs-DlTPtqoI.js → data-table-tabs-CcgU2lr5.js} +2 -2
- package/dist/_chunks/{data-table-tabs-DlTPtqoI.js.map → data-table-tabs-CcgU2lr5.js.map} +1 -1
- package/dist/_chunks/{data-table-Bh9_IEj4.js → data-table-xUDjZS_O.js} +2 -2
- package/dist/_chunks/{data-table-Bh9_IEj4.js.map → data-table-xUDjZS_O.js.map} +1 -1
- package/dist/_chunks/{document-preview-CL1xsnLS.js → document-preview-DWIQryMW.js} +2 -2
- package/dist/_chunks/{document-preview-CL1xsnLS.js.map → document-preview-DWIQryMW.js.map} +1 -1
- package/dist/_chunks/{due-date-calculator-NjTlmoFK.js → due-date-calculator-Dr2cDa64.js} +3 -3
- package/dist/_chunks/{due-date-calculator-NjTlmoFK.js.map → due-date-calculator-Dr2cDa64.js.map} +1 -1
- package/dist/_chunks/editable-currency-cell-renderer-BEaj2NT_.js +493 -0
- package/dist/_chunks/editable-currency-cell-renderer-BEaj2NT_.js.map +1 -0
- package/dist/_chunks/{entity-summary-B_bOloqP.js → entity-summary-BJdfIsk_.js} +2 -2
- package/dist/_chunks/{entity-summary-B_bOloqP.js.map → entity-summary-BJdfIsk_.js.map} +1 -1
- package/dist/_chunks/{face-scheme-DyHc3zPt.js → face-scheme-BmygzbZr.js} +2 -2
- package/dist/_chunks/{face-scheme-DyHc3zPt.js.map → face-scheme-BmygzbZr.js.map} +1 -1
- package/dist/_chunks/{fetal-weight-Brl3n4LN.js → fetal-weight-CkIwJgiH.js} +2 -2
- package/dist/_chunks/{fetal-weight-Brl3n4LN.js.map → fetal-weight-CkIwJgiH.js.map} +1 -1
- package/dist/_chunks/{file-manager-Cgf2yc10.js → file-manager-Ba_TcfCj.js} +2 -2
- package/dist/_chunks/{file-manager-Cgf2yc10.js.map → file-manager-Ba_TcfCj.js.map} +1 -1
- package/dist/_chunks/{finished-terminal-D8ohcFVS.js → finished-terminal-DXVAfhRr.js} +2 -2
- package/dist/_chunks/{finished-terminal-D8ohcFVS.js.map → finished-terminal-DXVAfhRr.js.map} +1 -1
- package/dist/_chunks/{forgot-password-form-BQPvDS7i.js → forgot-password-form-BCk4rGIh.js} +2 -2
- package/dist/_chunks/{forgot-password-form-BQPvDS7i.js.map → forgot-password-form-BCk4rGIh.js.map} +1 -1
- package/dist/_chunks/{gestational-age-calculator-Dn8IOXHB.js → gestational-age-calculator-CXcDKQqC.js} +3 -3
- package/dist/_chunks/{gestational-age-calculator-Dn8IOXHB.js.map → gestational-age-calculator-CXcDKQqC.js.map} +1 -1
- package/dist/_chunks/{hcg-doubling-DQe1ptNB.js → hcg-doubling-BJFR3onB.js} +2 -2
- package/dist/_chunks/{hcg-doubling-DQe1ptNB.js.map → hcg-doubling-BJFR3onB.js.map} +1 -1
- package/dist/_chunks/{header-settings-DittkpqU.js → header-settings-C2D74i4g.js} +2 -2
- package/dist/_chunks/{header-settings-DittkpqU.js.map → header-settings-C2D74i4g.js.map} +1 -1
- package/dist/_chunks/{heatmap-9Ql8Ny9d.js → heatmap-C9tEvqEm.js} +3 -3
- package/dist/_chunks/{heatmap-9Ql8Ny9d.js.map → heatmap-C9tEvqEm.js.map} +1 -1
- package/dist/_chunks/{icon-picker-Bkm9m7ju.js → icon-picker-DQMG9L6M.js} +2 -2
- package/dist/_chunks/{icon-picker-Bkm9m7ju.js.map → icon-picker-DQMG9L6M.js.map} +1 -1
- package/dist/_chunks/info-tip-Do3RFt60.js +216 -0
- package/dist/_chunks/info-tip-Do3RFt60.js.map +1 -0
- package/dist/_chunks/{kit-extensions-44gudqqq.js → kit-extensions-C4o_tFN4.js} +6 -6
- package/dist/_chunks/{kit-extensions-44gudqqq.js.map → kit-extensions-C4o_tFN4.js.map} +1 -1
- package/dist/_chunks/{locale-picker-DVvinQXU.js → locale-picker-B1NAHW4U.js} +2 -2
- package/dist/_chunks/{locale-picker-DVvinQXU.js.map → locale-picker-B1NAHW4U.js.map} +1 -1
- package/dist/_chunks/{login-dev-card-BZBR58mu.js → login-dev-card-DcfcFJrm.js} +2 -2
- package/dist/_chunks/{login-dev-card-BZBR58mu.js.map → login-dev-card-DcfcFJrm.js.map} +1 -1
- package/dist/_chunks/{marketplace-app-shell-C8nHixB8.js → marketplace-app-shell-DDZI-uBl.js} +3 -3
- package/dist/_chunks/{marketplace-app-shell-C8nHixB8.js.map → marketplace-app-shell-DDZI-uBl.js.map} +1 -1
- package/dist/_chunks/{notes-panel-D6YhNGHU.js → notes-panel-DfjF83IK.js} +4 -4
- package/dist/_chunks/{notes-panel-D6YhNGHU.js.map → notes-panel-DfjF83IK.js.map} +1 -1
- package/dist/_chunks/{operator-hero-D_0KoEuJ.js → operator-hero-N_ziNGFF.js} +2 -2
- package/dist/_chunks/{operator-hero-D_0KoEuJ.js.map → operator-hero-N_ziNGFF.js.map} +1 -1
- package/dist/_chunks/{patient-details-DQQpgx4A.js → patient-details-DGHkAErB.js} +3 -3
- package/dist/_chunks/{patient-details-DQQpgx4A.js.map → patient-details-DGHkAErB.js.map} +1 -1
- package/dist/_chunks/{patient-field-row-Cb5jUd5Q.js → patient-field-row-BVK4y98C.js} +2 -2
- package/dist/_chunks/{patient-field-row-Cb5jUd5Q.js.map → patient-field-row-BVK4y98C.js.map} +1 -1
- package/dist/_chunks/{patient-search-Cp2efqHs.js → patient-search-CL6dtBIq.js} +2 -2
- package/dist/_chunks/{patient-search-Cp2efqHs.js.map → patient-search-CL6dtBIq.js.map} +1 -1
- package/dist/_chunks/{patient-summary-card-BvMI0eMu.js → patient-summary-card-DXz07c2X.js} +3 -3
- package/dist/_chunks/{patient-summary-card-BvMI0eMu.js.map → patient-summary-card-DXz07c2X.js.map} +1 -1
- package/dist/_chunks/{payment-automation-upsell-D1YdO1xY.js → payment-automation-upsell-CZk6f8aK.js} +3 -3
- package/dist/_chunks/{payment-automation-upsell-D1YdO1xY.js.map → payment-automation-upsell-CZk6f8aK.js.map} +1 -1
- package/dist/_chunks/{payment-request-card-BfGauFY0.js → payment-request-card-BbpN8GQg.js} +2 -2
- package/dist/_chunks/{payment-request-card-BfGauFY0.js.map → payment-request-card-BbpN8GQg.js.map} +1 -1
- package/dist/_chunks/{periodontal-chart-_y4Ck7_P.js → periodontal-chart-Cw-ZsIls.js} +2 -2
- package/dist/_chunks/{periodontal-chart-_y4Ck7_P.js.map → periodontal-chart-Cw-ZsIls.js.map} +1 -1
- package/dist/_chunks/{periodontal-chart-card-Bx6PeS3b.js → periodontal-chart-card-CG8mxR62.js} +2 -2
- package/dist/_chunks/{periodontal-chart-card-Bx6PeS3b.js.map → periodontal-chart-card-CG8mxR62.js.map} +1 -1
- package/dist/_chunks/{periodontal-diagnosis-DD3hrg9X.js → periodontal-diagnosis-CF1d_0yl.js} +2 -2
- package/dist/_chunks/{periodontal-diagnosis-DD3hrg9X.js.map → periodontal-diagnosis-CF1d_0yl.js.map} +1 -1
- package/dist/_chunks/{periodontal-risk-chart-B7S9OmPC.js → periodontal-risk-chart-D2zyID0H.js} +2 -2
- package/dist/_chunks/{periodontal-risk-chart-B7S9OmPC.js.map → periodontal-risk-chart-D2zyID0H.js.map} +1 -1
- package/dist/_chunks/{popover-Da1ekjV1.js → popover-CN5IsOeS.js} +156 -148
- package/dist/_chunks/popover-CN5IsOeS.js.map +1 -0
- package/dist/_chunks/{practice-profile-hero-ClzE-4CB.js → practice-profile-hero-DKmnB-M0.js} +2 -2
- package/dist/_chunks/{practice-profile-hero-ClzE-4CB.js.map → practice-profile-hero-DKmnB-M0.js.map} +1 -1
- package/dist/_chunks/{pregnancy-dating-CuVj9KGR.js → pregnancy-dating-D0Kf9s7s.js} +3 -3
- package/dist/_chunks/{pregnancy-dating-CuVj9KGR.js.map → pregnancy-dating-D0Kf9s7s.js.map} +1 -1
- package/dist/_chunks/{pregnancy-weight-gain-BeQRxwdP.js → pregnancy-weight-gain-B_Zldlzq.js} +2 -2
- package/dist/_chunks/{pregnancy-weight-gain-BeQRxwdP.js.map → pregnancy-weight-gain-B_Zldlzq.js.map} +1 -1
- package/dist/_chunks/{privacy-mask-BDVkikTm.js → privacy-mask-DbEKI-Jv.js} +2 -2
- package/dist/_chunks/{privacy-mask-BDVkikTm.js.map → privacy-mask-DbEKI-Jv.js.map} +1 -1
- package/dist/_chunks/{registration-form-BygI73vG.js → registration-form-K4j2tdLt.js} +2 -2
- package/dist/_chunks/{registration-form-BygI73vG.js.map → registration-form-K4j2tdLt.js.map} +1 -1
- package/dist/_chunks/{reserved.agent-BvwjDyne.js → reserved.agent-TRbKB39d.js} +2 -2
- package/dist/_chunks/{reserved.agent-BvwjDyne.js.map → reserved.agent-TRbKB39d.js.map} +1 -1
- package/dist/_chunks/{reset-password-form-Cf9QPEJu.js → reset-password-form-C6XLV7SI.js} +2 -2
- package/dist/_chunks/{reset-password-form-Cf9QPEJu.js.map → reset-password-form-C6XLV7SI.js.map} +1 -1
- package/dist/_chunks/{reviews-panel-B7InBORU.js → reviews-panel-jPYgYvxG.js} +2 -2
- package/dist/_chunks/{reviews-panel-B7InBORU.js.map → reviews-panel-jPYgYvxG.js.map} +1 -1
- package/dist/_chunks/{rich-text-editor-iw2tJLKA.js → rich-text-editor-CJfT08It.js} +2 -2
- package/dist/_chunks/{rich-text-editor-iw2tJLKA.js.map → rich-text-editor-CJfT08It.js.map} +1 -1
- package/dist/_chunks/{section-card-D5nWiTcK.js → section-card-D1sV4Voz.js} +2 -2
- package/dist/_chunks/{section-card-D5nWiTcK.js.map → section-card-D1sV4Voz.js.map} +1 -1
- package/dist/_chunks/{send-registration-link-form-CZYOO7NO.js → send-registration-link-form-yLSfcaPk.js} +2 -2
- package/dist/_chunks/{send-registration-link-form-CZYOO7NO.js.map → send-registration-link-form-yLSfcaPk.js.map} +1 -1
- package/dist/_chunks/{stat-D2PNJujA.js → stat-Dno2ZihS.js} +111 -96
- package/dist/_chunks/stat-Dno2ZihS.js.map +1 -0
- package/dist/_chunks/{task-card-C4HJUKVw.js → task-card-TSJjuuDe.js} +2 -2
- package/dist/_chunks/{task-card-C4HJUKVw.js.map → task-card-TSJjuuDe.js.map} +1 -1
- package/dist/_chunks/{task-editor-BlGdXR9F.js → task-editor-qXfMbHsy.js} +2 -2
- package/dist/_chunks/{task-editor-BlGdXR9F.js.map → task-editor-qXfMbHsy.js.map} +1 -1
- package/dist/_chunks/{task-tray-DZQGhDdc.js → task-tray-DrXfMCuf.js} +2 -2
- package/dist/_chunks/{task-tray-DZQGhDdc.js.map → task-tray-DrXfMCuf.js.map} +1 -1
- package/dist/_chunks/{tasks-panel-Q0CiEAff.js → tasks-panel-iVeuu9a8.js} +2 -2
- package/dist/_chunks/{tasks-panel-Q0CiEAff.js.map → tasks-panel-iVeuu9a8.js.map} +1 -1
- package/dist/_chunks/{timeline-BcYHdP56.js → timeline-B32dylRJ.js} +2 -2
- package/dist/_chunks/{timeline-BcYHdP56.js.map → timeline-B32dylRJ.js.map} +1 -1
- package/dist/_chunks/{use-appointment-details-read-CpXRSfPI.js → use-appointment-details-read-UXXvBeGZ.js} +5 -5
- package/dist/_chunks/{use-appointment-details-read-CpXRSfPI.js.map → use-appointment-details-read-UXXvBeGZ.js.map} +1 -1
- package/dist/_chunks/{workflow-map-BWJhlZbC.js → workflow-map-flsvqQ3L.js} +2 -2
- package/dist/_chunks/{workflow-map-BWJhlZbC.js.map → workflow-map-flsvqQ3L.js.map} +1 -1
- package/dist/_chunks/{workflow-webhook-action-Uhyfr6_6.js → workflow-webhook-action-BD-6UyOs.js} +2 -2
- package/dist/_chunks/{workflow-webhook-action-Uhyfr6_6.js.map → workflow-webhook-action-BD-6UyOs.js.map} +1 -1
- package/dist/ag-grid.css +3 -1
- package/dist/agent-catalog.json +2 -2
- package/dist/agent-i18n/en.json +1 -1
- package/dist/components/anamnesis-card/index.js +1 -1
- package/dist/components/anamnesis-summary-card/index.js +1 -1
- package/dist/components/appointment-details-panel/index.js +1 -1
- package/dist/components/bishop-score/index.js +1 -1
- package/dist/components/bmi-calculator/index.js +1 -1
- package/dist/components/booking/index.js +1 -1
- package/dist/components/card/card.d.ts +10 -1
- package/dist/components/card/card.d.ts.map +1 -1
- package/dist/components/card/index.d.ts +1 -1
- package/dist/components/card/index.d.ts.map +1 -1
- package/dist/components/card/index.js +1 -1
- package/dist/components/clinical-note-card/index.js +1 -1
- package/dist/components/connection-status/index.js +1 -1
- package/dist/components/contact-card/index.js +1 -1
- package/dist/components/contact-profile-card/index.js +1 -1
- package/dist/components/cycle-calculator/index.js +1 -1
- package/dist/components/data-table/header-info.d.ts +31 -0
- package/dist/components/data-table/header-info.d.ts.map +1 -0
- package/dist/components/data-table/index.d.ts +1 -0
- package/dist/components/data-table/index.d.ts.map +1 -1
- package/dist/components/data-table/index.js +19 -18
- package/dist/components/data-table-tabs/index.js +1 -1
- package/dist/components/document-preview/index.js +1 -1
- package/dist/components/due-date-calculator/index.js +2 -2
- package/dist/components/entity-summary/index.js +1 -1
- package/dist/components/face-scheme/index.js +1 -1
- package/dist/components/fetal-weight/index.js +1 -1
- package/dist/components/file-manager/index.js +1 -1
- package/dist/components/finished-terminal/index.js +1 -1
- package/dist/components/gestational-age-calculator/index.js +1 -1
- package/dist/components/hcg-doubling/index.js +1 -1
- package/dist/components/header-settings/index.js +1 -1
- package/dist/components/heatmap/index.js +1 -1
- package/dist/components/icon-picker/index.js +1 -1
- package/dist/components/info-tip/index.js +1 -1
- package/dist/components/info-tip/info-tip.agent.d.ts.map +1 -1
- package/dist/components/info-tip/info-tip.d.ts +21 -1
- package/dist/components/info-tip/info-tip.d.ts.map +1 -1
- package/dist/components/locale-picker/index.js +1 -1
- package/dist/components/notes-panel/index.js +1 -1
- package/dist/components/operator-hero/index.js +1 -1
- package/dist/components/patient-details/index.js +1 -1
- package/dist/components/patient-search/index.js +1 -1
- package/dist/components/patient-summary-card/index.js +1 -1
- package/dist/components/patient-table/index.js +1 -1
- package/dist/components/payment-card/index.js +1 -1
- package/dist/components/periodontal-chart/index.js +1 -1
- package/dist/components/periodontal-chart-card/index.js +1 -1
- package/dist/components/periodontal-diagnosis/index.js +1 -1
- package/dist/components/periodontal-risk-chart/index.js +1 -1
- package/dist/components/popover/index.js +1 -1
- package/dist/components/popover/popover.d.ts.map +1 -1
- package/dist/components/practice-profile-hero/index.js +1 -1
- package/dist/components/pregnancy-dating/index.js +1 -1
- package/dist/components/pregnancy-weight-gain/index.js +1 -1
- package/dist/components/reviews-panel/index.js +1 -1
- package/dist/components/rich-text-editor/index.js +2 -2
- package/dist/components/section-card/index.js +1 -1
- package/dist/components/stat/index.js +1 -1
- package/dist/components/stat/stat.d.ts +8 -0
- package/dist/components/stat/stat.d.ts.map +1 -1
- package/dist/components/task-card/index.js +1 -1
- package/dist/components/task-editor/index.js +1 -1
- package/dist/components/task-tray/index.js +1 -1
- package/dist/components/tasks-panel/index.js +1 -1
- package/dist/components/timeline/index.js +1 -1
- package/dist/components/workflow/index.js +1 -1
- package/dist/i18n/locales/ar.d.ts +2 -0
- package/dist/i18n/locales/ar.d.ts.map +1 -1
- package/dist/i18n/locales/ar.js +3 -1
- package/dist/i18n/locales/ar.js.map +1 -1
- package/dist/i18n/locales/de.d.ts +2 -0
- package/dist/i18n/locales/de.d.ts.map +1 -1
- package/dist/i18n/locales/de.js +3 -1
- package/dist/i18n/locales/de.js.map +1 -1
- package/dist/i18n/locales/el.d.ts +2 -0
- package/dist/i18n/locales/el.d.ts.map +1 -1
- package/dist/i18n/locales/el.js +3 -1
- package/dist/i18n/locales/el.js.map +1 -1
- package/dist/i18n/locales/en.d.ts +2 -0
- package/dist/i18n/locales/en.d.ts.map +1 -1
- package/dist/i18n/locales/en.js +3 -1
- package/dist/i18n/locales/en.js.map +1 -1
- package/dist/i18n/locales/es.d.ts +2 -0
- package/dist/i18n/locales/es.d.ts.map +1 -1
- package/dist/i18n/locales/es.js +3 -1
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.d.ts +2 -0
- package/dist/i18n/locales/fr.d.ts.map +1 -1
- package/dist/i18n/locales/fr.js +3 -1
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hi.d.ts +2 -0
- package/dist/i18n/locales/hi.d.ts.map +1 -1
- package/dist/i18n/locales/hi.js +3 -1
- package/dist/i18n/locales/hi.js.map +1 -1
- package/dist/i18n/locales/it.d.ts +2 -0
- package/dist/i18n/locales/it.d.ts.map +1 -1
- package/dist/i18n/locales/it.js +3 -1
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/ja.d.ts +2 -0
- package/dist/i18n/locales/ja.d.ts.map +1 -1
- package/dist/i18n/locales/ja.js +3 -1
- package/dist/i18n/locales/ja.js.map +1 -1
- package/dist/i18n/locales/nl.d.ts +2 -0
- package/dist/i18n/locales/nl.d.ts.map +1 -1
- package/dist/i18n/locales/nl.js +3 -1
- package/dist/i18n/locales/nl.js.map +1 -1
- package/dist/i18n/locales/pl.d.ts +2 -0
- package/dist/i18n/locales/pl.d.ts.map +1 -1
- package/dist/i18n/locales/pl.js +3 -1
- package/dist/i18n/locales/pl.js.map +1 -1
- package/dist/i18n/locales/pt.d.ts +2 -0
- package/dist/i18n/locales/pt.d.ts.map +1 -1
- package/dist/i18n/locales/pt.js +3 -1
- package/dist/i18n/locales/pt.js.map +1 -1
- package/dist/i18n/locales/ro.d.ts +2 -0
- package/dist/i18n/locales/ro.d.ts.map +1 -1
- package/dist/i18n/locales/ro.js +3 -1
- package/dist/i18n/locales/ro.js.map +1 -1
- package/dist/i18n/locales/ru.d.ts +2 -0
- package/dist/i18n/locales/ru.d.ts.map +1 -1
- package/dist/i18n/locales/ru.js +3 -1
- package/dist/i18n/locales/ru.js.map +1 -1
- package/dist/i18n/locales/sq.d.ts +2 -0
- package/dist/i18n/locales/sq.d.ts.map +1 -1
- package/dist/i18n/locales/sq.js +3 -1
- package/dist/i18n/locales/sq.js.map +1 -1
- package/dist/i18n/locales/sv.d.ts +2 -0
- package/dist/i18n/locales/sv.d.ts.map +1 -1
- package/dist/i18n/locales/sv.js +3 -1
- package/dist/i18n/locales/sv.js.map +1 -1
- package/dist/i18n/locales/tr.d.ts +2 -0
- package/dist/i18n/locales/tr.d.ts.map +1 -1
- package/dist/i18n/locales/tr.js +3 -1
- package/dist/i18n/locales/tr.js.map +1 -1
- package/dist/i18n/locales/zh.d.ts +2 -0
- package/dist/i18n/locales/zh.d.ts.map +1 -1
- package/dist/i18n/locales/zh.js +3 -1
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/index.js +914 -913
- package/dist/locales/ar.json +3 -1
- package/dist/locales/de.json +3 -1
- package/dist/locales/el.json +3 -1
- package/dist/locales/en.json +3 -1
- package/dist/locales/es.json +3 -1
- package/dist/locales/fr.json +3 -1
- package/dist/locales/hi.json +3 -1
- package/dist/locales/it.json +3 -1
- package/dist/locales/ja.json +3 -1
- package/dist/locales/nl.json +3 -1
- package/dist/locales/pl.json +3 -1
- package/dist/locales/pt.json +3 -1
- package/dist/locales/ro.json +3 -1
- package/dist/locales/ru.json +3 -1
- package/dist/locales/sq.json +3 -1
- package/dist/locales/sv.json +3 -1
- package/dist/locales/tr.json +3 -1
- package/dist/locales/zh.json +3 -1
- package/dist/patterns/anamnesis/index.js +1 -1
- package/dist/patterns/calendar/index.js +1 -1
- package/dist/patterns/forgot-password-form/index.js +1 -1
- package/dist/patterns/login-form/index.js +1 -1
- package/dist/patterns/marketplace-app-shell/index.js +1 -1
- package/dist/patterns/payment-automation-upsell/index.js +1 -1
- package/dist/patterns/registration-form/index.js +1 -1
- package/dist/patterns/reset-password-form/index.js +1 -1
- package/dist/patterns/send-registration-link-form/index.js +1 -1
- package/dist/patterns/workflow-webhook-action/index.js +1 -1
- package/dist/tokens.css +1 -0
- package/package.json +1 -1
- package/dist/_chunks/card-BA4Ig_kn.js.map +0 -1
- package/dist/_chunks/editable-currency-cell-renderer-BQYL5GjP.js +0 -412
- package/dist/_chunks/editable-currency-cell-renderer-BQYL5GjP.js.map +0 -1
- package/dist/_chunks/info-tip-Cfd5SKbY.js +0 -166
- package/dist/_chunks/info-tip-Cfd5SKbY.js.map +0 -1
- package/dist/_chunks/popover-Da1ekjV1.js.map +0 -1
- package/dist/_chunks/stat-D2PNJujA.js.map +0 -1
|
@@ -3,7 +3,7 @@ import { forwardRef as m, useMemo as p, useRef as w, useState as V, useCallback
|
|
|
3
3
|
import { c as b } from "./index-D2ZczOXr.js";
|
|
4
4
|
import { useTranslation as A } from "react-i18next";
|
|
5
5
|
import { A as P } from "./avatar-a6042Ox2.js";
|
|
6
|
-
import { C as N } from "./card-
|
|
6
|
+
import { C as N } from "./card-C85_Ndhb.js";
|
|
7
7
|
import { T as q } from "./timestamp-DPLDWdxA.js";
|
|
8
8
|
import { u as B } from "./registry-DvAUVLHh.js";
|
|
9
9
|
import { C as H } from "./circle-j7oZoouK.js";
|
|
@@ -293,4 +293,4 @@ export {
|
|
|
293
293
|
le as T,
|
|
294
294
|
K as t
|
|
295
295
|
};
|
|
296
|
-
//# sourceMappingURL=timeline-
|
|
296
|
+
//# sourceMappingURL=timeline-B32dylRJ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeline-BcYHdP56.js","sources":["../../src/components/timeline/timeline.agent.ts","../../src/components/timeline/timeline.tsx"],"sourcesContent":["/* -------------------------------------------------------------------- */\n/* Agent adapter — Timeline. */\n/* -------------------------------------------------------------------- */\n\nimport type { AgentAdapter } from '../../agent/types';\nimport type { TimelineHandle } from './timeline';\n\nexport const timelineAgent: AgentAdapter<TimelineHandle> = {\n id: 'timeline',\n // `select_event` persists `selectedEvent` state, so this is single-selection\n // (`select_single`), not a transient `pick`. See PRS §26 §4.\n capabilities: ['select_single'],\n state: {\n selectedEvent: {\n type: 'string | null',\n descriptionKey: 'ui.agent.timeline.state.selectedEvent',\n description: 'Opaque event id of the currently-active event, or null.',\n read: (handle) => handle.getSelectedEvent(),\n },\n },\n actions: {\n select_event: {\n safety: 'read',\n argsType: '{ id: string }',\n argsSchema: {\n type: 'object',\n properties: { id: { type: 'string' } },\n required: ['id'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.timeline.actions.selectEvent',\n description: 'Scroll the given event into view and mark it as selected.',\n invoke: (handle, args: { id: string }) => {\n handle.selectEvent(args.id);\n },\n },\n },\n domHooks: {\n root: {\n attr: 'data-component',\n value: 'timeline',\n description: 'Marks the Timeline root.',\n },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop.',\n },\n item: {\n attr: 'data-event-id',\n description:\n 'Opaque event id emitted on each Timeline.Event when the `eventId` prop is provided.',\n },\n },\n};\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type HTMLAttributes,\n type LiHTMLAttributes,\n type OlHTMLAttributes,\n type ReactNode,\n type TimeHTMLAttributes,\n} from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { TriangleAlert, Check, Circle, Info, X } from 'lucide-react';\nimport { Avatar } from '../avatar';\nimport { Card } from '../card';\nimport { Timestamp } from '../timestamp';\nimport { useAgentRegistration } from '../../agent/registry';\nimport { timelineAgent } from './timeline.agent';\n\n// TODO: optional @tanstack/react-virtual integration for 500+ events\n\n/* ------------------------------------------------------------------ */\n/* Context */\n/* ------------------------------------------------------------------ */\n\ntype EventType = 'info' | 'success' | 'warning' | 'error' | 'neutral';\ntype Layout = 'rail-start' | 'rail-end' | 'alternating';\n\ninterface TimelineContextValue {\n layout: Layout;\n order: 'newest-first' | 'oldest-first';\n}\n\nconst TimelineContext = createContext<TimelineContextValue>({\n layout: 'rail-start',\n order: 'newest-first',\n});\n\ninterface TimelineEventContextValue {\n type: EventType;\n}\n\nconst TimelineEventContext = createContext<TimelineEventContextValue>({\n type: 'neutral',\n});\n\n/* ------------------------------------------------------------------ */\n/* CVA — root */\n/* ------------------------------------------------------------------ */\n\nconst timelineVariants = cva('ds:flex ds:flex-col', {\n variants: {\n layout: {\n 'rail-start': 'ds:ps-4',\n 'rail-end': 'ds:pe-4',\n alternating:\n 'ds:grid ds:grid-cols-[1fr_2rem_1fr] ds:gap-x-[var(--spacing-md)]',\n },\n order: {\n 'newest-first': 'ds:flex-col',\n 'oldest-first': 'ds:flex-col-reverse',\n },\n },\n defaultVariants: { layout: 'rail-start', order: 'newest-first' },\n});\n\n/* ------------------------------------------------------------------ */\n/* CVA — event item */\n/* ------------------------------------------------------------------ */\n\nconst eventVariants = cva(\n 'ds:relative ds:flex ds:gap-[var(--spacing-md)] ds:pb-[var(--spacing-md)]',\n {\n variants: {\n layout: {\n 'rail-start': [\n 'ds:flex-row',\n // Rail: continuous line from this dot centre to the next dot centre\n 'ds:before:absolute ds:before:[inset-block-start:var(--spacing-md)] ds:before:[inset-block-end:calc(var(--spacing-md)*-1)]',\n 'ds:before:[inline-size:var(--border-width-md)] ds:before:bg-[var(--border)]',\n 'ds:before:[inset-inline-start:calc(var(--spacing-md)_-_var(--border-width-md)/2)]',\n 'ds:last:before:hidden',\n ].join(' '),\n 'rail-end': [\n 'ds:flex-row-reverse',\n 'ds:before:absolute ds:before:[inset-block-start:var(--spacing-md)] ds:before:[inset-block-end:calc(var(--spacing-md)*-1)]',\n 'ds:before:[inline-size:var(--border-width-md)] ds:before:bg-[var(--border)]',\n 'ds:before:[inset-inline-end:calc(var(--spacing-md)_-_var(--border-width-md)/2)]',\n 'ds:last:before:hidden',\n ].join(' '),\n alternating: 'ds:contents',\n },\n },\n defaultVariants: { layout: 'rail-start' },\n },\n);\n\n/* ------------------------------------------------------------------ */\n/* CVA — dot */\n/* ------------------------------------------------------------------ */\n\nconst dotVariants = cva(\n [\n 'ds:relative ds:z-10 ds:flex ds:items-center ds:justify-center',\n 'ds:rounded-[var(--radius-full)] ds:shrink-0',\n 'ds:size-8',\n 'ds:ring-2 ds:ring-[var(--background)]',\n ].join(' '),\n {\n variants: {\n type: {\n info: 'ds:bg-[var(--info)] ds:text-[var(--info-solid-foreground)]',\n success:\n 'ds:bg-[var(--success)] ds:text-[var(--success-solid-foreground)]',\n warning:\n 'ds:bg-[var(--warning)] ds:text-[var(--warning-solid-foreground)]',\n error:\n 'ds:bg-[var(--destructive)] ds:text-[var(--destructive-foreground)]',\n neutral: 'ds:bg-[var(--muted)] ds:text-[var(--muted-foreground)]',\n },\n },\n defaultVariants: { type: 'neutral' },\n },\n);\n\n/* ------------------------------------------------------------------ */\n/* Types */\n/* ------------------------------------------------------------------ */\n\nexport interface TimelineProps\n extends\n Omit<OlHTMLAttributes<HTMLOListElement>, 'color'>,\n VariantProps<typeof timelineVariants> {\n layout?: Layout;\n order?: 'newest-first' | 'oldest-first';\n children: ReactNode;\n className?: string;\n}\n\nexport interface TimelineEventProps extends LiHTMLAttributes<HTMLLIElement> {\n type?: EventType;\n /** Opaque event id — when set, the component emits `data-event-id` for agent addressing. */\n eventId?: string;\n children: ReactNode;\n className?: string;\n}\n\n/** Curated imperative handle for agent / external automation. */\nexport interface TimelineHandle {\n getSelectedEvent: () => string | null;\n selectEvent: (id: string) => void;\n}\n\nexport interface TimelineDotProps extends HTMLAttributes<HTMLDivElement> {\n icon?: ReactNode;\n className?: string;\n}\n\nexport interface TimelineContentProps extends HTMLAttributes<HTMLDivElement> {\n title: string;\n description?: ReactNode;\n actor?: { name: string; src?: string };\n children?: ReactNode;\n className?: string;\n}\n\nexport interface TimelineTimestampProps extends TimeHTMLAttributes<HTMLTimeElement> {\n date: Date | string;\n /** Overrides the active language for date and time formatting. */\n locale?: string;\n relative?: boolean;\n format?: Intl.DateTimeFormatOptions;\n className?: string;\n}\n\n/* ------------------------------------------------------------------ */\n/* Default icons per type */\n/* ------------------------------------------------------------------ */\n\nconst TYPE_ICONS: Record<EventType, ReactNode> = {\n info: <Info size={16} aria-hidden=\"true\" />,\n success: <Check size={16} aria-hidden=\"true\" />,\n warning: <TriangleAlert size={16} aria-hidden=\"true\" />,\n error: <X size={16} aria-hidden=\"true\" />,\n neutral: <Circle size={16} aria-hidden=\"true\" />,\n};\n\n/* ------------------------------------------------------------------ */\n/* Timeline root */\n/* ------------------------------------------------------------------ */\n\nconst TimelineRoot = forwardRef<HTMLOListElement, TimelineProps>(\n (\n {\n layout = 'rail-start',\n order = 'newest-first',\n className,\n children,\n ...props\n },\n ref,\n ) => {\n const ctx = useMemo(() => ({ layout, order }), [layout, order]);\n const olRef = useRef<HTMLOListElement | null>(null);\n const [selectedEvent, setSelectedEvent] = useState<string | null>(null);\n const latestRef = useRef<string | null>(null);\n latestRef.current = selectedEvent;\n\n const selectEvent = useCallback((id: string) => {\n setSelectedEvent(id);\n const target = olRef.current?.querySelector(\n `[data-event-id=\"${id}\"]`,\n ) as HTMLElement | null;\n target?.scrollIntoView({ block: 'center', behavior: 'auto' });\n }, []);\n\n const agentHandle = useMemo<TimelineHandle>(\n () => ({\n getSelectedEvent: () => latestRef.current,\n selectEvent,\n }),\n [selectEvent],\n );\n useImperativeHandle(ref, () => olRef.current as HTMLOListElement, []);\n useAgentRegistration(timelineAgent, agentHandle, props.id);\n\n return (\n <TimelineContext.Provider value={ctx}>\n <ol\n ref={olRef}\n data-component=\"timeline\"\n data-component-id={props.id}\n data-selected-event={selectedEvent ?? undefined}\n className={timelineVariants({ layout, order, className })}\n {...props}\n >\n {children}\n </ol>\n </TimelineContext.Provider>\n );\n },\n);\nTimelineRoot.displayName = 'Timeline';\n\n/* ------------------------------------------------------------------ */\n/* Timeline.Event */\n/* ------------------------------------------------------------------ */\n\nconst TimelineEvent = forwardRef<HTMLLIElement, TimelineEventProps>(\n ({ type = 'neutral', eventId, className, children, ...props }, ref) => {\n const { layout } = useContext(TimelineContext);\n const { t } = useTranslation('ui');\n\n const evtCtx = useMemo(() => ({ type }), [type]);\n\n if (layout === 'alternating') {\n // In alternating layout the <li> uses `contents` so its children\n // participate directly in the parent grid.\n return (\n <TimelineEventContext.Provider value={evtCtx}>\n <li\n ref={ref}\n data-event-id={eventId}\n className={['ds:contents', className].filter(Boolean).join(' ')}\n {...props}\n >\n {/* Visually-hidden type prefix for screen readers */}\n <span className=\"ds:sr-only\">{t(`timeline.type.${type}`)}</span>\n {children}\n </li>\n </TimelineEventContext.Provider>\n );\n }\n\n return (\n <TimelineEventContext.Provider value={evtCtx}>\n <li\n ref={ref}\n data-event-id={eventId}\n className={eventVariants({ layout, className })}\n {...props}\n >\n {/* Visually-hidden type prefix for screen readers */}\n <span className=\"ds:sr-only\">{t(`timeline.type.${type}`)}</span>\n {children}\n </li>\n </TimelineEventContext.Provider>\n );\n },\n);\nTimelineEvent.displayName = 'Timeline.Event';\n\n/* ------------------------------------------------------------------ */\n/* Timeline.Dot */\n/* ------------------------------------------------------------------ */\n\nconst TimelineDot = forwardRef<HTMLDivElement, TimelineDotProps>(\n ({ icon, className, ...props }, ref) => {\n const { type } = useContext(TimelineEventContext);\n const { layout } = useContext(TimelineContext);\n\n const dot = (\n <div\n ref={ref}\n aria-hidden=\"true\"\n className={dotVariants({ type, className })}\n {...props}\n >\n {icon ?? TYPE_ICONS[type]}\n </div>\n );\n\n if (layout === 'alternating') {\n // In alternating grid: col 2 (centre) for the dot with the rail line\n return (\n <div\n aria-hidden=\"true\"\n className=\"ds:col-start-2 ds:flex ds:flex-col ds:items-center\"\n >\n {/* Rail segment above the dot */}\n <div className=\"ds:w-[var(--border-width-md)] ds:flex-1 ds:bg-[var(--border)] ds:first:hidden\" />\n {dot}\n {/* Rail segment below the dot */}\n <div className=\"ds:w-[var(--border-width-md)] ds:flex-1 ds:bg-[var(--border)]\" />\n </div>\n );\n }\n\n return dot;\n },\n);\nTimelineDot.displayName = 'Timeline.Dot';\n\n/* ------------------------------------------------------------------ */\n/* Timeline.Content */\n/* ------------------------------------------------------------------ */\n\nconst TimelineContent = forwardRef<HTMLDivElement, TimelineContentProps>(\n ({ title, description, actor, children, className, ...props }, ref) => {\n const { layout } = useContext(TimelineContext);\n\n const inner = (\n <div\n ref={ref}\n className={[\n 'ds:flex-1 ds:min-w-0 ds:pb-[var(--spacing-md)]',\n // Wrap policy: `break-word` (not `anywhere`) preserves word-\n // boundary wrapping for natural-language titles / descriptions;\n // only genuinely unbreakable strings (URLs, hashes) break mid-\n // word when they would otherwise overflow. `anywhere` introduces\n // a soft-wrap opportunity at every character boundary, which\n // chopped Italian / German labels mid-word when an event card\n // sat in a narrow context.\n 'ds:[&_*]:break-normal ds:[&_*]:[overflow-wrap:break-word]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n >\n <Card variant=\"outlined\">\n <Card.Body>\n <p className=\"type-label ds:text-[var(--foreground)]\">{title}</p>\n {description && (\n <div className=\"ds:mt-[var(--spacing-xs)] type-body-sm ds:text-[var(--muted-foreground)]\">\n {description}\n </div>\n )}\n {actor && (\n <div className=\"ds:mt-[var(--spacing-sm)] ds:flex ds:items-center ds:gap-[var(--spacing-xs)]\">\n <Avatar size=\"xs\" name={actor.name} src={actor.src} />\n <span className=\"type-meta ds:text-[var(--muted-foreground)]\">\n {actor.name}\n </span>\n </div>\n )}\n {children}\n </Card.Body>\n </Card>\n </div>\n );\n\n if (layout === 'alternating') {\n // Alternating: odd events in col 1 (start), even events in col 3 (end).\n // We use CSS nth-child targeting via a wrapper that sets col placement.\n return (\n <div className=\"ds:col-span-1 ds:[li:nth-child(even)_&]:col-start-3 ds:[li:nth-child(odd)_&]:col-start-1\">\n {inner}\n </div>\n );\n }\n\n return inner;\n },\n);\nTimelineContent.displayName = 'Timeline.Content';\n\n/* ------------------------------------------------------------------ */\n/* Timeline.Timestamp — thin wrapper over the shared Timestamp */\n/* component. Keeps the existing API (`date`, `relative`, `format`) */\n/* for backward compatibility; adds tabular-nums because timeline */\n/* timestamps sit in a rail gutter and benefit from column-aligned */\n/* digits. */\n/* ------------------------------------------------------------------ */\n\nconst TWENTY_FOUR_HOURS_MS = 24 * 60 * 60 * 1000;\n\nconst TimelineTimestamp = forwardRef<HTMLTimeElement, TimelineTimestampProps>(\n (\n {\n date,\n locale,\n relative = true,\n format = { dateStyle: 'medium', timeStyle: 'short' },\n className,\n ...props\n },\n ref,\n ) => (\n <Timestamp\n ref={ref}\n value={date}\n locale={locale}\n format={relative ? 'relative' : 'absolute'}\n relativeWindow={relative ? TWENTY_FOUR_HOURS_MS : undefined}\n absoluteFormat={format}\n className={[\n 'ds:text-[var(--muted-foreground)]',\n 'ds:[font-variant-numeric:var(--font-feature-tabular)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n />\n ),\n);\nTimelineTimestamp.displayName = 'Timeline.Timestamp';\n\n/* ------------------------------------------------------------------ */\n/* Compound export */\n/* ------------------------------------------------------------------ */\n\nexport const Timeline = Object.assign(TimelineRoot, {\n Event: TimelineEvent,\n Dot: TimelineDot,\n Content: TimelineContent,\n Timestamp: TimelineTimestamp,\n});\n"],"names":["timelineAgent","handle","args","TimelineContext","createContext","TimelineEventContext","timelineVariants","cva","eventVariants","dotVariants","TYPE_ICONS","jsx","Info","Check","TriangleAlert","X","Circle","TimelineRoot","forwardRef","layout","order","className","children","props","ref","ctx","useMemo","olRef","useRef","selectedEvent","setSelectedEvent","useState","latestRef","selectEvent","useCallback","id","target","_a","agentHandle","useImperativeHandle","useAgentRegistration","TimelineEvent","type","eventId","useContext","t","useTranslation","evtCtx","jsxs","TimelineDot","icon","dot","TimelineContent","title","description","actor","inner","Card","Avatar","TWENTY_FOUR_HOURS_MS","TimelineTimestamp","date","locale","relative","format","Timestamp","Timeline"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"timeline-B32dylRJ.js","sources":["../../src/components/timeline/timeline.agent.ts","../../src/components/timeline/timeline.tsx"],"sourcesContent":["/* -------------------------------------------------------------------- */\n/* Agent adapter — Timeline. */\n/* -------------------------------------------------------------------- */\n\nimport type { AgentAdapter } from '../../agent/types';\nimport type { TimelineHandle } from './timeline';\n\nexport const timelineAgent: AgentAdapter<TimelineHandle> = {\n id: 'timeline',\n // `select_event` persists `selectedEvent` state, so this is single-selection\n // (`select_single`), not a transient `pick`. See PRS §26 §4.\n capabilities: ['select_single'],\n state: {\n selectedEvent: {\n type: 'string | null',\n descriptionKey: 'ui.agent.timeline.state.selectedEvent',\n description: 'Opaque event id of the currently-active event, or null.',\n read: (handle) => handle.getSelectedEvent(),\n },\n },\n actions: {\n select_event: {\n safety: 'read',\n argsType: '{ id: string }',\n argsSchema: {\n type: 'object',\n properties: { id: { type: 'string' } },\n required: ['id'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.timeline.actions.selectEvent',\n description: 'Scroll the given event into view and mark it as selected.',\n invoke: (handle, args: { id: string }) => {\n handle.selectEvent(args.id);\n },\n },\n },\n domHooks: {\n root: {\n attr: 'data-component',\n value: 'timeline',\n description: 'Marks the Timeline root.',\n },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop.',\n },\n item: {\n attr: 'data-event-id',\n description:\n 'Opaque event id emitted on each Timeline.Event when the `eventId` prop is provided.',\n },\n },\n};\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type HTMLAttributes,\n type LiHTMLAttributes,\n type OlHTMLAttributes,\n type ReactNode,\n type TimeHTMLAttributes,\n} from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { TriangleAlert, Check, Circle, Info, X } from 'lucide-react';\nimport { Avatar } from '../avatar';\nimport { Card } from '../card';\nimport { Timestamp } from '../timestamp';\nimport { useAgentRegistration } from '../../agent/registry';\nimport { timelineAgent } from './timeline.agent';\n\n// TODO: optional @tanstack/react-virtual integration for 500+ events\n\n/* ------------------------------------------------------------------ */\n/* Context */\n/* ------------------------------------------------------------------ */\n\ntype EventType = 'info' | 'success' | 'warning' | 'error' | 'neutral';\ntype Layout = 'rail-start' | 'rail-end' | 'alternating';\n\ninterface TimelineContextValue {\n layout: Layout;\n order: 'newest-first' | 'oldest-first';\n}\n\nconst TimelineContext = createContext<TimelineContextValue>({\n layout: 'rail-start',\n order: 'newest-first',\n});\n\ninterface TimelineEventContextValue {\n type: EventType;\n}\n\nconst TimelineEventContext = createContext<TimelineEventContextValue>({\n type: 'neutral',\n});\n\n/* ------------------------------------------------------------------ */\n/* CVA — root */\n/* ------------------------------------------------------------------ */\n\nconst timelineVariants = cva('ds:flex ds:flex-col', {\n variants: {\n layout: {\n 'rail-start': 'ds:ps-4',\n 'rail-end': 'ds:pe-4',\n alternating:\n 'ds:grid ds:grid-cols-[1fr_2rem_1fr] ds:gap-x-[var(--spacing-md)]',\n },\n order: {\n 'newest-first': 'ds:flex-col',\n 'oldest-first': 'ds:flex-col-reverse',\n },\n },\n defaultVariants: { layout: 'rail-start', order: 'newest-first' },\n});\n\n/* ------------------------------------------------------------------ */\n/* CVA — event item */\n/* ------------------------------------------------------------------ */\n\nconst eventVariants = cva(\n 'ds:relative ds:flex ds:gap-[var(--spacing-md)] ds:pb-[var(--spacing-md)]',\n {\n variants: {\n layout: {\n 'rail-start': [\n 'ds:flex-row',\n // Rail: continuous line from this dot centre to the next dot centre\n 'ds:before:absolute ds:before:[inset-block-start:var(--spacing-md)] ds:before:[inset-block-end:calc(var(--spacing-md)*-1)]',\n 'ds:before:[inline-size:var(--border-width-md)] ds:before:bg-[var(--border)]',\n 'ds:before:[inset-inline-start:calc(var(--spacing-md)_-_var(--border-width-md)/2)]',\n 'ds:last:before:hidden',\n ].join(' '),\n 'rail-end': [\n 'ds:flex-row-reverse',\n 'ds:before:absolute ds:before:[inset-block-start:var(--spacing-md)] ds:before:[inset-block-end:calc(var(--spacing-md)*-1)]',\n 'ds:before:[inline-size:var(--border-width-md)] ds:before:bg-[var(--border)]',\n 'ds:before:[inset-inline-end:calc(var(--spacing-md)_-_var(--border-width-md)/2)]',\n 'ds:last:before:hidden',\n ].join(' '),\n alternating: 'ds:contents',\n },\n },\n defaultVariants: { layout: 'rail-start' },\n },\n);\n\n/* ------------------------------------------------------------------ */\n/* CVA — dot */\n/* ------------------------------------------------------------------ */\n\nconst dotVariants = cva(\n [\n 'ds:relative ds:z-10 ds:flex ds:items-center ds:justify-center',\n 'ds:rounded-[var(--radius-full)] ds:shrink-0',\n 'ds:size-8',\n 'ds:ring-2 ds:ring-[var(--background)]',\n ].join(' '),\n {\n variants: {\n type: {\n info: 'ds:bg-[var(--info)] ds:text-[var(--info-solid-foreground)]',\n success:\n 'ds:bg-[var(--success)] ds:text-[var(--success-solid-foreground)]',\n warning:\n 'ds:bg-[var(--warning)] ds:text-[var(--warning-solid-foreground)]',\n error:\n 'ds:bg-[var(--destructive)] ds:text-[var(--destructive-foreground)]',\n neutral: 'ds:bg-[var(--muted)] ds:text-[var(--muted-foreground)]',\n },\n },\n defaultVariants: { type: 'neutral' },\n },\n);\n\n/* ------------------------------------------------------------------ */\n/* Types */\n/* ------------------------------------------------------------------ */\n\nexport interface TimelineProps\n extends\n Omit<OlHTMLAttributes<HTMLOListElement>, 'color'>,\n VariantProps<typeof timelineVariants> {\n layout?: Layout;\n order?: 'newest-first' | 'oldest-first';\n children: ReactNode;\n className?: string;\n}\n\nexport interface TimelineEventProps extends LiHTMLAttributes<HTMLLIElement> {\n type?: EventType;\n /** Opaque event id — when set, the component emits `data-event-id` for agent addressing. */\n eventId?: string;\n children: ReactNode;\n className?: string;\n}\n\n/** Curated imperative handle for agent / external automation. */\nexport interface TimelineHandle {\n getSelectedEvent: () => string | null;\n selectEvent: (id: string) => void;\n}\n\nexport interface TimelineDotProps extends HTMLAttributes<HTMLDivElement> {\n icon?: ReactNode;\n className?: string;\n}\n\nexport interface TimelineContentProps extends HTMLAttributes<HTMLDivElement> {\n title: string;\n description?: ReactNode;\n actor?: { name: string; src?: string };\n children?: ReactNode;\n className?: string;\n}\n\nexport interface TimelineTimestampProps extends TimeHTMLAttributes<HTMLTimeElement> {\n date: Date | string;\n /** Overrides the active language for date and time formatting. */\n locale?: string;\n relative?: boolean;\n format?: Intl.DateTimeFormatOptions;\n className?: string;\n}\n\n/* ------------------------------------------------------------------ */\n/* Default icons per type */\n/* ------------------------------------------------------------------ */\n\nconst TYPE_ICONS: Record<EventType, ReactNode> = {\n info: <Info size={16} aria-hidden=\"true\" />,\n success: <Check size={16} aria-hidden=\"true\" />,\n warning: <TriangleAlert size={16} aria-hidden=\"true\" />,\n error: <X size={16} aria-hidden=\"true\" />,\n neutral: <Circle size={16} aria-hidden=\"true\" />,\n};\n\n/* ------------------------------------------------------------------ */\n/* Timeline root */\n/* ------------------------------------------------------------------ */\n\nconst TimelineRoot = forwardRef<HTMLOListElement, TimelineProps>(\n (\n {\n layout = 'rail-start',\n order = 'newest-first',\n className,\n children,\n ...props\n },\n ref,\n ) => {\n const ctx = useMemo(() => ({ layout, order }), [layout, order]);\n const olRef = useRef<HTMLOListElement | null>(null);\n const [selectedEvent, setSelectedEvent] = useState<string | null>(null);\n const latestRef = useRef<string | null>(null);\n latestRef.current = selectedEvent;\n\n const selectEvent = useCallback((id: string) => {\n setSelectedEvent(id);\n const target = olRef.current?.querySelector(\n `[data-event-id=\"${id}\"]`,\n ) as HTMLElement | null;\n target?.scrollIntoView({ block: 'center', behavior: 'auto' });\n }, []);\n\n const agentHandle = useMemo<TimelineHandle>(\n () => ({\n getSelectedEvent: () => latestRef.current,\n selectEvent,\n }),\n [selectEvent],\n );\n useImperativeHandle(ref, () => olRef.current as HTMLOListElement, []);\n useAgentRegistration(timelineAgent, agentHandle, props.id);\n\n return (\n <TimelineContext.Provider value={ctx}>\n <ol\n ref={olRef}\n data-component=\"timeline\"\n data-component-id={props.id}\n data-selected-event={selectedEvent ?? undefined}\n className={timelineVariants({ layout, order, className })}\n {...props}\n >\n {children}\n </ol>\n </TimelineContext.Provider>\n );\n },\n);\nTimelineRoot.displayName = 'Timeline';\n\n/* ------------------------------------------------------------------ */\n/* Timeline.Event */\n/* ------------------------------------------------------------------ */\n\nconst TimelineEvent = forwardRef<HTMLLIElement, TimelineEventProps>(\n ({ type = 'neutral', eventId, className, children, ...props }, ref) => {\n const { layout } = useContext(TimelineContext);\n const { t } = useTranslation('ui');\n\n const evtCtx = useMemo(() => ({ type }), [type]);\n\n if (layout === 'alternating') {\n // In alternating layout the <li> uses `contents` so its children\n // participate directly in the parent grid.\n return (\n <TimelineEventContext.Provider value={evtCtx}>\n <li\n ref={ref}\n data-event-id={eventId}\n className={['ds:contents', className].filter(Boolean).join(' ')}\n {...props}\n >\n {/* Visually-hidden type prefix for screen readers */}\n <span className=\"ds:sr-only\">{t(`timeline.type.${type}`)}</span>\n {children}\n </li>\n </TimelineEventContext.Provider>\n );\n }\n\n return (\n <TimelineEventContext.Provider value={evtCtx}>\n <li\n ref={ref}\n data-event-id={eventId}\n className={eventVariants({ layout, className })}\n {...props}\n >\n {/* Visually-hidden type prefix for screen readers */}\n <span className=\"ds:sr-only\">{t(`timeline.type.${type}`)}</span>\n {children}\n </li>\n </TimelineEventContext.Provider>\n );\n },\n);\nTimelineEvent.displayName = 'Timeline.Event';\n\n/* ------------------------------------------------------------------ */\n/* Timeline.Dot */\n/* ------------------------------------------------------------------ */\n\nconst TimelineDot = forwardRef<HTMLDivElement, TimelineDotProps>(\n ({ icon, className, ...props }, ref) => {\n const { type } = useContext(TimelineEventContext);\n const { layout } = useContext(TimelineContext);\n\n const dot = (\n <div\n ref={ref}\n aria-hidden=\"true\"\n className={dotVariants({ type, className })}\n {...props}\n >\n {icon ?? TYPE_ICONS[type]}\n </div>\n );\n\n if (layout === 'alternating') {\n // In alternating grid: col 2 (centre) for the dot with the rail line\n return (\n <div\n aria-hidden=\"true\"\n className=\"ds:col-start-2 ds:flex ds:flex-col ds:items-center\"\n >\n {/* Rail segment above the dot */}\n <div className=\"ds:w-[var(--border-width-md)] ds:flex-1 ds:bg-[var(--border)] ds:first:hidden\" />\n {dot}\n {/* Rail segment below the dot */}\n <div className=\"ds:w-[var(--border-width-md)] ds:flex-1 ds:bg-[var(--border)]\" />\n </div>\n );\n }\n\n return dot;\n },\n);\nTimelineDot.displayName = 'Timeline.Dot';\n\n/* ------------------------------------------------------------------ */\n/* Timeline.Content */\n/* ------------------------------------------------------------------ */\n\nconst TimelineContent = forwardRef<HTMLDivElement, TimelineContentProps>(\n ({ title, description, actor, children, className, ...props }, ref) => {\n const { layout } = useContext(TimelineContext);\n\n const inner = (\n <div\n ref={ref}\n className={[\n 'ds:flex-1 ds:min-w-0 ds:pb-[var(--spacing-md)]',\n // Wrap policy: `break-word` (not `anywhere`) preserves word-\n // boundary wrapping for natural-language titles / descriptions;\n // only genuinely unbreakable strings (URLs, hashes) break mid-\n // word when they would otherwise overflow. `anywhere` introduces\n // a soft-wrap opportunity at every character boundary, which\n // chopped Italian / German labels mid-word when an event card\n // sat in a narrow context.\n 'ds:[&_*]:break-normal ds:[&_*]:[overflow-wrap:break-word]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n >\n <Card variant=\"outlined\">\n <Card.Body>\n <p className=\"type-label ds:text-[var(--foreground)]\">{title}</p>\n {description && (\n <div className=\"ds:mt-[var(--spacing-xs)] type-body-sm ds:text-[var(--muted-foreground)]\">\n {description}\n </div>\n )}\n {actor && (\n <div className=\"ds:mt-[var(--spacing-sm)] ds:flex ds:items-center ds:gap-[var(--spacing-xs)]\">\n <Avatar size=\"xs\" name={actor.name} src={actor.src} />\n <span className=\"type-meta ds:text-[var(--muted-foreground)]\">\n {actor.name}\n </span>\n </div>\n )}\n {children}\n </Card.Body>\n </Card>\n </div>\n );\n\n if (layout === 'alternating') {\n // Alternating: odd events in col 1 (start), even events in col 3 (end).\n // We use CSS nth-child targeting via a wrapper that sets col placement.\n return (\n <div className=\"ds:col-span-1 ds:[li:nth-child(even)_&]:col-start-3 ds:[li:nth-child(odd)_&]:col-start-1\">\n {inner}\n </div>\n );\n }\n\n return inner;\n },\n);\nTimelineContent.displayName = 'Timeline.Content';\n\n/* ------------------------------------------------------------------ */\n/* Timeline.Timestamp — thin wrapper over the shared Timestamp */\n/* component. Keeps the existing API (`date`, `relative`, `format`) */\n/* for backward compatibility; adds tabular-nums because timeline */\n/* timestamps sit in a rail gutter and benefit from column-aligned */\n/* digits. */\n/* ------------------------------------------------------------------ */\n\nconst TWENTY_FOUR_HOURS_MS = 24 * 60 * 60 * 1000;\n\nconst TimelineTimestamp = forwardRef<HTMLTimeElement, TimelineTimestampProps>(\n (\n {\n date,\n locale,\n relative = true,\n format = { dateStyle: 'medium', timeStyle: 'short' },\n className,\n ...props\n },\n ref,\n ) => (\n <Timestamp\n ref={ref}\n value={date}\n locale={locale}\n format={relative ? 'relative' : 'absolute'}\n relativeWindow={relative ? TWENTY_FOUR_HOURS_MS : undefined}\n absoluteFormat={format}\n className={[\n 'ds:text-[var(--muted-foreground)]',\n 'ds:[font-variant-numeric:var(--font-feature-tabular)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n />\n ),\n);\nTimelineTimestamp.displayName = 'Timeline.Timestamp';\n\n/* ------------------------------------------------------------------ */\n/* Compound export */\n/* ------------------------------------------------------------------ */\n\nexport const Timeline = Object.assign(TimelineRoot, {\n Event: TimelineEvent,\n Dot: TimelineDot,\n Content: TimelineContent,\n Timestamp: TimelineTimestamp,\n});\n"],"names":["timelineAgent","handle","args","TimelineContext","createContext","TimelineEventContext","timelineVariants","cva","eventVariants","dotVariants","TYPE_ICONS","jsx","Info","Check","TriangleAlert","X","Circle","TimelineRoot","forwardRef","layout","order","className","children","props","ref","ctx","useMemo","olRef","useRef","selectedEvent","setSelectedEvent","useState","latestRef","selectEvent","useCallback","id","target","_a","agentHandle","useImperativeHandle","useAgentRegistration","TimelineEvent","type","eventId","useContext","t","useTranslation","evtCtx","jsxs","TimelineDot","icon","dot","TimelineContent","title","description","actor","inner","Card","Avatar","TWENTY_FOUR_HOURS_MS","TimelineTimestamp","date","locale","relative","format","Timestamp","Timeline"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { u as Jt } from "./registry-DvAUVLHh.js";
|
|
|
6
6
|
import { u as te } from "./use-isomorphic-layout-effect-BGfaCOP1.js";
|
|
7
7
|
import { c as Zt } from "./compose-refs-C0k0tdqF.js";
|
|
8
8
|
import { h as Ue, g as Qe } from "./handled-rejection-6gqCf5vt.js";
|
|
9
|
-
import { a as en, b as xt } from "./privacy-mask-
|
|
9
|
+
import { a as en, b as xt } from "./privacy-mask-DbEKI-Jv.js";
|
|
10
10
|
import { A as F } from "./alert-9kEwDza3.js";
|
|
11
11
|
import { B as O } from "./button-DohK_Ak_.js";
|
|
12
12
|
import { I as Lt } from "./icon-button-S8_weU3g.js";
|
|
@@ -16,8 +16,8 @@ import { E as zt } from "./editable-description-KU56SP4P.js";
|
|
|
16
16
|
import { N as Xe } from "./note-timeline-BrjHBQfx.js";
|
|
17
17
|
import { P as Ot } from "./panel-header-CbtlTe85.js";
|
|
18
18
|
import { P as Ge } from "./panel-subview-DCyvn-49.js";
|
|
19
|
-
import { P as _t } from "./patient-summary-card-
|
|
20
|
-
import { S as ne } from "./section-card-
|
|
19
|
+
import { P as _t } from "./patient-summary-card-DXz07c2X.js";
|
|
20
|
+
import { S as ne } from "./section-card-D1sV4Voz.js";
|
|
21
21
|
import { C as nn, S as ue } from "./skeleton-tTWJpvAq.js";
|
|
22
22
|
import { T as an } from "./text-area-COMVJ1yE.js";
|
|
23
23
|
import { T as sn } from "./tooltip-uEBdD1-5.js";
|
|
@@ -26,7 +26,7 @@ import { a as Nt } from "./whatsapp-button-DV9JFmtq.js";
|
|
|
26
26
|
import { a as Ft, W as on } from "./workflow-status-HQ6ziE46.js";
|
|
27
27
|
import { u as ot, a as At, i as rn } from "./appointment-workflow-status-DMjuIK90.js";
|
|
28
28
|
import { E as dn } from "./empty-state-DwJ5YNzz.js";
|
|
29
|
-
import { T as Ae } from "./timeline-
|
|
29
|
+
import { T as Ae } from "./timeline-B32dylRJ.js";
|
|
30
30
|
import { C as rt } from "./calendar-clock-hbObjfGY.js";
|
|
31
31
|
import { T as $t } from "./trash-2-uumy3fy1.js";
|
|
32
32
|
import { A as Ve } from "./entity-card-fpm-KUKc.js";
|
|
@@ -2195,4 +2195,4 @@ export {
|
|
|
2195
2195
|
Kn as s,
|
|
2196
2196
|
_s as u
|
|
2197
2197
|
};
|
|
2198
|
-
//# sourceMappingURL=use-appointment-details-read-
|
|
2198
|
+
//# sourceMappingURL=use-appointment-details-read-UXXvBeGZ.js.map
|