-
+
{contact.ctype}
-
+
{joinList([
isTruthyString(contact.name)
diff --git a/app/src/views/FieldReportForm/ActionsFields/index.tsx b/app/src/views/FieldReportForm/ActionsFields/index.tsx
index 89c907bdd4..a6f3dba372 100644
--- a/app/src/views/FieldReportForm/ActionsFields/index.tsx
+++ b/app/src/views/FieldReportForm/ActionsFields/index.tsx
@@ -275,7 +275,7 @@ function ActionsFields(props: Props) {
diff --git a/app/src/views/FieldReportForm/ContextFields/TitlePreview/index.tsx b/app/src/views/FieldReportForm/ContextFields/TitlePreview/index.tsx
index 501af424ab..97f02ad6bc 100644
--- a/app/src/views/FieldReportForm/ContextFields/TitlePreview/index.tsx
+++ b/app/src/views/FieldReportForm/ContextFields/TitlePreview/index.tsx
@@ -1,5 +1,5 @@
import { useMemo } from 'react';
-import { TextOutput } from '@ifrc-go/ui';
+import { DataDisplay } from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
import useAlert from '#hooks/useAlert';
@@ -63,7 +63,7 @@ function TitlePreview(props: Props) {
});
return (
-
) : (
-
@@ -75,7 +75,7 @@ function FlashUpdateExportModal(props: Props) {
)}
/>
)}
-
+
);
}
diff --git a/app/src/views/FlashUpdateDetails/FlashUpdateShareModal/index.tsx b/app/src/views/FlashUpdateDetails/FlashUpdateShareModal/index.tsx
index 59d94e0273..e8178c9cd6 100644
--- a/app/src/views/FlashUpdateDetails/FlashUpdateShareModal/index.tsx
+++ b/app/src/views/FlashUpdateDetails/FlashUpdateShareModal/index.tsx
@@ -1,9 +1,9 @@
import { useCallback } from 'react';
import {
Button,
+ Dialog,
ListView,
Message,
- Modal,
MultiSelectInput,
} from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
@@ -90,7 +90,7 @@ function FlashUpdateShareModal(props: Props) {
const pending = sharePending || donorResponsePending || donorGroupResponsePending;
return (
-
-
+
);
}
diff --git a/app/src/views/FlashUpdateDetails/index.tsx b/app/src/views/FlashUpdateDetails/index.tsx
index 0b117f51d7..dbd737b688 100644
--- a/app/src/views/FlashUpdateDetails/index.tsx
+++ b/app/src/views/FlashUpdateDetails/index.tsx
@@ -11,13 +11,13 @@ import {
Breadcrumbs,
Button,
Container,
- DateOutput,
- HtmlOutput,
+ DataDisplay,
+ DateDisplay,
+ DisplayLabel,
+ HtmlDisplay,
Image,
- Label,
ListView,
Message,
- TextOutput,
} from '@ifrc-go/ui';
import {
useBooleanState,
@@ -199,7 +199,7 @@ export function Component() {
heading={strings.flashUpdateSituationalOverviewHeading}
withHeaderBorder
>
-
@@ -259,7 +259,7 @@ export function Component() {
>
{isTruthyString(actionTaken.summary) && (
-
{actionTaken.action_details.map(
(actionDetail) => (
-
+
{actionDetail.name}
-
+
),
)}
@@ -304,12 +304,12 @@ export function Component() {
key={reference.id}
heading={reference.source_description}
headerDescription={(
-
+
)}
headingLevel={4}
withPadding
- withBackground
- withShadow
+ backgroundColor="foreground"
+ boxShadow="md"
>
{isTruthyString(reference.url) && (
diff --git a/app/src/views/FlashUpdateForm/ContextTab/ReferenceInput/index.tsx b/app/src/views/FlashUpdateForm/ContextTab/ReferenceInput/index.tsx
index 4e07a72037..1697b24754 100644
--- a/app/src/views/FlashUpdateForm/ContextTab/ReferenceInput/index.tsx
+++ b/app/src/views/FlashUpdateForm/ContextTab/ReferenceInput/index.tsx
@@ -111,7 +111,6 @@ function ReferenceInput(props: Props) {
ariaLabel={strings.deleteButtonTitle}
title={strings.deleteButtonTitle}
onClick={onRemove}
- styleVariant="action"
disabled={disabled}
>
diff --git a/app/src/views/FlashUpdateForm/ContextTab/index.tsx b/app/src/views/FlashUpdateForm/ContextTab/index.tsx
index 0171dba0b2..967f4e397d 100644
--- a/app/src/views/FlashUpdateForm/ContextTab/index.tsx
+++ b/app/src/views/FlashUpdateForm/ContextTab/index.tsx
@@ -202,7 +202,7 @@ function ContextTab(props: Props) {
name={undefined}
disabled={!value.country_district || !value.hazard_type}
onClick={handleTitleGenerateButtonClick}
- styleVariant="action"
+ variant="tertiary"
>
{strings.flashUpdateFormGenerateButtonLabel}
diff --git a/app/src/views/Home/index.tsx b/app/src/views/Home/index.tsx
index d86aacf9f6..af42163bc8 100644
--- a/app/src/views/Home/index.tsx
+++ b/app/src/views/Home/index.tsx
@@ -7,9 +7,9 @@ import {
} from '@ifrc-go/icons';
import {
Container,
- InfoPopup,
- KeyFigureView,
+ KeyFigureCard,
ListView,
+ MoreInfo,
} from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
import { getPercentage } from '@ifrc-go/ui/utils';
@@ -42,61 +42,61 @@ export function Component() {
layout="grid"
numPreferredGridColumns={5}
>
- }
value={aggregatedAppealResponse.active_drefs}
valueType="number"
- size="lg"
+ textSize="4xl"
info={(
-
+ >
+ {strings.keyFiguresDrefDescription}
+
)}
label={strings.homeKeyFiguresActiveDrefs}
/>
- }
value={aggregatedAppealResponse.active_appeals}
valueType="number"
- size="lg"
+ textSize="4xl"
info={(
-
+ >
+ {strings.keyFigureActiveAppealDescription}
+
)}
label={strings.homeKeyFiguresActiveAppeals}
/>
- }
value={aggregatedAppealResponse.amount_requested_dref_included}
valueType="number"
- size="lg"
- valueOptions={{ compact: true }}
+ textSize="4xl"
+ compact
label={strings.homeKeyFiguresBudget}
/>
- }
value={getPercentage(
aggregatedAppealResponse?.amount_funded_dref_included,
aggregatedAppealResponse?.amount_requested_dref_included,
)}
valueType="number"
- valueOptions={{
- compact: true,
- suffix: '%',
- }}
+ compact
+ suffix="%"
label={strings.homeKeyFiguresAppealsFunding}
- size="lg"
+ textSize="4xl"
/>
- }
value={aggregatedAppealResponse.target_population}
valueType="number"
- valueOptions={{ compact: true }}
+ compact
label={strings.homeKeyFiguresTargetPop}
- size="lg"
+ textSize="4xl"
/>
);
diff --git a/app/src/views/MontandonLandingPage/index.tsx b/app/src/views/MontandonLandingPage/index.tsx
index c7c539cfa0..f4337b255c 100644
--- a/app/src/views/MontandonLandingPage/index.tsx
+++ b/app/src/views/MontandonLandingPage/index.tsx
@@ -5,13 +5,13 @@ import {
} from '@ifrc-go/icons';
import {
Container,
+ DataDisplay,
Description,
- DropdownMenu,
+ DisplayLabel,
Heading,
- InlineFrame,
- Label,
+ Iframe,
ListView,
- TextOutput,
+ Menu,
} from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
import { resolveToComponent } from '@ifrc-go/ui/utils';
@@ -40,10 +40,9 @@ export function Component() {
description={strings.montandonHeadingDescription}
actions={(
<>
- }
- labelColorVariant="primary"
preferredPopupWidth={30}
persistent
>
@@ -58,24 +57,24 @@ export function Component() {
withSpacingOpticalCorrection
spacing="sm"
>
-
-
-
-
+
{strings.stacLocationText}
-
+
-
-
+ }
- labelColorVariant="primary"
preferredPopupWidth={30}
persistent
>
@@ -114,9 +112,9 @@ export function Component() {
)}
>
-
+
{strings.shareUrlLabel}
-
+
-
+
>
)}
info={(
-
);
@@ -328,13 +329,13 @@ export function Component() {
)}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -621,7 +622,7 @@ export function Component() {
/>
)}
{majorCoordinationMechanismDefined && (
-
)}
{riskSecurityConcernDefined && (
-
-
-
-
-
-
{indicator.title}
-
-
@@ -1037,7 +1038,7 @@ export function Component() {
{nsContactDefined && (
-
)}
{appealManagerContactDefined && (
-
)}
{projectManagerContactDefined && (
-
)}
{focalPointContactDefined && (
-
)}
{mediaContactDefined && (
-
)}
{nationalSocietyIntegrityContactDefined && (
-
)}
{nationalSocietyHotlineDefined && (
-
diff --git a/app/src/views/OldDrefFinalReportForm/ObsoletePayloadModal/index.tsx b/app/src/views/OldDrefFinalReportForm/ObsoletePayloadModal/index.tsx
index 6bee828ab4..8dfd520bac 100644
--- a/app/src/views/OldDrefFinalReportForm/ObsoletePayloadModal/index.tsx
+++ b/app/src/views/OldDrefFinalReportForm/ObsoletePayloadModal/index.tsx
@@ -1,7 +1,7 @@
import {
BlockLoading,
Button,
- Modal,
+ Dialog,
} from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
import {
@@ -42,7 +42,7 @@ function ObsoletePayloadResolutionModal(props: Props) {
});
return (
-
>
)}
-
+
);
}
diff --git a/app/src/views/OldDrefFinalReportForm/Operation/InterventionInput/index.tsx b/app/src/views/OldDrefFinalReportForm/Operation/InterventionInput/index.tsx
index d28267d1af..c3232111b0 100644
--- a/app/src/views/OldDrefFinalReportForm/Operation/InterventionInput/index.tsx
+++ b/app/src/views/OldDrefFinalReportForm/Operation/InterventionInput/index.tsx
@@ -139,7 +139,7 @@ function InterventionInput(props: Props) {
}
diff --git a/app/src/views/OldDrefFinalReportForm/Operation/RiskSecurityInput/index.tsx b/app/src/views/OldDrefFinalReportForm/Operation/RiskSecurityInput/index.tsx
index 0c2943392a..03b5100d3b 100644
--- a/app/src/views/OldDrefFinalReportForm/Operation/RiskSecurityInput/index.tsx
+++ b/app/src/views/OldDrefFinalReportForm/Operation/RiskSecurityInput/index.tsx
@@ -85,7 +85,7 @@ function RiskSecurityInput(props: Props) {
className={styles.removeButton}
name={index}
onClick={onRemove}
- styleVariant="action"
+ variant="tertiary"
disabled={disabled || readOnly}
title={strings.drefFinalReportDeleteRisk}
>
diff --git a/app/src/views/OperationalLearning/KeyInsights/index.tsx b/app/src/views/OperationalLearning/KeyInsights/index.tsx
index 63dd20ce7e..ca1e9215eb 100644
--- a/app/src/views/OperationalLearning/KeyInsights/index.tsx
+++ b/app/src/views/OperationalLearning/KeyInsights/index.tsx
@@ -4,7 +4,7 @@ import {
Description,
ExpandableContainer,
ListView,
- NumberOutput,
+ NumberDisplay,
} from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
import {
@@ -37,7 +37,7 @@ function KeyInsights(props: Props) {
@@ -78,12 +78,12 @@ function KeyInsights(props: Props) {
{resolveToComponent(strings.keyInsightsDisclaimer, {
numOfExtractsUsed: (
-
),
totalNumberOfExtracts: (
-
),
diff --git a/app/src/views/OperationalLearning/Sources/AllExtractsModal/Extract/index.tsx b/app/src/views/OperationalLearning/Sources/AllExtractsModal/Extract/index.tsx
index 91808d1412..cc86e0923a 100644
--- a/app/src/views/OperationalLearning/Sources/AllExtractsModal/Extract/index.tsx
+++ b/app/src/views/OperationalLearning/Sources/AllExtractsModal/Extract/index.tsx
@@ -1,6 +1,6 @@
import {
Container,
- TextOutput,
+ DataDisplay,
} from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
@@ -56,7 +56,7 @@ function Extract(props: Props) {
)}
footer={(
-
)}
withPadding
- withDarkBackground
+ backgroundColor="background"
>
{extract}
diff --git a/app/src/views/OperationalLearning/Sources/AllExtractsModal/index.tsx b/app/src/views/OperationalLearning/Sources/AllExtractsModal/index.tsx
index ba521e7764..9f1fad0a45 100644
--- a/app/src/views/OperationalLearning/Sources/AllExtractsModal/index.tsx
+++ b/app/src/views/OperationalLearning/Sources/AllExtractsModal/index.tsx
@@ -1,9 +1,9 @@
import {
- Chip,
+ Dialog,
ListView,
- Modal,
- Pager,
+ Pagination,
RawList,
+ Tag,
} from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
import {
@@ -83,15 +83,14 @@ function AllExtractsModal(props: Props) {
const opsLearningCount = opsLearningResponse?.count ?? 0;
return (
-
- 1) ? (
resolveToString(
strings.allExtractsModalExtractsCount,
@@ -103,12 +102,12 @@ function AllExtractsModal(props: Props) {
{ count: opsLearningCount },
)
)}
- variant="tertiary"
+ colorVariant="tertiary"
/>
)}
footerActions={(
-
-
+
);
}
diff --git a/app/src/views/OperationalLearning/Sources/Emergency/index.tsx b/app/src/views/OperationalLearning/Sources/Emergency/index.tsx
index 118d06b10f..e4ecd1b0ec 100644
--- a/app/src/views/OperationalLearning/Sources/Emergency/index.tsx
+++ b/app/src/views/OperationalLearning/Sources/Emergency/index.tsx
@@ -23,7 +23,7 @@ function Emergency(props: Props) {
return (
-
-
+
+
)}
@@ -235,7 +235,7 @@ function OperationalLearningMap(props: Props) {
-
-
-
-
-
-
- }
label={strings.sourceDREF}
value={activePointData?.dref}
valueType="number"
/>
- }
label={strings.sourceEmergencyAppeal}
value={activePointData?.emergencyAppeal}
valueType="number"
/>
- }
label={strings.sourceOthers}
value={activePointData?.others}
@@ -298,7 +298,7 @@ function Stats(props: Props) {
/>
) : (
-
- onFilterChange(undefined, name)}
options={regionList}
labelSelector={stringValueSelector}
keySelector={regionKeySelector}
/>
-
-
-
-
-
-
-
-
-
@@ -283,7 +283,7 @@ function ComponentInput(props: Props) {
withoutPadding
title={strings.epiConsiderationTitle}
description={(
-
+
)}
>
+
)}
>
)}
diff --git a/app/src/views/PerExport/index.tsx b/app/src/views/PerExport/index.tsx
index e9e4cff910..cdd71e74c2 100644
--- a/app/src/views/PerExport/index.tsx
+++ b/app/src/views/PerExport/index.tsx
@@ -15,8 +15,8 @@ import {
import { useTranslation } from '@ifrc-go/ui/hooks';
import {
Container,
+ DataDisplay,
Heading,
- TextOutput,
} from '@ifrc-go/ui/printable';
import {
numericCountSelector,
@@ -397,34 +397,34 @@ export function Component() {
heading={strings.perExportNSPreparedness}
headingLevel={3}
>
-
-
-
-
-
-
+
{answer}
-
+
)}
>
{question}
diff --git a/app/src/views/PerPrioritizationForm/ComponentInput/index.tsx b/app/src/views/PerPrioritizationForm/ComponentInput/index.tsx
index 2a2835e370..b66038a660 100644
--- a/app/src/views/PerPrioritizationForm/ComponentInput/index.tsx
+++ b/app/src/views/PerPrioritizationForm/ComponentInput/index.tsx
@@ -5,10 +5,10 @@ import {
import {
ButtonLayout,
Checkbox,
+ DataDisplay,
ExpandableContainer,
ListView,
TextArea,
- TextOutput,
} from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
import { resolveToComponent } from '@ifrc-go/ui/utils';
@@ -212,7 +212,7 @@ function ComponentInput(props: Props) {
readOnly
// FIXME: use tag component
>
-
),
)}
diff --git a/app/src/views/PerPrioritizationForm/index.tsx b/app/src/views/PerPrioritizationForm/index.tsx
index 78cf5d3d44..9ab4ab5327 100644
--- a/app/src/views/PerPrioritizationForm/index.tsx
+++ b/app/src/views/PerPrioritizationForm/index.tsx
@@ -13,8 +13,8 @@ import {
Button,
ConfirmButton,
Container,
- DropdownMenu,
ListView,
+ Menu,
Message,
Portal,
} from '@ifrc-go/ui';
@@ -466,12 +466,12 @@ export function Component() {
withCenteredHeading
headingLevel={2}
headerActions={(
-
{sortOptions.map(
@@ -494,7 +494,7 @@ export function Component() {
),
)}
-
+
)}
footerActions={value?.is_draft !== false ? (
@@ -116,7 +116,7 @@ function AdditionalActionInput(props: Props) {
headerDescription={(
)}
- withBackground
+ backgroundColor="foreground"
withPadding
>
)}
withPadding
- withBackground
+ backgroundColor="foreground"
>
-
-
)}
- withShadow
+ boxShadow="md"
/>
);
}
@@ -102,7 +102,7 @@ export function Component() {
);
const regionSnippetParams = useCallback(
- (_: number, data: RegionSnippetType): HtmlOutputProps => ({
+ (_: number, data: RegionSnippetType): HtmlDisplayProps => ({
value: data.snippet,
}),
[],
@@ -140,7 +140,7 @@ export function Component() {
diff --git a/app/src/views/RegionOperations/RecentEmergenciesTable/index.tsx b/app/src/views/RegionOperations/RecentEmergenciesTable/index.tsx
index 20660b9891..2525602312 100644
--- a/app/src/views/RegionOperations/RecentEmergenciesTable/index.tsx
+++ b/app/src/views/RegionOperations/RecentEmergenciesTable/index.tsx
@@ -1,8 +1,8 @@
import { useMemo } from 'react';
import {
Container,
- NumberOutput,
- Pager,
+ NumberDisplay,
+ Pagination,
Table,
} from '@ifrc-go/ui';
import { SortContext } from '@ifrc-go/ui/contexts';
@@ -164,7 +164,7 @@ function EventItemsTable(props: Props) {
() => (
resolveToComponent(
strings.regionEmergenciesTableTitle,
- { numEmergencies: },
+ { numEmergencies: },
)
),
[strings.regionEmergenciesTableTitle, eventResponse],
@@ -185,7 +185,7 @@ function EventItemsTable(props: Props) {
)}
footerActions={(
-
-
diff --git a/app/src/views/RegionPreparedness/index.tsx b/app/src/views/RegionPreparedness/index.tsx
index 60001232ac..2bf8c7921e 100644
--- a/app/src/views/RegionPreparedness/index.tsx
+++ b/app/src/views/RegionPreparedness/index.tsx
@@ -2,9 +2,12 @@ import { useCallback } from 'react';
import { useOutletContext } from 'react-router-dom';
import {
Container,
- HtmlOutput,
- List,
+ DefaultMessage,
+ HtmlDisplay,
+ ListView,
+ RawList,
} from '@ifrc-go/ui';
+import { isNotDefined } from '@togglecorp/fujs';
import {
type RegionOutletContext,
@@ -36,7 +39,7 @@ function Snippet(props: SnippetProps) {
heading={title}
withHeaderBorder
>
-
@@ -53,17 +56,26 @@ export function Component() {
snippet: data.snippet,
}), []);
+ const snippets = regionResponse?.preparedness_snippets;
+
return (
-
+ layout="block"
+ >
+
+
+
);
}
diff --git a/app/src/views/RegionProfile/index.tsx b/app/src/views/RegionProfile/index.tsx
index ac4c96a971..94780e8cdf 100644
--- a/app/src/views/RegionProfile/index.tsx
+++ b/app/src/views/RegionProfile/index.tsx
@@ -3,8 +3,8 @@ import { RedCrossNationalSocietyIcon } from '@ifrc-go/icons';
import {
Container,
Description,
- HtmlOutput,
- KeyFigureView,
+ HtmlDisplay,
+ KeyFigureCard,
ListView,
} from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
@@ -36,12 +36,12 @@ export function Component() {
layout="grid"
numPreferredGridColumns={3}
>
- }
value={Number(regionResponse?.national_society_count)}
- valueOptions={{ compact: true }}
+ compact
valueType="number"
- size="lg"
+ textSize="4xl"
label={(
)}
- withShadow
+ boxShadow="md"
/>
{regionResponse?.profile_snippets.filter(
@@ -73,7 +73,7 @@ export function Component() {
heading={profileSnippet.title}
withHeaderBorder
>
-
@@ -118,8 +118,8 @@ export function Component() {
heading={contact.name}
headingLevel={5}
headerDescription={contact.title}
- withBackground
- withShadow
+ backgroundColor="foreground"
+ boxShadow="md"
withPadding
>
-
-
+
{contact.name}
-
+
{strings.cookiesBannerIAccept}
diff --git a/app/src/views/Search/ResultList/index.tsx b/app/src/views/Search/ResultList/index.tsx
index 4fd9fff9ed..a16d6c0fe8 100644
--- a/app/src/views/Search/ResultList/index.tsx
+++ b/app/src/views/Search/ResultList/index.tsx
@@ -86,7 +86,7 @@ function ResultList(props: Props) {
{resultKey === 'regions' && (
}
actions={searchStringTemp && (
@@ -353,7 +353,7 @@ export function Component() {
const action = data.length > MAX_VIEW_PER_SECTION ? (
- }
value={aggregatedResponse?.active_rapid_response_personnel}
valueType="number"
label={strings.activeRapidResponsePersonnel}
- size="lg"
+ textSize="4xl"
/>
- }
value={aggregatedResponse?.rapid_response_deployments_this_year}
valueType="number"
label={strings.rapidResponseDeployments}
- size="lg"
+ textSize="4xl"
/>
- }
value={aggregatedResponse?.active_emergency_response_units}
valueType="number"
label={strings.activeErus}
- size="lg"
+ textSize="4xl"
/>
- }
value={
aggregatedResponse?.emergency_response_unit_deployed_this_year
}
valueType="number"
label={strings.eruDeploymentsThisYear}
- size="lg"
+ textSize="4xl"
/>
diff --git a/app/src/views/SurgeCatalogueBasecampEruLarge/index.tsx b/app/src/views/SurgeCatalogueBasecampEruLarge/index.tsx
index 0e0b456748..f6722a4968 100644
--- a/app/src/views/SurgeCatalogueBasecampEruLarge/index.tsx
+++ b/app/src/views/SurgeCatalogueBasecampEruLarge/index.tsx
@@ -1,5 +1,5 @@
import { useMemo } from 'react';
-import { TextOutput } from '@ifrc-go/ui';
+import { DataDisplay } from '@ifrc-go/ui';
import { useTranslation } from '@ifrc-go/ui/hooks';
import SurgeCatalogueContainer from '#components/domain/SurgeCatalogueContainer';
@@ -82,12 +82,12 @@ export function Component() {
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
{strings.designedForDetailsSectionOne}
-
-
-
-
-
-
{strings.personnelCompositionValueOne}
@@ -119,12 +119,12 @@ export function Component() {
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
{strings.communityBasedPersonnelListItemOne}
@@ -64,22 +64,22 @@ export function Component() {
-
-
-
-
-
-
-
-
-
-
-
-
{strings.emergencyClinicStandardComponentsDetails}
-
-
-
-
-
-
-
-
{strings.choleraStandardComponentsDescription}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {strings.standardComponentsDetails}