@metaboliccode-dev/widget 0.2.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/README.md +90 -0
- package/dist/MetabolicDashboard/MetabolicDashboard.d.ts +2 -0
- package/dist/MetabolicDashboard/api/builtInReportPagesApi.d.ts +4 -0
- package/dist/MetabolicDashboard/api/createHttpDashboardContentFetchers.d.ts +10 -0
- package/dist/MetabolicDashboard/api/fetchReportPage.d.ts +10 -0
- package/dist/MetabolicDashboard/api/index.d.ts +8 -0
- package/dist/MetabolicDashboard/api/mapReportPages.d.ts +1 -0
- package/dist/MetabolicDashboard/api/mappers/index.d.ts +9 -0
- package/dist/MetabolicDashboard/api/mappers/mapAlertLabSummaryPage.d.ts +3 -0
- package/dist/MetabolicDashboard/api/mappers/mapDashboardPage.d.ts +3 -0
- package/dist/MetabolicDashboard/api/mappers/mapLabAnalysisPage.d.ts +3 -0
- package/dist/MetabolicDashboard/api/mappers/mapLabResultsPage.d.ts +3 -0
- package/dist/MetabolicDashboard/api/mappers/mapQuestionnaireAnalysisPage.d.ts +3 -0
- package/dist/MetabolicDashboard/api/mappers/mapSuggestedProductsPage.d.ts +3 -0
- package/dist/MetabolicDashboard/api/mappers/mapSupplementSchedulePage.d.ts +3 -0
- package/dist/MetabolicDashboard/api/mappers/mapTotalPredictiveIndexPage.d.ts +3 -0
- package/dist/MetabolicDashboard/api/mappers/mapWellnessIndicatorsPage.d.ts +3 -0
- package/dist/MetabolicDashboard/api/mappers/shared.d.ts +20 -0
- package/dist/MetabolicDashboard/api/metabolicDashboardApiKey.d.ts +3 -0
- package/dist/MetabolicDashboard/api/reportPageTypes.d.ts +185 -0
- package/dist/MetabolicDashboard/constants.d.ts +2 -0
- package/dist/MetabolicDashboard/dashboardContentFetchers.d.ts +2 -0
- package/dist/MetabolicDashboard/dashboardTab/DashboardTabContentCacheContext.d.ts +16 -0
- package/dist/MetabolicDashboard/dashboardTab/DashboardTabLoadError.d.ts +4 -0
- package/dist/MetabolicDashboard/dashboardTab/DashboardTabRenderErrorBoundary.d.ts +17 -0
- package/dist/MetabolicDashboard/dashboardTab/chunks/alertLabSummary.d.ts +1 -0
- package/dist/MetabolicDashboard/dashboardTab/chunks/dashboard.d.ts +1 -0
- package/dist/MetabolicDashboard/dashboardTab/chunks/labAnalysis.d.ts +1 -0
- package/dist/MetabolicDashboard/dashboardTab/chunks/labResults.d.ts +1 -0
- package/dist/MetabolicDashboard/dashboardTab/chunks/questionnaireAnalysis.d.ts +1 -0
- package/dist/MetabolicDashboard/dashboardTab/chunks/suggestedProducts.d.ts +1 -0
- package/dist/MetabolicDashboard/dashboardTab/chunks/supplementSchedule.d.ts +1 -0
- package/dist/MetabolicDashboard/dashboardTab/chunks/totalPredictiveIndex.d.ts +1 -0
- package/dist/MetabolicDashboard/dashboardTab/chunks/wellnessIndicators.d.ts +1 -0
- package/dist/MetabolicDashboard/dashboardTab/dashboardPageSubtitles.d.ts +9 -0
- package/dist/MetabolicDashboard/dashboardTab/dashboardTabDefinitions.d.ts +52 -0
- package/dist/MetabolicDashboard/dashboardTab/dashboardTabLazyRegistry.d.ts +9 -0
- package/dist/MetabolicDashboard/dashboardTab/dashboardTabModel.d.ts +24 -0
- package/dist/MetabolicDashboard/dashboardTab/useDashboardTabContent.d.ts +22 -0
- package/dist/MetabolicDashboard/index.d.ts +13 -0
- package/dist/MetabolicDashboard/metabolicDashboard/MetabolicDashboardApiKeyError.d.ts +4 -0
- package/dist/MetabolicDashboard/metabolicDashboard/MetabolicDashboardDefaultMain.d.ts +9 -0
- package/dist/MetabolicDashboard/metabolicDashboard/MetabolicDashboardMainContent.d.ts +15 -0
- package/dist/MetabolicDashboard/metabolicDashboard/MetabolicDashboardShell.d.ts +9 -0
- package/dist/MetabolicDashboard/metabolicDashboard/MetabolicDashboardSimulationBoundary.d.ts +13 -0
- package/dist/MetabolicDashboard/metabolicDashboard/MetabolicDashboardView.d.ts +18 -0
- package/dist/MetabolicDashboard/metabolicDashboard/useMetabolicDashboardBranding.d.ts +5 -0
- package/dist/MetabolicDashboard/metabolicDashboard/useMetabolicDashboardResolvedContentSources.d.ts +12 -0
- package/dist/MetabolicDashboard/sideMenuLogo.d.ts +3 -0
- package/dist/MetabolicDashboard/simulation/MetabolicDashboardSimulationPatientList.d.ts +7 -0
- package/dist/MetabolicDashboard/simulation/MetabolicDashboardSimulationPatientReportList.d.ts +7 -0
- package/dist/MetabolicDashboard/simulation/MetabolicDashboardSimulationSideMenuFooter.d.ts +7 -0
- package/dist/MetabolicDashboard/simulation/SimulationScreenShell.d.ts +7 -0
- package/dist/MetabolicDashboard/simulation/constants.d.ts +14 -0
- package/dist/MetabolicDashboard/simulation/useMetabolicDashboardSimulation.d.ts +23 -0
- package/dist/MetabolicDashboard/simulation/useSimulatedData.d.ts +3 -0
- package/dist/MetabolicDashboard/useActiveNavItem.d.ts +10 -0
- package/dist/MetabolicEmbedRoot.d.ts +5 -0
- package/dist/ag-charts.js +20 -0
- package/dist/alertLabSummary-BAIlZ2_U.js +4 -0
- package/dist/branding/LogoPlaceholder.d.ts +1 -0
- package/dist/branding/brandingToStyle.d.ts +3 -0
- package/dist/branding/defaultSidebarWidth.d.ts +1 -0
- package/dist/branding/defaults.d.ts +2 -0
- package/dist/branding/index.d.ts +5 -0
- package/dist/branding/resolveBranding.d.ts +2 -0
- package/dist/branding/types.d.ts +118 -0
- package/dist/components/AlertLabSummaryTab/AlertLabSummaryTabSkeleton.d.ts +6 -0
- package/dist/components/AlertLabSummaryTab/index.d.ts +5 -0
- package/dist/components/Button/index.d.ts +10 -0
- package/dist/components/DashboardTab/DashboardTabSkeleton.d.ts +6 -0
- package/dist/components/DashboardTab/index.d.ts +4 -0
- package/dist/components/LabAnalysisTab/LabAnalysisTabSkeleton.d.ts +6 -0
- package/dist/components/LabAnalysisTab/index.d.ts +5 -0
- package/dist/components/LabResultsTab/LabResultsTabSkeleton.d.ts +6 -0
- package/dist/components/LabResultsTab/index.d.ts +5 -0
- package/dist/components/PageHeader/index.d.ts +7 -0
- package/dist/components/QuestionnaireAnalysisTab/QuestionnaireAnalysisTabSkeleton.d.ts +6 -0
- package/dist/components/QuestionnaireAnalysisTab/index.d.ts +5 -0
- package/dist/components/SkeletonPrimitives/index.d.ts +11 -0
- package/dist/components/SuggestedProductsTab/SuggestedProductsTabSkeleton.d.ts +6 -0
- package/dist/components/SuggestedProductsTab/fallbackData.d.ts +2 -0
- package/dist/components/SuggestedProductsTab/index.d.ts +5 -0
- package/dist/components/SupplementScheduleTab/SupplementScheduleTabSkeleton.d.ts +6 -0
- package/dist/components/SupplementScheduleTab/fallbackData.d.ts +2 -0
- package/dist/components/SupplementScheduleTab/index.d.ts +5 -0
- package/dist/components/Tooltip/index.d.ts +13 -0
- package/dist/components/TotalPredictiveIndexTab/TotalPredictiveIndexTabSkeleton.d.ts +6 -0
- package/dist/components/TotalPredictiveIndexTab/index.d.ts +5 -0
- package/dist/components/WellnessIndicatorsTab/WellnessIndicatorsTabSkeleton.d.ts +6 -0
- package/dist/components/WellnessIndicatorsTab/index.d.ts +5 -0
- package/dist/components/dashboard/components/base/Badge.d.ts +7 -0
- package/dist/components/dashboard/components/base/DashboardCard.d.ts +5 -0
- package/dist/components/dashboard/components/base/TriadMarkIcon.d.ts +4 -0
- package/dist/components/dashboard/components/base/index.d.ts +6 -0
- package/dist/components/dashboard/components/composite/DashboardCardSectionHeader.d.ts +8 -0
- package/dist/components/dashboard/components/composite/MetabolicScoreBar.d.ts +4 -0
- package/dist/components/dashboard/components/composite/MetaflammationGauge.d.ts +5 -0
- package/dist/components/dashboard/components/composite/PractitionerNoteRow.d.ts +4 -0
- package/dist/components/dashboard/components/composite/SegmentedRangeBar.d.ts +16 -0
- package/dist/components/dashboard/components/composite/SegmentedRangeBarIndicator.d.ts +3 -0
- package/dist/components/dashboard/components/composite/SupplementScheduleTableRow.d.ts +5 -0
- package/dist/components/dashboard/components/composite/SupplementTriadMarkGroup.d.ts +3 -0
- package/dist/components/dashboard/components/composite/TriadRadar.d.ts +6 -0
- package/dist/components/dashboard/components/composite/index.d.ts +10 -0
- package/dist/components/dashboard/components/sections/AlertLabSummaryCard.d.ts +2 -0
- package/dist/components/dashboard/components/sections/LabAnalysisTriadCard.d.ts +2 -0
- package/dist/components/dashboard/components/sections/LabMetricRangeCard.d.ts +7 -0
- package/dist/components/dashboard/components/sections/LabResultsIntroCard.d.ts +6 -0
- package/dist/components/dashboard/components/sections/MetabolicTriadCategoryPanel/bodies.d.ts +24 -0
- package/dist/components/dashboard/components/sections/MetabolicTriadCategoryPanel/index.d.ts +3 -0
- package/dist/components/dashboard/components/sections/MetabolicTriadCategoryPanel/primitives.d.ts +22 -0
- package/dist/components/dashboard/components/sections/MetabolicTriadCategoryPanel/types.d.ts +54 -0
- package/dist/components/dashboard/components/sections/MetabolicTriadCategoryPanel.d.ts +1 -0
- package/dist/components/dashboard/components/sections/MetabolicTriadCategoryPanelSkeleton.d.ts +19 -0
- package/dist/components/dashboard/components/sections/MetabolicTriadIntroCard.d.ts +4 -0
- package/dist/components/dashboard/components/sections/MetabolicTriadSectionCard.d.ts +11 -0
- package/dist/components/dashboard/components/sections/MetaflammationGaugeCard.d.ts +2 -0
- package/dist/components/dashboard/components/sections/OverallMetabolicScoreCard.d.ts +2 -0
- package/dist/components/dashboard/components/sections/PractitionerNotesCard.d.ts +2 -0
- package/dist/components/dashboard/components/sections/ProfileSummaryCard.d.ts +5 -0
- package/dist/components/dashboard/components/sections/SupplementScheduleCard.d.ts +2 -0
- package/dist/components/dashboard/components/sections/TriadRadarReportCard.d.ts +4 -0
- package/dist/components/dashboard/components/sections/WelcomeMessageCard.d.ts +8 -0
- package/dist/components/dashboard/components/sections/WellnessIndicatorCard.d.ts +6 -0
- package/dist/components/dashboard/components/sections/index.d.ts +16 -0
- package/dist/components/dashboard/constants.d.ts +2 -0
- package/dist/components/dashboard/data/contentTypes.d.ts +301 -0
- package/dist/components/dashboard/data/index.d.ts +2 -0
- package/dist/components/dashboard/index.d.ts +3 -0
- package/dist/components/dashboard/triadTrendIndicator.d.ts +12 -0
- package/dist/components/icons/ArrowRightIcon.d.ts +3 -0
- package/dist/components/icons/CalendarIcon.d.ts +3 -0
- package/dist/components/icons/ChevronRightIcon.d.ts +3 -0
- package/dist/components/icons/ClockIcon.d.ts +3 -0
- package/dist/components/icons/DownloadIcon.d.ts +3 -0
- package/dist/components/icons/FileTextIcon.d.ts +3 -0
- package/dist/components/icons/InfoIcon.d.ts +3 -0
- package/dist/components/icons/PlayIcon.d.ts +2 -0
- package/dist/components/icons/UserIcon.d.ts +3 -0
- package/dist/components/icons/UsersIcon.d.ts +3 -0
- package/dist/components/icons/index.d.ts +10 -0
- package/dist/components/index.d.ts +27 -0
- package/dist/dashboard-x4GA8cqi.js +4 -0
- package/dist/entry-ag-charts.d.ts +1 -0
- package/dist/hooks/useAgCharts.d.ts +2 -0
- package/dist/hooks/useBrandingChartTheme.d.ts +12 -0
- package/dist/iframe-config.d.ts +18 -0
- package/dist/index.css +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.js +5254 -0
- package/dist/labAnalysis-CaOCpV2g.js +4 -0
- package/dist/labResults-CV9K31Os.js +4 -0
- package/dist/layout/ShellLayout.d.ts +2 -0
- package/dist/layout/SideMenu.d.ts +5 -0
- package/dist/layout/SideMenuFooter.d.ts +2 -0
- package/dist/layout/SideMenuUserProfileConfigError.d.ts +4 -0
- package/dist/layout/icons/AlertLabSummaryIcon.d.ts +1 -0
- package/dist/layout/icons/DashboardIcon.d.ts +1 -0
- package/dist/layout/icons/LabAnalysisIcon.d.ts +1 -0
- package/dist/layout/icons/LabResultsIcon.d.ts +1 -0
- package/dist/layout/icons/LogoutIcon.d.ts +1 -0
- package/dist/layout/icons/PredictiveIndexIcon.d.ts +1 -0
- package/dist/layout/icons/QuestionnaireIcon.d.ts +1 -0
- package/dist/layout/icons/SuggestedProductsIcon.d.ts +1 -0
- package/dist/layout/icons/SupplementScheduleIcon.d.ts +1 -0
- package/dist/layout/icons/WellnessIndicatorsIcon.d.ts +1 -0
- package/dist/layout/icons/iconBaseClass.d.ts +1 -0
- package/dist/layout/icons/index.d.ts +11 -0
- package/dist/layout/index.d.ts +5 -0
- package/dist/layout/sideMenuUserProfileMissingDisplayName.d.ts +2 -0
- package/dist/layout/types.d.ts +66 -0
- package/dist/mountMetabolicEmbed.d.ts +3 -0
- package/dist/questionnaireAnalysis-S3k2ZioO.js +4 -0
- package/dist/suggestedProducts-DJlYkHhQ.js +4 -0
- package/dist/supplementSchedule-D8PmXo88.js +4 -0
- package/dist/totalPredictiveIndex-DQdWbzgU.js +4 -0
- package/dist/vendor-ag-charts-BxXxUmfV.js +82654 -0
- package/dist/wellnessIndicators-CNQcbuvH.js +4 -0
- package/package.json +81 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export type SegmentedRangeBarSegment = {
|
|
2
|
+
color: string;
|
|
3
|
+
activeColor?: string;
|
|
4
|
+
label: string;
|
|
5
|
+
};
|
|
6
|
+
export type SegmentedRangeBarProps = {
|
|
7
|
+
segments: readonly SegmentedRangeBarSegment[];
|
|
8
|
+
indicatorPercent: number;
|
|
9
|
+
indicatorPosition?: "continuous" | "segmentCenter";
|
|
10
|
+
showIndicator?: boolean;
|
|
11
|
+
highlightedSegmentIndex?: number;
|
|
12
|
+
};
|
|
13
|
+
export declare const LAB_METRIC_RANGE_BAR_SEGMENTS: readonly SegmentedRangeBarSegment[];
|
|
14
|
+
export declare const TRIAD_RESILIENCY_TREND_SEGMENTS: readonly SegmentedRangeBarSegment[];
|
|
15
|
+
export declare function activeSegmentHighlightColor(segments: readonly SegmentedRangeBarSegment[], indicatorPercent: number): string;
|
|
16
|
+
export declare function SegmentedRangeBar({ segments, indicatorPercent, indicatorPosition, showIndicator, highlightedSegmentIndex, }: SegmentedRangeBarProps): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type { DashboardCardSectionHeaderProps } from "./DashboardCardSectionHeader";
|
|
2
|
+
export { DashboardCardSectionHeader } from "./DashboardCardSectionHeader";
|
|
3
|
+
export { MetabolicScoreBar } from "./MetabolicScoreBar";
|
|
4
|
+
export { MetaflammationGauge } from "./MetaflammationGauge";
|
|
5
|
+
export { PractitionerNoteRow } from "./PractitionerNoteRow";
|
|
6
|
+
export type { SegmentedRangeBarProps, SegmentedRangeBarSegment, } from "./SegmentedRangeBar";
|
|
7
|
+
export { activeSegmentHighlightColor, LAB_METRIC_RANGE_BAR_SEGMENTS, SegmentedRangeBar, TRIAD_RESILIENCY_TREND_SEGMENTS, } from "./SegmentedRangeBar";
|
|
8
|
+
export { SupplementScheduleTableRow } from "./SupplementScheduleTableRow";
|
|
9
|
+
export { SupplementTriadMarkGroup } from "./SupplementTriadMarkGroup";
|
|
10
|
+
export { TriadRadar } from "./TriadRadar";
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { LabMetricRangeCardContent } from "../../data";
|
|
2
|
+
type LabMetricRangeCardProps = LabMetricRangeCardContent & {
|
|
3
|
+
onInfoClick?: () => void;
|
|
4
|
+
onDownloadClick?: () => void;
|
|
5
|
+
};
|
|
6
|
+
export declare function LabMetricRangeCard({ title, valueDisplay, indicatorPercent, normalRangeLabel, normalRangeValue, currentRangeLabel, currentRangeValue, infoAriaLabel, infoTooltip, downloadAriaLabel, onInfoClick, onDownloadClick, }: LabMetricRangeCardProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { LabResultsIntroContent } from "../../data";
|
|
2
|
+
type LabResultsIntroCardProps = LabResultsIntroContent & {
|
|
3
|
+
onVideoClick?: () => void;
|
|
4
|
+
};
|
|
5
|
+
export declare function LabResultsIntroCard({ triadNumber, heading, paragraphs, videoAriaLabel, onVideoClick, }: LabResultsIntroCardProps): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { LabAnalysisMarkerRowContent } from "../../../data";
|
|
2
|
+
import type { ComparisonRow, MetabolicTriadCategoryPanelMetricRow, MetabolicTriadCategoryPanelRangeBarProps } from "./types";
|
|
3
|
+
export declare function getSegmentColor(segments: readonly {
|
|
4
|
+
color: string;
|
|
5
|
+
}[], indicatorPercent: number): string | undefined;
|
|
6
|
+
export declare function ComparisonMetricsTable({ columnHeaders, rows, rangeBar, }: {
|
|
7
|
+
columnHeaders: readonly [string, string];
|
|
8
|
+
rows: readonly ComparisonRow[];
|
|
9
|
+
rangeBar: MetabolicTriadCategoryPanelRangeBarProps;
|
|
10
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export declare function MetricRowsBody({ rows, rangeBar, }: {
|
|
12
|
+
rows?: readonly MetabolicTriadCategoryPanelMetricRow[];
|
|
13
|
+
rangeBar: MetabolicTriadCategoryPanelRangeBarProps;
|
|
14
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export declare function LabAnalysisMarkersBody({ markers, rangeBar, }: {
|
|
16
|
+
markers?: readonly LabAnalysisMarkerRowContent[];
|
|
17
|
+
rangeBar: MetabolicTriadCategoryPanelRangeBarProps;
|
|
18
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
export declare function LabResultsMetricsBody({ normalRange, currentRange, previousRange, rangeBar, }: {
|
|
20
|
+
normalRange: string;
|
|
21
|
+
currentRange: string;
|
|
22
|
+
previousRange?: string;
|
|
23
|
+
rangeBar: MetabolicTriadCategoryPanelRangeBarProps;
|
|
24
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { MetabolicTriadCategoryPanelProps } from "./types";
|
|
2
|
+
export declare function MetabolicTriadCategoryPanel(props: MetabolicTriadCategoryPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
export type { MetabolicTriadCategoryPanelMetricRow, MetabolicTriadCategoryPanelProps, MetabolicTriadCategoryPanelRangeBarProps, } from "./types";
|
package/dist/components/dashboard/components/sections/MetabolicTriadCategoryPanel/primitives.d.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { MetabolicTriadCategoryPanelRangeBarProps } from "./types";
|
|
3
|
+
export declare function ValueBadge({ value, variant, }: {
|
|
4
|
+
value: string | undefined;
|
|
5
|
+
variant?: "default" | "total";
|
|
6
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export declare function CategoryPanelFrame({ children, trendColor, }: {
|
|
8
|
+
children: ReactNode;
|
|
9
|
+
trendColor?: string;
|
|
10
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export declare function CategoryPanelTitleHeader({ title, trailingInfo, trendColor, headerBackground, }: {
|
|
12
|
+
title: string;
|
|
13
|
+
trailingInfo?: ReactNode;
|
|
14
|
+
trendColor?: string;
|
|
15
|
+
headerBackground?: string;
|
|
16
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export declare function InfoHeaderButton({ ariaLabel, tooltip, onClick, }: {
|
|
18
|
+
ariaLabel: string;
|
|
19
|
+
tooltip: ReactNode;
|
|
20
|
+
onClick?: () => void;
|
|
21
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
export declare function CategoryPanelRangeBar({ segments, indicatorPercent, indicatorPosition, }: MetabolicTriadCategoryPanelRangeBarProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { LabAnalysisMarkerRowContent, LabResultsMetricContent, QuestionnaireCategoryContent, QuestionnaireTrendZone, TriadResiliencyCategoryContent } from "../../../data";
|
|
2
|
+
import type { TriadTrendBarConfig } from "../../../triadTrendIndicator";
|
|
3
|
+
import type { SegmentedRangeBarSegment } from "../../composite";
|
|
4
|
+
export type MetabolicTriadCategoryPanelMetricRow = {
|
|
5
|
+
label: string;
|
|
6
|
+
value?: string;
|
|
7
|
+
valueVariant?: "default" | "total";
|
|
8
|
+
labelEmphasis?: boolean;
|
|
9
|
+
};
|
|
10
|
+
export type MetabolicTriadCategoryPanelRangeBarProps = {
|
|
11
|
+
segments: readonly SegmentedRangeBarSegment[];
|
|
12
|
+
indicatorPercent: number;
|
|
13
|
+
indicatorPosition?: "continuous" | "segmentCenter";
|
|
14
|
+
};
|
|
15
|
+
export type ComparisonRow = {
|
|
16
|
+
label: string;
|
|
17
|
+
labelClassName?: string;
|
|
18
|
+
current: string | undefined;
|
|
19
|
+
previous: string | undefined;
|
|
20
|
+
valueVariant?: "default" | "total";
|
|
21
|
+
};
|
|
22
|
+
export type MetabolicTriadCategoryPanelProps = {
|
|
23
|
+
layout: "triadResiliency";
|
|
24
|
+
category: TriadResiliencyCategoryContent;
|
|
25
|
+
currentRangeLabel: string;
|
|
26
|
+
previousRangeLabel: string;
|
|
27
|
+
siblingTotals: readonly (number | null)[];
|
|
28
|
+
trendBar?: TriadTrendBarConfig;
|
|
29
|
+
} | {
|
|
30
|
+
layout: "questionnaire";
|
|
31
|
+
category: QuestionnaireCategoryContent;
|
|
32
|
+
currentRangeLabel?: string;
|
|
33
|
+
previousRangeLabel?: string;
|
|
34
|
+
onInfoClick?: () => void;
|
|
35
|
+
} | {
|
|
36
|
+
layout: "metricRows";
|
|
37
|
+
title: string;
|
|
38
|
+
infoAriaLabel: string;
|
|
39
|
+
infoTooltip?: string;
|
|
40
|
+
onInfoClick?: () => void;
|
|
41
|
+
rows: readonly MetabolicTriadCategoryPanelMetricRow[];
|
|
42
|
+
indicatorPercent: number;
|
|
43
|
+
indicatorPosition?: "continuous" | "segmentCenter";
|
|
44
|
+
segments?: readonly SegmentedRangeBarSegment[];
|
|
45
|
+
} | {
|
|
46
|
+
layout: "labResults";
|
|
47
|
+
category: LabResultsMetricContent;
|
|
48
|
+
onInfoClick?: () => void;
|
|
49
|
+
} | {
|
|
50
|
+
layout: "labAnalysis";
|
|
51
|
+
title: string;
|
|
52
|
+
markers: readonly LabAnalysisMarkerRowContent[];
|
|
53
|
+
trendZone: QuestionnaireTrendZone;
|
|
54
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { MetabolicTriadCategoryPanel, type MetabolicTriadCategoryPanelMetricRow, type MetabolicTriadCategoryPanelProps, type MetabolicTriadCategoryPanelRangeBarProps, } from "./MetabolicTriadCategoryPanel/index";
|
package/dist/components/dashboard/components/sections/MetabolicTriadCategoryPanelSkeleton.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export type MetabolicTriadCategoryPanelSkeletonProps = {
|
|
2
|
+
variant: "questionnaire";
|
|
3
|
+
title?: string;
|
|
4
|
+
currentRangeLabel?: string;
|
|
5
|
+
previousRangeLabel?: string;
|
|
6
|
+
} | {
|
|
7
|
+
variant: "triadResiliency";
|
|
8
|
+
title?: string;
|
|
9
|
+
currentRangeLabel?: string;
|
|
10
|
+
previousRangeLabel?: string;
|
|
11
|
+
} | {
|
|
12
|
+
variant: "labResults";
|
|
13
|
+
title?: string;
|
|
14
|
+
} | {
|
|
15
|
+
variant: "labAnalysis";
|
|
16
|
+
title?: string;
|
|
17
|
+
markerSlots?: number;
|
|
18
|
+
};
|
|
19
|
+
export declare function MetabolicTriadCategoryPanelSkeleton(props: MetabolicTriadCategoryPanelSkeletonProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { QuestionnaireAnalysisSectionContent, TriadResiliencyCardContent } from "../../data";
|
|
2
|
+
export type MetabolicTriadSectionCardProps = (TriadResiliencyCardContent & {
|
|
3
|
+
variant?: "triadResiliency";
|
|
4
|
+
onInfoClick?: () => void;
|
|
5
|
+
}) | (QuestionnaireAnalysisSectionContent & {
|
|
6
|
+
variant: "questionnaire";
|
|
7
|
+
currentRangeLabel?: string;
|
|
8
|
+
previousRangeLabel?: string;
|
|
9
|
+
onCategoryInfoClick?: () => void;
|
|
10
|
+
});
|
|
11
|
+
export declare function MetabolicTriadSectionCard(props: MetabolicTriadSectionCardProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import type { DashboardOverallScoreContent } from "../../data";
|
|
2
|
+
export declare function OverallMetabolicScoreCard({ sectionTitle, scorePercent, score, scorePercentClassName, infoAriaLabel, infoTooltip, questionnaireRowLabel, questionnaireLastLabel, labsRowLabel, labsLastLabel, wearableRowLabel, wearableValueLabel, }: DashboardOverallScoreContent): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { TriadRadarReportContent } from "../../data";
|
|
2
|
+
export declare function TriadRadarReportCard({ title, infoAriaLabel, infoTooltip, labels, values, fill, stroke, viewReportButtonLabel, onViewReport, }: TriadRadarReportContent & {
|
|
3
|
+
onViewReport?: () => void;
|
|
4
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
type WelcomeMessageCardProps = {
|
|
3
|
+
title: string;
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
actions: ReactNode;
|
|
6
|
+
};
|
|
7
|
+
export declare function WelcomeMessageCard({ title, children, actions }: WelcomeMessageCardProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { WellnessIndicatorCardContent } from "../../data";
|
|
2
|
+
type WellnessIndicatorCardProps = WellnessIndicatorCardContent & {
|
|
3
|
+
onInfoClick?: () => void;
|
|
4
|
+
};
|
|
5
|
+
export declare function WellnessIndicatorCard({ title, score, infoAriaLabel, infoTooltip, zones, onInfoClick, }: WellnessIndicatorCardProps): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export { AlertLabSummaryCard } from "./AlertLabSummaryCard";
|
|
2
|
+
export { LabAnalysisTriadCard } from "./LabAnalysisTriadCard";
|
|
3
|
+
export { LabMetricRangeCard } from "./LabMetricRangeCard";
|
|
4
|
+
export { MetabolicTriadCategoryPanel, type MetabolicTriadCategoryPanelMetricRow, type MetabolicTriadCategoryPanelProps, type MetabolicTriadCategoryPanelRangeBarProps, } from "./MetabolicTriadCategoryPanel";
|
|
5
|
+
export { MetabolicTriadCategoryPanelSkeleton, type MetabolicTriadCategoryPanelSkeletonProps, } from "./MetabolicTriadCategoryPanelSkeleton";
|
|
6
|
+
export { MetabolicTriadIntroCard } from "./MetabolicTriadIntroCard";
|
|
7
|
+
export { MetabolicTriadSectionCard, type MetabolicTriadSectionCardProps, } from "./MetabolicTriadSectionCard";
|
|
8
|
+
export { MetaflammationGaugeCard } from "./MetaflammationGaugeCard";
|
|
9
|
+
export { OverallMetabolicScoreCard } from "./OverallMetabolicScoreCard";
|
|
10
|
+
export { PractitionerNotesCard } from "./PractitionerNotesCard";
|
|
11
|
+
export type { ProfileSummaryRow } from "./ProfileSummaryCard";
|
|
12
|
+
export { ProfileSummaryCard } from "./ProfileSummaryCard";
|
|
13
|
+
export { SupplementScheduleCard } from "./SupplementScheduleCard";
|
|
14
|
+
export { TriadRadarReportCard } from "./TriadRadarReportCard";
|
|
15
|
+
export { WelcomeMessageCard } from "./WelcomeMessageCard";
|
|
16
|
+
export { WellnessIndicatorCard } from "./WellnessIndicatorCard";
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const dashboardIconButtonClass = "rounded-full p-0.5 text-[color:var(--mb-color-text-muted)] transition hover:text-[color:var(--mb-color-text)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:var(--mb-color-focus-ring)]";
|
|
2
|
+
export declare const dashboardCardInlineButtonClass = "whitespace-nowrap !border-[color:var(--mb-color-card-inline-button-border)] !bg-[color:var(--mb-color-card-inline-button-bg)] !px-3 !py-2 !text-sm !font-medium !text-[color:var(--mb-color-card-inline-button-text)] [&_svg]:!text-[color:var(--mb-color-card-inline-button-text)] !shadow-none hover:!bg-[color:var(--mb-color-card-inline-button-hover)]";
|
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
import type { TriadTrendBarConfig } from "../triadTrendIndicator";
|
|
2
|
+
export type WelcomeActionId = "schedule-labs" | "export-reports";
|
|
3
|
+
export type DashboardWelcomeContent = {
|
|
4
|
+
title: string;
|
|
5
|
+
paragraphs: readonly string[];
|
|
6
|
+
actions: ReadonlyArray<{
|
|
7
|
+
id: WelcomeActionId;
|
|
8
|
+
label: string;
|
|
9
|
+
}>;
|
|
10
|
+
};
|
|
11
|
+
export type DashboardOverallScoreContent = {
|
|
12
|
+
sectionTitle: string;
|
|
13
|
+
scorePercent: number;
|
|
14
|
+
score: number;
|
|
15
|
+
scorePercentClassName: string;
|
|
16
|
+
infoAriaLabel?: string;
|
|
17
|
+
infoTooltip?: string;
|
|
18
|
+
questionnaireRowLabel?: string;
|
|
19
|
+
questionnaireLastLabel?: string;
|
|
20
|
+
labsRowLabel: string;
|
|
21
|
+
labsLastLabel: string;
|
|
22
|
+
wearableRowLabel: string;
|
|
23
|
+
wearableValueLabel: string;
|
|
24
|
+
};
|
|
25
|
+
export type DashboardMetaflammationContent = {
|
|
26
|
+
title: string;
|
|
27
|
+
value: number;
|
|
28
|
+
max: number;
|
|
29
|
+
infoAriaLabel?: string;
|
|
30
|
+
infoTooltip?: string;
|
|
31
|
+
centerValueColor?: string;
|
|
32
|
+
};
|
|
33
|
+
export type TriadRadarReportContent = {
|
|
34
|
+
title: string;
|
|
35
|
+
infoAriaLabel: string;
|
|
36
|
+
infoTooltip?: string;
|
|
37
|
+
labels: readonly [string, string, string];
|
|
38
|
+
values: readonly [number, number, number];
|
|
39
|
+
fill: string;
|
|
40
|
+
stroke: string;
|
|
41
|
+
viewReportButtonLabel: string;
|
|
42
|
+
};
|
|
43
|
+
export type LabMetricRangeCardContent = {
|
|
44
|
+
title: string;
|
|
45
|
+
valueDisplay: string;
|
|
46
|
+
indicatorPercent: number;
|
|
47
|
+
normalRangeLabel: string;
|
|
48
|
+
normalRangeValue: string;
|
|
49
|
+
currentRangeLabel: string;
|
|
50
|
+
currentRangeValue: string;
|
|
51
|
+
infoAriaLabel: string;
|
|
52
|
+
infoTooltip?: string;
|
|
53
|
+
downloadAriaLabel: string;
|
|
54
|
+
};
|
|
55
|
+
export type DashboardTrendStatus = "optimal" | "high" | "low";
|
|
56
|
+
export type DashboardTriadTrendChipContent = {
|
|
57
|
+
triadNumber: number;
|
|
58
|
+
name: string;
|
|
59
|
+
aggregateScoreDisplay: string;
|
|
60
|
+
};
|
|
61
|
+
export type DashboardTriadTrendCategoryRowContent = {
|
|
62
|
+
name: string;
|
|
63
|
+
infoAriaLabel: string;
|
|
64
|
+
infoTooltip?: string;
|
|
65
|
+
symptomScore: string;
|
|
66
|
+
labScore: string;
|
|
67
|
+
totalScore: string;
|
|
68
|
+
status: DashboardTrendStatus;
|
|
69
|
+
};
|
|
70
|
+
export type DashboardTotalPredictiveTrendsContent = {
|
|
71
|
+
sectionTitle: string;
|
|
72
|
+
infoAriaLabel: string;
|
|
73
|
+
infoTooltip?: string;
|
|
74
|
+
lastLabsCaption?: string;
|
|
75
|
+
lastLabsLabel: string;
|
|
76
|
+
viewAllLabel: string;
|
|
77
|
+
triads: readonly DashboardTriadTrendChipContent[];
|
|
78
|
+
categoriesByTriadIndex: readonly (readonly DashboardTriadTrendCategoryRowContent[])[];
|
|
79
|
+
};
|
|
80
|
+
export type DashboardAlertLabTableRowContent = {
|
|
81
|
+
name: string;
|
|
82
|
+
infoAriaLabel: string;
|
|
83
|
+
infoTooltip?: string;
|
|
84
|
+
symptomScore: string;
|
|
85
|
+
labScore: string;
|
|
86
|
+
totalScore: string;
|
|
87
|
+
status: DashboardTrendStatus;
|
|
88
|
+
};
|
|
89
|
+
export type DashboardAlertLabSummaryTableContent = {
|
|
90
|
+
sectionTitle: string;
|
|
91
|
+
infoAriaLabel: string;
|
|
92
|
+
infoTooltip?: string;
|
|
93
|
+
lastLabsCaption?: string;
|
|
94
|
+
lastLabsLabel: string;
|
|
95
|
+
viewAllLabel: string;
|
|
96
|
+
rows: readonly DashboardAlertLabTableRowContent[];
|
|
97
|
+
};
|
|
98
|
+
export type DashboardTabContent = {
|
|
99
|
+
pageHeader: {
|
|
100
|
+
title: string;
|
|
101
|
+
subtitle: string;
|
|
102
|
+
};
|
|
103
|
+
profile?: {
|
|
104
|
+
initials: string;
|
|
105
|
+
rows: ReadonlyArray<readonly [string, string]>;
|
|
106
|
+
};
|
|
107
|
+
welcome: DashboardWelcomeContent;
|
|
108
|
+
overallScore: DashboardOverallScoreContent;
|
|
109
|
+
metaflammation: DashboardMetaflammationContent;
|
|
110
|
+
metabolicTriadIntroParagraphs: readonly string[];
|
|
111
|
+
triadReports: readonly TriadRadarReportContent[];
|
|
112
|
+
labMetrics: readonly LabMetricRangeCardContent[];
|
|
113
|
+
totalPredictiveTrends?: DashboardTotalPredictiveTrendsContent;
|
|
114
|
+
alertLabSummaryTable?: DashboardAlertLabSummaryTableContent;
|
|
115
|
+
};
|
|
116
|
+
export type TriadResiliencyCategoryContent = {
|
|
117
|
+
title: string;
|
|
118
|
+
symptomScore: string;
|
|
119
|
+
labScore: string;
|
|
120
|
+
totalScore: string;
|
|
121
|
+
previousSymptom?: string;
|
|
122
|
+
previousLab?: string;
|
|
123
|
+
previousTotal?: string;
|
|
124
|
+
trendIndicatorPercent?: number;
|
|
125
|
+
};
|
|
126
|
+
export type TriadResiliencyCardContent = {
|
|
127
|
+
triadNumber: number;
|
|
128
|
+
heading: string;
|
|
129
|
+
aggregateScore: string;
|
|
130
|
+
infoAriaLabel: string;
|
|
131
|
+
infoTooltip?: string;
|
|
132
|
+
currentRangeLabel?: string;
|
|
133
|
+
previousRangeLabel?: string;
|
|
134
|
+
trendBar?: TriadTrendBarConfig;
|
|
135
|
+
categories: readonly TriadResiliencyCategoryContent[];
|
|
136
|
+
};
|
|
137
|
+
export type TotalPredictiveIndexTabContent = {
|
|
138
|
+
pageHeader: {
|
|
139
|
+
title: string;
|
|
140
|
+
subtitle: string;
|
|
141
|
+
};
|
|
142
|
+
triadCards: readonly TriadResiliencyCardContent[];
|
|
143
|
+
};
|
|
144
|
+
export type WellnessIndicatorZoneBounds = {
|
|
145
|
+
min: number;
|
|
146
|
+
max: number;
|
|
147
|
+
};
|
|
148
|
+
export type WellnessIndicatorZones = {
|
|
149
|
+
low: WellnessIndicatorZoneBounds;
|
|
150
|
+
moderate: WellnessIndicatorZoneBounds;
|
|
151
|
+
high: WellnessIndicatorZoneBounds;
|
|
152
|
+
};
|
|
153
|
+
export type WellnessIndicatorCardContent = {
|
|
154
|
+
title: string;
|
|
155
|
+
score: number;
|
|
156
|
+
infoAriaLabel: string;
|
|
157
|
+
infoTooltip?: string;
|
|
158
|
+
zones: WellnessIndicatorZones;
|
|
159
|
+
};
|
|
160
|
+
export type WellnessIndicatorsTabContent = {
|
|
161
|
+
pageHeader: {
|
|
162
|
+
title: string;
|
|
163
|
+
subtitle: string;
|
|
164
|
+
};
|
|
165
|
+
indicators: readonly WellnessIndicatorCardContent[];
|
|
166
|
+
};
|
|
167
|
+
export type QuestionnaireTrendZone = "low" | "moderate" | "high";
|
|
168
|
+
export type QuestionnaireCategoryContent = {
|
|
169
|
+
title: string;
|
|
170
|
+
infoAriaLabel: string;
|
|
171
|
+
infoTooltip?: string;
|
|
172
|
+
symptomScore: string;
|
|
173
|
+
previousSymptom?: string;
|
|
174
|
+
trendZone: QuestionnaireTrendZone;
|
|
175
|
+
};
|
|
176
|
+
export type QuestionnaireAnalysisSectionContent = {
|
|
177
|
+
triadNumber: number;
|
|
178
|
+
heading: string;
|
|
179
|
+
aggregateScore: string;
|
|
180
|
+
categories: readonly QuestionnaireCategoryContent[];
|
|
181
|
+
};
|
|
182
|
+
export type QuestionnaireAnalysisTabContent = {
|
|
183
|
+
pageHeader: {
|
|
184
|
+
title: string;
|
|
185
|
+
subtitle: string;
|
|
186
|
+
};
|
|
187
|
+
sections: readonly QuestionnaireAnalysisSectionContent[];
|
|
188
|
+
};
|
|
189
|
+
export type SupplementScheduleRowContent = {
|
|
190
|
+
timeLabel: string;
|
|
191
|
+
dosage: string | null;
|
|
192
|
+
};
|
|
193
|
+
export type SupplementScheduleCardContent = {
|
|
194
|
+
title: string;
|
|
195
|
+
triadNumbers?: readonly number[];
|
|
196
|
+
imageSrc?: string;
|
|
197
|
+
imageAlt?: string;
|
|
198
|
+
scheduleRows: readonly SupplementScheduleRowContent[];
|
|
199
|
+
};
|
|
200
|
+
export type PractitionerNotesContent = {
|
|
201
|
+
title: string;
|
|
202
|
+
items: readonly string[];
|
|
203
|
+
};
|
|
204
|
+
export type SupplementScheduleTabContent = {
|
|
205
|
+
pageHeader: {
|
|
206
|
+
title: string;
|
|
207
|
+
subtitle: string;
|
|
208
|
+
};
|
|
209
|
+
cards: readonly SupplementScheduleCardContent[];
|
|
210
|
+
practitionerNotes?: PractitionerNotesContent;
|
|
211
|
+
};
|
|
212
|
+
export type LabResultsMetricContent = {
|
|
213
|
+
title: string;
|
|
214
|
+
infoAriaLabel: string;
|
|
215
|
+
infoTooltip?: string;
|
|
216
|
+
normalRange: string;
|
|
217
|
+
currentRange: string;
|
|
218
|
+
previousRange?: string;
|
|
219
|
+
indicatorPercent: number;
|
|
220
|
+
};
|
|
221
|
+
export type LabResultsGroupContent = {
|
|
222
|
+
title: string;
|
|
223
|
+
subtitle: string;
|
|
224
|
+
metrics: readonly LabResultsMetricContent[];
|
|
225
|
+
};
|
|
226
|
+
export type LabResultsIntroContent = {
|
|
227
|
+
triadNumber: number;
|
|
228
|
+
heading: string;
|
|
229
|
+
paragraphs: readonly string[];
|
|
230
|
+
videoAriaLabel?: string;
|
|
231
|
+
};
|
|
232
|
+
export type LabResultsTabContent = {
|
|
233
|
+
pageHeader: {
|
|
234
|
+
title: string;
|
|
235
|
+
subtitle: string;
|
|
236
|
+
};
|
|
237
|
+
intro: LabResultsIntroContent;
|
|
238
|
+
groups: readonly LabResultsGroupContent[];
|
|
239
|
+
};
|
|
240
|
+
export type SuggestedProductItemContent = {
|
|
241
|
+
imageSrc?: string;
|
|
242
|
+
imageAlt: string;
|
|
243
|
+
name: string;
|
|
244
|
+
tagline?: string;
|
|
245
|
+
};
|
|
246
|
+
export type SuggestedProductsTabContent = {
|
|
247
|
+
pageHeader: {
|
|
248
|
+
title: string;
|
|
249
|
+
subtitle: string;
|
|
250
|
+
};
|
|
251
|
+
intro: LabResultsIntroContent;
|
|
252
|
+
labSectionTitle: string;
|
|
253
|
+
labMetrics: readonly LabResultsMetricContent[];
|
|
254
|
+
symptomsSectionTitle: string;
|
|
255
|
+
symptoms: readonly string[];
|
|
256
|
+
productsSectionTitle: string;
|
|
257
|
+
products: readonly SuggestedProductItemContent[];
|
|
258
|
+
};
|
|
259
|
+
export type LabAnalysisMarkerRowContent = {
|
|
260
|
+
label: string;
|
|
261
|
+
arrows: string;
|
|
262
|
+
};
|
|
263
|
+
export type LabAnalysisSectionContent = {
|
|
264
|
+
triadNumber: number;
|
|
265
|
+
heading: string;
|
|
266
|
+
aggregateScore: string;
|
|
267
|
+
systemsBanner: string;
|
|
268
|
+
markers: readonly LabAnalysisMarkerRowContent[];
|
|
269
|
+
trendZone: QuestionnaireTrendZone;
|
|
270
|
+
descriptionPrimary: string;
|
|
271
|
+
descriptionSecondary: string;
|
|
272
|
+
};
|
|
273
|
+
export type LabAnalysisTabContent = {
|
|
274
|
+
pageHeader: {
|
|
275
|
+
title: string;
|
|
276
|
+
subtitle: string;
|
|
277
|
+
};
|
|
278
|
+
sections: readonly LabAnalysisSectionContent[];
|
|
279
|
+
};
|
|
280
|
+
export type AlertLabSummaryPairRowContent = {
|
|
281
|
+
left: string;
|
|
282
|
+
right: string | null;
|
|
283
|
+
};
|
|
284
|
+
export type AlertLabSummaryCardContent = {
|
|
285
|
+
metricTitle: string;
|
|
286
|
+
statusText: string;
|
|
287
|
+
indicatorPercent: number;
|
|
288
|
+
openingParagraph: string;
|
|
289
|
+
referenceLine: string | null;
|
|
290
|
+
risksLeadParagraph: string;
|
|
291
|
+
riskRows: readonly AlertLabSummaryPairRowContent[];
|
|
292
|
+
nutrientsLeadParagraph: string;
|
|
293
|
+
nutrientRows: readonly AlertLabSummaryPairRowContent[];
|
|
294
|
+
};
|
|
295
|
+
export type AlertLabSummaryTabContent = {
|
|
296
|
+
pageHeader: {
|
|
297
|
+
title: string;
|
|
298
|
+
subtitle: string;
|
|
299
|
+
};
|
|
300
|
+
cards: readonly AlertLabSummaryCardContent[];
|
|
301
|
+
};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export type { TriadTrendBarConfig, TriadTrendBarMapping } from "../triadTrendIndicator";
|
|
2
|
+
export type { AlertLabSummaryCardContent, AlertLabSummaryPairRowContent, AlertLabSummaryTabContent, DashboardAlertLabSummaryTableContent, DashboardAlertLabTableRowContent, DashboardMetaflammationContent, DashboardOverallScoreContent, DashboardTabContent, DashboardTotalPredictiveTrendsContent, DashboardTrendStatus, DashboardTriadTrendCategoryRowContent, DashboardTriadTrendChipContent, DashboardWelcomeContent, LabAnalysisMarkerRowContent, LabAnalysisSectionContent, LabAnalysisTabContent, LabMetricRangeCardContent, LabResultsGroupContent, LabResultsIntroContent, LabResultsMetricContent, LabResultsTabContent, PractitionerNotesContent, QuestionnaireAnalysisSectionContent, QuestionnaireAnalysisTabContent, QuestionnaireCategoryContent, QuestionnaireTrendZone, SuggestedProductItemContent, SuggestedProductsTabContent, SupplementScheduleCardContent, SupplementScheduleRowContent, SupplementScheduleTabContent, TotalPredictiveIndexTabContent, TriadRadarReportContent, TriadResiliencyCardContent, TriadResiliencyCategoryContent, WelcomeActionId, WellnessIndicatorCardContent, WellnessIndicatorsTabContent, WellnessIndicatorZoneBounds, WellnessIndicatorZones, } from "./contentTypes";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { QuestionnaireTrendZone } from "./data/contentTypes";
|
|
2
|
+
export type TriadTrendBarMapping = "relativeTotal" | "absoluteLinear" | "thresholdBands";
|
|
3
|
+
export declare function trendZoneToIndicatorPercent(zone: QuestionnaireTrendZone): number;
|
|
4
|
+
export type TriadTrendBarConfig = {
|
|
5
|
+
mapping?: TriadTrendBarMapping;
|
|
6
|
+
scaleMin?: number;
|
|
7
|
+
scaleMax?: number;
|
|
8
|
+
thresholdLowBelow?: number;
|
|
9
|
+
thresholdHighAbove?: number;
|
|
10
|
+
};
|
|
11
|
+
export declare function parseTriadScoreValue(raw: string | undefined): number | null;
|
|
12
|
+
export declare function computeTriadCategoryTrendPercent(total: number | null, siblingTotals: readonly (number | null)[], manualPercent: number | undefined, config: TriadTrendBarConfig | undefined): number;
|