@alfadocs/ui-kit 0.70.0 → 0.71.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_chunks/address-fields-CPbFJ8e8.js +246 -0
- package/dist/_chunks/{ai-prompt-input-CuhTo9mh.js → ai-prompt-input-V4DdOeqv.js} +2 -2
- package/dist/_chunks/{alia-sidebar-B47qRQb5.js → alia-sidebar-DvIUzIX9.js} +107 -106
- package/dist/_chunks/{anatomy-scheme-CJB6dI6p.js → anatomy-scheme-CXSk11UJ.js} +2 -2
- package/dist/_chunks/{app-frame-BYx1gcV7.js → app-frame-DIEMIC5V.js} +67 -56
- package/dist/_chunks/{appointment-card-C06aZqA7.js → appointment-card-DVaeJNVB.js} +82 -98
- package/dist/_chunks/{appointment-timeline-BJM0S_Fg.js → appointment-timeline-PJgnrjFb.js} +159 -157
- package/dist/_chunks/{appointment-tray-DRRw5ROi.js → appointment-tray-B16QPGbm.js} +2 -2
- package/dist/_chunks/{audio-recorder-Cpdk5qpQ.js → audio-recorder-DNDsOLqO.js} +2 -2
- package/dist/_chunks/{autocomplete-DOeGouCL.js → autocomplete-BrONKN8l.js} +168 -146
- package/dist/_chunks/{bishop-score-DnYWtZa_.js → bishop-score-Cym_TeQY.js} +2 -2
- package/dist/_chunks/{booking-DUBI0oqt.js → booking-C7do4vaR.js} +4 -4
- package/dist/_chunks/{button-group-Ciq6J4IW.js → button-group-CvEnVzY7.js} +32 -35
- package/dist/_chunks/{care-plan-card-C5sTfY9G.js → care-plan-card-DzPDYgtK.js} +3 -3
- package/dist/_chunks/{care-plan-entry-card-CXnxGCWA.js → care-plan-entry-card-CEnQy7YP.js} +3 -3
- package/dist/_chunks/care-plan-header-DcXFXWit.js +198 -0
- package/dist/_chunks/{chat-message-3V54YipB.js → chat-message-DzpcJR-q.js} +25 -23
- package/dist/_chunks/city-input-Dkgaak7I.js +169 -0
- package/dist/_chunks/clipboard-list-S7s-MXQq.js +25 -0
- package/dist/_chunks/{combobox-Clum7gJ1.js → combobox-DnqSF0IH.js} +131 -114
- package/dist/_chunks/connection-status-CY1HV8Wg.js +108 -0
- package/dist/_chunks/control-room-rail-FAQZrGVL.js +333 -0
- package/dist/_chunks/country-select-BwUZQvTa.js +709 -0
- package/dist/_chunks/editable-currency-cell-renderer-CGELrkIj.js +410 -0
- package/dist/_chunks/{entity-card-9_62gY7l.js → entity-card-DmrgYSEX.js} +4 -4
- package/dist/_chunks/entity-summary-CaM1Y-xE.js +291 -0
- package/dist/_chunks/field-array-siUZzfYe.js +146 -0
- package/dist/_chunks/{field-value-NXYczdpO.js → field-value-3jMM0uDx.js} +2 -2
- package/dist/_chunks/{gestational-age-calculator-CF2ISaYQ.js → gestational-age-calculator-DKzEV5Qi.js} +2 -2
- package/dist/_chunks/iban-input-B0TWzR1R.js +436 -0
- package/dist/_chunks/icon-picker-0B7KhrF1.js +272 -0
- package/dist/_chunks/image-cropper-D9jqJy19.js +367 -0
- package/dist/_chunks/{link-cell-renderer-CTXqtXV-.js → link-cell-renderer-De_SLjSq.js} +262 -261
- package/dist/_chunks/list-checks-BUs75d_o.js +18 -0
- package/dist/_chunks/{marketplace-app-shell-Skhfp6vK.js → marketplace-app-shell-BGqkywsi.js} +3 -3
- package/dist/_chunks/message-card-DsHFFiL1.js +319 -0
- package/dist/_chunks/{message-tray-DwrBLJlf.js → message-tray-C0a6CL1_.js} +172 -135
- package/dist/_chunks/{multi-select-BdHHDrRN.js → multi-select-WE4S9FIF.js} +75 -63
- package/dist/_chunks/nav-grid-9xphY3FM.js +169 -0
- package/dist/_chunks/notes-panel-DXiMfuvp.js +320 -0
- package/dist/_chunks/notification-card-BMqNzCIt.js +290 -0
- package/dist/_chunks/{notification-tray-AEun6DN2.js → notification-tray-BmUlCx3g.js} +201 -166
- package/dist/_chunks/{operator-hero-CR0Rqh4-.js → operator-hero-BO8TqzX2.js} +2 -2
- package/dist/_chunks/panel-header-D313n_9-.js +105 -0
- package/dist/_chunks/{patient-details-Dlhqb5ig.js → patient-details-DgfTJimE.js} +280 -196
- package/dist/_chunks/{patient-search-Be6cLrHR.js → patient-search-CSWQKOSP.js} +2 -2
- package/dist/_chunks/{patient-shell-DV3XEtIB.js → patient-shell-BMwsIKlW.js} +3 -3
- package/dist/_chunks/{patient-summary-card-WySCMwwA.js → patient-summary-card-D4NdgYJB.js} +27 -12
- package/dist/_chunks/{patient-table-CHxf3Oqk.js → patient-table-CERknpd8.js} +3 -3
- package/dist/_chunks/{payment-request-card-BcZJwu9z.js → payment-request-card-Blf-MFNY.js} +2 -2
- package/dist/_chunks/permission-matrix-Bw5oexUt.js +174 -0
- package/dist/_chunks/position-grid-CcvqHaKN.js +169 -0
- package/dist/_chunks/postal-code-input-UCOYuRY2.js +192 -0
- package/dist/_chunks/{practice-results-C6qDfxos.js → practice-results-El5Z-oVp.js} +2 -2
- package/dist/_chunks/{pregnancy-dating-CRVWswD-.js → pregnancy-dating-CunHrOpO.js} +2 -2
- package/dist/_chunks/{product-hub-panel-e6pW220e.js → product-hub-panel-DtU7KXxm.js} +257 -217
- package/dist/_chunks/province-select-D_TZvix3.js +261 -0
- package/dist/_chunks/{public-header.agent-DqkqA-ca.js → public-header.agent-TxmC_x1I.js} +2 -2
- package/dist/_chunks/radiograph-panel.agent-tWjN2nHX.js +553 -0
- package/dist/_chunks/reviews-panel-DxkSrgMl.js +559 -0
- package/dist/_chunks/rich-text-editor-C8tyGjfb.js +2621 -0
- package/dist/_chunks/{scroll-area-5wNK0Cyz.js → scroll-area-BZOvUhwQ.js} +2 -2
- package/dist/_chunks/{select-DMLG44F5.js → select-KsyRr8WH.js} +114 -102
- package/dist/_chunks/{sheet-BxsE7eQm.js → sheet-umkfZjF6.js} +53 -42
- package/dist/_chunks/{sidebar-DY9jGjgt.js → sidebar-QCp9wHNP.js} +125 -113
- package/dist/_chunks/{tabs-BxcOziCo.js → tabs-CYZVKKDl.js} +2 -2
- package/dist/_chunks/task-card-DCdsI0ZT.js +189 -0
- package/dist/_chunks/{task-tray-qOEQflu4.js → task-tray-DNVejijD.js} +2 -2
- package/dist/_chunks/tasks-panel-C9odmawT.js +757 -0
- package/dist/_chunks/token-insert-menu-CFQqTe_n.js +147 -0
- package/dist/_chunks/{ai-tools-rail-B5NEghsp.js → tool-rail-BZx0-yIr.js} +152 -139
- package/dist/_chunks/{tooth-scheme-BhQoPNBD.js → tooth-scheme-DJZtzfeY.js} +470 -468
- package/dist/_chunks/{transcript-panel-3THQX6nJ.js → transcript-panel-CHGHHHdT.js} +95 -83
- package/dist/_chunks/{unit-converter-YEpD9evj.js → unit-converter-CwlZbfdn.js} +2 -2
- package/dist/_chunks/{workflow-map-Dy8mLCqF.js → workflow-map-M8MBBHQm.js} +106 -118
- package/dist/agent-catalog.json +2062 -226
- package/dist/agent-i18n/en.json +206 -8
- package/dist/components/_shared/option.d.ts +2 -0
- package/dist/components/_shared/patient-fields.d.ts +1 -1
- package/dist/components/address-fields/address-fields.agent.d.ts +9 -0
- package/dist/components/address-fields/address-fields.d.ts +29 -0
- package/dist/components/address-fields/index.d.ts +5 -0
- package/dist/components/address-fields/index.js +6 -0
- package/dist/components/ai-prompt-input/index.js +1 -1
- package/dist/components/anatomy-scheme/index.js +1 -1
- package/dist/components/app-frame/app-frame.d.ts +2 -2
- package/dist/components/app-frame/index.js +1 -1
- package/dist/components/appointment-card/index.js +2 -2
- package/dist/components/appointment-timeline/index.js +1 -1
- package/dist/components/audio-recorder/index.js +1 -1
- package/dist/components/autocomplete/autocomplete.d.ts +10 -0
- package/dist/components/autocomplete/index.js +1 -1
- package/dist/components/bishop-score/index.js +1 -1
- package/dist/components/booking/index.js +1 -1
- package/dist/components/button-group/index.js +1 -1
- package/dist/components/care-plan-card/index.js +1 -1
- package/dist/components/care-plan-entry-card/index.js +1 -1
- package/dist/components/care-plan-header/care-plan-header.d.ts +16 -5
- package/dist/components/care-plan-header/index.js +1 -1
- package/dist/components/chat-message/index.js +1 -1
- package/dist/components/city-input/city-input.agent.d.ts +8 -0
- package/dist/components/city-input/city-input.d.ts +57 -0
- package/dist/components/city-input/index.d.ts +5 -0
- package/dist/components/city-input/index.js +6 -0
- package/dist/components/combobox/combobox.d.ts +17 -0
- package/dist/components/combobox/index.js +1 -1
- package/dist/components/connection-status/connection-status.agent.d.ts +4 -0
- package/dist/components/connection-status/connection-status.d.ts +36 -0
- package/dist/components/connection-status/index.d.ts +4 -0
- package/dist/components/connection-status/index.js +6 -0
- package/dist/components/control-room-rail/control-room-context.d.ts +5 -5
- package/dist/components/control-room-rail/control-room-rail.agent.d.ts +4 -0
- package/dist/components/control-room-rail/control-room-rail.d.ts +5 -5
- package/dist/components/control-room-rail/index.d.ts +1 -0
- package/dist/components/control-room-rail/index.js +4 -3
- package/dist/components/counter/counter.d.ts +1 -1
- package/dist/components/country-select/country-select.agent.d.ts +8 -0
- package/dist/components/country-select/country-select.d.ts +51 -0
- package/dist/components/country-select/index.d.ts +6 -0
- package/dist/components/country-select/index.js +9 -0
- package/dist/components/country-select/iso-3166.d.ts +15 -0
- package/dist/components/data-table/cell-renderers/reorder-cell-renderer.d.ts +34 -0
- package/dist/components/data-table/index.d.ts +2 -0
- package/dist/components/data-table/index.js +13 -11
- package/dist/components/entity-summary/entity-summary.agent.d.ts +4 -0
- package/dist/components/entity-summary/entity-summary.d.ts +53 -4
- package/dist/components/entity-summary/index.js +1 -1
- package/dist/components/field-array/field-array.agent.d.ts +4 -0
- package/dist/components/field-array/field-array.d.ts +45 -0
- package/dist/components/field-array/index.d.ts +4 -0
- package/dist/components/field-array/index.js +6 -0
- package/dist/components/freemium-paywall/freemium-paywall.d.ts +1 -1
- package/dist/components/gestational-age-calculator/index.js +1 -1
- package/dist/components/iban-input/iban-input.agent.d.ts +4 -0
- package/dist/components/iban-input/iban-input.d.ts +51 -0
- package/dist/components/iban-input/index.d.ts +5 -0
- package/dist/components/iban-input/index.js +13 -0
- package/dist/components/iban-input/is-valid-iban.d.ts +31 -0
- package/dist/components/icon-picker/icon-picker.agent.d.ts +4 -0
- package/dist/components/icon-picker/icon-picker.d.ts +41 -0
- package/dist/components/icon-picker/index.d.ts +4 -0
- package/dist/components/icon-picker/index.js +6 -0
- package/dist/components/image-cropper/crop-geometry.d.ts +30 -0
- package/dist/components/image-cropper/image-cropper.agent.d.ts +4 -0
- package/dist/components/image-cropper/image-cropper.d.ts +32 -0
- package/dist/components/image-cropper/index.d.ts +5 -0
- package/dist/components/image-cropper/index.js +11 -0
- package/dist/components/index.d.ts +16 -1
- package/dist/components/message-card/index.js +1 -1
- package/dist/components/message-card/message-card.d.ts +14 -0
- package/dist/components/message-tray/index.js +1 -1
- package/dist/components/message-tray/message-tray.d.ts +4 -0
- package/dist/components/multi-select/index.js +1 -1
- package/dist/components/nav-grid/index.d.ts +4 -0
- package/dist/components/nav-grid/index.js +7 -0
- package/dist/components/nav-grid/nav-grid.agent.d.ts +4 -0
- package/dist/components/nav-grid/nav-grid.d.ts +41 -0
- package/dist/components/notes-panel/index.js +1 -1
- package/dist/components/notes-panel/notes-panel.agent.d.ts +4 -0
- package/dist/components/notes-panel/notes-panel.d.ts +30 -0
- package/dist/components/notification-card/index.js +1 -1
- package/dist/components/notification-card/notification-card.d.ts +15 -0
- package/dist/components/notification-tray/index.js +1 -1
- package/dist/components/notification-tray/notification-tray.d.ts +4 -0
- package/dist/components/operator-hero/index.js +1 -1
- package/dist/components/panel-header/index.d.ts +3 -0
- package/dist/components/panel-header/index.js +7 -0
- package/dist/components/panel-header/panel-header.d.ts +41 -0
- 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/permission-matrix/index.d.ts +4 -0
- package/dist/components/permission-matrix/index.js +7 -0
- package/dist/components/permission-matrix/permission-matrix.agent.d.ts +4 -0
- package/dist/components/permission-matrix/permission-matrix.d.ts +47 -0
- package/dist/components/position-grid/index.d.ts +4 -0
- package/dist/components/position-grid/index.js +7 -0
- package/dist/components/position-grid/position-grid.agent.d.ts +4 -0
- package/dist/components/position-grid/position-grid.d.ts +39 -0
- package/dist/components/postal-code-input/index.d.ts +5 -0
- package/dist/components/postal-code-input/index.js +6 -0
- package/dist/components/postal-code-input/postal-code-input.agent.d.ts +8 -0
- package/dist/components/postal-code-input/postal-code-input.d.ts +27 -0
- package/dist/components/practice-results/index.js +1 -1
- package/dist/components/pregnancy-dating/index.js +1 -1
- package/dist/components/product-hub-tray/index.js +1 -1
- package/dist/components/product-hub-tray/product-hub-tray.d.ts +13 -1
- package/dist/components/province-select/index.d.ts +6 -0
- package/dist/components/province-select/index.js +7 -0
- package/dist/components/province-select/it-provinces.d.ts +8 -0
- package/dist/components/province-select/province-select.agent.d.ts +8 -0
- package/dist/components/province-select/province-select.d.ts +38 -0
- package/dist/components/public-footer/public-footer.d.ts +1 -1
- package/dist/components/public-header/index.js +1 -1
- package/dist/components/radiograph-panel/index.js +1 -1
- package/dist/components/reviews-panel/index.js +1 -1
- package/dist/components/rich-text-editor/editor-toolbar.d.ts +17 -0
- package/dist/components/rich-text-editor/index.js +1 -1
- package/dist/components/scroll-area/index.js +1 -1
- package/dist/components/select/index.js +1 -1
- package/dist/components/select/select.d.ts +8 -2
- package/dist/components/sheet/index.js +1 -1
- package/dist/components/sidebar/index.js +1 -1
- package/dist/components/skeleton/skeleton.d.ts +1 -1
- package/dist/components/tabs/index.js +1 -1
- package/dist/components/task-card/index.js +1 -1
- package/dist/components/task-card/task-card.d.ts +14 -6
- package/dist/components/task-tray/index.js +1 -1
- package/dist/components/tasks-panel/index.d.ts +4 -0
- package/dist/components/tasks-panel/index.js +6 -0
- package/dist/components/tasks-panel/tasks-panel.agent.d.ts +4 -0
- package/dist/components/tasks-panel/tasks-panel.d.ts +152 -0
- package/dist/components/token-insert-menu/index.d.ts +4 -0
- package/dist/components/token-insert-menu/index.js +6 -0
- package/dist/components/token-insert-menu/token-insert-menu.agent.d.ts +4 -0
- package/dist/components/token-insert-menu/token-insert-menu.d.ts +33 -0
- package/dist/components/tool-rail/index.d.ts +4 -0
- package/dist/components/tool-rail/index.js +6 -0
- package/dist/components/tool-rail/tool-rail.agent.d.ts +4 -0
- package/dist/components/{ai-tools-rail/ai-tools-rail.d.ts → tool-rail/tool-rail.d.ts} +29 -12
- package/dist/components/tooth-scheme/index.js +1 -1
- package/dist/components/tooth-scheme/tooth-scheme.d.ts +9 -0
- package/dist/components/transcript-panel/index.js +1 -1
- package/dist/components/transcript-panel/transcript-panel.d.ts +2 -2
- package/dist/components/unit-converter/index.js +1 -1
- package/dist/components/workflow/index.js +1 -1
- package/dist/hooks/use-edge-resize.d.ts +2 -2
- package/dist/i18n/locales/ar.d.ts +167 -2
- package/dist/i18n/locales/ar.js +157 -5
- package/dist/i18n/locales/de.d.ts +167 -2
- package/dist/i18n/locales/de.js +159 -5
- package/dist/i18n/locales/el.d.ts +167 -2
- package/dist/i18n/locales/el.js +164 -5
- package/dist/i18n/locales/en.d.ts +167 -2
- package/dist/i18n/locales/en.js +170 -5
- package/dist/i18n/locales/es.d.ts +167 -2
- package/dist/i18n/locales/es.js +156 -5
- package/dist/i18n/locales/fr.d.ts +167 -2
- package/dist/i18n/locales/fr.js +159 -5
- package/dist/i18n/locales/hi.d.ts +167 -2
- package/dist/i18n/locales/hi.js +155 -5
- package/dist/i18n/locales/it.d.ts +167 -2
- package/dist/i18n/locales/it.js +159 -5
- package/dist/i18n/locales/ja.d.ts +167 -2
- package/dist/i18n/locales/ja.js +160 -5
- package/dist/i18n/locales/nl.d.ts +167 -2
- package/dist/i18n/locales/nl.js +152 -5
- package/dist/i18n/locales/pl.d.ts +167 -2
- package/dist/i18n/locales/pl.js +160 -5
- package/dist/i18n/locales/pt.d.ts +167 -2
- package/dist/i18n/locales/pt.js +164 -5
- package/dist/i18n/locales/ro.d.ts +167 -2
- package/dist/i18n/locales/ro.js +164 -5
- package/dist/i18n/locales/ru.d.ts +167 -2
- package/dist/i18n/locales/ru.js +157 -5
- package/dist/i18n/locales/sq.d.ts +167 -2
- package/dist/i18n/locales/sq.js +161 -5
- package/dist/i18n/locales/sv.d.ts +167 -2
- package/dist/i18n/locales/sv.js +159 -5
- package/dist/i18n/locales/tr.d.ts +167 -2
- package/dist/i18n/locales/tr.js +157 -5
- package/dist/i18n/locales/zh.d.ts +167 -2
- package/dist/i18n/locales/zh.js +152 -5
- package/dist/index.js +823 -755
- package/dist/locales/ar.json +170 -5
- package/dist/locales/de.json +170 -5
- package/dist/locales/el.json +170 -5
- package/dist/locales/en.json +170 -5
- package/dist/locales/es.json +170 -5
- package/dist/locales/fr.json +170 -5
- package/dist/locales/hi.json +170 -5
- package/dist/locales/it.json +170 -5
- package/dist/locales/ja.json +170 -5
- package/dist/locales/nl.json +170 -5
- package/dist/locales/pl.json +170 -5
- package/dist/locales/pt.json +170 -5
- package/dist/locales/ro.json +170 -5
- package/dist/locales/ru.json +170 -5
- package/dist/locales/sq.json +170 -5
- package/dist/locales/sv.json +170 -5
- package/dist/locales/tr.json +170 -5
- package/dist/locales/zh.json +170 -5
- package/dist/patterns/alia-assistant/alia-types.d.ts +9 -0
- package/dist/patterns/alia-assistant/index.js +1 -1
- package/dist/patterns/marketplace-app-shell/index.js +1 -1
- package/dist/patterns/patient-shell/index.js +1 -1
- package/dist/tokens.css +9 -1
- package/package.json +65 -5
- package/dist/_chunks/care-plan-header-BUwqDTtz.js +0 -206
- package/dist/_chunks/control-room-rail-Y8ryLYsP.js +0 -229
- package/dist/_chunks/editable-currency-cell-renderer-C9twtALM.js +0 -328
- package/dist/_chunks/entity-summary-BxRjFh_4.js +0 -138
- package/dist/_chunks/message-card-Bx4GmLvf.js +0 -277
- package/dist/_chunks/notes-panel-ay8_lPrA.js +0 -158
- package/dist/_chunks/notification-card-D2jiKSJJ.js +0 -259
- package/dist/_chunks/radiograph-panel.agent-CAX-C3g3.js +0 -558
- package/dist/_chunks/reviews-panel-Dq7LMDcH.js +0 -555
- package/dist/_chunks/rich-text-editor-DlCqPixb.js +0 -2158
- package/dist/_chunks/task-card-BwY9jaV1.js +0 -124
- package/dist/components/ai-tools-rail/ai-tools-rail.agent.d.ts +0 -4
- package/dist/components/ai-tools-rail/index.d.ts +0 -4
- package/dist/components/ai-tools-rail/index.js +0 -6
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
3
|
+
import { type TaskItem } from '../task-card';
|
|
4
|
+
/** Which set of tasks the panel shows — the host owns the actual feed. */
|
|
5
|
+
export type TasksPanelScope = 'patient' | 'mine';
|
|
6
|
+
/** Status segment value. Mirrors the platform `done` filter (default `todo`). */
|
|
7
|
+
export type TasksPanelStatusFilter = 'todo' | 'done' | 'all';
|
|
8
|
+
/**
|
|
9
|
+
* Panel-local extension of the card's `TaskItem`. The extra fields here drive
|
|
10
|
+
* bucketing + filtering; the row's display fields (the typed link via
|
|
11
|
+
* `linkType` + `linkedLabel`, the `assigneeLabel`, `dueLabel`) live on
|
|
12
|
+
* `TaskItem` and are rendered by `TaskCard` itself. The host maps the platform
|
|
13
|
+
* `DoctorReminder` → this shape — composing `title` (a summary, NOT the bare
|
|
14
|
+
* type), `note`, the linked entity, the assignee, and `dueLabel`.
|
|
15
|
+
*/
|
|
16
|
+
export interface TasksPanelItem extends TaskItem {
|
|
17
|
+
/** ISO-8601 due/scheduled instant (platform `DoctorReminder.date`). Buckets + orders the list. */
|
|
18
|
+
dueIso: string;
|
|
19
|
+
/** System or custom task-type key (`recall` | `payment` | `collection` | `other` | `custom-*`). Drives the type filter + badge. */
|
|
20
|
+
type?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Localised type label, required for CUSTOM types (the panel resolves system
|
|
23
|
+
* keys itself). Falls back to the system label for the four known keys.
|
|
24
|
+
*/
|
|
25
|
+
typeLabel?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Assignee id (the platform `practiceUser`). Omit ⇒ unassigned; give pool
|
|
28
|
+
* tasks a shared sentinel value (e.g. `'unassigned'`) if you want the pool
|
|
29
|
+
* itself filterable. Drives the assignee FILTER (exact match); the displayed
|
|
30
|
+
* name is `TaskItem.assigneeLabel`.
|
|
31
|
+
*/
|
|
32
|
+
assignee?: string;
|
|
33
|
+
/** Provenance — manual vs workflow-created. Filter only. */
|
|
34
|
+
createdBy?: 'user' | 'workflow';
|
|
35
|
+
}
|
|
36
|
+
/** Curated imperative handle — identifiers + structural state only, no PHI. */
|
|
37
|
+
export interface TasksPanelHandle {
|
|
38
|
+
getItems: () => Array<{
|
|
39
|
+
id: string;
|
|
40
|
+
status: string;
|
|
41
|
+
}>;
|
|
42
|
+
selectItem: (id: string) => void;
|
|
43
|
+
toggleDone: (id: string) => void;
|
|
44
|
+
dismiss: (id: string) => void;
|
|
45
|
+
jumpToOverdue: () => void;
|
|
46
|
+
setFilter: (next: {
|
|
47
|
+
status?: TasksPanelStatusFilter;
|
|
48
|
+
type?: string | null;
|
|
49
|
+
assignee?: string | null;
|
|
50
|
+
overdueOnly?: boolean;
|
|
51
|
+
}) => void;
|
|
52
|
+
/** Switch the task scope segment (patient ↔ mine). The host re-feeds items. */
|
|
53
|
+
changeScope: (next: TasksPanelScope) => void;
|
|
54
|
+
/** Request the host to append the next page of tasks (mirrors onLoadMore). */
|
|
55
|
+
loadMore: () => void;
|
|
56
|
+
}
|
|
57
|
+
interface FilterOption {
|
|
58
|
+
/** Stable value passed back through the matching `on…Change`. */
|
|
59
|
+
value: string;
|
|
60
|
+
/** Localised label. */
|
|
61
|
+
label: string;
|
|
62
|
+
}
|
|
63
|
+
export interface TasksPanelProps extends Omit<HTMLAttributes<HTMLElement>, 'onClick' | 'id' | 'title'> {
|
|
64
|
+
/** Stable instance id, surfaced as `data-component-id`. */
|
|
65
|
+
id?: string;
|
|
66
|
+
/** Tasks to render — any order; bucketed + sorted internally (due ASC, Done last). */
|
|
67
|
+
items: TasksPanelItem[];
|
|
68
|
+
/** ISO-8601 "now" anchor — buckets + overdue compute against it. Defaults to the current instant; stories pass a fixed value. */
|
|
69
|
+
nowIso?: string;
|
|
70
|
+
/** Panel heading. Defaults to the localised "Tasks". */
|
|
71
|
+
title?: string;
|
|
72
|
+
/** Visual density forwarded to each TaskCard. Defaults to `xs` — the compact rail row. */
|
|
73
|
+
size?: 'xs' | 'sm' | 'md';
|
|
74
|
+
/** Fires when a row is activated. */
|
|
75
|
+
onOpenTask?: (item: TasksPanelItem) => void;
|
|
76
|
+
/** Fires when the host should toggle a task's done state. */
|
|
77
|
+
onToggleDone?: (item: TasksPanelItem) => void;
|
|
78
|
+
/** Fires when the host should open the task editor. Omit to hide the per-row edit action. */
|
|
79
|
+
onEditTask?: (item: TasksPanelItem) => void;
|
|
80
|
+
/** Fires when the host should dismiss / remove a task. Omit to hide the per-row dismiss action. */
|
|
81
|
+
onDismissTask?: (item: TasksPanelItem) => void;
|
|
82
|
+
/** Fires when the header "Add" affordance is activated. Omit to hide it. */
|
|
83
|
+
onAddTask?: () => void;
|
|
84
|
+
/**
|
|
85
|
+
* Read-only mode — hides every write affordance (toggle / edit / dismiss /
|
|
86
|
+
* add). Mirrors the platform gating writes behind `practice_task_edit`.
|
|
87
|
+
*/
|
|
88
|
+
readOnly?: boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Per-row trailing action toolbar, forwarded to each TaskCard's `actions`
|
|
91
|
+
* slot. Overrides the default toggle / edit / dismiss buttons (the type Badge
|
|
92
|
+
* is always prepended by the panel). Ignored when `readOnly`.
|
|
93
|
+
*/
|
|
94
|
+
renderItemActions?: (item: TasksPanelItem) => ReactNode;
|
|
95
|
+
/** Controlled scope segment. */
|
|
96
|
+
scope?: TasksPanelScope;
|
|
97
|
+
/** Uncontrolled initial scope. Default `'patient'` when both scopes are available, else the only one. */
|
|
98
|
+
defaultScope?: TasksPanelScope;
|
|
99
|
+
/** Fires when the user switches scope — the host re-feeds `items`. */
|
|
100
|
+
onScopeChange?: (next: TasksPanelScope) => void;
|
|
101
|
+
/** Which scopes the segment offers. Omit ⇒ no scope segment (single-scope panel). */
|
|
102
|
+
availableScopes?: TasksPanelScope[];
|
|
103
|
+
/** Load the next page — fired when the bottom edge is reached and via the footer button. */
|
|
104
|
+
onLoadMore?: () => void;
|
|
105
|
+
/** Whether more tasks exist. Defaults to `true` when `onLoadMore` is set. */
|
|
106
|
+
hasMore?: boolean;
|
|
107
|
+
/** Show the bottom loading row while the next page is fetched. */
|
|
108
|
+
loadingMore?: boolean;
|
|
109
|
+
/** Full-panel initial loading state (skeleton rows in the body). */
|
|
110
|
+
loading?: boolean;
|
|
111
|
+
/** Error surface — `true` for the default error EmptyState, or a custom node. */
|
|
112
|
+
error?: boolean | ReactNode;
|
|
113
|
+
/** Show the filter header (status segment + type / assignee selects + overdue toggle). Default `true`. */
|
|
114
|
+
showFilters?: boolean;
|
|
115
|
+
/** Controlled status segment. */
|
|
116
|
+
statusFilter?: TasksPanelStatusFilter;
|
|
117
|
+
/** Uncontrolled initial status segment. Default `'todo'` (the platform default). */
|
|
118
|
+
defaultStatusFilter?: TasksPanelStatusFilter;
|
|
119
|
+
onStatusFilterChange?: (next: TasksPanelStatusFilter) => void;
|
|
120
|
+
/** Task types for the type filter. Omit ⇒ no type filter. */
|
|
121
|
+
typeOptions?: FilterOption[];
|
|
122
|
+
/** Controlled type filter (`null`/empty ⇒ all). */
|
|
123
|
+
typeFilter?: string | null;
|
|
124
|
+
onTypeFilterChange?: (next: string | null) => void;
|
|
125
|
+
/** Assignees for the assignee filter. Pass an explicit Unassigned option if wanted. Omit ⇒ no assignee filter. */
|
|
126
|
+
assigneeOptions?: FilterOption[];
|
|
127
|
+
/** Controlled assignee filter (`null`/empty ⇒ anyone). */
|
|
128
|
+
assigneeFilter?: string | null;
|
|
129
|
+
onAssigneeFilterChange?: (next: string | null) => void;
|
|
130
|
+
/** Controlled overdue-only toggle. */
|
|
131
|
+
overdueOnly?: boolean;
|
|
132
|
+
/** Uncontrolled initial overdue-only state. Default `false`. */
|
|
133
|
+
defaultOverdueOnly?: boolean;
|
|
134
|
+
onOverdueOnlyChange?: (next: boolean) => void;
|
|
135
|
+
emptyTitle?: string;
|
|
136
|
+
emptyDescription?: string;
|
|
137
|
+
/** CTA wired into the first-use empty state (e.g. Create task). */
|
|
138
|
+
emptyAction?: {
|
|
139
|
+
label: string;
|
|
140
|
+
onClick: () => void;
|
|
141
|
+
};
|
|
142
|
+
/** Accessible name for the panel region (defaults to `title`). */
|
|
143
|
+
'aria-label'?: string;
|
|
144
|
+
}
|
|
145
|
+
declare const rootVariants: (props?: ({
|
|
146
|
+
size?: "sm" | "md" | "xs" | null | undefined;
|
|
147
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
148
|
+
export declare const TasksPanel: import("react").ForwardRefExoticComponent<TasksPanelProps & import("react").RefAttributes<HTMLElement>>;
|
|
149
|
+
/** Re-export of the size variant union for downstream typing. */
|
|
150
|
+
export type TasksPanelSize = NonNullable<VariantProps<typeof rootVariants>['size']>;
|
|
151
|
+
export {};
|
|
152
|
+
//# sourceMappingURL=tasks-panel.d.ts.map
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/** One selectable merge-token. */
|
|
2
|
+
export interface TokenInsertMenuToken {
|
|
3
|
+
/** Raw token text inserted verbatim (e.g. `"{{patient.name}}"`). */
|
|
4
|
+
value: string;
|
|
5
|
+
/** Human-readable label shown in the menu. Already localised by the consumer. */
|
|
6
|
+
label: string;
|
|
7
|
+
/** Optional section heading — when ANY token has one, the menu renders grouped. */
|
|
8
|
+
group?: string;
|
|
9
|
+
}
|
|
10
|
+
/** Agent-readiness curated handle for TokenInsertMenu. */
|
|
11
|
+
export interface TokenInsertMenuHandle {
|
|
12
|
+
isOpen: () => boolean;
|
|
13
|
+
open: () => void;
|
|
14
|
+
close: () => void;
|
|
15
|
+
/** Emit a token to the consumer (mirrors a user selecting it). */
|
|
16
|
+
insert: (token: string) => void;
|
|
17
|
+
}
|
|
18
|
+
export interface TokenInsertMenuProps {
|
|
19
|
+
/** The merge-tokens to offer. `value` is inserted; `label` is shown. */
|
|
20
|
+
tokens: TokenInsertMenuToken[];
|
|
21
|
+
/** Called with the chosen token's raw `value`. The consumer inserts it at
|
|
22
|
+
* the caret of their target field — this component never owns the field. */
|
|
23
|
+
onInsert: (token: string) => void;
|
|
24
|
+
/** The trigger button's visible text (already localised by the consumer). */
|
|
25
|
+
triggerLabel: string;
|
|
26
|
+
disabled?: boolean;
|
|
27
|
+
/** Opaque instance id — surfaced as `data-component-id` + agent instance id. */
|
|
28
|
+
id?: string;
|
|
29
|
+
/** Extra classes for the trigger button. */
|
|
30
|
+
className?: string;
|
|
31
|
+
}
|
|
32
|
+
export declare const TokenInsertMenu: import("react").ForwardRefExoticComponent<TokenInsertMenuProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
33
|
+
//# sourceMappingURL=token-insert-menu.d.ts.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
2
|
import { type VariantProps } from 'class-variance-authority';
|
|
3
|
-
|
|
3
|
+
import type { AgentAdapter } from '../../agent/types';
|
|
4
|
+
export interface ToolRailTool {
|
|
4
5
|
/** Stable tool id — used in `data-active`, the imperative handle, and
|
|
5
6
|
* to label the open panel region. */
|
|
6
7
|
id: string;
|
|
@@ -52,14 +53,14 @@ export interface AiToolsRailTool {
|
|
|
52
53
|
reorderable?: boolean;
|
|
53
54
|
}
|
|
54
55
|
/**
|
|
55
|
-
* Curated imperative handle for
|
|
56
|
+
* Curated imperative handle for ToolRail. Exposed as the forwardRef
|
|
56
57
|
* target so a future agent / MCP UI bridge can drive the rail without
|
|
57
|
-
* touching the DOM. See `
|
|
58
|
+
* touching the DOM. See `tool-rail.agent.ts`.
|
|
58
59
|
*
|
|
59
60
|
* State surfaced here is strictly identifiers + counts — never any
|
|
60
61
|
* tool's panel content (which may carry PHI).
|
|
61
62
|
*/
|
|
62
|
-
export interface
|
|
63
|
+
export interface ToolRailHandle {
|
|
63
64
|
/** Currently-active tool id, or null when collapsed to strip-only. */
|
|
64
65
|
getActiveToolId: () => string | null;
|
|
65
66
|
/** Activate a tool by id (opens its panel), or null to collapse. */
|
|
@@ -72,11 +73,11 @@ export interface AiToolsRailHandle {
|
|
|
72
73
|
declare const railVariants: (props?: ({
|
|
73
74
|
side?: "end" | "start" | null | undefined;
|
|
74
75
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
75
|
-
export interface
|
|
76
|
+
export interface ToolRailProps extends VariantProps<typeof railVariants> {
|
|
76
77
|
/** Stable instance id, surfaced on the root as `data-component-id`. */
|
|
77
78
|
id?: string;
|
|
78
79
|
/** The tools shown as icons on the strip. */
|
|
79
|
-
tools:
|
|
80
|
+
tools: ToolRailTool[];
|
|
80
81
|
/** Controlled active tool id (null = collapsed / strip-only). */
|
|
81
82
|
activeToolId?: string | null;
|
|
82
83
|
/** Uncontrolled initial active tool id (default null). */
|
|
@@ -91,7 +92,7 @@ export interface AiToolsRailProps extends VariantProps<typeof railVariants> {
|
|
|
91
92
|
* Opt-in resize affordance for the open tool panel. Renders a
|
|
92
93
|
* `role="separator"` drag handle on the panel's inner edge (the edge
|
|
93
94
|
* facing the main content). The committed width is written to
|
|
94
|
-
* `--
|
|
95
|
+
* `--tool-rail-panel-inline-size` on the panel element (288–640px);
|
|
95
96
|
* Enter / double-click resets to the token-driven default. Default `false`.
|
|
96
97
|
*/
|
|
97
98
|
resizablePanel?: boolean;
|
|
@@ -113,7 +114,7 @@ export interface AiToolsRailProps extends VariantProps<typeof railVariants> {
|
|
|
113
114
|
* omitted, the rail announces the generic run-relative position.
|
|
114
115
|
*/
|
|
115
116
|
formatReorderAnnouncement?: (args: {
|
|
116
|
-
tool:
|
|
117
|
+
tool: ToolRailTool;
|
|
117
118
|
from: number;
|
|
118
119
|
to: number;
|
|
119
120
|
}) => string;
|
|
@@ -123,7 +124,7 @@ export interface AiToolsRailProps extends VariantProps<typeof railVariants> {
|
|
|
123
124
|
* a small affordance such as a pin toggle — the rail attaches no meaning to
|
|
124
125
|
* what it renders. Receives the tool and its index / active state.
|
|
125
126
|
*/
|
|
126
|
-
renderToolAffordance?: (tool:
|
|
127
|
+
renderToolAffordance?: (tool: ToolRailTool, context: {
|
|
127
128
|
index: number;
|
|
128
129
|
isActive: boolean;
|
|
129
130
|
isRovingTarget: boolean;
|
|
@@ -133,11 +134,27 @@ export interface AiToolsRailProps extends VariantProps<typeof railVariants> {
|
|
|
133
134
|
* above its scroll region. Host-owned content (e.g. a pin / unpin control) —
|
|
134
135
|
* the rail attaches no meaning. Receives the active tool.
|
|
135
136
|
*/
|
|
136
|
-
renderPanelHeader?: (tool:
|
|
137
|
+
renderPanelHeader?: (tool: ToolRailTool, context: {
|
|
137
138
|
isActive: boolean;
|
|
138
139
|
}) => ReactNode;
|
|
140
|
+
/**
|
|
141
|
+
* Identity override for the root's `data-component` attribute. Defaults to
|
|
142
|
+
* `'tool-rail'`. A product wrapper (e.g. ControlRoomRail) passes its own
|
|
143
|
+
* kebab id so the DOM / cascade boundary — and an agent's `domHooks.root` —
|
|
144
|
+
* can tell its surface apart from a bare ToolRail, without the engine ever
|
|
145
|
+
* importing the wrapper.
|
|
146
|
+
*/
|
|
147
|
+
dataComponent?: string;
|
|
148
|
+
/**
|
|
149
|
+
* Agent adapter registered for this rail instance. Defaults to
|
|
150
|
+
* `toolRailAgent`. A wrapper passes its own adapter (matching
|
|
151
|
+
* `dataComponent`) so the rail registers under the wrapper's identity. The
|
|
152
|
+
* instance id is sourced from the `id` prop (also stamped as
|
|
153
|
+
* `data-component-id`).
|
|
154
|
+
*/
|
|
155
|
+
agentAdapter?: AgentAdapter<ToolRailHandle>;
|
|
139
156
|
className?: string;
|
|
140
157
|
}
|
|
141
|
-
export declare const
|
|
158
|
+
export declare const ToolRail: import("react").ForwardRefExoticComponent<ToolRailProps & import("react").RefAttributes<ToolRailHandle>>;
|
|
142
159
|
export {};
|
|
143
|
-
//# sourceMappingURL=
|
|
160
|
+
//# sourceMappingURL=tool-rail.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as o, a as e, b as t, c as E, F as S, d as T, e as I, P as _, f as l, S as r, g as O, h as N, T as n, i as c, j as h, k as m, l as A, m as i, n as C, o as D, p as F, s as L, q as R, r as P, t as p, u as M, v as U, z as u, w as y, x as b } from "../../_chunks/tooth-scheme-
|
|
1
|
+
import { C as o, a as e, b as t, c as E, F as S, d as T, e as I, P as _, f as l, S as r, g as O, h as N, T as n, i as c, j as h, k as m, l as A, m as i, n as C, o as D, p as F, s as L, q as R, r as P, t as p, u as M, v as U, z as u, w as y, x as b } from "../../_chunks/tooth-scheme-DJZtzfeY.js";
|
|
2
2
|
export {
|
|
3
3
|
o as CONDITION_COLORS,
|
|
4
4
|
e as CONDITION_PLAN_FOLDER,
|
|
@@ -93,6 +93,15 @@ export interface ToothSchemeProps {
|
|
|
93
93
|
* chart directly. Default `false`.
|
|
94
94
|
*/
|
|
95
95
|
controls?: boolean;
|
|
96
|
+
/**
|
|
97
|
+
* Where to render the `controls` gear. `undefined` (default) renders it
|
|
98
|
+
* inline at the top-end of the chart. Pass a DOM element (e.g. a ref'd slot in
|
|
99
|
+
* your card header) to portal the gear + its popover into that slot instead,
|
|
100
|
+
* so the chart options can sit on the title line. While the slot is mounting
|
|
101
|
+
* the prop will be `null`; the gear renders nothing until the element exists,
|
|
102
|
+
* so it never flashes inline first. No effect unless `controls` is on.
|
|
103
|
+
*/
|
|
104
|
+
controlsContainer?: HTMLElement | null;
|
|
96
105
|
/** Accessible label override for the chart region. */
|
|
97
106
|
ariaLabel?: string;
|
|
98
107
|
/** Extra class names on the wrapper. */
|
|
@@ -18,7 +18,7 @@ export interface TranscriptPanelHandle {
|
|
|
18
18
|
/** Copy the turn's text to the clipboard. */
|
|
19
19
|
copyTurn: (id: string) => Promise<void> | void;
|
|
20
20
|
}
|
|
21
|
-
export interface TranscriptPanelProps extends Omit<HTMLAttributes<
|
|
21
|
+
export interface TranscriptPanelProps extends Omit<HTMLAttributes<HTMLElement>, 'children'>, VariantProps<typeof rootVariants> {
|
|
22
22
|
lines: TranscriptLine[];
|
|
23
23
|
/** Current playback time in seconds — drives the active line highlight. */
|
|
24
24
|
currentTime?: number;
|
|
@@ -29,6 +29,6 @@ export interface TranscriptPanelProps extends Omit<HTMLAttributes<HTMLDivElement
|
|
|
29
29
|
declare const rootVariants: (props?: ({
|
|
30
30
|
size?: "sm" | "md" | "lg" | null | undefined;
|
|
31
31
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
32
|
-
export declare const TranscriptPanel: import("react").ForwardRefExoticComponent<TranscriptPanelProps & import("react").RefAttributes<
|
|
32
|
+
export declare const TranscriptPanel: import("react").ForwardRefExoticComponent<TranscriptPanelProps & import("react").RefAttributes<HTMLElement>>;
|
|
33
33
|
export {};
|
|
34
34
|
//# sourceMappingURL=transcript-panel.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as r, W as e, a as s, b as d, c as w, i as t, l as f, m as l, r as i, w as k, d as n, e as A, f as C } from "../../_chunks/workflow-map-
|
|
1
|
+
import { C as r, W as e, a as s, b as d, c as w, i as t, l as f, m as l, r as i, w as k, d as n, e as A, f as C } from "../../_chunks/workflow-map-M8MBBHQm.js";
|
|
2
2
|
export {
|
|
3
3
|
r as CORE_PATIENT_FIELDS,
|
|
4
4
|
e as WorkflowCard,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Pixel-based edge-resize for fixed-width chrome surfaces (the Sidebar's
|
|
3
|
-
* inline-end edge, the
|
|
3
|
+
* inline-end edge, the ToolRail panel's inner edge). Mirrors the
|
|
4
4
|
* separator semantics of `Resizable`'s Handle — `role="separator"`,
|
|
5
5
|
* arrow keys with RTL flip, Shift for coarse steps, Home/End to the
|
|
6
6
|
* extremes, Enter or double-click to reset — but sizes a single target
|
|
@@ -19,7 +19,7 @@ export interface UseEdgeResizeOptions {
|
|
|
19
19
|
/**
|
|
20
20
|
* Which logical edge of the target carries the handle. `inline-end`
|
|
21
21
|
* for a start-docked surface (Sidebar); `inline-start` for an
|
|
22
|
-
* end-docked one (
|
|
22
|
+
* end-docked one (ToolRail panel with `side="end"`).
|
|
23
23
|
*/
|
|
24
24
|
edge: 'inline-start' | 'inline-end';
|
|
25
25
|
/** The element being resized. The width override lands on its style. */
|