@metaboliccode-dev/widget 0.2.0 → 0.2.2-rc.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.
@@ -1,3 +1,3 @@
1
- export declare const METABOLIC_REPORT_PAGES_API_BASE_URL: string | undefined;
1
+ export declare const METABOLIC_REPORT_PAGES_API_BASE_URL = "https://mc-api-staging-api.politebay-458989bb.canadacentral.azurecontainerapps.io";
2
2
  export declare const METABOLIC_DASHBOARD_STUB_API_KEY: string | undefined;
3
3
  export declare function isMetabolicDashboardApiKeyAccepted(apiKey: string | undefined): boolean;
package/dist/ag-charts.js CHANGED
@@ -1,20 +1,20 @@
1
- import { L as s, m as l, a as o, b as a, c as u } from "./vendor-ag-charts-BxXxUmfV.js";
2
- let t = !1;
3
- l.registerModules([o, a, u]);
4
- function i(e) {
5
- if (t) return;
6
- let r = e == null ? void 0 : e.trim();
7
- if (!r)
1
+ import { L as t, m as r, a as i, b as a, c as n } from "./vendor-ag-charts-BxXxUmfV.js";
2
+ let o = !1;
3
+ r.registerModules([i, a, n]);
4
+ function s(_) {
5
+ if (o) return;
6
+ let e = _ == null ? void 0 : _.trim();
7
+ if (!e)
8
8
  try {
9
- r = "".trim();
9
+ e = "Using_this_{AG_Charts}_Enterprise_key_{AG-125036}_in_excess_of_the_licence_granted_is_not_permitted___Please_report_misuse_to_legal@ag-grid.com___For_help_with_changing_this_key_please_contact_info@ag-grid.com___{Metabolic_Code}_is_granted_a_{Single_Application}_Developer_License_for_the_application_{Metabolic_Code}_only_for_{1}_Front-End_JavaScript_developer___All_Front-End_JavaScript_developers_working_on_{Metabolic_Code}_need_to_be_licensed___{Metabolic_Code}_has_been_granted_a_Deployment_License_Add-on_for_{1}_Production_Environment___This_key_works_with_{AG_Charts}_Enterprise_versions_released_before_{31_March_2027}____[v3]_[02]_MTgwNjQ0NzYwMDAwMA==4e5dbf88087527cd3b1cf09b0557ec38".trim();
10
10
  } catch {
11
11
  }
12
- r && (s.setLicenseKey(r), t = !0);
12
+ e && (t.setLicenseKey(e), o = !0);
13
13
  }
14
- function m(e) {
15
- i(e);
14
+ function d(_) {
15
+ s(_);
16
16
  }
17
17
  export {
18
- i as ensureAgChartsModules,
19
- m as useAgCharts
18
+ s as ensureAgChartsModules,
19
+ d as useAgCharts
20
20
  };
package/dist/index.js CHANGED
@@ -1007,7 +1007,7 @@ function T({ title: e, subtitle: r, className: n = "" }) {
1007
1007
  r ? /* @__PURE__ */ t("p", { className: "max-w-3xl text-sm leading-relaxed text-[color:var(--mb-color-text-muted)] m-0 p-0", children: r }) : null
1008
1008
  ] });
1009
1009
  }
1010
- function pi({ content: e }) {
1010
+ function xi({ content: e }) {
1011
1011
  const { pageHeader: r, cards: n } = e, a = n ?? [];
1012
1012
  return /* @__PURE__ */ i("div", { className: "mx-auto w-full min-w-0 max-w-6xl space-y-6", children: [
1013
1013
  /* @__PURE__ */ t(T, { title: r.title, subtitle: r.subtitle }),
@@ -2332,7 +2332,7 @@ function En({
2332
2332
  /* @__PURE__ */ t("div", { className: "space-y-2", children: e.rows.map((n) => /* @__PURE__ */ t(Pt, { row: n }, n.name)) })
2333
2333
  ] });
2334
2334
  }
2335
- function xi({ content: e }) {
2335
+ function vi({ content: e }) {
2336
2336
  const {
2337
2337
  pageHeader: r,
2338
2338
  welcome: n,
@@ -2486,7 +2486,7 @@ function Yn({
2486
2486
  ] })
2487
2487
  ] });
2488
2488
  }
2489
- function vi({ content: e }) {
2489
+ function yi({ content: e }) {
2490
2490
  const { pageHeader: r, sections: n } = e, a = n ?? [];
2491
2491
  return /* @__PURE__ */ i("div", { className: "mx-auto w-full min-w-0 max-w-6xl space-y-6", children: [
2492
2492
  /* @__PURE__ */ t(T, { title: r.title, subtitle: r.subtitle }),
@@ -2547,7 +2547,7 @@ const Xn = {
2547
2547
  heading: "",
2548
2548
  paragraphs: []
2549
2549
  };
2550
- function yi({ content: e }) {
2550
+ function wi({ content: e }) {
2551
2551
  const { pageHeader: r, intro: n, groups: a } = e, o = a ?? [], l = n ?? Xn;
2552
2552
  return /* @__PURE__ */ i("div", { className: "mx-auto w-full min-w-0 max-w-6xl space-y-6", children: [
2553
2553
  /* @__PURE__ */ t(T, { title: r.title, subtitle: r.subtitle }),
@@ -2604,7 +2604,7 @@ function Vn({
2604
2604
  ] }) }, r))
2605
2605
  ] });
2606
2606
  }
2607
- function wi({
2607
+ function Ci({
2608
2608
  content: e
2609
2609
  }) {
2610
2610
  const { pageHeader: r, sections: n } = e, a = n ?? [];
@@ -2704,7 +2704,7 @@ function Qn(e) {
2704
2704
  r.push(e.slice(n, n + $e));
2705
2705
  return r;
2706
2706
  }
2707
- function Ci({ content: e }) {
2707
+ function Ni({ content: e }) {
2708
2708
  var v, g, x;
2709
2709
  const r = e ?? $, { pageHeader: n, intro: a } = r, o = r.labSectionTitle, l = (v = r.labMetrics) != null && v.length ? r.labMetrics : $.labMetrics, s = r.symptomsSectionTitle, c = (g = r.symptoms) != null && g.length ? r.symptoms : $.symptoms, d = r.productsSectionTitle, m = (x = r.products) != null && x.length ? r.products : $.products, u = a ?? $.intro, f = l ?? [], p = c ?? [], h = m ?? [];
2710
2710
  return /* @__PURE__ */ i("div", { className: "mx-auto w-full min-w-0 max-w-6xl space-y-6", children: [
@@ -2885,7 +2885,7 @@ const et = {
2885
2885
  ]
2886
2886
  }
2887
2887
  };
2888
- function Ni({ content: e }) {
2888
+ function Ai({ content: e }) {
2889
2889
  var s;
2890
2890
  const r = e ?? et, { pageHeader: n, practitionerNotes: a } = r, l = ((s = r.cards) != null && s.length ? r.cards : et.cards) ?? [];
2891
2891
  return /* @__PURE__ */ i("div", { className: "mx-auto w-full min-w-0 max-w-6xl space-y-6", children: [
@@ -2926,7 +2926,7 @@ function Jn({
2926
2926
  ] })
2927
2927
  ] });
2928
2928
  }
2929
- function Ai({ content: e }) {
2929
+ function Li({ content: e }) {
2930
2930
  const { pageHeader: r, triadCards: n } = e, a = n ?? [];
2931
2931
  return /* @__PURE__ */ i("div", { className: "mx-auto w-full min-w-0 max-w-6xl space-y-6", children: [
2932
2932
  /* @__PURE__ */ t(T, { title: r.title, subtitle: r.subtitle }),
@@ -2958,7 +2958,7 @@ function $n({
2958
2958
  ] }, r)) })
2959
2959
  ] });
2960
2960
  }
2961
- function Li({ content: e }) {
2961
+ function Pi({ content: e }) {
2962
2962
  const { pageHeader: r, indicators: n } = e, a = n ?? [];
2963
2963
  return /* @__PURE__ */ i("div", { className: "mx-auto w-full min-w-0 max-w-6xl space-y-6", children: [
2964
2964
  /* @__PURE__ */ t(T, { title: r.title, subtitle: r.subtitle }),
@@ -3048,7 +3048,7 @@ function la(e) {
3048
3048
  if (r)
3049
3049
  return ia(r) ?? void 0;
3050
3050
  }
3051
- function Pi(e, r) {
3051
+ function Ti(e, r) {
3052
3052
  const n = encodeURIComponent(oa(r)), a = e.includes("?") ? "&" : "?";
3053
3053
  return `${e}${a}${Mt}=${n}`;
3054
3054
  }
@@ -3070,7 +3070,7 @@ function da(e) {
3070
3070
  patientFullName: tt(e, ca)
3071
3071
  };
3072
3072
  }
3073
- function Ti(e, r) {
3073
+ function Mi(e, r) {
3074
3074
  const n = new URLSearchParams();
3075
3075
  r.patientId && n.set("patientId", r.patientId), r.patientFullName && n.set("patientFullName", r.patientFullName);
3076
3076
  const a = n.toString();
@@ -3078,13 +3078,13 @@ function Ti(e, r) {
3078
3078
  const o = e.includes("?") ? "&" : "?";
3079
3079
  return `${e}${o}${a}`;
3080
3080
  }
3081
- function Mi() {
3081
+ function Hi() {
3082
3082
  window.dispatchEvent(new CustomEvent("metabolic:logout")), window.parent !== window && window.parent.postMessage({ type: "metabolic:logout" }, "*");
3083
3083
  }
3084
3084
  function ma(e, r) {
3085
3085
  return r.length === 0 ? !1 : r.some((n) => n === e);
3086
3086
  }
3087
- function Hi(e, r, n) {
3087
+ function ji(e, r, n) {
3088
3088
  var a;
3089
3089
  (a = e.contentWindow) == null || a.postMessage(
3090
3090
  {
@@ -3179,7 +3179,7 @@ function ha() {
3179
3179
  }
3180
3180
  );
3181
3181
  }
3182
- function ji() {
3182
+ function Bi() {
3183
3183
  return /* @__PURE__ */ i(
3184
3184
  "svg",
3185
3185
  {
@@ -3434,7 +3434,7 @@ const fe = [
3434
3434
  createHttpFetcher: (e, r) => (n) => e(n, async () => {
3435
3435
  const [a, { mapDashboardPageDtoToTabContent: o }] = await Promise.all([
3436
3436
  F("dashboard", r(n)),
3437
- Promise.resolve().then(() => bo)
3437
+ Promise.resolve().then(() => ho)
3438
3438
  ]);
3439
3439
  return o(a);
3440
3440
  })
@@ -3452,7 +3452,7 @@ const fe = [
3452
3452
  createHttpFetcher: (e, r) => (n) => e(n, async () => {
3453
3453
  const [a, { mapTotalPredictiveIndexDtoToTabContent: o }] = await Promise.all([
3454
3454
  F("total-predictive-index", r(n)),
3455
- Promise.resolve().then(() => To)
3455
+ Promise.resolve().then(() => Mo)
3456
3456
  ]);
3457
3457
  return o(a);
3458
3458
  })
@@ -3470,7 +3470,7 @@ const fe = [
3470
3470
  createHttpFetcher: (e, r) => (n) => e(n, async () => {
3471
3471
  const [a, { mapWellnessIndicatorsDtoToTabContent: o }] = await Promise.all([
3472
3472
  F("wellness-indicators", r(n)),
3473
- Promise.resolve().then(() => Ho)
3473
+ Promise.resolve().then(() => jo)
3474
3474
  ]);
3475
3475
  return o(a);
3476
3476
  })
@@ -3488,7 +3488,7 @@ const fe = [
3488
3488
  createHttpFetcher: (e, r) => (n) => e(n, async () => {
3489
3489
  const [a, { mapQuestionnaireAnalysisDtoToTabContent: o }] = await Promise.all([
3490
3490
  F("questionnaire-analysis", r(n)),
3491
- Promise.resolve().then(() => wo)
3491
+ Promise.resolve().then(() => Co)
3492
3492
  ]);
3493
3493
  return o(a);
3494
3494
  })
@@ -3506,7 +3506,7 @@ const fe = [
3506
3506
  createHttpFetcher: (e, r) => (n) => e(n, async () => {
3507
3507
  const [a, { mapSupplementScheduleDtoToTabContent: o }] = await Promise.all([
3508
3508
  F("supplement-schedule", r(n)),
3509
- Promise.resolve().then(() => Lo)
3509
+ Promise.resolve().then(() => Po)
3510
3510
  ]);
3511
3511
  return o(a);
3512
3512
  })
@@ -3524,7 +3524,7 @@ const fe = [
3524
3524
  createHttpFetcher: (e, r) => (n) => e(n, async () => {
3525
3525
  const [a, { mapLabResultsDtoToTabContent: o }] = await Promise.all([
3526
3526
  F("lab-results", r(n)),
3527
- Promise.resolve().then(() => vo)
3527
+ Promise.resolve().then(() => yo)
3528
3528
  ]);
3529
3529
  return o(a);
3530
3530
  })
@@ -3542,7 +3542,7 @@ const fe = [
3542
3542
  createHttpFetcher: (e, r) => (n) => e(n, async () => {
3543
3543
  const [a, { mapSuggestedProductsDtoToTabContent: o }] = await Promise.all([
3544
3544
  F("suggested-products", r(n)),
3545
- Promise.resolve().then(() => No)
3545
+ Promise.resolve().then(() => Ao)
3546
3546
  ]);
3547
3547
  return o(a);
3548
3548
  })
@@ -3560,7 +3560,7 @@ const fe = [
3560
3560
  createHttpFetcher: (e, r) => (n) => e(n, async () => {
3561
3561
  const [a, { mapLabAnalysisDtoToTabContent: o }] = await Promise.all([
3562
3562
  F("lab-analysis", r(n)),
3563
- Promise.resolve().then(() => fo)
3563
+ Promise.resolve().then(() => go)
3564
3564
  ]);
3565
3565
  return o(a);
3566
3566
  })
@@ -3578,7 +3578,7 @@ const fe = [
3578
3578
  createHttpFetcher: (e, r) => (n) => e(n, async () => {
3579
3579
  const [a, { mapAlertLabSummaryDtoToTabContent: o }] = await Promise.all([
3580
3580
  F("alert-lab-summary", r(n)),
3581
- Promise.resolve().then(() => io)
3581
+ Promise.resolve().then(() => lo)
3582
3582
  ]);
3583
3583
  return o(a);
3584
3584
  })
@@ -3714,7 +3714,7 @@ function Wa(e) {
3714
3714
  const r = (e ?? "").trim();
3715
3715
  return r ? ((n = r[0]) == null ? void 0 : n.toUpperCase()) ?? "?" : "?";
3716
3716
  }
3717
- function Bi({ userProfile: e }) {
3717
+ function Si({ userProfile: e }) {
3718
3718
  return !e || Et(e) ? null : /* @__PURE__ */ t("div", { className: "mt-2 flex shrink-0 flex-col gap-2 border-t border-[color:var(--mb-color-sidebar-border)] pt-2 lg:mt-4 lg:pt-4", children: /* @__PURE__ */ i("div", { className: "flex w-full min-w-0 flex-col items-center gap-2 lg:flex-row lg:items-center lg:gap-3 lg:justify-start", children: [
3719
3719
  /* @__PURE__ */ t("div", { className: "relative size-10 shrink-0 overflow-hidden rounded-[20px] bg-[color:var(--mb-color-nav-hover)]", children: e.avatarSrc ? /* @__PURE__ */ t("img", { src: e.avatarSrc, alt: "", className: "size-full object-cover" }) : /* @__PURE__ */ t("span", { className: "flex size-full items-center justify-center text-sm font-medium text-[color:var(--mb-color-text)]", children: Wa(e.displayName) }) }),
3720
3720
  /* @__PURE__ */ i("div", { className: "flex min-w-0 max-w-full flex-col items-center gap-0.5 text-center lg:items-start lg:text-left", children: [
@@ -3737,21 +3737,21 @@ function Bi({ userProfile: e }) {
3737
3737
  ] })
3738
3738
  ] }) });
3739
3739
  }
3740
- const Si = void 0, Ua = void 0;
3741
- function Qa(e) {
3742
- return e === Ua;
3740
+ const Ua = "https://mc-api-staging-api.politebay-458989bb.canadacentral.azurecontainerapps.io", Qa = void 0;
3741
+ function Ka(e) {
3742
+ return e === Qa;
3743
3743
  }
3744
3744
  function Yt(e) {
3745
3745
  return e.replace(/\/+$/, "");
3746
3746
  }
3747
- function Ka() {
3748
- return Yt("");
3749
- }
3750
3747
  function qa() {
3751
- return { baseUrl: Ka() };
3748
+ return Yt(Ua);
3749
+ }
3750
+ function Ja() {
3751
+ return { baseUrl: qa() };
3752
3752
  }
3753
3753
  function Gt(e) {
3754
- const r = qa();
3754
+ const r = Ja();
3755
3755
  if (!e) return r;
3756
3756
  const n = {
3757
3757
  ...r,
@@ -3759,7 +3759,7 @@ function Gt(e) {
3759
3759
  };
3760
3760
  return Object.hasOwn(e, "baseUrl") && (n.baseUrl = Yt(e.baseUrl == null ? "" : String(e.baseUrl))), n;
3761
3761
  }
3762
- function Ja(e, r) {
3762
+ function _a(e, r) {
3763
3763
  return new Promise((n, a) => {
3764
3764
  if (r.aborted) {
3765
3765
  a(new DOMException("Aborted", "AbortError"));
@@ -3773,8 +3773,8 @@ function Ja(e, r) {
3773
3773
  r.addEventListener("abort", o, { once: !0 });
3774
3774
  });
3775
3775
  }
3776
- async function _a(e, r, n) {
3777
- return e != null && e > 0 && await Ja(e, r), n();
3776
+ async function $a(e, r, n) {
3777
+ return e != null && e > 0 && await _a(e, r), n();
3778
3778
  }
3779
3779
  function Xt(e) {
3780
3780
  const {
@@ -3792,7 +3792,7 @@ function Xt(e) {
3792
3792
  const h = new Headers(a ?? void 0);
3793
3793
  return o && h.set("X-Api-Key", o), l && h.set("X-User-Id", l), h;
3794
3794
  })();
3795
- return Xa((h, v) => _a(c, h, async () => {
3795
+ return Xa((h, v) => $a(c, h, async () => {
3796
3796
  if (d)
3797
3797
  throw new Error(m);
3798
3798
  return v();
@@ -3807,7 +3807,7 @@ function Xt(e) {
3807
3807
  const nt = [
3808
3808
  { fill: "rgb(225 203 127 / 0.35)", stroke: "#C4A94A" },
3809
3809
  { fill: "rgb(134 205 149 / 0.35)", stroke: "#5BA86C" }
3810
- ], $a = [
3810
+ ], eo = [
3811
3811
  "The Metabolic Triad organizes your physiology into three lenses: energy production, resiliency, and long-term harmony. Together they describe how well your body converts fuel, repairs tissue, and maintains stable signaling.",
3812
3812
  "The 5 Waves of Harmonic Health is a simple mental model: rhythm, nourishment, movement, recovery, and connection. Each wave reinforces the next, so improvements tend to cascade rather than stay isolated.",
3813
3813
  "Use the triad cards as a map. When one corner drifts, you can often trace ripple effects into sleep, stress, digestion, or training tolerance."
@@ -3858,18 +3858,18 @@ const nt = [
3858
3858
  "This triad reflects the balance of sex hormones that influence energy, mood, lean mass, and reproductive health.",
3859
3859
  "When these markers drift out of range, you may notice fatigue, low drive, mood shifts, or difficulty recovering from stress or training."
3860
3860
  ]
3861
- }, eo = [
3861
+ }, to = [
3862
3862
  ["morning", "Morning (AM)"],
3863
3863
  ["noon", "Noon"],
3864
3864
  ["afternoon", "Afternoon"],
3865
3865
  ["dinner", "Dinner (PM)"],
3866
3866
  ["bedtime", "Bedtime"]
3867
3867
  ];
3868
- function to(e) {
3868
+ function ro(e) {
3869
3869
  const r = e.trim().split(/\s+/).filter(Boolean);
3870
3870
  return r.length === 0 ? "?" : r.length === 1 ? r[0].slice(0, 2).toUpperCase() : `${r[0][0] ?? ""}${r[1][0] ?? ""}`.toUpperCase();
3871
3871
  }
3872
- function ro(e) {
3872
+ function no(e) {
3873
3873
  return e ? e.charAt(0).toUpperCase() + e.slice(1).toLowerCase() : "—";
3874
3874
  }
3875
3875
  function be(e, r) {
@@ -3885,7 +3885,7 @@ function Zt(e) {
3885
3885
  const r = (e ?? "low").toLowerCase();
3886
3886
  return r === "high" ? "high" : r === "med" || r === "moderate" ? "moderate" : "low";
3887
3887
  }
3888
- function no(e) {
3888
+ function ao(e) {
3889
3889
  switch (e.toLowerCase()) {
3890
3890
  case "hi":
3891
3891
  case "high":
@@ -3902,7 +3902,7 @@ function no(e) {
3902
3902
  return "—";
3903
3903
  }
3904
3904
  }
3905
- function ao(e) {
3905
+ function oo(e) {
3906
3906
  switch (e.toLowerCase()) {
3907
3907
  case "hi":
3908
3908
  return "Above optimal range";
@@ -3918,10 +3918,10 @@ function ao(e) {
3918
3918
  return e;
3919
3919
  }
3920
3920
  }
3921
- function oo(e) {
3921
+ function io(e) {
3922
3922
  const r = e.alerts.map((a) => ({
3923
3923
  metricTitle: a.name,
3924
- statusText: ao(a.interpretation),
3924
+ statusText: oo(a.interpretation),
3925
3925
  indicatorPercent: a.indicator_percent,
3926
3926
  openingParagraph: `Current value: ${re(a.value, a.unit)}. Reference range: ${be(a.normal_range, a.unit)}.`,
3927
3927
  referenceLine: null,
@@ -3951,17 +3951,17 @@ function oo(e) {
3951
3951
  cards: r
3952
3952
  };
3953
3953
  }
3954
- const io = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3954
+ const lo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3955
3955
  __proto__: null,
3956
- mapAlertLabSummaryDtoToTabContent: oo
3956
+ mapAlertLabSummaryDtoToTabContent: io
3957
3957
  }, Symbol.toStringTag, { value: "Module" }));
3958
- function lo(e) {
3958
+ function so(e) {
3959
3959
  return e >= 70 ? "high" : e <= 25 ? "low" : "optimal";
3960
3960
  }
3961
- function so(e) {
3961
+ function co(e) {
3962
3962
  return e >= 0.72 ? "optimal" : "high";
3963
3963
  }
3964
- function co(e) {
3964
+ function mo(e) {
3965
3965
  if (e.triads.length === 0) return;
3966
3966
  const r = e.triads.map((a) => {
3967
3967
  const o = a.organs.length, l = o > 0 ? a.organs.reduce((s, c) => s + c.normalized_score, 0) / o : 0;
@@ -3979,7 +3979,7 @@ function co(e) {
3979
3979
  symptomScore: String(s),
3980
3980
  labScore: String(c),
3981
3981
  totalScore: String(d),
3982
- status: so(l)
3982
+ status: co(l)
3983
3983
  };
3984
3984
  })
3985
3985
  );
@@ -3993,7 +3993,7 @@ function co(e) {
3993
3993
  categoriesByTriadIndex: n
3994
3994
  };
3995
3995
  }
3996
- function mo(e) {
3996
+ function uo(e) {
3997
3997
  if (e.lab_metrics.length === 0) return;
3998
3998
  const r = e.lab_metrics.map((n) => ({
3999
3999
  name: n.name,
@@ -4001,7 +4001,7 @@ function mo(e) {
4001
4001
  symptomScore: "—",
4002
4002
  labScore: re(n.value, n.unit),
4003
4003
  totalScore: String(Math.round(n.indicator_percent)),
4004
- status: lo(n.indicator_percent)
4004
+ status: so(n.indicator_percent)
4005
4005
  }));
4006
4006
  return {
4007
4007
  sectionTitle: "Alert Lab Summary",
@@ -4012,7 +4012,7 @@ function mo(e) {
4012
4012
  rows: r
4013
4013
  };
4014
4014
  }
4015
- function uo(e) {
4015
+ function bo(e) {
4016
4016
  const r = e.overall_score ?? 0, n = Math.round(r), a = e.triads.map((c, d) => {
4017
4017
  const m = c.organs.slice(0, 3);
4018
4018
  for (; m.length < 3; )
@@ -4048,10 +4048,10 @@ function uo(e) {
4048
4048
  subtitle: jt
4049
4049
  },
4050
4050
  profile: {
4051
- initials: to(l.name),
4051
+ initials: ro(l.name),
4052
4052
  rows: [
4053
4053
  ["Name", l.name || "—"],
4054
- ["Gender", ro(l.gender)],
4054
+ ["Gender", no(l.gender)],
4055
4055
  ["Chrono Age", l.chrono_age != null ? String(l.chrono_age) : "—"],
4056
4056
  ["Bio Age", l.bio_age != null ? String(l.bio_age) : "—"]
4057
4057
  ]
@@ -4086,18 +4086,18 @@ function uo(e) {
4086
4086
  infoAriaLabel: "Metaflammation gauge information",
4087
4087
  centerValueColor: "#E97180"
4088
4088
  },
4089
- metabolicTriadIntroParagraphs: $a,
4089
+ metabolicTriadIntroParagraphs: eo,
4090
4090
  triadReports: a,
4091
4091
  labMetrics: o,
4092
- totalPredictiveTrends: co(e),
4093
- alertLabSummaryTable: mo(e)
4092
+ totalPredictiveTrends: mo(e),
4093
+ alertLabSummaryTable: uo(e)
4094
4094
  };
4095
4095
  }
4096
- const bo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4096
+ const ho = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4097
4097
  __proto__: null,
4098
- mapDashboardPageDtoToTabContent: uo
4098
+ mapDashboardPageDtoToTabContent: bo
4099
4099
  }, Symbol.toStringTag, { value: "Module" }));
4100
- function ho(e) {
4100
+ function fo(e) {
4101
4101
  return {
4102
4102
  pageHeader: {
4103
4103
  title: "Lab Analysis",
@@ -4106,7 +4106,7 @@ function ho(e) {
4106
4106
  sections: (e.triads ?? []).map((r) => {
4107
4107
  const n = at[r.number] ?? at[1], a = (r.markers ?? []).map((o) => ({
4108
4108
  label: o.name,
4109
- arrows: no(o.direction)
4109
+ arrows: ao(o.direction)
4110
4110
  }));
4111
4111
  return {
4112
4112
  triadNumber: r.number,
@@ -4121,11 +4121,11 @@ function ho(e) {
4121
4121
  })
4122
4122
  };
4123
4123
  }
4124
- const fo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4124
+ const go = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4125
4125
  __proto__: null,
4126
- mapLabAnalysisDtoToTabContent: ho
4126
+ mapLabAnalysisDtoToTabContent: fo
4127
4127
  }, Symbol.toStringTag, { value: "Module" }));
4128
- function go(e) {
4128
+ function po(e) {
4129
4129
  return {
4130
4130
  title: e.name,
4131
4131
  infoAriaLabel: `${e.name} information`,
@@ -4135,14 +4135,14 @@ function go(e) {
4135
4135
  indicatorPercent: e.indicator_percent
4136
4136
  };
4137
4137
  }
4138
- function po(e) {
4138
+ function xo(e) {
4139
4139
  return {
4140
4140
  title: e.organ_name,
4141
4141
  subtitle: `T${e.triad_number} Lab Values`,
4142
- metrics: e.metrics.map(go)
4142
+ metrics: e.metrics.map(po)
4143
4143
  };
4144
4144
  }
4145
- function xo(e) {
4145
+ function vo(e) {
4146
4146
  const r = e.groups ?? [], n = r[0], a = (n == null ? void 0 : n.triad_number) ?? 1, o = (n == null ? void 0 : n.triad_name) ?? "Energy", l = ue[a] ?? ue[1];
4147
4147
  return {
4148
4148
  pageHeader: {
@@ -4155,14 +4155,14 @@ function xo(e) {
4155
4155
  videoAriaLabel: "Play introduction video",
4156
4156
  paragraphs: l
4157
4157
  },
4158
- groups: r.map(po)
4158
+ groups: r.map(xo)
4159
4159
  };
4160
4160
  }
4161
- const vo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4161
+ const yo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4162
4162
  __proto__: null,
4163
- mapLabResultsDtoToTabContent: xo
4163
+ mapLabResultsDtoToTabContent: vo
4164
4164
  }, Symbol.toStringTag, { value: "Module" }));
4165
- function yo(e) {
4165
+ function wo(e) {
4166
4166
  return {
4167
4167
  pageHeader: {
4168
4168
  title: "Questionnaire Analysis",
@@ -4182,11 +4182,11 @@ function yo(e) {
4182
4182
  }))
4183
4183
  };
4184
4184
  }
4185
- const wo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4185
+ const Co = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4186
4186
  __proto__: null,
4187
- mapQuestionnaireAnalysisDtoToTabContent: yo
4187
+ mapQuestionnaireAnalysisDtoToTabContent: wo
4188
4188
  }, Symbol.toStringTag, { value: "Module" }));
4189
- function Co(e) {
4189
+ function No(e) {
4190
4190
  const r = ue[e.triad_number] ?? ue[1];
4191
4191
  return {
4192
4192
  pageHeader: {
@@ -4218,11 +4218,11 @@ function Co(e) {
4218
4218
  }))
4219
4219
  };
4220
4220
  }
4221
- const No = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4221
+ const Ao = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4222
4222
  __proto__: null,
4223
- mapSuggestedProductsDtoToTabContent: Co
4223
+ mapSuggestedProductsDtoToTabContent: No
4224
4224
  }, Symbol.toStringTag, { value: "Module" }));
4225
- function Ao(e) {
4225
+ function Lo(e) {
4226
4226
  return {
4227
4227
  pageHeader: {
4228
4228
  title: "Supplement Schedule",
@@ -4233,7 +4233,7 @@ function Ao(e) {
4233
4233
  triadNumbers: [...r.triad_numbers],
4234
4234
  imageSrc: r.image_url ?? void 0,
4235
4235
  imageAlt: r.name,
4236
- scheduleRows: eo.map(([n, a]) => ({
4236
+ scheduleRows: to.map(([n, a]) => ({
4237
4237
  timeLabel: a,
4238
4238
  dosage: r.schedule[n] ?? null
4239
4239
  }))
@@ -4244,11 +4244,11 @@ function Ao(e) {
4244
4244
  } : void 0
4245
4245
  };
4246
4246
  }
4247
- const Lo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4247
+ const Po = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4248
4248
  __proto__: null,
4249
- mapSupplementScheduleDtoToTabContent: Ao
4249
+ mapSupplementScheduleDtoToTabContent: Lo
4250
4250
  }, Symbol.toStringTag, { value: "Module" }));
4251
- function Po(e) {
4251
+ function To(e) {
4252
4252
  return {
4253
4253
  pageHeader: {
4254
4254
  title: "Total Predictive Trends",
@@ -4273,11 +4273,11 @@ function Po(e) {
4273
4273
  }))
4274
4274
  };
4275
4275
  }
4276
- const To = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4276
+ const Mo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4277
4277
  __proto__: null,
4278
- mapTotalPredictiveIndexDtoToTabContent: Po
4278
+ mapTotalPredictiveIndexDtoToTabContent: To
4279
4279
  }, Symbol.toStringTag, { value: "Module" }));
4280
- function Mo(e) {
4280
+ function Ho(e) {
4281
4281
  return {
4282
4282
  pageHeader: {
4283
4283
  title: "Wellness Indicators",
@@ -4295,20 +4295,20 @@ function Mo(e) {
4295
4295
  }))
4296
4296
  };
4297
4297
  }
4298
- const Ho = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4298
+ const jo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4299
4299
  __proto__: null,
4300
- mapWellnessIndicatorsDtoToTabContent: Mo
4300
+ mapWellnessIndicatorsDtoToTabContent: Ho
4301
4301
  }, Symbol.toStringTag, { value: "Module" }));
4302
- function jo(e, r) {
4302
+ function Bo(e, r) {
4303
4303
  return r ? { ...e, ...r } : e;
4304
4304
  }
4305
- const Bo = fe.map(
4305
+ const So = fe.map(
4306
4306
  (e) => e.id
4307
4307
  );
4308
4308
  function Oe(e) {
4309
- return Bo.includes(e);
4309
+ return So.includes(e);
4310
4310
  }
4311
- const So = 3e5, Re = nr(
4311
+ const ko = 3e5, Re = nr(
4312
4312
  null
4313
4313
  );
4314
4314
  function Vt() {
@@ -4320,7 +4320,7 @@ function ki() {
4320
4320
  e == null || e.invalidate();
4321
4321
  }, [e]);
4322
4322
  }
4323
- function ko({
4323
+ function zo({
4324
4324
  children: e,
4325
4325
  fetchers: r,
4326
4326
  ttlMs: n
@@ -4387,10 +4387,10 @@ function ko({
4387
4387
  );
4388
4388
  return /* @__PURE__ */ t(Re.Provider, { value: p, children: e });
4389
4389
  }
4390
- function zo(e) {
4390
+ function Do(e) {
4391
4391
  return e instanceof DOMException && e.name === "AbortError" ? !0 : e instanceof Error && e.name === "AbortError";
4392
4392
  }
4393
- function Do(e, r) {
4393
+ function Oo(e, r) {
4394
4394
  switch (r.type) {
4395
4395
  case "loadStart":
4396
4396
  return { status: "loading" };
@@ -4400,8 +4400,8 @@ function Do(e, r) {
4400
4400
  return { status: "error", error: r.error };
4401
4401
  }
4402
4402
  }
4403
- function Oo(e, r) {
4404
- const [n, a] = ar(Do, { status: "idle" }), [o, l] = B(0), s = R(r.onLoadError);
4403
+ function Ro(e, r) {
4404
+ const [n, a] = ar(Oo, { status: "idle" }), [o, l] = B(0), s = R(r.onLoadError);
4405
4405
  s.current = r.onLoadError;
4406
4406
  const c = Vt(), d = M(() => {
4407
4407
  c == null || c.invalidate(e), a({ type: "loadStart" }), l((u) => u + 1);
@@ -4424,7 +4424,7 @@ function Oo(e, r) {
4424
4424
  if (!u) return;
4425
4425
  a({ type: "loadSuccess", data: g });
4426
4426
  } catch (g) {
4427
- if (!u || zo(g)) return;
4427
+ if (!u || Do(g)) return;
4428
4428
  const x = g instanceof Error ? g : new Error(String(g));
4429
4429
  a({ type: "loadError", error: x }), (v = s.current) == null || v.call(s, { navItemId: e, error: x });
4430
4430
  }
@@ -4433,8 +4433,8 @@ function Oo(e, r) {
4433
4433
  };
4434
4434
  }, [e, o, c]), { ...n, refetch: d, loadGeneration: o };
4435
4435
  }
4436
- const Ro = "dashboard";
4437
- function Io({ className: e }) {
4436
+ const Io = "dashboard";
4437
+ function Fo({ className: e }) {
4438
4438
  return /* @__PURE__ */ i(
4439
4439
  "div",
4440
4440
  {
@@ -4456,7 +4456,7 @@ function Io({ className: e }) {
4456
4456
  }
4457
4457
  );
4458
4458
  }
4459
- function Fo({ className: e }) {
4459
+ function Eo({ className: e }) {
4460
4460
  return /* @__PURE__ */ i(
4461
4461
  "div",
4462
4462
  {
@@ -4475,7 +4475,7 @@ function Fo({ className: e }) {
4475
4475
  }
4476
4476
  );
4477
4477
  }
4478
- function Eo({ onRetry: e }) {
4478
+ function Yo({ onRetry: e }) {
4479
4479
  return /* @__PURE__ */ i(
4480
4480
  "div",
4481
4481
  {
@@ -4515,7 +4515,7 @@ function Eo({ onRetry: e }) {
4515
4515
  }
4516
4516
  );
4517
4517
  }
4518
- class Yo extends or {
4518
+ class Go extends or {
4519
4519
  constructor() {
4520
4520
  super(...arguments);
4521
4521
  Fe(this, "state", { error: null });
@@ -4531,7 +4531,7 @@ class Yo extends or {
4531
4531
  }
4532
4532
  render() {
4533
4533
  return this.state.error ? /* @__PURE__ */ t(
4534
- Go,
4534
+ Xo,
4535
4535
  {
4536
4536
  onRetry: () => {
4537
4537
  this.props.onRecover();
@@ -4540,7 +4540,7 @@ class Yo extends or {
4540
4540
  ) : this.props.children;
4541
4541
  }
4542
4542
  }
4543
- function Go({ onRetry: e }) {
4543
+ function Xo({ onRetry: e }) {
4544
4544
  return /* @__PURE__ */ i(
4545
4545
  "div",
4546
4546
  {
@@ -4580,41 +4580,41 @@ function Go({ onRetry: e }) {
4580
4580
  }
4581
4581
  );
4582
4582
  }
4583
- function Xo({
4583
+ function Zo({
4584
4584
  navItemId: e,
4585
4585
  data: r
4586
4586
  }) {
4587
4587
  const { Tab: n } = De[e];
4588
4588
  return /* @__PURE__ */ t(n, { content: r });
4589
4589
  }
4590
- function Zo({
4590
+ function Vo({
4591
4591
  navItemId: e,
4592
4592
  contentFetchers: r,
4593
4593
  onDashboardTabContentLoadError: n
4594
4594
  }) {
4595
- const a = Oo(e, {
4595
+ const a = Ro(e, {
4596
4596
  fetchers: r,
4597
4597
  onLoadError: n
4598
4598
  }), o = Ga(e), s = De[e].Skeleton;
4599
- return a.status === "idle" || a.status === "loading" ? /* @__PURE__ */ t(s, { pageHeader: o }) : a.status === "error" ? /* @__PURE__ */ t(Eo, { onRetry: () => a.refetch() }) : /* @__PURE__ */ t(
4600
- Yo,
4599
+ return a.status === "idle" || a.status === "loading" ? /* @__PURE__ */ t(s, { pageHeader: o }) : a.status === "error" ? /* @__PURE__ */ t(Yo, { onRetry: () => a.refetch() }) : /* @__PURE__ */ t(
4600
+ Go,
4601
4601
  {
4602
4602
  resetKey: `${e}-${a.loadGeneration}`,
4603
4603
  onRecover: () => {
4604
4604
  a.refetch();
4605
4605
  },
4606
- children: /* @__PURE__ */ t(ir, { fallback: /* @__PURE__ */ t(s, { pageHeader: o }), children: /* @__PURE__ */ t(Xo, { navItemId: e, data: a.data }) })
4606
+ children: /* @__PURE__ */ t(ir, { fallback: /* @__PURE__ */ t(s, { pageHeader: o }), children: /* @__PURE__ */ t(Zo, { navItemId: e, data: a.data }) })
4607
4607
  }
4608
4608
  );
4609
4609
  }
4610
- function Vo({
4610
+ function Wo({
4611
4611
  activeItemId: e,
4612
4612
  activeLabel: r,
4613
4613
  contentFetchers: n,
4614
4614
  onDashboardTabContentLoadError: a
4615
4615
  }) {
4616
4616
  return Oe(e) ? /* @__PURE__ */ t(
4617
- Zo,
4617
+ Vo,
4618
4618
  {
4619
4619
  navItemId: e,
4620
4620
  contentFetchers: n,
@@ -4622,7 +4622,7 @@ function Vo({
4622
4622
  }
4623
4623
  ) : /* @__PURE__ */ t("div", { children: /* @__PURE__ */ t("h1", { className: "text-2xl font-semibold tracking-tight text-[color:var(--mb-color-text)]", children: r }) });
4624
4624
  }
4625
- function Wo({
4625
+ function Uo({
4626
4626
  renderMainContent: e,
4627
4627
  content: r,
4628
4628
  activeItemId: n,
@@ -4634,7 +4634,7 @@ function Wo({
4634
4634
  useDefaultTabData: d
4635
4635
  }) {
4636
4636
  const m = (e == null ? void 0 : e(n)) ?? (r !== void 0 ? r : /* @__PURE__ */ t(
4637
- Vo,
4637
+ Wo,
4638
4638
  {
4639
4639
  activeItemId: n,
4640
4640
  activeLabel: a,
@@ -4642,12 +4642,12 @@ function Wo({
4642
4642
  onDashboardTabContentLoadError: l
4643
4643
  }
4644
4644
  ));
4645
- return !c && d ? /* @__PURE__ */ t(Fo, { className: "max-w-full shrink-0" }) : Et(s) ? /* @__PURE__ */ i(K, { children: [
4646
- /* @__PURE__ */ t(Io, { className: "max-w-full shrink-0" }),
4645
+ return !c && d ? /* @__PURE__ */ t(Eo, { className: "max-w-full shrink-0" }) : Et(s) ? /* @__PURE__ */ i(K, { children: [
4646
+ /* @__PURE__ */ t(Fo, { className: "max-w-full shrink-0" }),
4647
4647
  m
4648
4648
  ] }) : m;
4649
4649
  }
4650
- function Uo({
4650
+ function Qo({
4651
4651
  rootStyle: e,
4652
4652
  enableTabContentCache: r,
4653
4653
  menuTitle: n,
@@ -4694,21 +4694,21 @@ function Uo({
4694
4694
  }
4695
4695
  );
4696
4696
  }
4697
- function Qo({
4697
+ function Ko({
4698
4698
  wrapTabContentCache: e,
4699
4699
  fetchers: r,
4700
4700
  cacheTtlMs: n,
4701
4701
  viewProps: a
4702
4702
  }) {
4703
- const o = /* @__PURE__ */ t(Uo, { ...a });
4704
- return e ? /* @__PURE__ */ t(ko, { fetchers: r, ttlMs: n, children: o }) : o;
4703
+ const o = /* @__PURE__ */ t(Qo, { ...a });
4704
+ return e ? /* @__PURE__ */ t(zo, { fetchers: r, ttlMs: n, children: o }) : o;
4705
4705
  }
4706
- const Ko = [
4706
+ const qo = [
4707
4707
  { id: "sim-pt-001", label: "Alex Morgan" },
4708
4708
  { id: "sim-pt-002", label: "Jordan Lee" },
4709
4709
  { id: "sim-pt-003", label: "Sam Rivera" },
4710
4710
  { id: "sim-pt-004", label: "Taylor Chen" }
4711
- ], qo = [
4711
+ ], Jo = [
4712
4712
  { id: "sim-rpt-001", label: "March 12, 2026" },
4713
4713
  { id: "sim-rpt-002", label: "February 4, 2026" },
4714
4714
  { id: "sim-rpt-003", label: "January 18, 2026" },
@@ -4728,18 +4728,18 @@ function Qt({
4728
4728
  }
4729
4729
  );
4730
4730
  }
4731
- function Jo() {
4732
- return Ko;
4733
- }
4734
4731
  function _o() {
4735
4732
  return qo;
4736
4733
  }
4737
- function $o({
4734
+ function $o() {
4735
+ return Jo;
4736
+ }
4737
+ function ei({
4738
4738
  rootStyle: e,
4739
4739
  onSelectPatient: r,
4740
4740
  onBack: n
4741
4741
  }) {
4742
- const a = Jo();
4742
+ const a = _o();
4743
4743
  return /* @__PURE__ */ t(
4744
4744
  Qt,
4745
4745
  {
@@ -4775,12 +4775,12 @@ function $o({
4775
4775
  }
4776
4776
  );
4777
4777
  }
4778
- function ei({
4778
+ function ti({
4779
4779
  rootStyle: e,
4780
4780
  onSelectReport: r,
4781
4781
  onBack: n
4782
4782
  }) {
4783
- const a = _o();
4783
+ const a = $o();
4784
4784
  return /* @__PURE__ */ t(
4785
4785
  Qt,
4786
4786
  {
@@ -4816,7 +4816,7 @@ function ei({
4816
4816
  }
4817
4817
  );
4818
4818
  }
4819
- function ti({
4819
+ function ri({
4820
4820
  rootStyle: e,
4821
4821
  simulationSessionReady: r,
4822
4822
  simRole: n,
@@ -4829,7 +4829,7 @@ function ti({
4829
4829
  if (!r) {
4830
4830
  if (n === "practitioner")
4831
4831
  return /* @__PURE__ */ t(
4832
- $o,
4832
+ ei,
4833
4833
  {
4834
4834
  rootStyle: e,
4835
4835
  onSelectPatient: a,
@@ -4838,7 +4838,7 @@ function ti({
4838
4838
  );
4839
4839
  if (n === "patient")
4840
4840
  return /* @__PURE__ */ t(
4841
- ei,
4841
+ ti,
4842
4842
  {
4843
4843
  rootStyle: e,
4844
4844
  onSelectReport: l,
@@ -4848,7 +4848,7 @@ function ti({
4848
4848
  }
4849
4849
  return c;
4850
4850
  }
4851
- function ri(e) {
4851
+ function ni(e) {
4852
4852
  return D(() => {
4853
4853
  const r = gr(e);
4854
4854
  return {
@@ -4857,7 +4857,7 @@ function ri(e) {
4857
4857
  };
4858
4858
  }, [e]);
4859
4859
  }
4860
- function ni({
4860
+ function ai({
4861
4861
  config: e,
4862
4862
  apiKey: r,
4863
4863
  dashboardContentFetchers: n,
@@ -4866,23 +4866,23 @@ function ni({
4866
4866
  dashboardTabContentCacheTtlMs: l,
4867
4867
  simulationReportId: s
4868
4868
  }) {
4869
- const c = r ?? (e == null ? void 0 : e.apiKey), d = Qa(c), m = a === void 0 && o === void 0, u = D(() => {
4869
+ const c = r ?? (e == null ? void 0 : e.apiKey), d = Ka(c), m = a === void 0 && o === void 0, u = D(() => {
4870
4870
  const p = Xt(
4871
4871
  Gt({
4872
4872
  apiKey: c,
4873
4873
  ...s != null ? { reportId: s } : {}
4874
4874
  })
4875
4875
  );
4876
- return jo(p, n);
4876
+ return Bo(p, n);
4877
4877
  }, [n, c, s]);
4878
4878
  return {
4879
4879
  apiKeyAccepted: d,
4880
4880
  useDefaultTabData: m,
4881
4881
  resolvedDashboardContentFetchers: u,
4882
- resolvedCacheTtlMs: l ?? So
4882
+ resolvedCacheTtlMs: l ?? ko
4883
4883
  };
4884
4884
  }
4885
- function ai(e) {
4885
+ function oi(e) {
4886
4886
  const { logo: r } = e, { src: n, srcMobile: a, alt: o, width: l, height: s, widthMobile: c, heightMobile: d, placeholder: m } = r;
4887
4887
  if (n && a)
4888
4888
  return /* @__PURE__ */ i(K, { children: [
@@ -4922,7 +4922,7 @@ function ai(e) {
4922
4922
  );
4923
4923
  if (m) return /* @__PURE__ */ t(hr, {});
4924
4924
  }
4925
- function oi({
4925
+ function ii({
4926
4926
  role: e,
4927
4927
  patientLabel: r,
4928
4928
  onChangeUser: n
@@ -4953,7 +4953,7 @@ function oi({
4953
4953
  function de(e) {
4954
4954
  return e === "practitioner" ? "practitioner" : e === "patient" ? "patient" : null;
4955
4955
  }
4956
- function ii(e) {
4956
+ function li(e) {
4957
4957
  const [r, n] = B(
4958
4958
  () => de(e)
4959
4959
  ), [a, o] = B(null), [l, s] = B(""), [c, d] = B(null), [m, u] = B(""), f = D(() => {
@@ -4996,7 +4996,7 @@ function ii(e) {
4996
4996
  onSelectPatientReport: P
4997
4997
  };
4998
4998
  }
4999
- function li({
4999
+ function si({
5000
5000
  activeNavItemIdProp: e,
5001
5001
  defaultActiveNavItemId: r,
5002
5002
  onActiveNavItemChange: n
@@ -5009,7 +5009,7 @@ function li({
5009
5009
  );
5010
5010
  return { activeItemId: l, handleNavItemClick: s };
5011
5011
  }
5012
- function si({
5012
+ function ci({
5013
5013
  config: e,
5014
5014
  apiKey: r,
5015
5015
  viewerRole: n,
@@ -5021,7 +5021,7 @@ function si({
5021
5021
  onDashboardTabContentLoadError: d,
5022
5022
  renderMainContent: m,
5023
5023
  activeNavItemId: u,
5024
- defaultActiveNavItemId: f = Ro,
5024
+ defaultActiveNavItemId: f = Io,
5025
5025
  onActiveNavItemChange: p,
5026
5026
  shellClassName: h,
5027
5027
  sideMenuClassName: v,
@@ -5031,14 +5031,14 @@ function si({
5031
5031
  }) {
5032
5032
  var Ie;
5033
5033
  $t();
5034
- const { resolvedBranding: w, rootStyle: P } = ri(e), A = ii(n), { activeItemId: H, handleNavItemClick: j } = li({
5034
+ const { resolvedBranding: w, rootStyle: P } = ni(e), A = li(n), { activeItemId: H, handleNavItemClick: j } = si({
5035
5035
  activeNavItemIdProp: u,
5036
5036
  defaultActiveNavItemId: f,
5037
5037
  onActiveNavItemChange: p
5038
5038
  }), z = ((Ie = Ft.find((qt) => qt.id === H)) == null ? void 0 : Ie.label) ?? H, ae = D(
5039
- () => o !== void 0 ? o : ai(w),
5039
+ () => o !== void 0 ? o : oi(w),
5040
5040
  [w, o]
5041
- ), O = ni({
5041
+ ), O = ai({
5042
5042
  config: e,
5043
5043
  apiKey: r,
5044
5044
  dashboardContentFetchers: c,
@@ -5053,7 +5053,7 @@ function si({
5053
5053
  ].filter(Boolean).join(" "),
5054
5054
  [g]
5055
5055
  ), q = O.useDefaultTabData && O.apiKeyAccepted, ie = /* @__PURE__ */ t(
5056
- Wo,
5056
+ Uo,
5057
5057
  {
5058
5058
  renderMainContent: m,
5059
5059
  content: s,
@@ -5066,14 +5066,14 @@ function si({
5066
5066
  useDefaultTabData: O.useDefaultTabData
5067
5067
  }
5068
5068
  ), le = /* @__PURE__ */ t(
5069
- oi,
5069
+ ii,
5070
5070
  {
5071
5071
  role: A.simRole,
5072
5072
  patientLabel: A.simRole === "patient" ? A.simPatientReportLabel : A.simPractitionerPatientLabel,
5073
5073
  onChangeUser: A.resetSimulationSession
5074
5074
  }
5075
5075
  ), Kt = /* @__PURE__ */ t(
5076
- Qo,
5076
+ Ko,
5077
5077
  {
5078
5078
  wrapTabContentCache: q,
5079
5079
  fetchers: O.resolvedDashboardContentFetchers,
@@ -5096,7 +5096,7 @@ function si({
5096
5096
  }
5097
5097
  );
5098
5098
  return /* @__PURE__ */ t(
5099
- ti,
5099
+ ri,
5100
5100
  {
5101
5101
  rootStyle: P,
5102
5102
  simulationSessionReady: A.simulationSessionReady,
@@ -5109,7 +5109,7 @@ function si({
5109
5109
  }
5110
5110
  );
5111
5111
  }
5112
- function ci({
5112
+ function di({
5113
5113
  allowedPostMessageOrigins: e,
5114
5114
  validatePostMessageConfig: r
5115
5115
  } = {}) {
@@ -5140,7 +5140,7 @@ function ci({
5140
5140
  };
5141
5141
  return window.addEventListener("message", s), () => window.removeEventListener("message", s);
5142
5142
  }, [e, r]), /* @__PURE__ */ t(
5143
- si,
5143
+ ci,
5144
5144
  {
5145
5145
  config: n,
5146
5146
  dashboardContentFetchers: l,
@@ -5154,7 +5154,7 @@ function zi(e = "root", r) {
5154
5154
  throw new Error("Root element not found");
5155
5155
  sr(n).render(
5156
5156
  /* @__PURE__ */ t(lr, { children: /* @__PURE__ */ t("div", { className: "flex h-full min-h-0 w-full flex-col", children: /* @__PURE__ */ t(
5157
- ci,
5157
+ di,
5158
5158
  {
5159
5159
  allowedPostMessageOrigins: r == null ? void 0 : r.allowedPostMessageOrigins,
5160
5160
  validatePostMessageConfig: r == null ? void 0 : r.validatePostMessageConfig
@@ -5164,91 +5164,91 @@ function zi(e = "root", r) {
5164
5164
  }
5165
5165
  export {
5166
5166
  ze as AlertLabSummaryIcon,
5167
- pi as AlertLabSummaryTab,
5167
+ xi as AlertLabSummaryTab,
5168
5168
  sn as AlertLabSummaryTabSkeleton,
5169
5169
  L as Button,
5170
- Bo as DASHBOARD_TAB_NAV_IDS,
5170
+ So as DASHBOARD_TAB_NAV_IDS,
5171
5171
  fe as DASHBOARD_TAB_PLUGINS,
5172
- So as DEFAULT_DASHBOARD_TAB_CONTENT_CACHE_TTL_MS,
5172
+ ko as DEFAULT_DASHBOARD_TAB_CONTENT_CACHE_TTL_MS,
5173
5173
  N as DEFAULT_METABOLIC_BRANDING,
5174
5174
  ua as DashboardIcon,
5175
- xi as DashboardTab,
5176
- ko as DashboardTabContentCacheProvider,
5175
+ vi as DashboardTab,
5176
+ zo as DashboardTabContentCacheProvider,
5177
5177
  Yn as DashboardTabSkeleton,
5178
5178
  ba as LabAnalysisIcon,
5179
- vi as LabAnalysisTab,
5179
+ yi as LabAnalysisTab,
5180
5180
  Gn as LabAnalysisTabSkeleton,
5181
5181
  ha as LabResultsIcon,
5182
- yi as LabResultsTab,
5182
+ wi as LabResultsTab,
5183
5183
  Vn as LabResultsTabSkeleton,
5184
5184
  hr as LogoPlaceholder,
5185
- ji as LogoutIcon,
5186
- Ua as METABOLIC_DASHBOARD_STUB_API_KEY,
5185
+ Bi as LogoutIcon,
5186
+ Qa as METABOLIC_DASHBOARD_STUB_API_KEY,
5187
5187
  Mt as METABOLIC_IFRAME_CONFIG_QUERY_KEY,
5188
5188
  Ht as METABOLIC_IFRAME_SET_CONFIG_MESSAGE,
5189
- Si as METABOLIC_REPORT_PAGES_API_BASE_URL,
5190
- si as MetabolicDashboard,
5191
- Vo as MetabolicDashboardDefaultMain,
5192
- ci as MetabolicEmbedRoot,
5189
+ Ua as METABOLIC_REPORT_PAGES_API_BASE_URL,
5190
+ ci as MetabolicDashboard,
5191
+ Wo as MetabolicDashboardDefaultMain,
5192
+ di as MetabolicEmbedRoot,
5193
5193
  ne as MetabolicTriadCategoryPanelSkeleton,
5194
5194
  T as PageHeader,
5195
5195
  fa as PredictiveIndexIcon,
5196
- wi as QuestionnaireAnalysisTab,
5196
+ Ci as QuestionnaireAnalysisTab,
5197
5197
  Un as QuestionnaireAnalysisTabSkeleton,
5198
5198
  ga as QuestionnaireIcon,
5199
5199
  wa as ShellLayout,
5200
5200
  Va as SideMenu,
5201
- Bi as SideMenuFooter,
5201
+ Si as SideMenuFooter,
5202
5202
  Za as SideMenuNavButton,
5203
5203
  $r as SkeletonCircle,
5204
5204
  b as SkeletonRect,
5205
5205
  pa as SuggestedProductsIcon,
5206
- Ci as SuggestedProductsTab,
5206
+ Ni as SuggestedProductsTab,
5207
5207
  qn as SuggestedProductsTabSkeleton,
5208
5208
  xa as SupplementScheduleIcon,
5209
- Ni as SupplementScheduleTab,
5209
+ Ai as SupplementScheduleTab,
5210
5210
  Jn as SupplementScheduleTabSkeleton,
5211
5211
  G as TabSkeletonRoot,
5212
5212
  X as Tooltip,
5213
- Ai as TotalPredictiveIndexTab,
5213
+ Li as TotalPredictiveIndexTab,
5214
5214
  $n as TotalPredictiveIndexTabSkeleton,
5215
5215
  va as WellnessIndicatorsIcon,
5216
- Li as WellnessIndicatorsTab,
5216
+ Pi as WellnessIndicatorsTab,
5217
5217
  ra as WellnessIndicatorsTabSkeleton,
5218
5218
  Na as buildReportPageUrl,
5219
5219
  Xt as createHttpDashboardContentFetchers,
5220
5220
  ia as decodeMetabolicIframeConfig,
5221
- Mi as emitMetabolicDashboardLogout,
5221
+ Hi as emitMetabolicDashboardLogout,
5222
5222
  oa as encodeMetabolicIframeConfig,
5223
5223
  $t as ensureAgChartsModules,
5224
5224
  F as fetchReportPage,
5225
- Ka as getBuiltInReportPagesApiBaseUrl,
5226
- qa as getBuiltInReportPagesApiDefaults,
5225
+ qa as getBuiltInReportPagesApiBaseUrl,
5226
+ Ja as getBuiltInReportPagesApiDefaults,
5227
5227
  Ga as getDashboardTabStaticPageHeader,
5228
5228
  Oe as isDashboardNavItemId,
5229
- Qa as isMetabolicDashboardApiKeyAccepted,
5229
+ Ka as isMetabolicDashboardApiKeyAccepted,
5230
5230
  ma as isMetabolicEmbedPostMessageOriginAllowed,
5231
- oo as mapAlertLabSummaryDtoToTabContent,
5232
- uo as mapDashboardPageDtoToTabContent,
5233
- ho as mapLabAnalysisDtoToTabContent,
5234
- xo as mapLabResultsDtoToTabContent,
5235
- yo as mapQuestionnaireAnalysisDtoToTabContent,
5236
- Co as mapSuggestedProductsDtoToTabContent,
5237
- Ao as mapSupplementScheduleDtoToTabContent,
5238
- Po as mapTotalPredictiveIndexDtoToTabContent,
5239
- Mo as mapWellnessIndicatorsDtoToTabContent,
5240
- jo as mergeDashboardContentFetchers,
5231
+ io as mapAlertLabSummaryDtoToTabContent,
5232
+ bo as mapDashboardPageDtoToTabContent,
5233
+ fo as mapLabAnalysisDtoToTabContent,
5234
+ vo as mapLabResultsDtoToTabContent,
5235
+ wo as mapQuestionnaireAnalysisDtoToTabContent,
5236
+ No as mapSuggestedProductsDtoToTabContent,
5237
+ Lo as mapSupplementScheduleDtoToTabContent,
5238
+ To as mapTotalPredictiveIndexDtoToTabContent,
5239
+ Ho as mapWellnessIndicatorsDtoToTabContent,
5240
+ Bo as mergeDashboardContentFetchers,
5241
5241
  Gt as mergeReportPagesApiWithBuiltIn,
5242
5242
  dr as metabolicBrandingToStyle,
5243
- Ti as metabolicIframeSrcAppendStealthParams,
5244
- Pi as metabolicIframeSrcWithConfig,
5243
+ Mi as metabolicIframeSrcAppendStealthParams,
5244
+ Ti as metabolicIframeSrcWithConfig,
5245
5245
  zi as mountMetabolicEmbed,
5246
- Hi as postMetabolicIframeConfig,
5246
+ ji as postMetabolicIframeConfig,
5247
5247
  da as readMetabolicEmbedStealthParams,
5248
5248
  la as readMetabolicIframeConfigFromSearchParams,
5249
5249
  gr as resolveMetabolicBranding,
5250
5250
  I as sideMenuItemIconClass,
5251
5251
  He as useAgCharts,
5252
- Oo as useDashboardTabContent,
5252
+ Ro as useDashboardTabContent,
5253
5253
  ki as useInvalidateDashboardTabContentCache
5254
5254
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metaboliccode-dev/widget",
3
- "version": "0.2.0",
3
+ "version": "0.2.2-rc.0",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",