jfs-components 0.1.2 → 0.1.12
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/CHANGELOG.md +45 -0
- package/lib/commonjs/components/Accordion/Accordion.js +2 -1
- package/lib/commonjs/components/AccordionCheckbox/AccordionCheckbox.js +4 -3
- package/lib/commonjs/components/AccountCard/AccountCard.js +4 -3
- package/lib/commonjs/components/AllocationComparisonChart/AllocationComparisonChart.js +9 -6
- package/lib/commonjs/components/AmountInput/AmountInput.js +8 -5
- package/lib/commonjs/components/AreaLineChart/AreaLineChart.js +11 -7
- package/lib/commonjs/components/Badge/Badge.js +47 -8
- package/lib/commonjs/components/BenefitCard/BenefitCard.js +231 -0
- package/lib/commonjs/components/BrandChip/BrandChip.js +3 -3
- package/lib/commonjs/components/Button/Button.js +2 -1
- package/lib/commonjs/components/CardAdvisory/CardAdvisory.js +2 -1
- package/lib/commonjs/components/CardBankAccount/CardBankAccount.js +3 -2
- package/lib/commonjs/components/CardCTA/CardCTA.js +197 -27
- package/lib/commonjs/components/CardInsight/CardInsight.js +5 -1
- package/lib/commonjs/components/CcCard/CcCard.js +470 -0
- package/lib/commonjs/components/Checkbox/Checkbox.js +4 -3
- package/lib/commonjs/components/CheckboxItem/CheckboxItem.js +4 -3
- package/lib/commonjs/components/CircularProgressBar/CircularProgressBar.js +7 -3
- package/lib/commonjs/components/CircularProgressBarDoted/CircularProgressBarDoted.js +3 -2
- package/lib/commonjs/components/CircularRating/CircularRating.js +2 -1
- package/lib/commonjs/components/ClusterBubble/ClusterBubble.js +3 -2
- package/lib/commonjs/components/CompareTable/CompareTable.js +401 -0
- package/lib/commonjs/components/ComparisonBar/ComparisonBar.js +266 -0
- package/lib/commonjs/components/CoverageBarComparison/CoverageBarComparison.js +3 -2
- package/lib/commonjs/components/DonutChart/DonutChart.js +4 -3
- package/lib/commonjs/components/Dropdown/Dropdown.js +3 -2
- package/lib/commonjs/components/DropdownInput/DropdownInput.js +38 -5
- package/lib/commonjs/components/ExpandableCheckbox/ExpandableCheckbox.js +2 -1
- package/lib/commonjs/components/FormField/FormField.js +45 -4
- package/lib/commonjs/components/Gauge/Gauge.js +1 -1
- package/lib/commonjs/components/HoldingsCard/HoldingsCard.js +3 -2
- package/lib/commonjs/components/InputSearch/InputSearch.js +6 -4
- package/lib/commonjs/components/InstitutionBadge/InstitutionBadge.js +2 -1
- package/lib/commonjs/components/ListGroup/ListGroup.js +2 -1
- package/lib/commonjs/components/ListItem/ListItem.js +3 -2
- package/lib/commonjs/components/MediaCard/MediaCard.js +4 -2
- package/lib/commonjs/components/MetricLegendItem/MetricLegendItem.js +3 -2
- package/lib/commonjs/components/MonthlyStatusGrid/MonthlyStatusGrid.js +6 -3
- package/lib/commonjs/components/NoteInput/NoteInput.js +6 -5
- package/lib/commonjs/components/PdpCcCard/PdpCcCard.js +273 -0
- package/lib/commonjs/components/PoweredByLabel/PoweredByLabel.js +3 -2
- package/lib/commonjs/components/ProductMerchandisingCard/ProductMerchandisingCard.js +427 -0
- package/lib/commonjs/components/ProductOverview/ProductOverview.js +4 -3
- package/lib/commonjs/components/ProgressBadge/ProgressBadge.js +2 -2
- package/lib/commonjs/components/ProjectionMarker/ProjectionMarker.js +162 -0
- package/lib/commonjs/components/Radio/Radio.js +5 -5
- package/lib/commonjs/components/Section/Section.js +3 -2
- package/lib/commonjs/components/Slider/Slider.js +474 -0
- package/lib/commonjs/components/Stack/Stack.js +86 -0
- package/lib/commonjs/components/SuggestiveSearch/SuggestiveSearch.js +10 -1
- package/lib/commonjs/components/SummaryTile/SummaryTile.js +3 -2
- package/lib/commonjs/components/Table/Table.js +324 -0
- package/lib/commonjs/components/Text/Text.js +2 -1
- package/lib/commonjs/components/TextInput/TextInput.js +22 -9
- package/lib/commonjs/components/TextSegment/TextSegment.js +119 -0
- package/lib/commonjs/components/ThreadHero/ThreadHero.js +4 -5
- package/lib/commonjs/components/Title/Title.js +2 -1
- package/lib/commonjs/components/Toast/Toast.js +3 -2
- package/lib/commonjs/components/TransactionBubble/TransactionBubble.js +2 -1
- package/lib/commonjs/components/TransactionStatus/TransactionStatus.js +3 -2
- package/lib/commonjs/components/UpiHandle/UpiHandle.js +2 -2
- package/lib/commonjs/components/index.js +107 -0
- package/lib/commonjs/design-tokens/Coin Variables-variables-full.json +1 -1
- package/lib/commonjs/design-tokens/figma-modes.generated.js +39 -9
- package/lib/commonjs/icons/registry.js +1 -1
- package/lib/commonjs/utils/GlassFill/GlassFill.js +271 -0
- package/lib/commonjs/utils/GlassFill/GlassFill.web.js +120 -0
- package/lib/commonjs/utils/react-utils.js +78 -0
- package/lib/commonjs/utils/web-platform-utils.js +59 -0
- package/lib/module/components/Accordion/Accordion.js +3 -2
- package/lib/module/components/AccordionCheckbox/AccordionCheckbox.js +5 -4
- package/lib/module/components/AccountCard/AccountCard.js +5 -4
- package/lib/module/components/AllocationComparisonChart/AllocationComparisonChart.js +10 -7
- package/lib/module/components/AmountInput/AmountInput.js +6 -4
- package/lib/module/components/AreaLineChart/AreaLineChart.js +12 -8
- package/lib/module/components/Badge/Badge.js +49 -10
- package/lib/module/components/BenefitCard/BenefitCard.js +225 -0
- package/lib/module/components/BrandChip/BrandChip.js +4 -4
- package/lib/module/components/Button/Button.js +3 -2
- package/lib/module/components/CardAdvisory/CardAdvisory.js +3 -2
- package/lib/module/components/CardBankAccount/CardBankAccount.js +4 -3
- package/lib/module/components/CardCTA/CardCTA.js +198 -28
- package/lib/module/components/CardInsight/CardInsight.js +5 -1
- package/lib/module/components/CcCard/CcCard.js +464 -0
- package/lib/module/components/Checkbox/Checkbox.js +5 -4
- package/lib/module/components/CheckboxItem/CheckboxItem.js +5 -4
- package/lib/module/components/CircularProgressBar/CircularProgressBar.js +8 -4
- package/lib/module/components/CircularProgressBarDoted/CircularProgressBarDoted.js +4 -3
- package/lib/module/components/CircularRating/CircularRating.js +3 -2
- package/lib/module/components/ClusterBubble/ClusterBubble.js +4 -3
- package/lib/module/components/CompareTable/CompareTable.js +396 -0
- package/lib/module/components/ComparisonBar/ComparisonBar.js +260 -0
- package/lib/module/components/CoverageBarComparison/CoverageBarComparison.js +4 -3
- package/lib/module/components/DonutChart/DonutChart.js +5 -4
- package/lib/module/components/Dropdown/Dropdown.js +4 -3
- package/lib/module/components/DropdownInput/DropdownInput.js +40 -7
- package/lib/module/components/ExpandableCheckbox/ExpandableCheckbox.js +2 -1
- package/lib/module/components/FormField/FormField.js +48 -7
- package/lib/module/components/Gauge/Gauge.js +1 -1
- package/lib/module/components/HoldingsCard/HoldingsCard.js +4 -3
- package/lib/module/components/InputSearch/InputSearch.js +6 -4
- package/lib/module/components/InstitutionBadge/InstitutionBadge.js +3 -2
- package/lib/module/components/ListGroup/ListGroup.js +3 -2
- package/lib/module/components/ListItem/ListItem.js +4 -3
- package/lib/module/components/MediaCard/MediaCard.js +4 -2
- package/lib/module/components/MetricLegendItem/MetricLegendItem.js +4 -3
- package/lib/module/components/MonthlyStatusGrid/MonthlyStatusGrid.js +7 -4
- package/lib/module/components/NoteInput/NoteInput.js +7 -6
- package/lib/module/components/PdpCcCard/PdpCcCard.js +267 -0
- package/lib/module/components/PoweredByLabel/PoweredByLabel.js +4 -3
- package/lib/module/components/ProductMerchandisingCard/ProductMerchandisingCard.js +421 -0
- package/lib/module/components/ProductOverview/ProductOverview.js +5 -4
- package/lib/module/components/ProgressBadge/ProgressBadge.js +3 -3
- package/lib/module/components/ProjectionMarker/ProjectionMarker.js +157 -0
- package/lib/module/components/Radio/Radio.js +5 -4
- package/lib/module/components/Section/Section.js +4 -3
- package/lib/module/components/Slider/Slider.js +469 -0
- package/lib/module/components/Stack/Stack.js +81 -0
- package/lib/module/components/SuggestiveSearch/SuggestiveSearch.js +10 -1
- package/lib/module/components/SummaryTile/SummaryTile.js +4 -3
- package/lib/module/components/Table/Table.js +315 -0
- package/lib/module/components/Text/Text.js +3 -2
- package/lib/module/components/TextInput/TextInput.js +24 -11
- package/lib/module/components/TextSegment/TextSegment.js +114 -0
- package/lib/module/components/ThreadHero/ThreadHero.js +5 -6
- package/lib/module/components/Title/Title.js +3 -2
- package/lib/module/components/Toast/Toast.js +4 -3
- package/lib/module/components/TransactionBubble/TransactionBubble.js +3 -2
- package/lib/module/components/TransactionStatus/TransactionStatus.js +4 -3
- package/lib/module/components/UpiHandle/UpiHandle.js +3 -3
- package/lib/module/components/index.js +11 -0
- package/lib/module/design-tokens/Coin Variables-variables-full.json +1 -1
- package/lib/module/design-tokens/figma-modes.generated.js +39 -9
- package/lib/module/icons/registry.js +1 -1
- package/lib/module/utils/GlassFill/GlassFill.js +265 -0
- package/lib/module/utils/GlassFill/GlassFill.web.js +115 -0
- package/lib/module/utils/react-utils.js +75 -0
- package/lib/module/utils/web-platform-utils.js +58 -0
- package/lib/typescript/src/components/Accordion/Accordion.d.ts +7 -1
- package/lib/typescript/src/components/AccordionCheckbox/AccordionCheckbox.d.ts +7 -1
- package/lib/typescript/src/components/AccountCard/AccountCard.d.ts +7 -1
- package/lib/typescript/src/components/AllocationComparisonChart/AllocationComparisonChart.d.ts +7 -1
- package/lib/typescript/src/components/AmountInput/AmountInput.d.ts +3 -2
- package/lib/typescript/src/components/AreaLineChart/AreaLineChart.d.ts +8 -1
- package/lib/typescript/src/components/Badge/Badge.d.ts +32 -2
- package/lib/typescript/src/components/BenefitCard/BenefitCard.d.ts +93 -0
- package/lib/typescript/src/components/BrandChip/BrandChip.d.ts +7 -1
- package/lib/typescript/src/components/Button/Button.d.ts +7 -1
- package/lib/typescript/src/components/CardAdvisory/CardAdvisory.d.ts +7 -1
- package/lib/typescript/src/components/CardBankAccount/CardBankAccount.d.ts +7 -1
- package/lib/typescript/src/components/CardCTA/CardCTA.d.ts +27 -5
- package/lib/typescript/src/components/CcCard/CcCard.d.ts +137 -0
- package/lib/typescript/src/components/Checkbox/Checkbox.d.ts +3 -2
- package/lib/typescript/src/components/CheckboxItem/CheckboxItem.d.ts +2 -2
- package/lib/typescript/src/components/CircularProgressBar/CircularProgressBar.d.ts +7 -1
- package/lib/typescript/src/components/CircularProgressBarDoted/CircularProgressBarDoted.d.ts +7 -1
- package/lib/typescript/src/components/CircularRating/CircularRating.d.ts +7 -1
- package/lib/typescript/src/components/ClusterBubble/ClusterBubble.d.ts +7 -1
- package/lib/typescript/src/components/CompareTable/CompareTable.d.ts +94 -0
- package/lib/typescript/src/components/ComparisonBar/ComparisonBar.d.ts +118 -0
- package/lib/typescript/src/components/CoverageBarComparison/CoverageBarComparison.d.ts +7 -1
- package/lib/typescript/src/components/DonutChart/DonutChart.d.ts +7 -1
- package/lib/typescript/src/components/Dropdown/Dropdown.d.ts +7 -1
- package/lib/typescript/src/components/DropdownInput/DropdownInput.d.ts +26 -1
- package/lib/typescript/src/components/ExpandableCheckbox/ExpandableCheckbox.d.ts +7 -1
- package/lib/typescript/src/components/FormField/FormField.d.ts +2 -2
- package/lib/typescript/src/components/HoldingsCard/HoldingsCard.d.ts +7 -1
- package/lib/typescript/src/components/InputSearch/InputSearch.d.ts +23 -2
- package/lib/typescript/src/components/InstitutionBadge/InstitutionBadge.d.ts +7 -1
- package/lib/typescript/src/components/ListGroup/ListGroup.d.ts +7 -1
- package/lib/typescript/src/components/ListItem/ListItem.d.ts +7 -1
- package/lib/typescript/src/components/MetricLegendItem/MetricLegendItem.d.ts +7 -1
- package/lib/typescript/src/components/MonthlyStatusGrid/MonthlyStatusGrid.d.ts +14 -2
- package/lib/typescript/src/components/NoteInput/NoteInput.d.ts +19 -2
- package/lib/typescript/src/components/PdpCcCard/PdpCcCard.d.ts +84 -0
- package/lib/typescript/src/components/PoweredByLabel/PoweredByLabel.d.ts +7 -1
- package/lib/typescript/src/components/ProductMerchandisingCard/ProductMerchandisingCard.d.ts +87 -0
- package/lib/typescript/src/components/ProductOverview/ProductOverview.d.ts +7 -1
- package/lib/typescript/src/components/ProgressBadge/ProgressBadge.d.ts +7 -1
- package/lib/typescript/src/components/ProjectionMarker/ProjectionMarker.d.ts +88 -0
- package/lib/typescript/src/components/Radio/Radio.d.ts +3 -2
- package/lib/typescript/src/components/RadioButton/RadioButton.d.ts +2 -2
- package/lib/typescript/src/components/Section/Section.d.ts +7 -1
- package/lib/typescript/src/components/Slider/Slider.d.ts +105 -0
- package/lib/typescript/src/components/Stack/Stack.d.ts +81 -0
- package/lib/typescript/src/components/SummaryTile/SummaryTile.d.ts +7 -1
- package/lib/typescript/src/components/Table/Table.d.ts +139 -0
- package/lib/typescript/src/components/Text/Text.d.ts +7 -1
- package/lib/typescript/src/components/TextInput/TextInput.d.ts +9 -29
- package/lib/typescript/src/components/TextSegment/TextSegment.d.ts +106 -0
- package/lib/typescript/src/components/ThreadHero/ThreadHero.d.ts +7 -1
- package/lib/typescript/src/components/Title/Title.d.ts +7 -1
- package/lib/typescript/src/components/Toast/Toast.d.ts +7 -1
- package/lib/typescript/src/components/TransactionBubble/TransactionBubble.d.ts +7 -1
- package/lib/typescript/src/components/TransactionStatus/TransactionStatus.d.ts +7 -1
- package/lib/typescript/src/components/UpiHandle/UpiHandle.d.ts +7 -1
- package/lib/typescript/src/components/index.d.ts +14 -3
- package/lib/typescript/src/design-tokens/figma-modes.generated.d.ts +22 -2
- package/lib/typescript/src/icons/registry.d.ts +1 -1
- package/lib/typescript/src/utils/GlassFill/GlassFill.d.ts +84 -0
- package/lib/typescript/src/utils/GlassFill/GlassFill.web.d.ts +43 -0
- package/lib/typescript/src/utils/react-utils.d.ts +47 -0
- package/lib/typescript/src/utils/web-platform-utils.d.ts +36 -0
- package/package.json +2 -1
- package/src/components/Accordion/Accordion.tsx +9 -2
- package/src/components/AccordionCheckbox/AccordionCheckbox.tsx +10 -3
- package/src/components/AccountCard/AccountCard.tsx +10 -3
- package/src/components/AllocationComparisonChart/AllocationComparisonChart.tsx +14 -4
- package/src/components/AmountInput/AmountInput.tsx +7 -5
- package/src/components/AreaLineChart/AreaLineChart.tsx +15 -5
- package/src/components/Badge/Badge.tsx +78 -8
- package/src/components/BenefitCard/BenefitCard.tsx +309 -0
- package/src/components/BrandChip/BrandChip.tsx +9 -3
- package/src/components/Button/Button.tsx +9 -2
- package/src/components/CardAdvisory/CardAdvisory.tsx +9 -2
- package/src/components/CardBankAccount/CardBankAccount.tsx +9 -2
- package/src/components/CardCTA/CardCTA.tsx +214 -41
- package/src/components/CardInsight/CardInsight.tsx +7 -1
- package/src/components/CcCard/CcCard.tsx +598 -0
- package/src/components/Checkbox/Checkbox.tsx +5 -4
- package/src/components/CheckboxItem/CheckboxItem.tsx +5 -4
- package/src/components/CircularProgressBar/CircularProgressBar.tsx +14 -4
- package/src/components/CircularProgressBarDoted/CircularProgressBarDoted.tsx +10 -3
- package/src/components/CircularRating/CircularRating.tsx +9 -2
- package/src/components/ClusterBubble/ClusterBubble.tsx +9 -2
- package/src/components/CompareTable/CompareTable.tsx +525 -0
- package/src/components/ComparisonBar/ComparisonBar.tsx +356 -0
- package/src/components/CoverageBarComparison/CoverageBarComparison.tsx +9 -2
- package/src/components/DonutChart/DonutChart.tsx +10 -3
- package/src/components/Dropdown/Dropdown.tsx +9 -2
- package/src/components/DropdownInput/DropdownInput.tsx +64 -5
- package/src/components/ExpandableCheckbox/ExpandableCheckbox.tsx +8 -1
- package/src/components/FormField/FormField.tsx +52 -6
- package/src/components/Gauge/Gauge.tsx +1 -1
- package/src/components/HoldingsCard/HoldingsCard.tsx +9 -2
- package/src/components/InputSearch/InputSearch.tsx +8 -5
- package/src/components/InstitutionBadge/InstitutionBadge.tsx +9 -2
- package/src/components/ListGroup/ListGroup.tsx +9 -2
- package/src/components/ListItem/ListItem.tsx +10 -3
- package/src/components/MediaCard/MediaCard.tsx +2 -2
- package/src/components/MetricLegendItem/MetricLegendItem.tsx +9 -2
- package/src/components/MonthlyStatusGrid/MonthlyStatusGrid.tsx +17 -2
- package/src/components/NoteInput/NoteInput.tsx +8 -6
- package/src/components/PdpCcCard/PdpCcCard.tsx +356 -0
- package/src/components/PoweredByLabel/PoweredByLabel.tsx +9 -2
- package/src/components/ProductMerchandisingCard/ProductMerchandisingCard.tsx +490 -0
- package/src/components/ProductOverview/ProductOverview.tsx +10 -3
- package/src/components/ProgressBadge/ProgressBadge.tsx +9 -3
- package/src/components/ProjectionMarker/ProjectionMarker.tsx +284 -0
- package/src/components/Radio/Radio.tsx +5 -4
- package/src/components/Section/Section.tsx +10 -3
- package/src/components/Slider/Slider.tsx +635 -0
- package/src/components/Stack/Stack.tsx +131 -0
- package/src/components/SuggestiveSearch/SuggestiveSearch.tsx +10 -1
- package/src/components/SummaryTile/SummaryTile.tsx +9 -2
- package/src/components/Table/Table.tsx +449 -0
- package/src/components/Text/Text.tsx +9 -2
- package/src/components/TextInput/TextInput.tsx +22 -12
- package/src/components/TextSegment/TextSegment.tsx +173 -0
- package/src/components/ThreadHero/ThreadHero.tsx +10 -3
- package/src/components/Title/Title.tsx +9 -2
- package/src/components/Toast/Toast.tsx +9 -2
- package/src/components/TransactionBubble/TransactionBubble.tsx +9 -2
- package/src/components/TransactionStatus/TransactionStatus.tsx +9 -2
- package/src/components/UpiHandle/UpiHandle.tsx +9 -3
- package/src/components/index.ts +33 -3
- package/src/design-tokens/Coin Variables-variables-full.json +1 -1
- package/src/design-tokens/figma-modes.generated.ts +39 -9
- package/src/icons/registry.ts +1 -1
- package/src/utils/GlassFill/GlassFill.tsx +305 -0
- package/src/utils/GlassFill/GlassFill.web.tsx +148 -0
- package/src/utils/react-utils.ts +84 -0
- package/src/utils/web-platform-utils.ts +68 -0
- package/lib/commonjs/components/MediaCard/GlassFill.js +0 -62
- package/lib/commonjs/components/MediaCard/GlassFill.web.js +0 -48
- package/lib/module/components/MediaCard/GlassFill.js +0 -57
- package/lib/module/components/MediaCard/GlassFill.web.js +0 -43
- package/lib/typescript/scripts/extract-component-tokens.d.ts +0 -9
- package/lib/typescript/scripts/generate-component-docs.d.ts +0 -9
- package/lib/typescript/scripts/generate-icon-registry.d.ts +0 -3
- package/lib/typescript/scripts/generate-mode-types.d.ts +0 -2
- package/lib/typescript/scripts/retype-modes.d.cts +0 -2
- package/lib/typescript/src/components/MediaCard/GlassFill.d.ts +0 -47
- package/lib/typescript/src/components/MediaCard/GlassFill.web.d.ts +0 -20
- package/src/components/MediaCard/GlassFill.tsx +0 -89
- package/src/components/MediaCard/GlassFill.web.tsx +0 -53
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type ImageSourcePropType, type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
import type { Modes } from '../../design-tokens';
|
|
4
|
+
/**
|
|
5
|
+
* A single slot in the {@link ComparisonBar}. Each item is either empty (the
|
|
6
|
+
* "Add" state — a tappable `+` capsule) or filled with an image (the
|
|
7
|
+
* "Image Added" state — the image plus a dismiss capsule in the corner).
|
|
8
|
+
*
|
|
9
|
+
* The presence of {@link ComparisonBarItem.imageSource} is what toggles the
|
|
10
|
+
* state: provide a source to show the image, leave it `undefined`/`null` to
|
|
11
|
+
* show the empty add slot. This keeps the component fully controlled — the
|
|
12
|
+
* `ComparisonBar` never owns the image state itself, so the consumer decides
|
|
13
|
+
* (e.g. after opening a file/asset picker) when and how an item flips between
|
|
14
|
+
* the two states.
|
|
15
|
+
*/
|
|
16
|
+
export type ComparisonBarItem = {
|
|
17
|
+
/**
|
|
18
|
+
* Stable identifier for this slot. Returned to callbacks so the consumer
|
|
19
|
+
* can target the exact item that was interacted with. Falls back to the
|
|
20
|
+
* array index when omitted.
|
|
21
|
+
*/
|
|
22
|
+
id?: string | number;
|
|
23
|
+
/**
|
|
24
|
+
* Image to render in the slot. When provided the slot renders in the
|
|
25
|
+
* "Image Added" state; when omitted/`null` it renders the empty "Add" state.
|
|
26
|
+
* Accepts the same shapes as the library `Image` component (remote URL
|
|
27
|
+
* string, `{ uri }`, or a `require()`d asset).
|
|
28
|
+
*/
|
|
29
|
+
imageSource?: ImageSourcePropType | string | null;
|
|
30
|
+
/** Accessibility label for the slot. Defaults to a generic add/remove label. */
|
|
31
|
+
accessibilityLabel?: string;
|
|
32
|
+
};
|
|
33
|
+
export type ComparisonBarProps = {
|
|
34
|
+
/**
|
|
35
|
+
* The slots rendered before the Compare button. Each entry controls its own
|
|
36
|
+
* add/image state via {@link ComparisonBarItem.imageSource}.
|
|
37
|
+
*/
|
|
38
|
+
items: ComparisonBarItem[];
|
|
39
|
+
/**
|
|
40
|
+
* Fired when an empty (Add) slot is tapped. The consumer is expected to react
|
|
41
|
+
* by opening whatever picker is appropriate and then updating that item's
|
|
42
|
+
* `imageSource` to flip it into the "Image Added" state — the component does
|
|
43
|
+
* not know how images are sourced. Receives the item's `id` (or index when no
|
|
44
|
+
* id was supplied) and the slot index.
|
|
45
|
+
*/
|
|
46
|
+
onItemPress?: (id: ComparisonBarItem['id'], index: number) => void;
|
|
47
|
+
/**
|
|
48
|
+
* Fired when a filled slot is tapped. For better mobile ergonomics the
|
|
49
|
+
* *entire* filled slot is the remove target (the dismiss capsule is just a
|
|
50
|
+
* visual affordance), so a fingertip anywhere on the item triggers this. The
|
|
51
|
+
* consumer is expected to clear that item's `imageSource` to return it to the
|
|
52
|
+
* "Add" state. Receives the item's `id` (or index) and the slot index.
|
|
53
|
+
*/
|
|
54
|
+
onItemRemove?: (id: ComparisonBarItem['id'], index: number) => void;
|
|
55
|
+
/** Fired when the Compare button is pressed. */
|
|
56
|
+
onCompare?: () => void;
|
|
57
|
+
/** Label for the trailing action button. Defaults to `"Compare"`. */
|
|
58
|
+
compareLabel?: string;
|
|
59
|
+
/**
|
|
60
|
+
* Explicitly controls the Compare button's *functional* disabled state — a
|
|
61
|
+
* truly disabled button is non-interactive (its `onPress` never fires), not
|
|
62
|
+
* just dimmed. Note that `modes` only affects appearance, so dimming the
|
|
63
|
+
* button via tokens does NOT stop taps; that is what this prop is for.
|
|
64
|
+
*
|
|
65
|
+
* When provided (a boolean), it always wins over
|
|
66
|
+
* {@link ComparisonBarProps.disableCompareWhenEmpty}. Leave it `undefined`
|
|
67
|
+
* to fall back to the auto behavior.
|
|
68
|
+
*/
|
|
69
|
+
compareDisabled?: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* When `true` (default) the Compare button is automatically (and truly)
|
|
72
|
+
* disabled while no slot has an image — there is nothing to compare yet. Set
|
|
73
|
+
* to `false` to keep it tappable even when empty. Ignored when
|
|
74
|
+
* {@link ComparisonBarProps.compareDisabled} is set explicitly.
|
|
75
|
+
*/
|
|
76
|
+
disableCompareWhenEmpty?: boolean;
|
|
77
|
+
/** Mode configuration passed to the token resolver. */
|
|
78
|
+
modes?: Modes;
|
|
79
|
+
/** Style overrides for the outer floating card. */
|
|
80
|
+
style?: StyleProp<ViewStyle>;
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* ComparisonBar — a floating card that lets a user assemble a set of items to
|
|
84
|
+
* compare, then trigger the comparison.
|
|
85
|
+
*
|
|
86
|
+
* Each slot is fully controlled via its `imageSource`: an empty slot shows a
|
|
87
|
+
* tappable `+` (the "Add" state) and a filled slot shows the image with a
|
|
88
|
+
* dismiss capsule (the "Image Added" state). The component never sources or
|
|
89
|
+
* stores images itself — when an empty slot is pressed it fires `onItemPress`
|
|
90
|
+
* with the item's id/index so the consumer can open whatever picker is
|
|
91
|
+
* appropriate and then update that item's `imageSource` to flip its state.
|
|
92
|
+
* Tapping a filled slot (anywhere on it — a mobile-friendly hit target, with
|
|
93
|
+
* the dismiss capsule as a visual affordance) fires `onItemRemove` so the
|
|
94
|
+
* consumer can clear the source again.
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```tsx
|
|
98
|
+
* const [items, setItems] = useState<ComparisonBarItem[]>([
|
|
99
|
+
* { id: 'a' }, { id: 'b' }, { id: 'c' }, { id: 'd' },
|
|
100
|
+
* ])
|
|
101
|
+
*
|
|
102
|
+
* <ComparisonBar
|
|
103
|
+
* items={items}
|
|
104
|
+
* onItemPress={async (id) => {
|
|
105
|
+
* const uri = await openImagePicker()
|
|
106
|
+
* setItems(prev => prev.map(it => it.id === id ? { ...it, imageSource: uri } : it))
|
|
107
|
+
* }}
|
|
108
|
+
* onItemRemove={(id) =>
|
|
109
|
+
* setItems(prev => prev.map(it => it.id === id ? { ...it, imageSource: null } : it))
|
|
110
|
+
* }
|
|
111
|
+
* onCompare={runComparison}
|
|
112
|
+
* />
|
|
113
|
+
* ```
|
|
114
|
+
*/
|
|
115
|
+
declare function ComparisonBar({ items, onItemPress, onItemRemove, onCompare, compareLabel, compareDisabled, disableCompareWhenEmpty, modes: propModes, style, }: ComparisonBarProps): import("react/jsx-runtime").JSX.Element;
|
|
116
|
+
declare const _default: React.MemoExoticComponent<typeof ComparisonBar>;
|
|
117
|
+
export default _default;
|
|
118
|
+
//# sourceMappingURL=ComparisonBar.d.ts.map
|
|
@@ -83,6 +83,12 @@ export type CoverageBarComparisonProps = {
|
|
|
83
83
|
labelStyle?: StyleProp<TextStyle>;
|
|
84
84
|
/** Accessibility label for the entire component. */
|
|
85
85
|
accessibilityLabel?: string;
|
|
86
|
+
/**
|
|
87
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
88
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
89
|
+
* lines as it needs even when horizontal space is tight.
|
|
90
|
+
*/
|
|
91
|
+
disableTruncation?: boolean;
|
|
86
92
|
};
|
|
87
93
|
/**
|
|
88
94
|
* `CoverageBarComparison` renders a small vertical-bar chart that compares
|
|
@@ -101,6 +107,6 @@ export type CoverageBarComparisonProps = {
|
|
|
101
107
|
*
|
|
102
108
|
* @component
|
|
103
109
|
*/
|
|
104
|
-
declare function CoverageBarComparison({ bars, max, height, legendGap, modes: propModes, style, chartStyle, legendStyle, labelStyle, accessibilityLabel, }: CoverageBarComparisonProps): import("react/jsx-runtime").JSX.Element;
|
|
110
|
+
declare function CoverageBarComparison({ bars, max, height, legendGap, modes: propModes, style, chartStyle, legendStyle, labelStyle, accessibilityLabel, disableTruncation, }: CoverageBarComparisonProps): import("react/jsx-runtime").JSX.Element;
|
|
105
111
|
export default CoverageBarComparison;
|
|
106
112
|
//# sourceMappingURL=CoverageBarComparison.d.ts.map
|
|
@@ -70,6 +70,12 @@ export type DonutChartProps = {
|
|
|
70
70
|
labelStyle?: StyleProp<TextStyle>;
|
|
71
71
|
/** Accessibility label announced for the whole donut chart. */
|
|
72
72
|
accessibilityLabel?: string;
|
|
73
|
+
/**
|
|
74
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
75
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
76
|
+
* lines as it needs even when horizontal space is tight.
|
|
77
|
+
*/
|
|
78
|
+
disableTruncation?: boolean;
|
|
73
79
|
};
|
|
74
80
|
type DonutChartSegmentProps = {
|
|
75
81
|
/** Angular weight relative to the sum of sibling segment values. */
|
|
@@ -108,7 +114,7 @@ declare function DonutChartSegment(_: DonutChartSegmentProps): any;
|
|
|
108
114
|
* @component
|
|
109
115
|
* @param {DonutChartProps} props
|
|
110
116
|
*/
|
|
111
|
-
declare function DonutChart({ segments, value, label, children, size, strokeWidth: strokeWidthProp, gap, modes: propModes, style, valueStyle, labelStyle, accessibilityLabel, }: DonutChartProps): import("react/jsx-runtime").JSX.Element;
|
|
117
|
+
declare function DonutChart({ segments, value, label, children, size, strokeWidth: strokeWidthProp, gap, modes: propModes, style, valueStyle, labelStyle, accessibilityLabel, disableTruncation, }: DonutChartProps): import("react/jsx-runtime").JSX.Element;
|
|
112
118
|
declare namespace DonutChart {
|
|
113
119
|
var Segment: typeof DonutChartSegment;
|
|
114
120
|
}
|
|
@@ -35,8 +35,14 @@ export type DropdownItemProps = {
|
|
|
35
35
|
accessibilityLabel?: string;
|
|
36
36
|
/** Accessibility hint. */
|
|
37
37
|
accessibilityHint?: string;
|
|
38
|
+
/**
|
|
39
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
40
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
41
|
+
* lines as it needs even when horizontal space is tight.
|
|
42
|
+
*/
|
|
43
|
+
disableTruncation?: boolean;
|
|
38
44
|
};
|
|
39
|
-
export declare function DropdownItem({ label, value, selected, disabled, leading, trailing, onPress, children, modes: propModes, style, labelStyle, accessibilityLabel, accessibilityHint, }: DropdownItemProps): import("react/jsx-runtime").JSX.Element;
|
|
45
|
+
export declare function DropdownItem({ label, value, selected, disabled, leading, trailing, onPress, children, modes: propModes, style, labelStyle, accessibilityLabel, accessibilityHint, disableTruncation, }: DropdownItemProps): import("react/jsx-runtime").JSX.Element;
|
|
40
46
|
export type DropdownProps = {
|
|
41
47
|
/** Dropdown items, typically `<DropdownItem />` children. */
|
|
42
48
|
children?: React.ReactNode;
|
|
@@ -14,6 +14,25 @@ export type DropdownInputOption = {
|
|
|
14
14
|
/** Whether the option is non-selectable. */
|
|
15
15
|
disabled?: boolean;
|
|
16
16
|
};
|
|
17
|
+
/**
|
|
18
|
+
* Imperative handle exposed via `ref`. Lets the consumer drive the dropdown
|
|
19
|
+
* from outside — e.g. close it when an Android hardware/system button is
|
|
20
|
+
* pressed, or open it programmatically from a sibling control.
|
|
21
|
+
*/
|
|
22
|
+
export type DropdownInputHandle = {
|
|
23
|
+
/** Opens the options menu (no-op when disabled / read-only). */
|
|
24
|
+
open: () => void;
|
|
25
|
+
/** Closes the options menu. */
|
|
26
|
+
close: () => void;
|
|
27
|
+
/** Toggles the options menu open/closed. */
|
|
28
|
+
toggle: () => void;
|
|
29
|
+
/** Moves focus to the trigger (web). */
|
|
30
|
+
focus: () => void;
|
|
31
|
+
/** Removes focus from the trigger (web). */
|
|
32
|
+
blur: () => void;
|
|
33
|
+
/** Measures the trigger in window coordinates. */
|
|
34
|
+
measureInWindow: (callback: (x: number, y: number, width: number, height: number) => void) => void;
|
|
35
|
+
};
|
|
17
36
|
export type DropdownInputProps = {
|
|
18
37
|
/** Label rendered above the input. */
|
|
19
38
|
label?: string;
|
|
@@ -103,7 +122,13 @@ export type DropdownInputProps = {
|
|
|
103
122
|
onFocus?: (e: any) => void;
|
|
104
123
|
/** Called when the trigger loses focus (web only). */
|
|
105
124
|
onBlur?: (e: any) => void;
|
|
125
|
+
/**
|
|
126
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
127
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
128
|
+
* lines as it needs even when horizontal space is tight.
|
|
129
|
+
*/
|
|
130
|
+
disableTruncation?: boolean;
|
|
106
131
|
};
|
|
107
|
-
declare
|
|
132
|
+
declare const DropdownInput: React.ForwardRefExoticComponent<DropdownInputProps & React.RefAttributes<DropdownInputHandle>>;
|
|
108
133
|
export default DropdownInput;
|
|
109
134
|
//# sourceMappingURL=DropdownInput.d.ts.map
|
|
@@ -23,6 +23,12 @@ export type ExpandableCheckboxProps = {
|
|
|
23
23
|
readLessLabel?: string;
|
|
24
24
|
/** Number of lines to show when collapsed. Defaults to `1`. */
|
|
25
25
|
collapsedLines?: number;
|
|
26
|
+
/**
|
|
27
|
+
* When `true`, disables truncation of the collapsed label: the trailing
|
|
28
|
+
* ellipsis (`…`) is never shown and the `collapsedLines` clamp is ignored, so
|
|
29
|
+
* the label wraps fully even when horizontal space is tight.
|
|
30
|
+
*/
|
|
31
|
+
disableTruncation?: boolean;
|
|
26
32
|
/** Design token modes for theming (e.g. `{ 'Color Mode': 'Light' }`). */
|
|
27
33
|
modes?: Modes;
|
|
28
34
|
/** Override outer container styles. */
|
|
@@ -59,6 +65,6 @@ export type ExpandableCheckboxProps = {
|
|
|
59
65
|
* />
|
|
60
66
|
* ```
|
|
61
67
|
*/
|
|
62
|
-
declare function ExpandableCheckbox({ label, checked: controlledChecked, defaultChecked, onValueChange, expanded: controlledExpanded, defaultExpanded, onExpandedChange, disabled, readMoreLabel, readLessLabel, collapsedLines, modes, style, labelStyle, accessibilityLabel, }: ExpandableCheckboxProps): import("react/jsx-runtime").JSX.Element;
|
|
68
|
+
declare function ExpandableCheckbox({ label, checked: controlledChecked, defaultChecked, onValueChange, expanded: controlledExpanded, defaultExpanded, onExpandedChange, disabled, readMoreLabel, readLessLabel, collapsedLines, disableTruncation, modes, style, labelStyle, accessibilityLabel, }: ExpandableCheckboxProps): import("react/jsx-runtime").JSX.Element;
|
|
63
69
|
export default ExpandableCheckbox;
|
|
64
70
|
//# sourceMappingURL=ExpandableCheckbox.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { type StyleProp, type TextInputProps as RNTextInputProps, type TextStyle, type ViewStyle } from 'react-native';
|
|
2
|
+
import { TextInput as RNTextInput, type StyleProp, type TextInputProps as RNTextInputProps, type TextStyle, type ViewStyle } from 'react-native';
|
|
3
3
|
import type { Modes } from '../../design-tokens';
|
|
4
4
|
export type FormFieldType = 'text' | 'password' | 'email' | 'search' | 'number' | 'phone' | 'url';
|
|
5
5
|
export type FormFieldProps = {
|
|
@@ -80,6 +80,6 @@ export type FormFieldProps = {
|
|
|
80
80
|
/** Test identifier. */
|
|
81
81
|
testID?: string;
|
|
82
82
|
};
|
|
83
|
-
declare
|
|
83
|
+
declare const FormField: React.ForwardRefExoticComponent<FormFieldProps & React.RefAttributes<RNTextInput>>;
|
|
84
84
|
export default FormField;
|
|
85
85
|
//# sourceMappingURL=FormField.d.ts.map
|
|
@@ -25,6 +25,12 @@ export interface HoldingsCardProps {
|
|
|
25
25
|
style?: StyleProp<ViewStyle>;
|
|
26
26
|
/** Test ID for testing. */
|
|
27
27
|
testID?: string;
|
|
28
|
+
/**
|
|
29
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
30
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
31
|
+
* lines as it needs even when horizontal space is tight.
|
|
32
|
+
*/
|
|
33
|
+
disableTruncation?: boolean;
|
|
28
34
|
}
|
|
29
|
-
export default function HoldingsCard({ headerImage, heroLabel, heroValue, details, selected, disabled, onPress, modes, style, testID, }: HoldingsCardProps): import("react/jsx-runtime").JSX.Element;
|
|
35
|
+
export default function HoldingsCard({ headerImage, heroLabel, heroValue, details, selected, disabled, onPress, modes, style, testID, disableTruncation, }: HoldingsCardProps): import("react/jsx-runtime").JSX.Element;
|
|
30
36
|
//# sourceMappingURL=HoldingsCard.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { type StyleProp, type ViewStyle, type TextStyle, type TextInputProps as RNTextInputProps } from 'react-native';
|
|
2
|
+
import { TextInput as RNTextInput, type StyleProp, type ViewStyle, type TextStyle, type TextInputProps as RNTextInputProps } from 'react-native';
|
|
3
3
|
import type { Modes } from '../../design-tokens';
|
|
4
4
|
export type InputSearchProps = {
|
|
5
5
|
supportText?: boolean;
|
|
@@ -22,5 +22,26 @@ export type InputSearchProps = {
|
|
|
22
22
|
accessibilityLabel?: string;
|
|
23
23
|
accessibilityHint?: string;
|
|
24
24
|
} & Omit<RNTextInputProps, 'style' | 'onChangeText' | 'onFocus' | 'onBlur' | 'placeholder' | 'value'>;
|
|
25
|
-
|
|
25
|
+
declare const InputSearch: React.ForwardRefExoticComponent<{
|
|
26
|
+
supportText?: boolean;
|
|
27
|
+
supportTextLabel?: string;
|
|
28
|
+
/**
|
|
29
|
+
* Icon name from the icon registry to render inside the support text
|
|
30
|
+
* (e.g. 'ic_info', 'ic_cart'). Defaults to 'ic_info'.
|
|
31
|
+
*/
|
|
32
|
+
supportTextIcon?: string;
|
|
33
|
+
modes?: Modes;
|
|
34
|
+
containerStyle?: StyleProp<ViewStyle>;
|
|
35
|
+
placeholder?: string;
|
|
36
|
+
value?: string;
|
|
37
|
+
onChangeText?: (text: string) => void;
|
|
38
|
+
onFocus?: (e: any) => void;
|
|
39
|
+
onBlur?: (e: any) => void;
|
|
40
|
+
leading?: React.ReactNode;
|
|
41
|
+
trailing?: React.ReactNode;
|
|
42
|
+
inputStyle?: StyleProp<TextStyle>;
|
|
43
|
+
accessibilityLabel?: string;
|
|
44
|
+
accessibilityHint?: string;
|
|
45
|
+
} & Omit<RNTextInputProps, "style" | "value" | "onFocus" | "onBlur" | "placeholder" | "onChangeText"> & React.RefAttributes<RNTextInput>>;
|
|
46
|
+
export default InputSearch;
|
|
26
47
|
//# sourceMappingURL=InputSearch.d.ts.map
|
|
@@ -24,8 +24,14 @@ export type InstitutionBadgeProps = InstitutionBadgeBaseProps & {
|
|
|
24
24
|
labelStyle?: StyleProp<TextStyle>;
|
|
25
25
|
/** Accessibility label. Defaults to `label`. */
|
|
26
26
|
accessibilityLabel?: string;
|
|
27
|
+
/**
|
|
28
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
29
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
30
|
+
* lines as it needs even when horizontal space is tight.
|
|
31
|
+
*/
|
|
32
|
+
disableTruncation?: boolean;
|
|
27
33
|
};
|
|
28
|
-
declare function InstitutionBadge({ label, source, avatarSlot, modes: propModes, style, labelStyle, accessibilityLabel, ...rest }: InstitutionBadgeProps): import("react/jsx-runtime").JSX.Element;
|
|
34
|
+
declare function InstitutionBadge({ label, source, avatarSlot, modes: propModes, style, labelStyle, accessibilityLabel, disableTruncation, ...rest }: InstitutionBadgeProps): import("react/jsx-runtime").JSX.Element;
|
|
29
35
|
declare const _default: React.MemoExoticComponent<typeof InstitutionBadge>;
|
|
30
36
|
export default _default;
|
|
31
37
|
//# sourceMappingURL=InstitutionBadge.d.ts.map
|
|
@@ -9,6 +9,12 @@ type ListGroupProps = {
|
|
|
9
9
|
style?: StyleProp<ViewStyle>;
|
|
10
10
|
accessibilityLabel?: string;
|
|
11
11
|
accessibilityHint?: string;
|
|
12
|
+
/**
|
|
13
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
14
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
15
|
+
* lines as it needs even when horizontal space is tight.
|
|
16
|
+
*/
|
|
17
|
+
disableTruncation?: boolean;
|
|
12
18
|
} & Omit<React.ComponentProps<typeof View>, 'children'>;
|
|
13
19
|
/**
|
|
14
20
|
* ListGroup component that mirrors the Figma "List Group" component.
|
|
@@ -35,6 +41,6 @@ type ListGroupProps = {
|
|
|
35
41
|
* @param {string} [props.accessibilityLabel] - Accessibility label for the list group. If not provided, uses label
|
|
36
42
|
* @param {string} [props.accessibilityHint] - Additional accessibility hint for screen readers
|
|
37
43
|
*/
|
|
38
|
-
declare function ListGroup({ label, listGroupSlot, children, modes, style, accessibilityLabel, accessibilityHint, ...rest }: ListGroupProps): import("react/jsx-runtime").JSX.Element;
|
|
44
|
+
declare function ListGroup({ label, listGroupSlot, children, modes, style, accessibilityLabel, accessibilityHint, disableTruncation, ...rest }: ListGroupProps): import("react/jsx-runtime").JSX.Element;
|
|
39
45
|
export default ListGroup;
|
|
40
46
|
//# sourceMappingURL=ListGroup.d.ts.map
|
|
@@ -31,6 +31,12 @@ type ListItemProps = {
|
|
|
31
31
|
* Web-specific accessibility props (only used on web platform)
|
|
32
32
|
*/
|
|
33
33
|
webAccessibilityProps?: WebAccessibilityProps;
|
|
34
|
+
/**
|
|
35
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
36
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
37
|
+
* lines as it needs even when horizontal space is tight.
|
|
38
|
+
*/
|
|
39
|
+
disableTruncation?: boolean;
|
|
34
40
|
} & React.ComponentProps<typeof View>;
|
|
35
41
|
/**
|
|
36
42
|
* ListItem component that mirrors the Figma "List Item" component.
|
|
@@ -78,7 +84,7 @@ type ListItemProps = {
|
|
|
78
84
|
* handlers stay referentially stable across renders.
|
|
79
85
|
* - The component is wrapped in `React.memo`.
|
|
80
86
|
*/
|
|
81
|
-
declare function ListItemImpl({ layout, title, supportText, showSupportText, leading, supportSlot, trailing, endSlot, navArrow, modes, onPress, style, contentStyle, accessibilityLabel, accessibilityHint, accessibilityState, webAccessibilityProps, ...rest }: ListItemProps): import("react/jsx-runtime").JSX.Element;
|
|
87
|
+
declare function ListItemImpl({ layout, title, supportText, showSupportText, leading, supportSlot, trailing, endSlot, navArrow, modes, onPress, style, contentStyle, accessibilityLabel, accessibilityHint, accessibilityState, webAccessibilityProps, disableTruncation, ...rest }: ListItemProps): import("react/jsx-runtime").JSX.Element;
|
|
82
88
|
declare const ListItem: React.MemoExoticComponent<typeof ListItemImpl>;
|
|
83
89
|
export default ListItem;
|
|
84
90
|
//# sourceMappingURL=ListItem.d.ts.map
|
|
@@ -30,6 +30,12 @@ export type MetricLegendItemProps = {
|
|
|
30
30
|
labelStyle?: StyleProp<TextStyle>;
|
|
31
31
|
/** Override the value text styles. */
|
|
32
32
|
valueStyle?: StyleProp<TextStyle>;
|
|
33
|
+
/**
|
|
34
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
35
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
36
|
+
* lines as it needs even when horizontal space is tight.
|
|
37
|
+
*/
|
|
38
|
+
disableTruncation?: boolean;
|
|
33
39
|
};
|
|
34
40
|
/**
|
|
35
41
|
* MetricLegendItem renders a horizontal row consisting of a small colored
|
|
@@ -39,6 +45,6 @@ export type MetricLegendItemProps = {
|
|
|
39
45
|
* @component
|
|
40
46
|
* @param {MetricLegendItemProps} props
|
|
41
47
|
*/
|
|
42
|
-
declare function MetricLegendItem({ label, value, indicatorColor, indicatorShape, modes, style, indicatorStyle, labelStyle, valueStyle, }: MetricLegendItemProps): import("react/jsx-runtime").JSX.Element;
|
|
48
|
+
declare function MetricLegendItem({ label, value, indicatorColor, indicatorShape, modes, style, indicatorStyle, labelStyle, valueStyle, disableTruncation, }: MetricLegendItemProps): import("react/jsx-runtime").JSX.Element;
|
|
43
49
|
export default MetricLegendItem;
|
|
44
50
|
//# sourceMappingURL=MetricLegendItem.d.ts.map
|
|
@@ -70,6 +70,12 @@ export type MonthlyStatusGridProps = {
|
|
|
70
70
|
legendStyle?: StyleProp<ViewStyle>;
|
|
71
71
|
/** Accessibility label for the entire component. */
|
|
72
72
|
accessibilityLabel?: string;
|
|
73
|
+
/**
|
|
74
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
75
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
76
|
+
* lines as it needs even when horizontal space is tight.
|
|
77
|
+
*/
|
|
78
|
+
disableTruncation?: boolean;
|
|
73
79
|
};
|
|
74
80
|
export type CalendarGlyphProps = {
|
|
75
81
|
/** Text rendered inside the glyph (e.g. `'Jan'`). */
|
|
@@ -87,6 +93,12 @@ export type CalendarGlyphProps = {
|
|
|
87
93
|
labelStyle?: StyleProp<TextStyle>;
|
|
88
94
|
/** Accessibility label. Defaults to `"{label}, {status}"`. */
|
|
89
95
|
accessibilityLabel?: string;
|
|
96
|
+
/**
|
|
97
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
98
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
99
|
+
* lines as it needs even when horizontal space is tight.
|
|
100
|
+
*/
|
|
101
|
+
disableTruncation?: boolean;
|
|
90
102
|
};
|
|
91
103
|
/**
|
|
92
104
|
* Single calendar-month glyph: a small pill with a status-driven background
|
|
@@ -95,7 +107,7 @@ export type CalendarGlyphProps = {
|
|
|
95
107
|
* {@link MonthlyStatusGrid} instead, which keeps the count, layout and
|
|
96
108
|
* legend in sync automatically.
|
|
97
109
|
*/
|
|
98
|
-
declare function CalendarGlyph({ label, status, modes: propModes, style, labelStyle, accessibilityLabel, }: CalendarGlyphProps): import("react/jsx-runtime").JSX.Element;
|
|
110
|
+
declare function CalendarGlyph({ label, status, modes: propModes, style, labelStyle, accessibilityLabel, disableTruncation, }: CalendarGlyphProps): import("react/jsx-runtime").JSX.Element;
|
|
99
111
|
/**
|
|
100
112
|
* `MonthlyStatusGrid` shows a year (or any contiguous range of months) as a
|
|
101
113
|
* grid of small pill-shaped calendar glyphs, each colored by its semantic
|
|
@@ -114,7 +126,7 @@ declare function CalendarGlyph({ label, status, modes: propModes, style, labelSt
|
|
|
114
126
|
*
|
|
115
127
|
* @component
|
|
116
128
|
*/
|
|
117
|
-
declare function MonthlyStatusGrid({ months, columns, legend, legendStatuses, modes: propModes, style, monthsStyle, rowStyle, glyphStyle, labelStyle, legendStyle, accessibilityLabel, }: MonthlyStatusGridProps): import("react/jsx-runtime").JSX.Element;
|
|
129
|
+
declare function MonthlyStatusGrid({ months, columns, legend, legendStatuses, modes: propModes, style, monthsStyle, rowStyle, glyphStyle, labelStyle, legendStyle, accessibilityLabel, disableTruncation, }: MonthlyStatusGridProps): import("react/jsx-runtime").JSX.Element;
|
|
118
130
|
export { CalendarGlyph };
|
|
119
131
|
export default MonthlyStatusGrid;
|
|
120
132
|
//# sourceMappingURL=MonthlyStatusGrid.d.ts.map
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { TextInput as RNTextInput, type StyleProp, type ViewStyle, type TextStyle, type TextInputProps } from 'react-native';
|
|
2
3
|
import type { Modes } from '../../design-tokens';
|
|
3
4
|
export type NoteInputProps = {
|
|
4
5
|
/** The value of the text input */
|
|
@@ -20,5 +21,21 @@ export type NoteInputProps = {
|
|
|
20
21
|
* NoteInput component representing an interactive "Add note" badge style field.
|
|
21
22
|
* Allows the user to click, clears the placeholder text, and shows a blinking cursor when focused.
|
|
22
23
|
*/
|
|
23
|
-
|
|
24
|
+
declare const NoteInput: React.ForwardRefExoticComponent<{
|
|
25
|
+
/** The value of the text input */
|
|
26
|
+
value?: string;
|
|
27
|
+
/** The placeholder when empty ("Add note" by default) */
|
|
28
|
+
placeholder?: string;
|
|
29
|
+
/** Callback when text changes */
|
|
30
|
+
onChangeText?: (text: string) => void;
|
|
31
|
+
/** Design token modes (e.g., {'InputState': 'Idle', 'Color Mode': 'Light'}) */
|
|
32
|
+
modes?: Modes;
|
|
33
|
+
/** Custom container style */
|
|
34
|
+
style?: StyleProp<ViewStyle>;
|
|
35
|
+
/** Custom text input style */
|
|
36
|
+
textStyle?: StyleProp<TextStyle>;
|
|
37
|
+
/** State of the component */
|
|
38
|
+
state?: "Editing" | "Idle";
|
|
39
|
+
} & Omit<TextInputProps, "style" | "value" | "placeholder" | "onChangeText"> & React.RefAttributes<RNTextInput>>;
|
|
40
|
+
export default NoteInput;
|
|
24
41
|
//# sourceMappingURL=NoteInput.d.ts.map
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type ViewStyle, type StyleProp, type ImageSourcePropType } from 'react-native';
|
|
3
|
+
import type { Modes } from '../../design-tokens';
|
|
4
|
+
/**
|
|
5
|
+
* A single metric column inside the card's stats row: a small title, a bold
|
|
6
|
+
* value and an optional muted caption.
|
|
7
|
+
*/
|
|
8
|
+
export interface PdpCcCardMetric {
|
|
9
|
+
/** Small label rendered above the value (e.g. `"Weight"`). */
|
|
10
|
+
title?: string;
|
|
11
|
+
/** The prominent value (e.g. `"24K"`). */
|
|
12
|
+
value?: string;
|
|
13
|
+
/** Optional muted caption rendered below the value. */
|
|
14
|
+
caption?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface PdpCcCardProps {
|
|
17
|
+
/**
|
|
18
|
+
* Image source for the default media slot. Accepts a URL string or any RN
|
|
19
|
+
* `ImageSourcePropType`. Ignored when `media` is provided.
|
|
20
|
+
*/
|
|
21
|
+
imageSource?: ImageSourcePropType | string;
|
|
22
|
+
/** Default media image width. Defaults to the Figma spec (`100`). */
|
|
23
|
+
imageWidth?: number;
|
|
24
|
+
/** Default media image height. Defaults to the Figma spec (`60`). */
|
|
25
|
+
imageHeight?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Full override for the media slot (top of the card). Takes precedence over
|
|
28
|
+
* `imageSource`. `modes` cascade into it automatically.
|
|
29
|
+
*/
|
|
30
|
+
media?: React.ReactNode;
|
|
31
|
+
/** Headline title (26px black). */
|
|
32
|
+
title?: string;
|
|
33
|
+
/** Subtitle rendered below the title (14px medium). */
|
|
34
|
+
subtitle?: string;
|
|
35
|
+
/**
|
|
36
|
+
* The metric columns rendered in the stats row. Vertical dividers are
|
|
37
|
+
* inserted automatically between adjacent metrics. Defaults to two sample
|
|
38
|
+
* metrics.
|
|
39
|
+
*/
|
|
40
|
+
metrics?: PdpCcCardMetric[];
|
|
41
|
+
/** CTA button label. Defaults to `"button"`. */
|
|
42
|
+
buttonLabel?: string;
|
|
43
|
+
/**
|
|
44
|
+
* Registry icon name for the button's leading glyph. Defaults to
|
|
45
|
+
* `'ic_add_circle'`. Pass `null` to hide the leading icon.
|
|
46
|
+
*/
|
|
47
|
+
buttonIcon?: string | null;
|
|
48
|
+
/** CTA press handler. */
|
|
49
|
+
onButtonPress?: () => void;
|
|
50
|
+
/** Full override for the CTA. Takes precedence over `buttonLabel`. */
|
|
51
|
+
button?: React.ReactNode;
|
|
52
|
+
/** Toggles the CTA button. Defaults to `true`. */
|
|
53
|
+
showButton?: boolean;
|
|
54
|
+
/** Press handler for the whole card. When set, the card becomes pressable. */
|
|
55
|
+
onPress?: () => void;
|
|
56
|
+
/** Card width. Defaults to the Figma spec (`344`). Pass `'100%'` to fill the parent. */
|
|
57
|
+
width?: number | `${number}%`;
|
|
58
|
+
/** Modes object for design-token resolution. Cascaded to all children. */
|
|
59
|
+
modes?: Modes;
|
|
60
|
+
/** Style overrides for the card container. */
|
|
61
|
+
style?: StyleProp<ViewStyle>;
|
|
62
|
+
/** Accessibility label for the card. */
|
|
63
|
+
accessibilityLabel?: string;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* PdpCcCard — Figma node 5352:935 ("PDP cc card").
|
|
67
|
+
*
|
|
68
|
+
* A centered white product/PDP card composed from the shared design-system
|
|
69
|
+
* primitives so it stays in sync with the rest of the library:
|
|
70
|
+
*
|
|
71
|
+
* - **Media** — a top image slot (`Image`, rounded via `image/radius`). Pass
|
|
72
|
+
* `imageSource` for the default image or `media` for a full slot override.
|
|
73
|
+
* - **Title** — a centered headline + subtitle rendered through the shared
|
|
74
|
+
* {@link Title} component (`title/*`, `pageSubtitle/*` tokens).
|
|
75
|
+
* - **Metrics** — a row of {@link PdpCcCardMetric} columns (title / value /
|
|
76
|
+
* caption) separated by vertical `Divider`s (`metricdata/*` tokens).
|
|
77
|
+
* - **CTA** — a small tonal {@link Button} (`Button / Size: S`,
|
|
78
|
+
* `AppearanceBrand: Secondary`, `Emphasis: Medium`) with a leading icon.
|
|
79
|
+
*
|
|
80
|
+
* All defaults can be overridden via `modes`.
|
|
81
|
+
*/
|
|
82
|
+
declare function PdpCcCard({ imageSource, imageWidth, imageHeight, media, title, subtitle, metrics, buttonLabel, buttonIcon, onButtonPress, button, showButton, onPress, width, modes, style, accessibilityLabel, }: PdpCcCardProps): import("react/jsx-runtime").JSX.Element;
|
|
83
|
+
export default PdpCcCard;
|
|
84
|
+
//# sourceMappingURL=PdpCcCard.d.ts.map
|
|
@@ -46,6 +46,12 @@ export type PoweredByLabelProps = {
|
|
|
46
46
|
* (which is decorative) does not need to be announced separately.
|
|
47
47
|
*/
|
|
48
48
|
accessibilityLabel?: string;
|
|
49
|
+
/**
|
|
50
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
51
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
52
|
+
* lines as it needs even when horizontal space is tight.
|
|
53
|
+
*/
|
|
54
|
+
disableTruncation?: boolean;
|
|
49
55
|
};
|
|
50
56
|
/**
|
|
51
57
|
* `PoweredByLabel` renders the small "Powered by RBI-regulated account
|
|
@@ -66,6 +72,6 @@ export type PoweredByLabelProps = {
|
|
|
66
72
|
* @component
|
|
67
73
|
* @param {PoweredByLabelProps} props
|
|
68
74
|
*/
|
|
69
|
-
declare function PoweredByLabel({ label, imageSource, imageWidth, imageHeight, imageSlot, modes: propModes, style, textStyle, imageStyle, accessibilityLabel, }: PoweredByLabelProps): import("react/jsx-runtime").JSX.Element;
|
|
75
|
+
declare function PoweredByLabel({ label, imageSource, imageWidth, imageHeight, imageSlot, modes: propModes, style, textStyle, imageStyle, accessibilityLabel, disableTruncation, }: PoweredByLabelProps): import("react/jsx-runtime").JSX.Element;
|
|
70
76
|
export default PoweredByLabel;
|
|
71
77
|
//# sourceMappingURL=PoweredByLabel.d.ts.map
|