@alfadocs/ui-kit 1.4.11 → 1.4.13
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/actions-cell-renderer-BD-jruqA.js +1784 -0
- package/dist/_chunks/{address-fields-pHsfkXGk.js → address-fields-D-8akw2m.js} +2 -2
- package/dist/_chunks/{agenda-card-BCGaQazD.js → agenda-card-BQDs2ZMp.js} +2 -2
- package/dist/_chunks/{agenda-tray-CG6FuccE.js → agenda-tray-BTyWsVwT.js} +2 -2
- package/dist/_chunks/{ai-consent-banner-CpF_rbG9.js → ai-consent-banner-gVcoiXxv.js} +2 -2
- package/dist/_chunks/{anamnesis-card-C4FVp9wO.js → anamnesis-card-Bt0twrML.js} +2 -2
- package/dist/_chunks/anamnesis-summary-card-BKGVcwny.js +350 -0
- package/dist/_chunks/{anamnesis-summary-rows-Dw3l6nOD.js → anamnesis-summary-rows-B5MAYkJ-.js} +2768 -2951
- package/dist/_chunks/{antenatal-schedule-timeline-u8TsS2QJ.js → antenatal-schedule-timeline-BSLrOQ3S.js} +2 -2
- package/dist/_chunks/{appointment-card-DgKI5QKD.js → appointment-card-kcUC7vWR.js} +2 -2
- package/dist/_chunks/{appointment-timeline-CUijZCxZ.js → appointment-timeline-BC3dlZu5.js} +2 -2
- package/dist/_chunks/{appointment-tray-B1aUk46V.js → appointment-tray-BPY5rATW.js} +2 -2
- package/dist/_chunks/{badge-DCOqV9mI.js → badge-CIt-UFEx.js} +28 -28
- package/dist/_chunks/{bishop-score-Bpe20Ctl.js → bishop-score-B6iYYO0c.js} +3 -3
- package/dist/_chunks/{bmi-calculator-DF5bNsDD.js → bmi-calculator-DC5SaqXT.js} +5 -5
- package/dist/_chunks/{booking-DuSkvE5x.js → booking-CmHX15dh.js} +2 -2
- package/dist/_chunks/{care-plan-card-DiyK3Eys.js → care-plan-card-9tLgsDYY.js} +3 -3
- package/dist/_chunks/{care-plan-entry-card-6du8PYVk.js → care-plan-entry-card-CSan4h7A.js} +2 -2
- package/dist/_chunks/{care-plan-header-BWvDvly-.js → care-plan-header-D_BTi77b.js} +2 -2
- package/dist/_chunks/{clinical-note-card-D63x_AkK.js → clinical-note-card-ByzQ86uz.js} +2 -2
- package/dist/_chunks/{connection-status-Bi4Hwpd1.js → connection-status-D8mZ4klk.js} +2 -2
- package/dist/_chunks/{contact-profile-card-CGS_NABR.js → contact-profile-card-DuW6VpzY.js} +2 -2
- package/dist/_chunks/{cycle-calculator-Bd4_fJhq.js → cycle-calculator-B_NlctlQ.js} +4 -4
- package/dist/_chunks/{date-time-picker-DafkGDGO.js → date-time-picker-DVETwpzc.js} +2 -2
- package/dist/_chunks/{dependent-selector-DyFpdzZV.js → dependent-selector-BUvrZRi0.js} +2 -2
- package/dist/_chunks/{document-preview-DuMzmupZ.js → document-preview-Di15VrpQ.js} +2 -2
- package/dist/_chunks/{due-date-calculator-Do67C-Z-.js → due-date-calculator-le1z3KpW.js} +6 -6
- package/dist/_chunks/{fetal-weight-DHxXx7Uz.js → fetal-weight-DXA6ZpMq.js} +4 -4
- package/dist/_chunks/{field-value-C5A4t4OE.js → field-value-BCFLVBmu.js} +2 -2
- package/dist/_chunks/{file-manager-BY6FdHAt.js → file-manager-BjCM2fZB.js} +3 -3
- package/dist/_chunks/form-field-D1oqYisL.js +127 -0
- package/dist/_chunks/{gestational-age-calculator-CMhOtFE_.js → gestational-age-calculator-Ch8vmJAl.js} +5 -5
- package/dist/_chunks/{hcg-doubling-DNG9Q2go.js → hcg-doubling-BT6lki_i.js} +5 -5
- package/dist/_chunks/{link-cell-renderer-C8npOgmM.js → link-cell-renderer-C7GvyK66.js} +3 -3
- package/dist/_chunks/{marketplace-app-shell-BxOiy25s.js → marketplace-app-shell-BhRH7Zi4.js} +2 -2
- package/dist/_chunks/{notes-panel-BoyzMHI_.js → notes-panel-Bz83SO4-.js} +2 -2
- package/dist/_chunks/number-input-CM1q9zvH.js +414 -0
- package/dist/_chunks/{operator-hero-DVy0RGoD.js → operator-hero-CpJkDNAM.js} +2 -2
- package/dist/_chunks/{optical-prescription-Brs0CeP3.js → optical-prescription-CQR_WJiS.js} +2 -2
- package/dist/_chunks/{patient-details-Bf4iTAPp.js → patient-details-CnFgF3MU.js} +3 -3
- package/dist/_chunks/{patient-summary-card-dkV6a53T.js → patient-summary-card-DfbOtOV6.js} +3 -3
- package/dist/_chunks/{patient-table-zifAcsjV.js → patient-table-BXzcrC79.js} +4 -4
- package/dist/_chunks/{payment-automation-upsell-CZZPGfs0.js → payment-automation-upsell-Ckh3b7Xx.js} +2 -2
- package/dist/_chunks/{payment-request-card-Dy7_DA-2.js → payment-request-card-Dn6-tH-D.js} +2 -2
- package/dist/_chunks/{periodontal-chart-CfFgKXWa.js → periodontal-chart-B0yko9Xm.js} +2 -2
- package/dist/_chunks/{periodontal-chart-card--6yTUsrQ.js → periodontal-chart-card-HbYTmWlo.js} +2 -2
- package/dist/_chunks/{periodontal-diagnosis-cco40xTa.js → periodontal-diagnosis-Qk4F3Wc_.js} +3 -3
- package/dist/_chunks/{periodontal-risk-chart-bUGkMwDg.js → periodontal-risk-chart-ByKuM4cF.js} +2 -2
- package/dist/_chunks/{practice-results-Mys11x9p.js → practice-results-C5exrEn0.js} +2 -2
- package/dist/_chunks/{pregnancy-dating-t3oM4ZzC.js → pregnancy-dating-4tPV_Yko.js} +6 -6
- package/dist/_chunks/{pregnancy-weight-gain-Bfz7SbIw.js → pregnancy-weight-gain-BBgbWBGe.js} +5 -5
- package/dist/_chunks/radio-group-BmIqhIT2.js +171 -0
- package/dist/_chunks/{radiograph-panel.agent-DyA4wsZA.js → radiograph-panel.agent-Drj0hYVV.js} +3 -3
- package/dist/_chunks/signature-status-chip-DlLJk1VA.js +97 -0
- package/dist/_chunks/{tab-bar-BYESZINM.js → tab-bar-Ddp_ZbnL.js} +2 -2
- package/dist/_chunks/{tasks-panel-CoESdfZI.js → tasks-panel-T7vaKJcA.js} +2 -2
- package/dist/_chunks/{time-picker-BPlJWm8w.js → time-picker-D0RS391l.js} +66 -63
- package/dist/_chunks/{unit-converter-lUW9Q888.js → unit-converter-Dsk__pjA.js} +3 -3
- package/dist/_chunks/{widget-picker-DEmTVuFL.js → widget-picker-DqMbjQy_.js} +2 -2
- package/dist/_chunks/{workflow-map-C5PGP6cD.js → workflow-map-BNBeG2zn.js} +2 -2
- package/dist/agent-catalog.json +34 -34
- package/dist/agent-i18n/en.json +4 -4
- package/dist/components/address-fields/index.js +1 -1
- package/dist/components/agenda-card/index.js +1 -1
- package/dist/components/agenda-tray/index.js +1 -1
- package/dist/components/ai-consent-banner/index.js +1 -1
- package/dist/components/anamnesis-card/index.js +1 -1
- package/dist/components/anamnesis-summary-card/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/badge/badge.d.ts +1 -0
- package/dist/components/badge/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/care-plan-card/index.js +1 -1
- package/dist/components/care-plan-entry-card/index.js +1 -1
- package/dist/components/care-plan-header/index.js +1 -1
- package/dist/components/clinical-note-card/index.js +1 -1
- package/dist/components/connection-status/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/data-table.d.ts +19 -0
- package/dist/components/data-table/expanded-row-renderer.d.ts +47 -0
- package/dist/components/data-table/index.d.ts +2 -0
- package/dist/components/data-table/index.js +31 -27
- package/dist/components/date-time-picker/index.js +1 -1
- package/dist/components/dependent-selector/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/fetal-weight/index.js +1 -1
- package/dist/components/file-manager/index.js +1 -1
- package/dist/components/form-field/form-field.d.ts +6 -0
- package/dist/components/form-field/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/index.d.ts +1 -0
- package/dist/components/notes-panel/index.js +1 -1
- package/dist/components/number-input/index.js +1 -1
- package/dist/components/number-input/number-input.d.ts +11 -0
- package/dist/components/operator-hero/index.js +1 -1
- package/dist/components/optical-prescription/index.js +1 -1
- package/dist/components/patient-details/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/practice-results/index.js +1 -1
- package/dist/components/pregnancy-dating/index.js +1 -1
- package/dist/components/pregnancy-weight-gain/index.js +1 -1
- package/dist/components/radio-group/index.js +1 -1
- package/dist/components/radio-group/radio-group.d.ts +3 -0
- package/dist/components/radiograph-panel/index.js +1 -1
- package/dist/components/signature-status-chip/index.d.ts +3 -0
- package/dist/components/signature-status-chip/index.js +6 -0
- package/dist/components/signature-status-chip/signature-status-chip.d.ts +29 -0
- package/dist/components/tab-bar/index.js +1 -1
- package/dist/components/tasks-panel/index.js +1 -1
- package/dist/components/time-picker/index.js +1 -1
- package/dist/components/unit-converter/index.js +1 -1
- package/dist/components/widget-picker/index.js +1 -1
- package/dist/components/workflow/index.js +1 -1
- package/dist/host-compat.css +4 -1
- package/dist/i18n/locales/ar.d.ts +17 -0
- package/dist/i18n/locales/ar.js +11 -0
- package/dist/i18n/locales/de.d.ts +17 -0
- package/dist/i18n/locales/de.js +11 -0
- package/dist/i18n/locales/el.d.ts +17 -0
- package/dist/i18n/locales/el.js +11 -0
- package/dist/i18n/locales/en.d.ts +17 -0
- package/dist/i18n/locales/en.js +11 -0
- package/dist/i18n/locales/es.d.ts +17 -0
- package/dist/i18n/locales/es.js +11 -0
- package/dist/i18n/locales/fr.d.ts +17 -0
- package/dist/i18n/locales/fr.js +11 -0
- package/dist/i18n/locales/hi.d.ts +17 -0
- package/dist/i18n/locales/hi.js +11 -0
- package/dist/i18n/locales/it.d.ts +17 -0
- package/dist/i18n/locales/it.js +11 -0
- package/dist/i18n/locales/ja.d.ts +17 -0
- package/dist/i18n/locales/ja.js +11 -0
- package/dist/i18n/locales/nl.d.ts +17 -0
- package/dist/i18n/locales/nl.js +11 -0
- package/dist/i18n/locales/pl.d.ts +17 -0
- package/dist/i18n/locales/pl.js +11 -0
- package/dist/i18n/locales/pt.d.ts +17 -0
- package/dist/i18n/locales/pt.js +11 -0
- package/dist/i18n/locales/ro.d.ts +17 -0
- package/dist/i18n/locales/ro.js +11 -0
- package/dist/i18n/locales/ru.d.ts +17 -0
- package/dist/i18n/locales/ru.js +11 -0
- package/dist/i18n/locales/sq.d.ts +17 -0
- package/dist/i18n/locales/sq.js +11 -0
- package/dist/i18n/locales/sv.d.ts +17 -0
- package/dist/i18n/locales/sv.js +11 -0
- package/dist/i18n/locales/tr.d.ts +17 -0
- package/dist/i18n/locales/tr.js +11 -0
- package/dist/i18n/locales/zh.d.ts +17 -0
- package/dist/i18n/locales/zh.js +11 -0
- package/dist/index.js +799 -792
- package/dist/locales/ar.json +17 -0
- package/dist/locales/de.json +17 -0
- package/dist/locales/el.json +17 -0
- package/dist/locales/en.json +17 -0
- package/dist/locales/es.json +17 -0
- package/dist/locales/fr.json +17 -0
- package/dist/locales/hi.json +17 -0
- package/dist/locales/it.json +17 -0
- package/dist/locales/ja.json +17 -0
- package/dist/locales/nl.json +17 -0
- package/dist/locales/pl.json +17 -0
- package/dist/locales/pt.json +17 -0
- package/dist/locales/ro.json +17 -0
- package/dist/locales/ru.json +17 -0
- package/dist/locales/sq.json +17 -0
- package/dist/locales/sv.json +17 -0
- package/dist/locales/tr.json +17 -0
- package/dist/locales/zh.json +17 -0
- package/dist/patterns/anamnesis/anamnesis-baseline.d.ts +6 -0
- package/dist/patterns/anamnesis/anamnesis-compile.d.ts +4 -1
- package/dist/patterns/anamnesis/anamnesis-evolution-grid.d.ts +8 -9
- package/dist/patterns/anamnesis/anamnesis-evolution.d.ts +24 -12
- package/dist/patterns/anamnesis/anamnesis-intake.d.ts +5 -1
- package/dist/patterns/anamnesis/anamnesis-questionnaire.d.ts +4 -1
- package/dist/patterns/anamnesis/anamnesis-readonly.d.ts +4 -1
- package/dist/patterns/anamnesis/anamnesis-source-blocks.d.ts +29 -0
- package/dist/patterns/anamnesis/anamnesis-window.d.ts +3 -5
- package/dist/patterns/anamnesis/anamnesis.d.ts +4 -1
- package/dist/patterns/anamnesis/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/tokens.css +5 -2
- package/package.json +5 -1
- package/dist/_chunks/actions-cell-renderer-C67oj7mR.js +0 -1581
- package/dist/_chunks/anamnesis-summary-card-CpQViN5l.js +0 -392
- package/dist/_chunks/form-field-M5UpX65Z.js +0 -123
- package/dist/_chunks/number-input-DOe5VYei.js +0 -370
- package/dist/_chunks/radio-group-CI-6SmSw.js +0 -167
- package/dist/patterns/anamnesis/anamnesis-compare-panel.d.ts +0 -89
|
@@ -13,10 +13,10 @@ const De = {
|
|
|
13
13
|
descriptionKey: "ui.agent.timePicker.state.value",
|
|
14
14
|
description: "Currently-selected time as 24h HH:MM (always present — defaults to 00:00 when unset).",
|
|
15
15
|
read: (t) => {
|
|
16
|
-
const
|
|
17
|
-
if (!
|
|
18
|
-
const u = String(
|
|
19
|
-
return `${u}:${
|
|
16
|
+
const n = t.getValue();
|
|
17
|
+
if (!n) return null;
|
|
18
|
+
const u = String(n.hours).padStart(2, "0"), m = String(n.minutes).padStart(2, "0");
|
|
19
|
+
return `${u}:${m}`;
|
|
20
20
|
}
|
|
21
21
|
},
|
|
22
22
|
isOpen: {
|
|
@@ -41,11 +41,11 @@ const De = {
|
|
|
41
41
|
descriptionKey: "ui.agent.timePicker.actions.setTime",
|
|
42
42
|
description: "Set the time using a 24h HH:MM string.",
|
|
43
43
|
examples: [{ args: { time: "14:30" }, note: "2:30 PM in 24h form." }],
|
|
44
|
-
invoke: (t,
|
|
45
|
-
const [u,
|
|
44
|
+
invoke: (t, n) => {
|
|
45
|
+
const [u, m] = n.time.split(":");
|
|
46
46
|
t.setValue({
|
|
47
47
|
hours: Number.parseInt(u ?? "0", 10),
|
|
48
|
-
minutes: Number.parseInt(
|
|
48
|
+
minutes: Number.parseInt(m ?? "0", 10)
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
51
|
},
|
|
@@ -90,40 +90,40 @@ const De = {
|
|
|
90
90
|
};
|
|
91
91
|
function Me(t) {
|
|
92
92
|
try {
|
|
93
|
-
const
|
|
93
|
+
const n = new Intl.DateTimeFormat(t, {
|
|
94
94
|
hour: "numeric"
|
|
95
95
|
}).resolvedOptions();
|
|
96
|
-
return
|
|
96
|
+
return n.hourCycle === "h12" || n.hourCycle === "h11";
|
|
97
97
|
} catch {
|
|
98
98
|
return !1;
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
101
|
function He(t) {
|
|
102
|
-
var
|
|
102
|
+
var n, u;
|
|
103
103
|
try {
|
|
104
|
-
const
|
|
104
|
+
const m = ((n = new Intl.DateTimeFormat(t, {
|
|
105
105
|
hour: "numeric",
|
|
106
106
|
hour12: !0
|
|
107
|
-
}).formatToParts(new Date(2e3, 0, 1, 9)).find((x) => x.type === "dayPeriod")) == null ? void 0 :
|
|
107
|
+
}).formatToParts(new Date(2e3, 0, 1, 9)).find((x) => x.type === "dayPeriod")) == null ? void 0 : n.value) ?? "AM", p = ((u = new Intl.DateTimeFormat(t, {
|
|
108
108
|
hour: "numeric",
|
|
109
109
|
hour12: !0
|
|
110
110
|
}).formatToParts(new Date(2e3, 0, 1, 15)).find((x) => x.type === "dayPeriod")) == null ? void 0 : u.value) ?? "PM";
|
|
111
|
-
return { am:
|
|
111
|
+
return { am: m, pm: p };
|
|
112
112
|
} catch {
|
|
113
113
|
return { am: "AM", pm: "PM" };
|
|
114
114
|
}
|
|
115
115
|
}
|
|
116
|
-
function w(t,
|
|
117
|
-
return Math.min(u, Math.max(
|
|
116
|
+
function w(t, n, u) {
|
|
117
|
+
return Math.min(u, Math.max(n, t));
|
|
118
118
|
}
|
|
119
|
-
function S(t,
|
|
120
|
-
return Math.round(t /
|
|
119
|
+
function S(t, n) {
|
|
120
|
+
return Math.round(t / n) * n;
|
|
121
121
|
}
|
|
122
122
|
function W(t) {
|
|
123
123
|
return t === 0 ? 12 : t > 12 ? t - 12 : t;
|
|
124
124
|
}
|
|
125
|
-
function U(t,
|
|
126
|
-
return
|
|
125
|
+
function U(t, n) {
|
|
126
|
+
return n ? t === 12 ? 12 : t + 12 : t === 12 ? 0 : t;
|
|
127
127
|
}
|
|
128
128
|
const ze = N(
|
|
129
129
|
[
|
|
@@ -208,10 +208,10 @@ const ze = N(
|
|
|
208
208
|
}), Ie = ye(
|
|
209
209
|
({
|
|
210
210
|
value: t,
|
|
211
|
-
defaultValue:
|
|
211
|
+
defaultValue: n,
|
|
212
212
|
onChange: u,
|
|
213
|
-
hour12:
|
|
214
|
-
minuteStep:
|
|
213
|
+
hour12: m,
|
|
214
|
+
minuteStep: p = 1,
|
|
215
215
|
fullWidthSeparator: x = !1,
|
|
216
216
|
periodLabels: J,
|
|
217
217
|
size: T = "md",
|
|
@@ -219,14 +219,14 @@ const ze = N(
|
|
|
219
219
|
className: X,
|
|
220
220
|
id: Y
|
|
221
221
|
}, Z) => {
|
|
222
|
-
const { t: K, i18n: _ } = xe(), P = Te(), R = Y ?? P.id,
|
|
223
|
-
t ??
|
|
222
|
+
const { t: K, i18n: _ } = xe(), P = Te(), R = Y ?? P.id, c = P.disabled || Q, ee = P.invalid ? "error" : "default", i = m !== void 0 ? m : Me(_.language), te = He(_.language), V = J ?? te, j = t !== void 0, [re, se] = F(
|
|
223
|
+
t ?? n ?? { hours: 0, minutes: 0 }
|
|
224
224
|
), r = j ? t : re, o = O(
|
|
225
225
|
(e) => {
|
|
226
|
-
j ||
|
|
226
|
+
j || se(e), u == null || u(e);
|
|
227
227
|
},
|
|
228
228
|
[j, u]
|
|
229
|
-
), $ = k(null), D = k(null), I = k(null), [
|
|
229
|
+
), $ = k(null), D = k(null), I = k(null), [ne, M] = F(""), [ie, H] = F(""), h = k(null), v = k(null), L = O(() => {
|
|
230
230
|
M(""), h.current && (clearTimeout(h.current), h.current = null);
|
|
231
231
|
}, []), A = O(() => {
|
|
232
232
|
H(""), v.current && (clearTimeout(v.current), v.current = null);
|
|
@@ -234,14 +234,14 @@ const ze = N(
|
|
|
234
234
|
be(() => () => {
|
|
235
235
|
h.current && clearTimeout(h.current), v.current && clearTimeout(v.current);
|
|
236
236
|
}, []);
|
|
237
|
-
const oe = x ? ":" : ":", C = i ? String(W(r.hours)).padStart(2, "0") : String(r.hours).padStart(2, "0"), q = String(r.minutes).padStart(2, "0"),
|
|
237
|
+
const oe = x ? ":" : ":", C = i ? String(W(r.hours)).padStart(2, "0") : String(r.hours).padStart(2, "0"), q = String(r.minutes).padStart(2, "0"), f = r.hours >= 12, ae = (e) => {
|
|
238
238
|
var g, b, z;
|
|
239
|
-
if (!
|
|
239
|
+
if (!c) {
|
|
240
240
|
if (e.key === "ArrowUp" || e.key === "ArrowDown") {
|
|
241
241
|
e.preventDefault();
|
|
242
242
|
const y = e.key === "ArrowUp" ? 1 : -1, d = 23;
|
|
243
|
-
let
|
|
244
|
-
|
|
243
|
+
let s = r.hours + y;
|
|
244
|
+
s < 0 && (s = d), s > d && (s = 0), o({ ...r, hours: s }), L();
|
|
245
245
|
return;
|
|
246
246
|
}
|
|
247
247
|
if (e.key === "Tab" && !e.shiftKey) {
|
|
@@ -250,30 +250,30 @@ const ze = N(
|
|
|
250
250
|
}
|
|
251
251
|
if (e.key >= "0" && e.key <= "9") {
|
|
252
252
|
e.preventDefault();
|
|
253
|
-
const y =
|
|
253
|
+
const y = ne + e.key;
|
|
254
254
|
M(y), h.current && clearTimeout(h.current);
|
|
255
|
-
const d = parseInt(y, 10),
|
|
255
|
+
const d = parseInt(y, 10), s = i ? 12 : 23;
|
|
256
256
|
if (y.length >= 2) {
|
|
257
|
-
const a = w(d, i ? 1 : 0,
|
|
258
|
-
o({ ...r, hours:
|
|
257
|
+
const a = w(d, i ? 1 : 0, s), l = i ? U(a, f) : a;
|
|
258
|
+
o({ ...r, hours: l }), M(""), (b = D.current) == null || b.focus();
|
|
259
259
|
} else if (d > (i ? 1 : 2)) {
|
|
260
|
-
const a = w(d, i ? 1 : 0,
|
|
261
|
-
o({ ...r, hours:
|
|
260
|
+
const a = w(d, i ? 1 : 0, s), l = i ? U(a, f) : a;
|
|
261
|
+
o({ ...r, hours: l }), M(""), (z = D.current) == null || z.focus();
|
|
262
262
|
} else
|
|
263
263
|
h.current = setTimeout(() => {
|
|
264
|
-
const a = w(d, i ? 1 : 0,
|
|
265
|
-
o({ ...r, hours:
|
|
264
|
+
const a = w(d, i ? 1 : 0, s), l = i ? U(a, f) : a;
|
|
265
|
+
o({ ...r, hours: l }), M("");
|
|
266
266
|
}, 1e3);
|
|
267
267
|
}
|
|
268
268
|
}
|
|
269
269
|
}, ue = (e) => {
|
|
270
270
|
var g, b, z, y;
|
|
271
|
-
if (!
|
|
271
|
+
if (!c) {
|
|
272
272
|
if (e.key === "ArrowUp" || e.key === "ArrowDown") {
|
|
273
273
|
e.preventDefault();
|
|
274
|
-
const d = e.key === "ArrowUp" ?
|
|
275
|
-
let
|
|
276
|
-
|
|
274
|
+
const d = e.key === "ArrowUp" ? p : -p;
|
|
275
|
+
let s = r.minutes + d;
|
|
276
|
+
s < 0 && (s = 60 + s), s >= 60 && (s = s - 60), o({ ...r, minutes: s }), A();
|
|
277
277
|
return;
|
|
278
278
|
}
|
|
279
279
|
if (e.key === "Tab" && !e.shiftKey && i) {
|
|
@@ -288,26 +288,26 @@ const ze = N(
|
|
|
288
288
|
e.preventDefault();
|
|
289
289
|
const d = ie + e.key;
|
|
290
290
|
H(d), v.current && clearTimeout(v.current);
|
|
291
|
-
const
|
|
291
|
+
const s = parseInt(d, 10);
|
|
292
292
|
if (d.length >= 2) {
|
|
293
|
-
const a = w(
|
|
294
|
-
o({ ...r, minutes:
|
|
295
|
-
} else if (
|
|
296
|
-
const a = w(
|
|
297
|
-
o({ ...r, minutes:
|
|
293
|
+
const a = w(s, 0, 59), l = S(a, p);
|
|
294
|
+
o({ ...r, minutes: l }), H(""), i && ((z = I.current) == null || z.focus());
|
|
295
|
+
} else if (s > 5) {
|
|
296
|
+
const a = w(s, 0, 59), l = S(a, p);
|
|
297
|
+
o({ ...r, minutes: l }), H(""), i && ((y = I.current) == null || y.focus());
|
|
298
298
|
} else
|
|
299
299
|
v.current = setTimeout(() => {
|
|
300
|
-
const a = w(
|
|
301
|
-
o({ ...r, minutes:
|
|
300
|
+
const a = w(s, 0, 59), l = S(a, p);
|
|
301
|
+
o({ ...r, minutes: l }), H("");
|
|
302
302
|
}, 1e3);
|
|
303
303
|
}
|
|
304
304
|
}
|
|
305
305
|
}, de = (e) => {
|
|
306
306
|
var g;
|
|
307
|
-
if (!
|
|
307
|
+
if (!c) {
|
|
308
308
|
if (e.key === "ArrowUp" || e.key === "ArrowDown") {
|
|
309
309
|
e.preventDefault();
|
|
310
|
-
const b =
|
|
310
|
+
const b = f ? r.hours - 12 : r.hours + 12;
|
|
311
311
|
o({ ...r, hours: w(b, 0, 23) });
|
|
312
312
|
return;
|
|
313
313
|
}
|
|
@@ -315,13 +315,13 @@ const ze = N(
|
|
|
315
315
|
e.preventDefault(), (g = D.current) == null || g.focus();
|
|
316
316
|
return;
|
|
317
317
|
}
|
|
318
|
-
(e.key === "a" || e.key === "A") && (e.preventDefault(),
|
|
318
|
+
(e.key === "a" || e.key === "A") && (e.preventDefault(), f && o({ ...r, hours: r.hours - 12 })), (e.key === "p" || e.key === "P") && (e.preventDefault(), f || o({ ...r, hours: r.hours + 12 }));
|
|
319
319
|
}
|
|
320
320
|
}, ce = (e) => {
|
|
321
321
|
L();
|
|
322
322
|
}, le = () => {
|
|
323
323
|
A();
|
|
324
|
-
const e = S(r.minutes,
|
|
324
|
+
const e = S(r.minutes, p);
|
|
325
325
|
e !== r.minutes && o({ ...r, minutes: e });
|
|
326
326
|
}, fe = K("inputs.timePicker.hour", "Hour"), me = K("inputs.timePicker.minute", "Minute"), pe = K("inputs.timePicker.period", "Period"), he = K("inputs.timePicker.groupLabel", "Time"), ve = we(
|
|
327
327
|
() => ({
|
|
@@ -346,13 +346,13 @@ const ze = N(
|
|
|
346
346
|
"aria-label": he,
|
|
347
347
|
"aria-describedby": P.describedBy || void 0,
|
|
348
348
|
"aria-invalid": P.invalid || void 0,
|
|
349
|
-
"aria-disabled":
|
|
349
|
+
"aria-disabled": c || void 0,
|
|
350
350
|
"data-component": "time-picker",
|
|
351
351
|
"data-component-id": R,
|
|
352
352
|
className: ze({
|
|
353
353
|
size: T,
|
|
354
354
|
tone: ee,
|
|
355
|
-
isDisabled:
|
|
355
|
+
isDisabled: c ?? !1,
|
|
356
356
|
className: X
|
|
357
357
|
}),
|
|
358
358
|
children: [
|
|
@@ -361,12 +361,13 @@ const ze = N(
|
|
|
361
361
|
{
|
|
362
362
|
ref: $,
|
|
363
363
|
role: "spinbutton",
|
|
364
|
+
"aria-disabled": c || void 0,
|
|
364
365
|
"aria-label": fe,
|
|
365
366
|
"aria-valuemin": i ? 1 : 0,
|
|
366
367
|
"aria-valuemax": i ? 12 : 23,
|
|
367
368
|
"aria-valuenow": i ? W(r.hours) : r.hours,
|
|
368
369
|
"aria-valuetext": C,
|
|
369
|
-
tabIndex:
|
|
370
|
+
tabIndex: c ? -1 : 0,
|
|
370
371
|
inputMode: "numeric",
|
|
371
372
|
onKeyDown: ae,
|
|
372
373
|
onBlur: ce,
|
|
@@ -380,12 +381,13 @@ const ze = N(
|
|
|
380
381
|
{
|
|
381
382
|
ref: D,
|
|
382
383
|
role: "spinbutton",
|
|
384
|
+
"aria-disabled": c || void 0,
|
|
383
385
|
"aria-label": me,
|
|
384
386
|
"aria-valuemin": 0,
|
|
385
387
|
"aria-valuemax": 59,
|
|
386
388
|
"aria-valuenow": r.minutes,
|
|
387
389
|
"aria-valuetext": q,
|
|
388
|
-
tabIndex:
|
|
390
|
+
tabIndex: c ? -1 : 0,
|
|
389
391
|
inputMode: "numeric",
|
|
390
392
|
onKeyDown: ue,
|
|
391
393
|
onBlur: le,
|
|
@@ -398,15 +400,16 @@ const ze = N(
|
|
|
398
400
|
{
|
|
399
401
|
ref: I,
|
|
400
402
|
role: "spinbutton",
|
|
403
|
+
"aria-disabled": c || void 0,
|
|
401
404
|
"aria-label": pe,
|
|
402
405
|
"aria-valuemin": 0,
|
|
403
406
|
"aria-valuemax": 1,
|
|
404
|
-
"aria-valuenow":
|
|
405
|
-
"aria-valuetext":
|
|
406
|
-
tabIndex:
|
|
407
|
+
"aria-valuenow": f ? 1 : 0,
|
|
408
|
+
"aria-valuetext": f ? V.pm : V.am,
|
|
409
|
+
tabIndex: c ? -1 : 0,
|
|
407
410
|
onKeyDown: de,
|
|
408
411
|
className: Ke({ size: T }),
|
|
409
|
-
children:
|
|
412
|
+
children: f ? V.pm : V.am
|
|
410
413
|
}
|
|
411
414
|
) : null
|
|
412
415
|
]
|
|
@@ -419,4 +422,4 @@ export {
|
|
|
419
422
|
Ie as T,
|
|
420
423
|
De as t
|
|
421
424
|
};
|
|
422
|
-
//# sourceMappingURL=time-picker-
|
|
425
|
+
//# sourceMappingURL=time-picker-D0RS391l.js.map
|
|
@@ -3,8 +3,8 @@ import { forwardRef as H, useState as h, useMemo as $, useEffect as j, useRef as
|
|
|
3
3
|
import { c as z } from "./index-D2ZczOXr.js";
|
|
4
4
|
import { useTranslation as M } from "react-i18next";
|
|
5
5
|
import { u as Y } from "./registry-DvAUVLHh.js";
|
|
6
|
-
import { F as C } from "./form-field-
|
|
7
|
-
import { N as B } from "./number-input-
|
|
6
|
+
import { F as C } from "./form-field-D1oqYisL.js";
|
|
7
|
+
import { N as B } from "./number-input-CM1q9zvH.js";
|
|
8
8
|
import { S } from "./select-BW5ecXlX.js";
|
|
9
9
|
import { I as D } from "./insert-result-98J1QEp7.js";
|
|
10
10
|
const L = [
|
|
@@ -334,4 +334,4 @@ export {
|
|
|
334
334
|
ee as b,
|
|
335
335
|
Q as c
|
|
336
336
|
};
|
|
337
|
-
//# sourceMappingURL=unit-converter-
|
|
337
|
+
//# sourceMappingURL=unit-converter-Dsk__pjA.js.map
|
|
@@ -4,7 +4,7 @@ import { c as _ } from "./index-D2ZczOXr.js";
|
|
|
4
4
|
import { useTranslation as j } from "react-i18next";
|
|
5
5
|
import { D as l } from "./dialog-UbKJCi1X.js";
|
|
6
6
|
import { T as z } from "./text-input-CUvCb6ST.js";
|
|
7
|
-
import { B as C } from "./badge-
|
|
7
|
+
import { B as C } from "./badge-CIt-UFEx.js";
|
|
8
8
|
import { u as I } from "./registry-DvAUVLHh.js";
|
|
9
9
|
import { S as L } from "./search-QbWPlY5f.js";
|
|
10
10
|
const R = {
|
|
@@ -190,4 +190,4 @@ export {
|
|
|
190
190
|
B as W,
|
|
191
191
|
R as w
|
|
192
192
|
};
|
|
193
|
-
//# sourceMappingURL=widget-picker-
|
|
193
|
+
//# sourceMappingURL=widget-picker-DqMbjQy_.js.map
|
|
@@ -3,7 +3,7 @@ import { forwardRef as H, useMemo as F, useRef as z, useCallback as q, useState
|
|
|
3
3
|
import { c as j } from "./index-D2ZczOXr.js";
|
|
4
4
|
import { useTranslation as M } from "react-i18next";
|
|
5
5
|
import { C } from "./card-DPmk26CL.js";
|
|
6
|
-
import { B as ye } from "./badge-
|
|
6
|
+
import { B as ye } from "./badge-CIt-UFEx.js";
|
|
7
7
|
import { a as Z } from "./key-value-pair-DGkGlgCF.js";
|
|
8
8
|
import { T as xe } from "./timestamp-BV2lC-wV.js";
|
|
9
9
|
import { I as S } from "./icon-button-9c9Gp41m.js";
|
|
@@ -1353,4 +1353,4 @@ export {
|
|
|
1353
1353
|
ee as r,
|
|
1354
1354
|
L as w
|
|
1355
1355
|
};
|
|
1356
|
-
//# sourceMappingURL=workflow-map-
|
|
1356
|
+
//# sourceMappingURL=workflow-map-BNBeG2zn.js.map
|
package/dist/agent-catalog.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"packageVersion": "1.4.
|
|
3
|
+
"packageVersion": "1.4.13",
|
|
4
4
|
"components": [
|
|
5
5
|
{
|
|
6
6
|
"kind": "component",
|
|
@@ -3209,6 +3209,12 @@
|
|
|
3209
3209
|
"type": "number",
|
|
3210
3210
|
"description": "Zero-indexed page number.",
|
|
3211
3211
|
"descriptionKey": "ui.agent.dataTable.state.currentPage"
|
|
3212
|
+
},
|
|
3213
|
+
{
|
|
3214
|
+
"name": "expandedRowId",
|
|
3215
|
+
"type": "string | null",
|
|
3216
|
+
"description": "Id of the row whose inline detail is open (expandable row), or null.",
|
|
3217
|
+
"descriptionKey": "ui.agent.dataTable.state.expandedRowId"
|
|
3212
3218
|
}
|
|
3213
3219
|
],
|
|
3214
3220
|
"actions": [
|
|
@@ -3401,7 +3407,7 @@
|
|
|
3401
3407
|
},
|
|
3402
3408
|
"item": {
|
|
3403
3409
|
"attr": "row-id",
|
|
3404
|
-
"description": "Native ag-grid row-id attribute on each rendered row. Selection is performed via the curated handle, not by DOM mutation."
|
|
3410
|
+
"description": "Native ag-grid row-id attribute on each rendered record row. When an expandable row is open, one extra full-width row with row-id `<parentId>::detail` is the accordion detail, not a record — its cell carries data-component=\"data-table-expanded-row\" and data-expanded-row-of=\"<parentId>\"; skip it when enumerating rows (isExpandedRowDetailId). Selection is performed via the curated handle, not by DOM mutation."
|
|
3405
3411
|
}
|
|
3406
3412
|
}
|
|
3407
3413
|
},
|
|
@@ -12188,6 +12194,25 @@
|
|
|
12188
12194
|
}
|
|
12189
12195
|
}
|
|
12190
12196
|
},
|
|
12197
|
+
{
|
|
12198
|
+
"kind": "component",
|
|
12199
|
+
"id": "signature-status-chip",
|
|
12200
|
+
"capabilities": [],
|
|
12201
|
+
"state": [],
|
|
12202
|
+
"actions": [],
|
|
12203
|
+
"domHooks": {
|
|
12204
|
+
"root": {
|
|
12205
|
+
"attr": "data-component",
|
|
12206
|
+
"value": "signature-status-chip",
|
|
12207
|
+
"description": "Marks the element as a kit SignatureStatusChip. The root also emits data-status (signed | partial | unsigned | notRequired) — the derived state only, never the document."
|
|
12208
|
+
},
|
|
12209
|
+
"instanceId": {
|
|
12210
|
+
"attr": "data-component-id",
|
|
12211
|
+
"sourceProp": "id",
|
|
12212
|
+
"description": "Sourced from the id prop — the consumer-supplied document identifier."
|
|
12213
|
+
}
|
|
12214
|
+
}
|
|
12215
|
+
},
|
|
12191
12216
|
{
|
|
12192
12217
|
"kind": "component",
|
|
12193
12218
|
"id": "skeleton",
|
|
@@ -15093,10 +15118,6 @@
|
|
|
15093
15118
|
"component": "collapsible",
|
|
15094
15119
|
"as": "intakeGaps"
|
|
15095
15120
|
},
|
|
15096
|
-
{
|
|
15097
|
-
"component": "collapsible",
|
|
15098
|
-
"as": "comparePanel"
|
|
15099
|
-
},
|
|
15100
15121
|
{
|
|
15101
15122
|
"component": "sparkline",
|
|
15102
15123
|
"as": "trend",
|
|
@@ -15117,15 +15138,10 @@
|
|
|
15117
15138
|
"entity": "parameter"
|
|
15118
15139
|
},
|
|
15119
15140
|
{
|
|
15120
|
-
"component": "
|
|
15141
|
+
"component": "dropdown-menu",
|
|
15121
15142
|
"as": "shownVisits",
|
|
15122
15143
|
"entity": "visit"
|
|
15123
15144
|
},
|
|
15124
|
-
{
|
|
15125
|
-
"component": "multi-select",
|
|
15126
|
-
"as": "comparedVisits",
|
|
15127
|
-
"entity": "visit"
|
|
15128
|
-
},
|
|
15129
15145
|
{
|
|
15130
15146
|
"component": "dropdown-menu",
|
|
15131
15147
|
"as": "exportMenu"
|
|
@@ -15328,13 +15344,14 @@
|
|
|
15328
15344
|
{
|
|
15329
15345
|
"name": "window_visits",
|
|
15330
15346
|
"safety": "read",
|
|
15331
|
-
"description": "Choose which visits the evolution grid shows as columns, by ticking them in the
|
|
15347
|
+
"description": "Choose which visits the evolution grid shows as columns, by ticking them in the Visits menu — one button that opens a list of checkbox items, with a Select all row first. Every visit is ticked on arrival; un-ticking one removes its column, the menu stays open while ticking, and the last remaining visit cannot be un-ticked. The change between two adjacent shown columns is always drawn. The button itself reads how many visits are shown out of how many exist. Clinician-only; view state only.",
|
|
15332
15348
|
"descriptionKey": "ui.agent.anamnesis.workflows.windowVisits",
|
|
15333
15349
|
"uiActions": [
|
|
15334
|
-
"
|
|
15350
|
+
"dropdown-menu.open",
|
|
15351
|
+
"dropdown-menu.close"
|
|
15335
15352
|
],
|
|
15336
15353
|
"stateReads": [
|
|
15337
|
-
"
|
|
15354
|
+
"dropdown-menu.isOpen"
|
|
15338
15355
|
],
|
|
15339
15356
|
"apiActions": []
|
|
15340
15357
|
},
|
|
@@ -15346,22 +15363,6 @@
|
|
|
15346
15363
|
"uiActions": [],
|
|
15347
15364
|
"apiActions": []
|
|
15348
15365
|
},
|
|
15349
|
-
{
|
|
15350
|
-
"name": "compare_visits",
|
|
15351
|
-
"safety": "read",
|
|
15352
|
-
"description": "Open the compare panel below the evolution grid and tick two or more visits (first and latest by default) to read every difference — measurements, pathologies, therapy and notes — in one table shaped like the grid: one column per compared visit, the trend sparkline, and a Change column carrying the net first-to-last change. Compared visits are always read in record order, and the selection cannot drop below two. The panel carries its own exit in its header, since the toggle that opened it is a full grid above. Clinician-only; no mutation, no export.",
|
|
15353
|
-
"descriptionKey": "ui.agent.anamnesis.workflows.compareVisits",
|
|
15354
|
-
"uiActions": [
|
|
15355
|
-
"collapsible.toggle",
|
|
15356
|
-
"collapsible.close",
|
|
15357
|
-
"multi-select.set_selection"
|
|
15358
|
-
],
|
|
15359
|
-
"stateReads": [
|
|
15360
|
-
"collapsible.isOpen",
|
|
15361
|
-
"multi-select.selection"
|
|
15362
|
-
],
|
|
15363
|
-
"apiActions": []
|
|
15364
|
-
},
|
|
15365
15366
|
{
|
|
15366
15367
|
"name": "choose_export_audience",
|
|
15367
15368
|
"safety": "read",
|
|
@@ -15379,15 +15380,14 @@
|
|
|
15379
15380
|
{
|
|
15380
15381
|
"name": "export_tab",
|
|
15381
15382
|
"safety": "phi",
|
|
15382
|
-
"description": "Produce a file of the view that is currently selected — Summary, Compile or Evolution — from the one Export & share control. The same document is written as a PDF, an Excel workbook or a CSV, and Print sends that same document to the printer rather than the screen, so the app shell never appears on the page. On Evolution the file follows the visit columns the grid is DRAWING
|
|
15383
|
+
"description": "Produce a file of the view that is currently selected — Summary, Compile or Evolution — from the one Export & share control. The same document is written as a PDF, an Excel workbook or a CSV, and Print sends that same document to the printer rather than the screen, so the app shell never appears on the page. On Evolution the file follows the visit columns the grid is DRAWING unless \"include every visit\" is ticked; the same Evolution file is also offered from the trend tab of questionnaire mode and from the read-only record, at the end of the trend toolbar. The audience rides in the filename, so the two copies stay apart outside the app. Every table resolves through the patient-copy boundary first, so a patient-audience file is missing what that audience may not receive. Produces a patient-identifiable document.",
|
|
15383
15384
|
"descriptionKey": "ui.agent.anamnesis.workflows.exportTab",
|
|
15384
15385
|
"uiActions": [
|
|
15385
15386
|
"dropdown-menu.open",
|
|
15386
15387
|
"dropdown-menu.close"
|
|
15387
15388
|
],
|
|
15388
15389
|
"stateReads": [
|
|
15389
|
-
"dropdown-menu.isOpen"
|
|
15390
|
-
"multi-select.selection"
|
|
15390
|
+
"dropdown-menu.isOpen"
|
|
15391
15391
|
],
|
|
15392
15392
|
"apiActions": [
|
|
15393
15393
|
"anamnesis.exportTab"
|
package/dist/agent-i18n/en.json
CHANGED
|
@@ -378,7 +378,8 @@
|
|
|
378
378
|
"selection": "Row ids of currently-selected rows.",
|
|
379
379
|
"filter": "Current ag-grid filter model, keyed by column id.",
|
|
380
380
|
"sort": "Active sort, in priority order.",
|
|
381
|
-
"currentPage": "Zero-indexed page number."
|
|
381
|
+
"currentPage": "Zero-indexed page number.",
|
|
382
|
+
"expandedRowId": "Id of the row whose inline detail is open (expandable row), or null."
|
|
382
383
|
},
|
|
383
384
|
"actions": {
|
|
384
385
|
"selectRows": "Replace the current selection with the given row ids.",
|
|
@@ -1520,11 +1521,10 @@
|
|
|
1520
1521
|
"resolveMissingAnswers": "Read how many required questionnaire answers are still missing, jump to the first of them — which crosses from the read-only Summary to the Compile tab and opens the unanswered-questions block that holds it — and record the answer there. Writes patient clinical history.",
|
|
1521
1522
|
"readVisitNote": "Open the note recorded at one visit from the evolution grid's visit-column header and read the clinical note and the nutritional proposal. Where the host supplies a side panel (`onOpenNote`), the trigger hands that visit's id out and the host's panel navigates to it — no popover opens, and the note lives in exactly one place. Where it does not, the same trigger opens the note in place. Clinician-only; no mutation.",
|
|
1522
1523
|
"openRecordSection": "Open or fold one section of the compile form. Sections filled at every visit start open — visit details, any unanswered required questionnaire answers, anthropometrics, pathologies, therapy, the proposal; the occasional ones (oncological history, blood tests, fasting cycles, annual programme) start folded and state in their header how many entries they already hold. Clinician-only; view state only.",
|
|
1523
|
-
"windowVisits": "Choose which visits the evolution grid shows as columns, by ticking them in the
|
|
1524
|
+
"windowVisits": "Choose which visits the evolution grid shows as columns, by ticking them in the Visits menu — one button that opens a list of checkbox items, with a Select all row first. Every visit is ticked on arrival; un-ticking one removes its column, the menu stays open while ticking, and the last remaining visit cannot be un-ticked. The change between two adjacent shown columns is always drawn. The button itself reads how many visits are shown out of how many exist. Clinician-only; view state only.",
|
|
1524
1525
|
"annotateTrend": "Drop a dated event's reference line across every trend sparkline in the evolution grid, by pressing its chip in the event bar above the grid. Events are things that happened to the patient on a date — a therapy or diet starting, a fasting-mimicking cycle, surgery, a change in daily life — and need not have happened at a visit or been recorded by this practice. Each chip carries its category (and, for an event this practice did not record, its source) as an accessible description rather than a hover tooltip. Nothing is drawn on arrival; pressing the same chip again removes the line. Where the host supplies a side panel, turning a chip on also navigates that panel to the event; turning it off does not. Clinician-only; view state only.",
|
|
1525
|
-
"compareVisits": "Open the compare panel below the evolution grid and tick two or more visits (first and latest by default) to read every difference — measurements, pathologies, therapy and notes — in one table shaped like the grid: one column per compared visit, the trend sparkline, and a Change column carrying the net first-to-last change. Compared visits are always read in record order, and the selection cannot drop below two. The panel carries its own exit in its header, since the toggle that opened it is a full grid above. Clinician-only; no mutation, no export.",
|
|
1526
1526
|
"chooseExportAudience": "Choose who a file or a shared copy is for — the practice, or the patient — from the single Export & share control beside the view switch. The choice governs every route below it (share, PDF, print, Excel, CSV), it sticks across tabs and later exports, and a non-default choice is badged on the closed control. The menu names what the copy carries in BOTH states, and the exclusions are PER VIEW: on Compile a patient copy drops blood-test values, diagnostic codes, oncological history and the clinician's own notes; on Evolution it drops the blood-test rows; on Summary it drops nothing. Nothing is filed by making the choice. View state only.",
|
|
1527
|
-
"exportTab": "Produce a file of the view that is currently selected — Summary, Compile or Evolution — from the one Export & share control. The same document is written as a PDF, an Excel workbook or a CSV, and Print sends that same document to the printer rather than the screen, so the app shell never appears on the page. On Evolution the file follows the visit columns the grid is DRAWING
|
|
1527
|
+
"exportTab": "Produce a file of the view that is currently selected — Summary, Compile or Evolution — from the one Export & share control. The same document is written as a PDF, an Excel workbook or a CSV, and Print sends that same document to the printer rather than the screen, so the app shell never appears on the page. On Evolution the file follows the visit columns the grid is DRAWING unless \"include every visit\" is ticked; the same Evolution file is also offered from the trend tab of questionnaire mode and from the read-only record, at the end of the trend toolbar. The audience rides in the filename, so the two copies stay apart outside the app. Every table resolves through the patient-copy boundary first, so a patient-audience file is missing what that audience may not receive. Produces a patient-identifiable document.",
|
|
1528
1528
|
"previewShare": "Open the share preview for the selected view, choose the recipient, and read what that recipient's copy would hold and what it would leave out. THIS SENDS NOTHING: the dialog is a preview of the shape of a share. Real delivery — a signed expiring link, the consent gate, and the record of who received what over which channel — is not part of this surface. Confirming only sets the recipient the next export uses. No mutation, no transmission.",
|
|
1529
1529
|
"reviewRecord": "Review a completed anamnesis in the care plan: expand the intake answers and read the record. No mutation."
|
|
1530
1530
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as e } from "../../_chunks/agenda-card-
|
|
1
|
+
import { A as e } from "../../_chunks/agenda-card-BQDs2ZMp.js";
|
|
2
2
|
import { a as d } from "../../_chunks/agenda-card.agent-Cb5tuEh3.js";
|
|
3
3
|
import { i as g } from "../../_chunks/is-safe-url-DkETxeHz.js";
|
|
4
4
|
export {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { A as p } from "../../_chunks/appointment-card-
|
|
2
|
-
import { A as e, a as o, b as r } from "../../_chunks/appointment-tray-
|
|
1
|
+
import { A as p } from "../../_chunks/appointment-card-kcUC7vWR.js";
|
|
2
|
+
import { A as e, a as o, b as r } from "../../_chunks/appointment-tray-BPY5rATW.js";
|
|
3
3
|
import { i } from "../../_chunks/is-safe-url-DkETxeHz.js";
|
|
4
4
|
export {
|
|
5
5
|
p as AppointmentCard,
|
|
@@ -16,6 +16,7 @@ export interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement>, Varia
|
|
|
16
16
|
* For icon-only badges, provides the accessible name. For count (numeric)
|
|
17
17
|
* badges, overrides the default "{count} notifications" screen-reader label
|
|
18
18
|
* so a non-notification count reads correctly (e.g. `aria-label="4 treatments"`).
|
|
19
|
+
* For labelled badges it is applied to the root — pair it with a `role`.
|
|
19
20
|
*/
|
|
20
21
|
'aria-label'?: string;
|
|
21
22
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as m } from "../../_chunks/bmi-calculator-
|
|
1
|
+
import { B as m } from "../../_chunks/bmi-calculator-DC5SaqXT.js";
|
|
2
2
|
import { b as e, a as t, c as r, d as T, e as c, f as i, i as b, k as n, l as f } from "../../_chunks/bmi-BxD-tFzU.js";
|
|
3
3
|
export {
|
|
4
4
|
m as BmiCalculator,
|