jfs-components 0.1.8 → 0.1.17
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 +31 -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/ActionFooter/ActionFooter.js +7 -24
- package/lib/commonjs/components/ActionTile/ActionTile.js +10 -10
- package/lib/commonjs/components/AllocationComparisonChart/AllocationComparisonChart.js +9 -6
- package/lib/commonjs/components/AmountInput/AmountInput.js +3 -3
- package/lib/commonjs/components/AreaLineChart/AreaLineChart.js +13 -9
- package/lib/commonjs/components/Attached/Attached.js +1 -1
- package/lib/commonjs/components/Avatar/Avatar.js +10 -10
- package/lib/commonjs/components/AvatarGroup/AvatarGroup.js +9 -9
- package/lib/commonjs/components/Badge/Badge.js +55 -16
- package/lib/commonjs/components/BenefitCard/BenefitCard.js +95 -21
- package/lib/commonjs/components/BottomNav/BottomNav.js +2 -2
- package/lib/commonjs/components/BottomNavItem/BottomNavItem.js +3 -3
- package/lib/commonjs/components/BrandChip/BrandChip.js +3 -3
- package/lib/commonjs/components/Button/Button.js +32 -19
- package/lib/commonjs/components/Card/Card.js +20 -20
- package/lib/commonjs/components/CardAdvisory/CardAdvisory.js +8 -7
- package/lib/commonjs/components/CardBankAccount/CardBankAccount.js +3 -2
- package/lib/commonjs/components/CardCTA/CardCTA.js +215 -45
- package/lib/commonjs/components/CardFeedback/CardFeedback.js +18 -18
- package/lib/commonjs/components/CardFinancialCondition/CardFinancialCondition.js +7 -7
- package/lib/commonjs/components/CardInsight/CardInsight.js +6 -3
- package/lib/commonjs/components/Carousel/Carousel.js +18 -12
- package/lib/commonjs/components/CarouselCardAccounts/CarouselCardAccounts.js +75 -0
- package/lib/commonjs/components/Checkbox/Checkbox.js +6 -13
- package/lib/commonjs/components/ChipGroup/ChipGroup.js +1 -1
- package/lib/commonjs/components/ChipSelect/ChipSelect.js +11 -11
- package/lib/commonjs/components/CircularProgressBar/CircularProgressBar.js +12 -8
- package/lib/commonjs/components/CircularProgressBarDoted/CircularProgressBarDoted.js +11 -10
- package/lib/commonjs/components/CircularRating/CircularRating.js +5 -4
- package/lib/commonjs/components/ClusterBubble/ClusterBubble.js +3 -2
- package/lib/commonjs/components/CompareTable/CompareTable.js +88 -59
- package/lib/commonjs/components/CoverageBarComparison/CoverageBarComparison.js +3 -2
- package/lib/commonjs/components/DebitCard/DebitCard.js +18 -18
- package/lib/commonjs/components/Disclaimer/Disclaimer.js +5 -5
- package/lib/commonjs/components/DonutChart/DonutChart.js +15 -14
- package/lib/commonjs/components/Drawer/Drawer.js +60 -60
- package/lib/commonjs/components/Dropdown/Dropdown.js +25 -25
- package/lib/commonjs/components/DropdownInput/DropdownInput.js +13 -12
- package/lib/commonjs/components/EmptyState/EmptyState.js +14 -14
- package/lib/commonjs/components/ExpandableCheckbox/ExpandableCheckbox.js +2 -1
- package/lib/commonjs/components/FilterBar/FilterBar.js +2 -2
- package/lib/commonjs/components/Form/Form.js +3 -3
- package/lib/commonjs/components/FormField/FormField.js +48 -8
- package/lib/commonjs/components/FullscreenModal/FullscreenModal.js +24 -24
- package/lib/commonjs/components/Gauge/Gauge.js +9 -9
- package/lib/commonjs/components/HoldingsCard/HoldingsCard.js +13 -12
- package/lib/commonjs/components/Icon/Icon.js +6 -6
- package/lib/commonjs/components/IconCapsule/IconCapsule.js +7 -7
- package/lib/commonjs/components/InputSearch/InputSearch.js +9 -9
- package/lib/commonjs/components/InstitutionBadge/InstitutionBadge.js +5 -4
- package/lib/commonjs/components/ListGroup/ListGroup.js +10 -9
- package/lib/commonjs/components/ListItem/ListItem.js +13 -12
- package/lib/commonjs/components/LottieIntroBlock/LottieIntroBlock.js +13 -13
- package/lib/commonjs/components/LottiePlayer/LottiePlayer.js +2 -2
- package/lib/commonjs/components/LottiePlayer/LottiePlayer.web.js +2 -2
- package/lib/commonjs/components/MediaCard/MediaCard.js +25 -23
- package/lib/commonjs/components/MessageField/MessageField.js +8 -8
- package/lib/commonjs/components/MetricLegendItem/MetricLegendItem.js +3 -2
- package/lib/commonjs/components/MoneyValue/MoneyValue.js +7 -7
- package/lib/commonjs/components/MonthlyStatusGrid/MonthlyStatusGrid.js +6 -3
- package/lib/commonjs/components/NavArrow/NavArrow.js +8 -8
- package/lib/commonjs/components/NoteInput/NoteInput.js +12 -12
- package/lib/commonjs/components/Nudge/Nudge.js +20 -20
- package/lib/commonjs/components/OTP/OTP.js +15 -15
- package/lib/commonjs/components/PageHero/PageHero.js +16 -16
- package/lib/commonjs/components/PaymentFeedback/PaymentFeedback.js +23 -23
- package/lib/commonjs/components/Popup/Popup.js +1 -1
- package/lib/commonjs/components/PoweredByLabel/PoweredByLabel.js +3 -2
- package/lib/commonjs/components/ProductMerchandisingCard/ProductMerchandisingCard.js +107 -33
- package/lib/commonjs/components/ProductOverview/ProductOverview.js +4 -3
- package/lib/commonjs/components/ProgressBadge/ProgressBadge.js +7 -7
- package/lib/commonjs/components/ProjectionMarker/ProjectionMarker.js +3 -2
- package/lib/commonjs/components/Radio/Radio.js +8 -8
- package/lib/commonjs/components/RechargeCard/RechargeCard.js +31 -31
- package/lib/commonjs/components/SavingsGoalSummary/SavingsGoalSummary.js +59 -12
- package/lib/commonjs/components/ScrollArea/ScrollArea.js +126 -0
- package/lib/commonjs/components/Section/Section.js +27 -26
- package/lib/commonjs/components/Slider/Slider.js +3 -2
- package/lib/commonjs/components/Stack/Stack.js +86 -0
- package/lib/commonjs/components/StatusHero/StatusHero.js +14 -14
- package/lib/commonjs/components/Stepper/Step.js +16 -16
- package/lib/commonjs/components/Stepper/StepLabel.js +16 -16
- package/lib/commonjs/components/Stepper/Stepper.js +3 -3
- package/lib/commonjs/components/SuggestiveSearch/SuggestiveSearch.js +20 -11
- package/lib/commonjs/components/SummaryTile/SummaryTile.js +3 -2
- package/lib/commonjs/components/SupportText/SupportText.js +6 -6
- package/lib/commonjs/components/SupportText/SupportTextIcon.js +2 -2
- package/lib/commonjs/components/Table/Table.js +324 -0
- package/lib/commonjs/components/Text/Text.js +15 -2
- package/lib/commonjs/components/TextInput/TextInput.js +23 -15
- package/lib/commonjs/components/TextSegment/TextSegment.js +15 -2
- package/lib/commonjs/components/ThreadHero/ThreadHero.js +21 -22
- package/lib/commonjs/components/Title/Title.js +39 -16
- package/lib/commonjs/components/Toast/Toast.js +18 -17
- package/lib/commonjs/components/Toggle/Toggle.js +3 -11
- package/lib/commonjs/components/Tooltip/Tooltip.js +12 -12
- package/lib/commonjs/components/TransactionBubble/TransactionBubble.js +15 -14
- package/lib/commonjs/components/TransactionDetails/TransactionDetails.js +10 -10
- package/lib/commonjs/components/TransactionStatus/TransactionStatus.js +12 -11
- package/lib/commonjs/components/UpiHandle/UpiHandle.js +17 -17
- package/lib/commonjs/components/index.js +58 -0
- package/lib/commonjs/design-tokens/Coin Variables-variables-full.json +1 -1
- package/lib/commonjs/design-tokens/figma-modes.generated.js +51 -42
- package/lib/commonjs/icons/components/Icon4g.js +19 -0
- package/lib/commonjs/icons/components/Icon4gltedata.js +19 -0
- package/lib/commonjs/icons/components/Icon5g.js +19 -0
- package/lib/commonjs/icons/components/Icon5gdoubleplus.js +19 -0
- package/lib/commonjs/icons/components/Icon5gplus.js +19 -0
- package/lib/commonjs/icons/components/IconAdblocker.js +19 -0
- package/lib/commonjs/icons/components/IconAdblockplus.js +19 -0
- package/lib/commonjs/icons/components/IconAnalytics.js +19 -0
- package/lib/commonjs/icons/components/IconAnalyticsdata.js +19 -0
- package/lib/commonjs/icons/components/IconAnalyticspiechart.js +19 -0
- package/lib/commonjs/icons/components/IconAnalyticspiecharttree.js +19 -0
- package/lib/commonjs/icons/components/IconAnalyticspiecharttwo.js +19 -0
- package/lib/commonjs/icons/components/IconCompoundinterest.js +19 -0
- package/lib/commonjs/icons/components/IconConsumptionaccounted.js +19 -0
- package/lib/commonjs/icons/components/IconConsumptionaverage.js +19 -0
- package/lib/commonjs/icons/components/IconConsumptionhigh.js +19 -0
- package/lib/commonjs/icons/components/IconConsumptionlow.js +19 -0
- package/lib/commonjs/icons/components/IconConsumptionunaccounted.js +19 -0
- package/lib/commonjs/icons/components/IconCsvdoc.js +19 -0
- package/lib/commonjs/icons/components/IconDatabase.js +19 -0
- package/lib/commonjs/icons/components/IconDigitalecosystem.js +19 -0
- package/lib/commonjs/icons/components/IconDigitalselfservice.js +19 -0
- package/lib/commonjs/icons/components/IconDistribution.js +19 -0
- package/lib/commonjs/icons/components/IconDocument.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentdoc.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentjpg.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentodt.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentpdf.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentpng.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentraw.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentrtf.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentsettings.js +19 -0
- package/lib/commonjs/icons/components/IconDocumenttif.js +19 -0
- package/lib/commonjs/icons/components/IconDocumenttxt.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentunknown.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentxls.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentxlsx.js +19 -0
- package/lib/commonjs/icons/components/IconFilerequest.js +19 -0
- package/lib/commonjs/icons/components/IconFilesend.js +19 -0
- package/lib/commonjs/icons/components/IconFileshare.js +19 -0
- package/lib/commonjs/icons/components/IconFindinpage.js +19 -0
- package/lib/commonjs/icons/components/IconFolder.js +19 -0
- package/lib/commonjs/icons/components/IconFolderbookmarks.js +19 -0
- package/lib/commonjs/icons/components/IconFolderfavorites.js +19 -0
- package/lib/commonjs/icons/components/IconFolderlocked.js +19 -0
- package/lib/commonjs/icons/components/IconFoldermovefiles.js +19 -0
- package/lib/commonjs/icons/components/IconFolderpublic.js +19 -0
- package/lib/commonjs/icons/components/IconFolderrated.js +19 -0
- package/lib/commonjs/icons/components/IconFolderrequest.js +19 -0
- package/lib/commonjs/icons/components/IconForm.js +19 -0
- package/lib/commonjs/icons/components/IconFormadd.js +19 -0
- package/lib/commonjs/icons/components/IconForms.js +19 -0
- package/lib/commonjs/icons/components/IconGraphincreasing.js +19 -0
- package/lib/commonjs/icons/components/IconGraphlow.js +19 -0
- package/lib/commonjs/icons/components/IconGraphtable.js +19 -0
- package/lib/commonjs/icons/components/IconHealthreport.js +19 -0
- package/lib/commonjs/icons/components/IconHubmode.js +19 -0
- package/lib/commonjs/icons/components/IconInfrastructure.js +19 -0
- package/lib/commonjs/icons/components/IconInterestlow.js +19 -0
- package/lib/commonjs/icons/components/IconLte.js +19 -0
- package/lib/commonjs/icons/components/IconNetworkfuture.js +19 -0
- package/lib/commonjs/icons/components/IconPagesettings.js +19 -0
- package/lib/commonjs/icons/components/IconPptxdoc.js +19 -0
- package/lib/commonjs/icons/components/IconPreferrednumber.js +19 -0
- package/lib/commonjs/icons/components/IconPremiumnumber.js +19 -0
- package/lib/commonjs/icons/components/IconProjection.js +19 -0
- package/lib/commonjs/icons/components/IconRequest.js +19 -0
- package/lib/commonjs/icons/components/IconRoutestraffic.js +19 -0
- package/lib/commonjs/icons/components/IconTechnology.js +19 -0
- package/lib/commonjs/icons/components/IconVolte.js +19 -0
- package/lib/commonjs/icons/components/IconVonr.js +19 -0
- package/lib/commonjs/icons/components/IconVowifi.js +19 -0
- package/lib/commonjs/icons/components/IconVpndata.js +19 -0
- package/lib/commonjs/icons/components/index.js +803 -0
- package/lib/commonjs/icons/registry.js +2 -2
- package/lib/commonjs/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.js +11 -3
- package/lib/commonjs/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.js +8 -4
- package/lib/commonjs/utils/index.js +25 -0
- package/lib/commonjs/utils/react-utils.js +118 -0
- package/lib/commonjs/utils/shadow.js +200 -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/ActionFooter/ActionFooter.js +7 -24
- package/lib/module/components/ActionTile/ActionTile.js +10 -10
- package/lib/module/components/AllocationComparisonChart/AllocationComparisonChart.js +10 -7
- package/lib/module/components/AmountInput/AmountInput.js +3 -3
- package/lib/module/components/AreaLineChart/AreaLineChart.js +14 -10
- package/lib/module/components/Attached/Attached.js +1 -1
- package/lib/module/components/Avatar/Avatar.js +10 -10
- package/lib/module/components/AvatarGroup/AvatarGroup.js +9 -9
- package/lib/module/components/Badge/Badge.js +57 -18
- package/lib/module/components/BenefitCard/BenefitCard.js +95 -21
- package/lib/module/components/BottomNav/BottomNav.js +2 -2
- package/lib/module/components/BottomNavItem/BottomNavItem.js +3 -3
- package/lib/module/components/BrandChip/BrandChip.js +4 -4
- package/lib/module/components/Button/Button.js +32 -19
- package/lib/module/components/Card/Card.js +20 -20
- package/lib/module/components/CardAdvisory/CardAdvisory.js +9 -8
- package/lib/module/components/CardBankAccount/CardBankAccount.js +4 -3
- package/lib/module/components/CardCTA/CardCTA.js +216 -46
- package/lib/module/components/CardFeedback/CardFeedback.js +18 -18
- package/lib/module/components/CardFinancialCondition/CardFinancialCondition.js +7 -7
- package/lib/module/components/CardInsight/CardInsight.js +6 -3
- package/lib/module/components/Carousel/Carousel.js +18 -12
- package/lib/module/components/CarouselCardAccounts/CarouselCardAccounts.js +71 -0
- package/lib/module/components/Checkbox/Checkbox.js +2 -9
- package/lib/module/components/ChipGroup/ChipGroup.js +1 -1
- package/lib/module/components/ChipSelect/ChipSelect.js +11 -11
- package/lib/module/components/CircularProgressBar/CircularProgressBar.js +13 -9
- package/lib/module/components/CircularProgressBarDoted/CircularProgressBarDoted.js +12 -11
- package/lib/module/components/CircularRating/CircularRating.js +6 -5
- package/lib/module/components/ClusterBubble/ClusterBubble.js +4 -3
- package/lib/module/components/CompareTable/CompareTable.js +89 -60
- package/lib/module/components/CoverageBarComparison/CoverageBarComparison.js +4 -3
- package/lib/module/components/DebitCard/DebitCard.js +18 -18
- package/lib/module/components/Disclaimer/Disclaimer.js +5 -5
- package/lib/module/components/DonutChart/DonutChart.js +16 -15
- package/lib/module/components/Drawer/Drawer.js +60 -60
- package/lib/module/components/Dropdown/Dropdown.js +26 -26
- package/lib/module/components/DropdownInput/DropdownInput.js +14 -13
- package/lib/module/components/EmptyState/EmptyState.js +14 -14
- package/lib/module/components/ExpandableCheckbox/ExpandableCheckbox.js +2 -1
- package/lib/module/components/FilterBar/FilterBar.js +2 -2
- package/lib/module/components/Form/Form.js +3 -3
- package/lib/module/components/FormField/FormField.js +51 -11
- package/lib/module/components/FullscreenModal/FullscreenModal.js +24 -24
- package/lib/module/components/Gauge/Gauge.js +9 -9
- package/lib/module/components/HoldingsCard/HoldingsCard.js +14 -13
- package/lib/module/components/Icon/Icon.js +6 -6
- package/lib/module/components/IconCapsule/IconCapsule.js +7 -7
- package/lib/module/components/InputSearch/InputSearch.js +9 -9
- package/lib/module/components/InstitutionBadge/InstitutionBadge.js +6 -5
- package/lib/module/components/ListGroup/ListGroup.js +11 -10
- package/lib/module/components/ListItem/ListItem.js +14 -13
- package/lib/module/components/LottieIntroBlock/LottieIntroBlock.js +13 -13
- package/lib/module/components/LottiePlayer/LottiePlayer.js +2 -2
- package/lib/module/components/LottiePlayer/LottiePlayer.web.js +2 -2
- package/lib/module/components/MediaCard/MediaCard.js +25 -23
- package/lib/module/components/MessageField/MessageField.js +8 -8
- package/lib/module/components/MetricLegendItem/MetricLegendItem.js +4 -3
- package/lib/module/components/MoneyValue/MoneyValue.js +7 -7
- package/lib/module/components/MonthlyStatusGrid/MonthlyStatusGrid.js +7 -4
- package/lib/module/components/NavArrow/NavArrow.js +8 -8
- package/lib/module/components/NoteInput/NoteInput.js +12 -12
- package/lib/module/components/Nudge/Nudge.js +20 -20
- package/lib/module/components/OTP/OTP.js +15 -15
- package/lib/module/components/PageHero/PageHero.js +16 -16
- package/lib/module/components/PaymentFeedback/PaymentFeedback.js +23 -23
- package/lib/module/components/Popup/Popup.js +1 -1
- package/lib/module/components/PoweredByLabel/PoweredByLabel.js +4 -3
- package/lib/module/components/ProductMerchandisingCard/ProductMerchandisingCard.js +109 -35
- package/lib/module/components/ProductOverview/ProductOverview.js +5 -4
- package/lib/module/components/ProgressBadge/ProgressBadge.js +8 -8
- package/lib/module/components/ProjectionMarker/ProjectionMarker.js +4 -3
- package/lib/module/components/Radio/Radio.js +9 -9
- package/lib/module/components/RechargeCard/RechargeCard.js +31 -31
- package/lib/module/components/SavingsGoalSummary/SavingsGoalSummary.js +60 -13
- package/lib/module/components/ScrollArea/ScrollArea.js +121 -0
- package/lib/module/components/Section/Section.js +28 -27
- package/lib/module/components/Slider/Slider.js +4 -3
- package/lib/module/components/Stack/Stack.js +81 -0
- package/lib/module/components/StatusHero/StatusHero.js +14 -14
- package/lib/module/components/Stepper/Step.js +16 -16
- package/lib/module/components/Stepper/StepLabel.js +16 -16
- package/lib/module/components/Stepper/Stepper.js +3 -3
- package/lib/module/components/SuggestiveSearch/SuggestiveSearch.js +20 -11
- package/lib/module/components/SummaryTile/SummaryTile.js +4 -3
- package/lib/module/components/SupportText/SupportText.js +6 -6
- package/lib/module/components/SupportText/SupportTextIcon.js +2 -2
- package/lib/module/components/Table/Table.js +315 -0
- package/lib/module/components/Text/Text.js +16 -3
- package/lib/module/components/TextInput/TextInput.js +23 -15
- package/lib/module/components/TextSegment/TextSegment.js +16 -3
- package/lib/module/components/ThreadHero/ThreadHero.js +22 -23
- package/lib/module/components/Title/Title.js +40 -17
- package/lib/module/components/Toast/Toast.js +19 -18
- package/lib/module/components/Toggle/Toggle.js +4 -12
- package/lib/module/components/Tooltip/Tooltip.js +12 -12
- package/lib/module/components/TransactionBubble/TransactionBubble.js +16 -15
- package/lib/module/components/TransactionDetails/TransactionDetails.js +10 -10
- package/lib/module/components/TransactionStatus/TransactionStatus.js +13 -12
- package/lib/module/components/UpiHandle/UpiHandle.js +18 -18
- package/lib/module/components/index.js +4 -0
- package/lib/module/design-tokens/Coin Variables-variables-full.json +1 -1
- package/lib/module/design-tokens/figma-modes.generated.js +51 -42
- package/lib/module/icons/components/Icon4g.js +12 -0
- package/lib/module/icons/components/Icon4gltedata.js +12 -0
- package/lib/module/icons/components/Icon5g.js +12 -0
- package/lib/module/icons/components/Icon5gdoubleplus.js +12 -0
- package/lib/module/icons/components/Icon5gplus.js +12 -0
- package/lib/module/icons/components/IconAdblocker.js +12 -0
- package/lib/module/icons/components/IconAdblockplus.js +12 -0
- package/lib/module/icons/components/IconAnalytics.js +12 -0
- package/lib/module/icons/components/IconAnalyticsdata.js +12 -0
- package/lib/module/icons/components/IconAnalyticspiechart.js +12 -0
- package/lib/module/icons/components/IconAnalyticspiecharttree.js +12 -0
- package/lib/module/icons/components/IconAnalyticspiecharttwo.js +12 -0
- package/lib/module/icons/components/IconCompoundinterest.js +12 -0
- package/lib/module/icons/components/IconConsumptionaccounted.js +12 -0
- package/lib/module/icons/components/IconConsumptionaverage.js +12 -0
- package/lib/module/icons/components/IconConsumptionhigh.js +12 -0
- package/lib/module/icons/components/IconConsumptionlow.js +12 -0
- package/lib/module/icons/components/IconConsumptionunaccounted.js +12 -0
- package/lib/module/icons/components/IconCsvdoc.js +12 -0
- package/lib/module/icons/components/IconDatabase.js +12 -0
- package/lib/module/icons/components/IconDigitalecosystem.js +12 -0
- package/lib/module/icons/components/IconDigitalselfservice.js +12 -0
- package/lib/module/icons/components/IconDistribution.js +12 -0
- package/lib/module/icons/components/IconDocument.js +12 -0
- package/lib/module/icons/components/IconDocumentdoc.js +12 -0
- package/lib/module/icons/components/IconDocumentjpg.js +12 -0
- package/lib/module/icons/components/IconDocumentodt.js +12 -0
- package/lib/module/icons/components/IconDocumentpdf.js +12 -0
- package/lib/module/icons/components/IconDocumentpng.js +12 -0
- package/lib/module/icons/components/IconDocumentraw.js +12 -0
- package/lib/module/icons/components/IconDocumentrtf.js +12 -0
- package/lib/module/icons/components/IconDocumentsettings.js +12 -0
- package/lib/module/icons/components/IconDocumenttif.js +12 -0
- package/lib/module/icons/components/IconDocumenttxt.js +12 -0
- package/lib/module/icons/components/IconDocumentunknown.js +12 -0
- package/lib/module/icons/components/IconDocumentxls.js +12 -0
- package/lib/module/icons/components/IconDocumentxlsx.js +12 -0
- package/lib/module/icons/components/IconFilerequest.js +12 -0
- package/lib/module/icons/components/IconFilesend.js +12 -0
- package/lib/module/icons/components/IconFileshare.js +12 -0
- package/lib/module/icons/components/IconFindinpage.js +12 -0
- package/lib/module/icons/components/IconFolder.js +12 -0
- package/lib/module/icons/components/IconFolderbookmarks.js +12 -0
- package/lib/module/icons/components/IconFolderfavorites.js +12 -0
- package/lib/module/icons/components/IconFolderlocked.js +12 -0
- package/lib/module/icons/components/IconFoldermovefiles.js +12 -0
- package/lib/module/icons/components/IconFolderpublic.js +12 -0
- package/lib/module/icons/components/IconFolderrated.js +12 -0
- package/lib/module/icons/components/IconFolderrequest.js +12 -0
- package/lib/module/icons/components/IconForm.js +12 -0
- package/lib/module/icons/components/IconFormadd.js +12 -0
- package/lib/module/icons/components/IconForms.js +12 -0
- package/lib/module/icons/components/IconGraphincreasing.js +12 -0
- package/lib/module/icons/components/IconGraphlow.js +12 -0
- package/lib/module/icons/components/IconGraphtable.js +12 -0
- package/lib/module/icons/components/IconHealthreport.js +12 -0
- package/lib/module/icons/components/IconHubmode.js +12 -0
- package/lib/module/icons/components/IconInfrastructure.js +12 -0
- package/lib/module/icons/components/IconInterestlow.js +12 -0
- package/lib/module/icons/components/IconLte.js +12 -0
- package/lib/module/icons/components/IconNetworkfuture.js +12 -0
- package/lib/module/icons/components/IconPagesettings.js +12 -0
- package/lib/module/icons/components/IconPptxdoc.js +12 -0
- package/lib/module/icons/components/IconPreferrednumber.js +12 -0
- package/lib/module/icons/components/IconPremiumnumber.js +12 -0
- package/lib/module/icons/components/IconProjection.js +12 -0
- package/lib/module/icons/components/IconRequest.js +12 -0
- package/lib/module/icons/components/IconRoutestraffic.js +12 -0
- package/lib/module/icons/components/IconTechnology.js +12 -0
- package/lib/module/icons/components/IconVolte.js +12 -0
- package/lib/module/icons/components/IconVonr.js +12 -0
- package/lib/module/icons/components/IconVowifi.js +12 -0
- package/lib/module/icons/components/IconVpndata.js +12 -0
- package/lib/module/icons/components/index.js +73 -0
- package/lib/module/icons/registry.js +2 -2
- package/lib/module/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.js +11 -3
- package/lib/module/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.js +8 -4
- package/lib/module/utils/index.js +2 -1
- package/lib/module/utils/react-utils.js +115 -0
- package/lib/module/utils/shadow.js +194 -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/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 +33 -4
- 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/Carousel/Carousel.d.ts +11 -1
- package/lib/typescript/src/components/CarouselCardAccounts/CarouselCardAccounts.d.ts +57 -0
- 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 +7 -1
- 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 +6 -0
- package/lib/typescript/src/components/ExpandableCheckbox/ExpandableCheckbox.d.ts +7 -1
- package/lib/typescript/src/components/HoldingsCard/HoldingsCard.d.ts +7 -1
- 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/PoweredByLabel/PoweredByLabel.d.ts +7 -1
- package/lib/typescript/src/components/ProductMerchandisingCard/ProductMerchandisingCard.d.ts +7 -1
- 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 +7 -1
- package/lib/typescript/src/components/SavingsGoalSummary/SavingsGoalSummary.d.ts +11 -1
- package/lib/typescript/src/components/ScrollArea/ScrollArea.d.ts +77 -0
- package/lib/typescript/src/components/Section/Section.d.ts +7 -1
- package/lib/typescript/src/components/Slider/Slider.d.ts +6 -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 +16 -1
- package/lib/typescript/src/components/TextSegment/TextSegment.d.ts +16 -1
- package/lib/typescript/src/components/ThreadHero/ThreadHero.d.ts +7 -1
- package/lib/typescript/src/components/Title/Title.d.ts +17 -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 +6 -2
- package/lib/typescript/src/design-tokens/figma-modes.generated.d.ts +23 -15
- package/lib/typescript/src/icons/components/Icon4g.d.ts +3 -0
- package/lib/typescript/src/icons/components/Icon4gltedata.d.ts +3 -0
- package/lib/typescript/src/icons/components/Icon5g.d.ts +3 -0
- package/lib/typescript/src/icons/components/Icon5gdoubleplus.d.ts +3 -0
- package/lib/typescript/src/icons/components/Icon5gplus.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAdblocker.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAdblockplus.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAnalytics.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAnalyticsdata.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAnalyticspiechart.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAnalyticspiecharttree.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAnalyticspiecharttwo.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconCompoundinterest.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconConsumptionaccounted.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconConsumptionaverage.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconConsumptionhigh.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconConsumptionlow.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconConsumptionunaccounted.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconCsvdoc.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDatabase.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDigitalecosystem.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDigitalselfservice.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDistribution.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocument.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentdoc.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentjpg.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentodt.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentpdf.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentpng.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentraw.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentrtf.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentsettings.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumenttif.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumenttxt.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentunknown.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentxls.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentxlsx.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFilerequest.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFilesend.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFileshare.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFindinpage.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolder.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderbookmarks.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderfavorites.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderlocked.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFoldermovefiles.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderpublic.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderrated.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderrequest.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconForm.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFormadd.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconForms.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconGraphincreasing.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconGraphlow.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconGraphtable.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconHealthreport.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconHubmode.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconInfrastructure.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconInterestlow.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconLte.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconNetworkfuture.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconPagesettings.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconPptxdoc.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconPreferrednumber.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconPremiumnumber.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconProjection.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconRequest.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconRoutestraffic.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconTechnology.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconVolte.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconVonr.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconVowifi.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconVpndata.d.ts +3 -0
- package/lib/typescript/src/icons/components/index.d.ts +73 -0
- package/lib/typescript/src/icons/registry.d.ts +1 -1
- package/lib/typescript/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.d.ts +31 -3
- package/lib/typescript/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.d.ts +18 -2
- package/lib/typescript/src/utils/index.d.ts +2 -0
- package/lib/typescript/src/utils/react-utils.d.ts +76 -0
- package/lib/typescript/src/utils/shadow.d.ts +72 -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/ActionFooter/ActionFooter.tsx +8 -26
- package/src/components/ActionTile/ActionTile.tsx +10 -10
- package/src/components/AllocationComparisonChart/AllocationComparisonChart.tsx +14 -4
- package/src/components/AmountInput/AmountInput.tsx +3 -3
- package/src/components/AreaLineChart/AreaLineChart.tsx +17 -7
- package/src/components/Attached/Attached.tsx +1 -1
- package/src/components/Avatar/Avatar.tsx +10 -10
- package/src/components/AvatarGroup/AvatarGroup.tsx +9 -9
- package/src/components/Badge/Badge.tsx +86 -17
- package/src/components/BenefitCard/BenefitCard.tsx +120 -27
- package/src/components/BottomNav/BottomNav.tsx +2 -2
- package/src/components/BottomNavItem/BottomNavItem.tsx +3 -3
- package/src/components/BrandChip/BrandChip.tsx +9 -3
- package/src/components/Button/Button.tsx +36 -19
- package/src/components/Card/Card.tsx +20 -20
- package/src/components/CardAdvisory/CardAdvisory.tsx +15 -8
- package/src/components/CardBankAccount/CardBankAccount.tsx +9 -2
- package/src/components/CardCTA/CardCTA.tsx +237 -64
- package/src/components/CardFeedback/CardFeedback.tsx +18 -18
- package/src/components/CardFinancialCondition/CardFinancialCondition.tsx +7 -10
- package/src/components/CardInsight/CardInsight.tsx +8 -4
- package/src/components/Carousel/Carousel.tsx +29 -12
- package/src/components/CarouselCardAccounts/CarouselCardAccounts.tsx +113 -0
- package/src/components/Checkbox/Checkbox.tsx +2 -8
- package/src/components/ChipGroup/ChipGroup.tsx +1 -1
- package/src/components/ChipSelect/ChipSelect.tsx +11 -11
- package/src/components/CircularProgressBar/CircularProgressBar.tsx +19 -9
- package/src/components/CircularProgressBarDoted/CircularProgressBarDoted.tsx +18 -11
- package/src/components/CircularRating/CircularRating.tsx +12 -5
- package/src/components/ClusterBubble/ClusterBubble.tsx +9 -2
- package/src/components/CompareTable/CompareTable.tsx +114 -66
- package/src/components/CoverageBarComparison/CoverageBarComparison.tsx +9 -2
- package/src/components/DebitCard/DebitCard.tsx +22 -22
- package/src/components/Disclaimer/Disclaimer.tsx +5 -5
- package/src/components/DonutChart/DonutChart.tsx +21 -48
- package/src/components/Drawer/Drawer.tsx +80 -71
- package/src/components/Dropdown/Dropdown.tsx +32 -30
- package/src/components/DropdownInput/DropdownInput.tsx +19 -19
- package/src/components/EmptyState/EmptyState.tsx +14 -14
- package/src/components/ExpandableCheckbox/ExpandableCheckbox.tsx +8 -1
- package/src/components/FilterBar/FilterBar.tsx +2 -2
- package/src/components/Form/Form.tsx +3 -3
- package/src/components/FormField/FormField.tsx +55 -15
- package/src/components/FullscreenModal/FullscreenModal.tsx +24 -24
- package/src/components/Gauge/Gauge.tsx +9 -9
- package/src/components/HoldingsCard/HoldingsCard.tsx +19 -12
- package/src/components/Icon/Icon.tsx +6 -6
- package/src/components/IconCapsule/IconCapsule.tsx +7 -7
- package/src/components/InputSearch/InputSearch.tsx +9 -9
- package/src/components/InstitutionBadge/InstitutionBadge.tsx +12 -8
- package/src/components/ListGroup/ListGroup.tsx +17 -10
- package/src/components/ListItem/ListItem.tsx +20 -13
- package/src/components/LottieIntroBlock/LottieIntroBlock.tsx +13 -16
- package/src/components/LottiePlayer/LottiePlayer.tsx +2 -2
- package/src/components/LottiePlayer/LottiePlayer.web.tsx +2 -2
- package/src/components/MediaCard/MediaCard.tsx +23 -23
- package/src/components/MessageField/MessageField.tsx +8 -16
- package/src/components/MetricLegendItem/MetricLegendItem.tsx +9 -2
- package/src/components/MoneyValue/MoneyValue.tsx +7 -7
- package/src/components/MonthlyStatusGrid/MonthlyStatusGrid.tsx +17 -2
- package/src/components/NavArrow/NavArrow.tsx +8 -8
- package/src/components/NoteInput/NoteInput.tsx +12 -12
- package/src/components/Nudge/Nudge.tsx +20 -20
- package/src/components/OTP/OTP.tsx +16 -16
- package/src/components/PageHero/PageHero.tsx +16 -16
- package/src/components/PaymentFeedback/PaymentFeedback.tsx +27 -27
- package/src/components/Popup/Popup.tsx +1 -1
- package/src/components/PoweredByLabel/PoweredByLabel.tsx +9 -2
- package/src/components/ProductMerchandisingCard/ProductMerchandisingCard.tsx +104 -37
- package/src/components/ProductOverview/ProductOverview.tsx +10 -3
- package/src/components/ProgressBadge/ProgressBadge.tsx +14 -8
- package/src/components/ProjectionMarker/ProjectionMarker.tsx +9 -2
- package/src/components/Radio/Radio.tsx +8 -9
- package/src/components/RechargeCard/RechargeCard.tsx +31 -31
- package/src/components/SavingsGoalSummary/SavingsGoalSummary.tsx +105 -13
- package/src/components/ScrollArea/ScrollArea.tsx +200 -0
- package/src/components/Section/Section.tsx +36 -29
- package/src/components/Slider/Slider.tsx +9 -2
- package/src/components/Stack/Stack.tsx +131 -0
- package/src/components/StatusHero/StatusHero.tsx +14 -14
- package/src/components/Stepper/Step.tsx +16 -18
- package/src/components/Stepper/StepLabel.tsx +16 -27
- package/src/components/Stepper/Stepper.tsx +3 -4
- package/src/components/SuggestiveSearch/SuggestiveSearch.tsx +20 -21
- package/src/components/SummaryTile/SummaryTile.tsx +9 -2
- package/src/components/SupportText/SupportText.tsx +6 -6
- package/src/components/SupportText/SupportTextIcon.tsx +2 -2
- package/src/components/Table/Table.tsx +449 -0
- package/src/components/Text/Text.tsx +28 -3
- package/src/components/TextInput/TextInput.tsx +21 -15
- package/src/components/TextSegment/TextSegment.tsx +27 -2
- package/src/components/ThreadHero/ThreadHero.tsx +27 -20
- package/src/components/Title/Title.tsx +50 -17
- package/src/components/Toast/Toast.tsx +24 -17
- package/src/components/Toggle/Toggle.tsx +5 -10
- package/src/components/Tooltip/Tooltip.tsx +12 -12
- package/src/components/TransactionBubble/TransactionBubble.tsx +22 -15
- package/src/components/TransactionDetails/TransactionDetails.tsx +10 -10
- package/src/components/TransactionStatus/TransactionStatus.tsx +18 -11
- package/src/components/UpiHandle/UpiHandle.tsx +24 -18
- package/src/components/index.ts +25 -2
- package/src/design-tokens/Coin Variables-variables-full.json +1 -1
- package/src/design-tokens/figma-modes.generated.ts +51 -42
- package/src/icons/components/Icon4g.tsx +11 -0
- package/src/icons/components/Icon4gltedata.tsx +11 -0
- package/src/icons/components/Icon5g.tsx +11 -0
- package/src/icons/components/Icon5gdoubleplus.tsx +11 -0
- package/src/icons/components/Icon5gplus.tsx +11 -0
- package/src/icons/components/IconAdblocker.tsx +11 -0
- package/src/icons/components/IconAdblockplus.tsx +11 -0
- package/src/icons/components/IconAnalytics.tsx +11 -0
- package/src/icons/components/IconAnalyticsdata.tsx +11 -0
- package/src/icons/components/IconAnalyticspiechart.tsx +11 -0
- package/src/icons/components/IconAnalyticspiecharttree.tsx +11 -0
- package/src/icons/components/IconAnalyticspiecharttwo.tsx +11 -0
- package/src/icons/components/IconCompoundinterest.tsx +11 -0
- package/src/icons/components/IconConsumptionaccounted.tsx +11 -0
- package/src/icons/components/IconConsumptionaverage.tsx +11 -0
- package/src/icons/components/IconConsumptionhigh.tsx +11 -0
- package/src/icons/components/IconConsumptionlow.tsx +11 -0
- package/src/icons/components/IconConsumptionunaccounted.tsx +11 -0
- package/src/icons/components/IconCsvdoc.tsx +11 -0
- package/src/icons/components/IconDatabase.tsx +11 -0
- package/src/icons/components/IconDigitalecosystem.tsx +11 -0
- package/src/icons/components/IconDigitalselfservice.tsx +11 -0
- package/src/icons/components/IconDistribution.tsx +11 -0
- package/src/icons/components/IconDocument.tsx +11 -0
- package/src/icons/components/IconDocumentdoc.tsx +11 -0
- package/src/icons/components/IconDocumentjpg.tsx +11 -0
- package/src/icons/components/IconDocumentodt.tsx +11 -0
- package/src/icons/components/IconDocumentpdf.tsx +11 -0
- package/src/icons/components/IconDocumentpng.tsx +11 -0
- package/src/icons/components/IconDocumentraw.tsx +11 -0
- package/src/icons/components/IconDocumentrtf.tsx +11 -0
- package/src/icons/components/IconDocumentsettings.tsx +11 -0
- package/src/icons/components/IconDocumenttif.tsx +11 -0
- package/src/icons/components/IconDocumenttxt.tsx +11 -0
- package/src/icons/components/IconDocumentunknown.tsx +11 -0
- package/src/icons/components/IconDocumentxls.tsx +11 -0
- package/src/icons/components/IconDocumentxlsx.tsx +11 -0
- package/src/icons/components/IconFilerequest.tsx +11 -0
- package/src/icons/components/IconFilesend.tsx +11 -0
- package/src/icons/components/IconFileshare.tsx +11 -0
- package/src/icons/components/IconFindinpage.tsx +11 -0
- package/src/icons/components/IconFolder.tsx +11 -0
- package/src/icons/components/IconFolderbookmarks.tsx +11 -0
- package/src/icons/components/IconFolderfavorites.tsx +11 -0
- package/src/icons/components/IconFolderlocked.tsx +11 -0
- package/src/icons/components/IconFoldermovefiles.tsx +11 -0
- package/src/icons/components/IconFolderpublic.tsx +11 -0
- package/src/icons/components/IconFolderrated.tsx +11 -0
- package/src/icons/components/IconFolderrequest.tsx +11 -0
- package/src/icons/components/IconForm.tsx +11 -0
- package/src/icons/components/IconFormadd.tsx +11 -0
- package/src/icons/components/IconForms.tsx +11 -0
- package/src/icons/components/IconGraphincreasing.tsx +11 -0
- package/src/icons/components/IconGraphlow.tsx +11 -0
- package/src/icons/components/IconGraphtable.tsx +11 -0
- package/src/icons/components/IconHealthreport.tsx +11 -0
- package/src/icons/components/IconHubmode.tsx +11 -0
- package/src/icons/components/IconInfrastructure.tsx +11 -0
- package/src/icons/components/IconInterestlow.tsx +11 -0
- package/src/icons/components/IconLte.tsx +11 -0
- package/src/icons/components/IconNetworkfuture.tsx +11 -0
- package/src/icons/components/IconPagesettings.tsx +11 -0
- package/src/icons/components/IconPptxdoc.tsx +11 -0
- package/src/icons/components/IconPreferrednumber.tsx +11 -0
- package/src/icons/components/IconPremiumnumber.tsx +11 -0
- package/src/icons/components/IconProjection.tsx +11 -0
- package/src/icons/components/IconRequest.tsx +11 -0
- package/src/icons/components/IconRoutestraffic.tsx +11 -0
- package/src/icons/components/IconTechnology.tsx +11 -0
- package/src/icons/components/IconVolte.tsx +11 -0
- package/src/icons/components/IconVonr.tsx +11 -0
- package/src/icons/components/IconVowifi.tsx +11 -0
- package/src/icons/components/IconVpndata.tsx +11 -0
- package/src/icons/components/index.ts +73 -0
- package/src/icons/registry.ts +293 -1
- package/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.tsx +32 -3
- package/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.tsx +25 -4
- package/src/utils/index.ts +2 -0
- package/src/utils/react-utils.ts +132 -0
- package/src/utils/shadow.ts +219 -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/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
|
@@ -65,6 +65,16 @@ export interface CarouselProps {
|
|
|
65
65
|
gap?: number
|
|
66
66
|
/** Width of each carousel item. When undefined, items take full container width. */
|
|
67
67
|
itemWidth?: number
|
|
68
|
+
/**
|
|
69
|
+
* Explicit horizontal padding (px) for the scroll content. When provided it
|
|
70
|
+
* overrides the token-derived padding verbatim — the built-in `carousel/
|
|
71
|
+
* padding/horizontal × 2` "peek" multiplier is NOT applied. Use this for
|
|
72
|
+
* presets (e.g. the account-card strip) whose own tokens define a flush,
|
|
73
|
+
* non-peeking layout.
|
|
74
|
+
*/
|
|
75
|
+
paddingHorizontal?: number
|
|
76
|
+
/** Explicit vertical padding (px) for the outer container. Overrides `carousel/padding/vertical`. */
|
|
77
|
+
paddingVertical?: number
|
|
68
78
|
|
|
69
79
|
/** Called when the active index changes. */
|
|
70
80
|
onIndexChange?: (index: number) => void
|
|
@@ -85,27 +95,29 @@ export function Carousel({
|
|
|
85
95
|
loop = true,
|
|
86
96
|
gap: gapProp,
|
|
87
97
|
itemWidth: itemWidthProp,
|
|
98
|
+
paddingHorizontal: paddingHorizontalProp,
|
|
99
|
+
paddingVertical: paddingVerticalProp,
|
|
88
100
|
|
|
89
101
|
onIndexChange,
|
|
90
102
|
style,
|
|
91
103
|
}: CarouselProps) {
|
|
92
104
|
// ---- Token resolution ----
|
|
93
105
|
const tokenGap = parseFloat(
|
|
94
|
-
getVariableByName('carousel/gap', modes)
|
|
106
|
+
getVariableByName('carousel/gap', modes),
|
|
95
107
|
)
|
|
96
108
|
const gap = gapProp ?? tokenGap
|
|
97
109
|
|
|
98
110
|
|
|
99
111
|
|
|
100
112
|
const containerPaddingH = parseFloat(
|
|
101
|
-
getVariableByName('carousel/padding/horizontal', modes)
|
|
113
|
+
getVariableByName('carousel/padding/horizontal', modes),
|
|
102
114
|
)
|
|
103
115
|
const containerPaddingV = parseFloat(
|
|
104
|
-
getVariableByName('carousel/padding/vertical', modes)
|
|
116
|
+
getVariableByName('carousel/padding/vertical', modes),
|
|
105
117
|
)
|
|
106
118
|
// Outer container max height per Figma (`carousel/maxHeight`).
|
|
107
119
|
const maxHeight = parseFloat(
|
|
108
|
-
getVariableByName('carousel/maxHeight', modes)
|
|
120
|
+
getVariableByName('carousel/maxHeight', modes),
|
|
109
121
|
)
|
|
110
122
|
// Spacing between the cards row and the pagination dots uses `carousel/gap`.
|
|
111
123
|
const paginationOffset = gap
|
|
@@ -254,13 +266,18 @@ export function Carousel({
|
|
|
254
266
|
)
|
|
255
267
|
|
|
256
268
|
// ---- Render ----
|
|
269
|
+
// Explicit padding props win verbatim; otherwise fall back to the
|
|
270
|
+
// token-derived values (horizontal keeps its legacy ×2 "peek" multiplier).
|
|
271
|
+
const effectivePaddingH = paddingHorizontalProp ?? containerPaddingH
|
|
272
|
+
const effectivePaddingV = paddingVerticalProp ?? containerPaddingV
|
|
273
|
+
|
|
257
274
|
const outerStyle: ViewStyle = {
|
|
258
|
-
paddingVertical:
|
|
275
|
+
paddingVertical: effectivePaddingV,
|
|
259
276
|
maxHeight,
|
|
260
277
|
}
|
|
261
278
|
|
|
262
279
|
const contentContainerStyle: ViewStyle = {
|
|
263
|
-
paddingHorizontal:
|
|
280
|
+
paddingHorizontal: effectivePaddingH,
|
|
264
281
|
gap,
|
|
265
282
|
// Align items to the start so snap works correctly
|
|
266
283
|
alignItems: 'flex-start',
|
|
@@ -372,26 +389,26 @@ export function Pagination({ modes: propModes, style }: PaginationProps) {
|
|
|
372
389
|
// Token resolution for dots — matches Figma tokens
|
|
373
390
|
// (carousel/pagination/gap, carousel/pagination/indicator/{activeColor,inactiveColor,radius,size,activeWidth}).
|
|
374
391
|
const dotSize = parseFloat(
|
|
375
|
-
getVariableByName('carousel/pagination/indicator/size', modes)
|
|
392
|
+
getVariableByName('carousel/pagination/indicator/size', modes),
|
|
376
393
|
)
|
|
377
394
|
const dotActiveWidth = parseFloat(
|
|
378
|
-
getVariableByName('carousel/pagination/indicator/activeWidth', modes)
|
|
395
|
+
getVariableByName('carousel/pagination/indicator/activeWidth', modes),
|
|
379
396
|
)
|
|
380
397
|
const dotGap = parseFloat(
|
|
381
|
-
getVariableByName('carousel/pagination/gap', modes)
|
|
398
|
+
getVariableByName('carousel/pagination/gap', modes),
|
|
382
399
|
)
|
|
383
400
|
const dotColor =
|
|
384
401
|
(getVariableByName(
|
|
385
402
|
'carousel/pagination/indicator/inactiveColor',
|
|
386
403
|
modes,
|
|
387
|
-
) as string)
|
|
404
|
+
) as string)
|
|
388
405
|
const dotActiveColor =
|
|
389
406
|
(getVariableByName(
|
|
390
407
|
'carousel/pagination/indicator/activeColor',
|
|
391
408
|
modes,
|
|
392
|
-
) as string)
|
|
409
|
+
) as string)
|
|
393
410
|
const dotRadius = parseFloat(
|
|
394
|
-
getVariableByName('carousel/pagination/indicator/radius', modes)
|
|
411
|
+
getVariableByName('carousel/pagination/indicator/radius', modes),
|
|
395
412
|
)
|
|
396
413
|
|
|
397
414
|
const containerStyle: ViewStyle = {
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import type { StyleProp, ViewStyle } from 'react-native'
|
|
3
|
+
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
4
|
+
import { EMPTY_MODES } from '../../utils/react-utils'
|
|
5
|
+
import type { Modes } from '../../design-tokens'
|
|
6
|
+
import Carousel from '../Carousel/Carousel'
|
|
7
|
+
|
|
8
|
+
// Figma reference width for a single Account Card slot (`Carousel / Card Accounts`).
|
|
9
|
+
const DEFAULT_ITEM_WIDTH = 125
|
|
10
|
+
|
|
11
|
+
const toNumber = (value: unknown, fallback: number): number => {
|
|
12
|
+
if (typeof value === 'number') return Number.isFinite(value) ? value : fallback
|
|
13
|
+
if (typeof value === 'string') {
|
|
14
|
+
const parsed = parseFloat(value)
|
|
15
|
+
return Number.isFinite(parsed) ? parsed : fallback
|
|
16
|
+
}
|
|
17
|
+
return fallback
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export interface CarouselCardAccountsProps {
|
|
21
|
+
/**
|
|
22
|
+
* The account cards to render — this is the slot. Pass any number of
|
|
23
|
+
* `AccountCard` elements (or any node). Each becomes one horizontally
|
|
24
|
+
* scrollable, snap-aligned item. `modes` are forwarded to every child.
|
|
25
|
+
*/
|
|
26
|
+
children?: React.ReactNode
|
|
27
|
+
/** Design-token modes (e.g. `{ 'Color Mode': 'Light' }`). */
|
|
28
|
+
modes?: Modes
|
|
29
|
+
/**
|
|
30
|
+
* Width of each card slot in px. Defaults to the Figma reference width
|
|
31
|
+
* (`125`). Combined with `gap` this drives the per-card snap interval.
|
|
32
|
+
*/
|
|
33
|
+
itemWidth?: number
|
|
34
|
+
/**
|
|
35
|
+
* Gap between cards in px. Resolved from the `carouselCardAccounts/gap`
|
|
36
|
+
* token (default `8`) when omitted.
|
|
37
|
+
*/
|
|
38
|
+
gap?: number
|
|
39
|
+
/**
|
|
40
|
+
* Show the pagination dots. Defaults to `false` — the account strip is a
|
|
41
|
+
* flush, free-scrolling row rather than a paged hero carousel.
|
|
42
|
+
*/
|
|
43
|
+
showPagination?: boolean
|
|
44
|
+
/** Loop back to the first card after the last. Default: `false`. */
|
|
45
|
+
loop?: boolean
|
|
46
|
+
/** Called when the active (snapped) card index changes. */
|
|
47
|
+
onIndexChange?: (index: number) => void
|
|
48
|
+
/** Style override for the outermost container. */
|
|
49
|
+
style?: StyleProp<ViewStyle>
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* `CarouselCardAccounts` — a horizontally scrollable strip of compact
|
|
54
|
+
* `AccountCard`s (the Figma "Carousel / Card Accounts" component).
|
|
55
|
+
*
|
|
56
|
+
* It is a thin, opinionated preset over the shared {@link Carousel} scroll
|
|
57
|
+
* engine — so the snap/scroll/modes-cascade behaviour is **not** duplicated.
|
|
58
|
+
* Its niche is the account-selection strip: fixed-width card slots, flush
|
|
59
|
+
* (no peek) padding, per-card snapping, and no pagination by default.
|
|
60
|
+
*
|
|
61
|
+
* The cards are a real slot: pass any number of `AccountCard` children
|
|
62
|
+
* (typically a list of `connected` cards followed by a single `add` card).
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* <CarouselCardAccounts modes={modes}>
|
|
66
|
+
* <AccountCard title="Personal account" subtitle="**** 5651" imageSource={art} />
|
|
67
|
+
* <AccountCard title="Salary account" subtitle="**** 1180" imageSource={art} />
|
|
68
|
+
* <AccountCard state="add" title="Add a card" onPress={openLinkFlow} />
|
|
69
|
+
* </CarouselCardAccounts>
|
|
70
|
+
*/
|
|
71
|
+
function CarouselCardAccounts({
|
|
72
|
+
children,
|
|
73
|
+
modes = EMPTY_MODES,
|
|
74
|
+
itemWidth = DEFAULT_ITEM_WIDTH,
|
|
75
|
+
gap: gapProp,
|
|
76
|
+
showPagination = false,
|
|
77
|
+
loop = false,
|
|
78
|
+
onIndexChange,
|
|
79
|
+
style,
|
|
80
|
+
}: CarouselCardAccountsProps) {
|
|
81
|
+
const gap = gapProp ?? toNumber(getVariableByName('carouselCardAccounts/gap', modes), 8)
|
|
82
|
+
|
|
83
|
+
// Outer-container padding is driven by the design's own tokens
|
|
84
|
+
// (`carouselCardAccounts/padding/*`) rather than the generic `carousel/*`
|
|
85
|
+
// padding, matching the Figma "Carousel / Card Accounts" frame.
|
|
86
|
+
const paddingHorizontal = toNumber(
|
|
87
|
+
getVariableByName('carouselCardAccounts/padding/horizontal', modes),
|
|
88
|
+
0,
|
|
89
|
+
)
|
|
90
|
+
const paddingVertical = toNumber(
|
|
91
|
+
getVariableByName('carouselCardAccounts/padding/vertical', modes),
|
|
92
|
+
0,
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
return (
|
|
96
|
+
<Carousel
|
|
97
|
+
modes={modes}
|
|
98
|
+
itemWidth={itemWidth}
|
|
99
|
+
gap={gap}
|
|
100
|
+
showPagination={showPagination}
|
|
101
|
+
loop={loop}
|
|
102
|
+
autoPlay={false}
|
|
103
|
+
paddingHorizontal={paddingHorizontal}
|
|
104
|
+
paddingVertical={paddingVertical}
|
|
105
|
+
{...(onIndexChange ? { onIndexChange } : {})}
|
|
106
|
+
style={style}
|
|
107
|
+
>
|
|
108
|
+
{children}
|
|
109
|
+
</Carousel>
|
|
110
|
+
)
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export default React.memo(CarouselCardAccounts)
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
import Svg, { Path } from 'react-native-svg'
|
|
10
10
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
11
11
|
import { EMPTY_MODES } from '../../utils/react-utils'
|
|
12
|
+
import { boxShadow } from '../../utils/shadow'
|
|
12
13
|
import type { Modes } from '../../design-tokens'
|
|
13
14
|
|
|
14
15
|
/**
|
|
@@ -116,7 +117,7 @@ const Checkbox = forwardRef<View, CheckboxProps>(function Checkbox({
|
|
|
116
117
|
|
|
117
118
|
const size = getVariableByName('checkbox/size', modes) ?? 18
|
|
118
119
|
const radius = getVariableByName('checkbox/radius', modes) ?? 4
|
|
119
|
-
const strokeWidth =
|
|
120
|
+
const strokeWidth = 1
|
|
120
121
|
|
|
121
122
|
const idleStroke = getVariableByName('checkbox/idle/stroke/color', modes) ?? '#666666'
|
|
122
123
|
const hoverFill = getVariableByName('checkbox/hover/fill/color', modes) ?? 'rgba(0,0,0,0.1)'
|
|
@@ -256,11 +257,4 @@ const Checkbox = forwardRef<View, CheckboxProps>(function Checkbox({
|
|
|
256
257
|
)
|
|
257
258
|
})
|
|
258
259
|
|
|
259
|
-
function boxShadow(value: string): ViewStyle {
|
|
260
|
-
if (Platform.OS === 'web') {
|
|
261
|
-
return { boxShadow: value } as ViewStyle
|
|
262
|
-
}
|
|
263
|
-
return {}
|
|
264
|
-
}
|
|
265
|
-
|
|
266
260
|
export default Checkbox
|
|
@@ -36,7 +36,7 @@ function ChipGroup({
|
|
|
36
36
|
testID,
|
|
37
37
|
}: ChipGroupProps) {
|
|
38
38
|
// --- Token Resolution ---
|
|
39
|
-
const gap = parseInt(getVariableByName('chipGroup/gap', modes), 10)
|
|
39
|
+
const gap = parseInt(getVariableByName('chipGroup/gap', modes), 10);
|
|
40
40
|
|
|
41
41
|
// --- Styles ---
|
|
42
42
|
const containerStyle: ViewStyle = {
|
|
@@ -60,23 +60,23 @@ function ChipSelect({
|
|
|
60
60
|
};
|
|
61
61
|
|
|
62
62
|
// --- Token Resolution ---
|
|
63
|
-
const gap = parseInt(getVariableByName('chipSelect/gap', resolvedModes), 10)
|
|
64
|
-
const paddingHorizontal = parseInt(getVariableByName('chipSelect/padding/horizontal', resolvedModes), 10)
|
|
65
|
-
const paddingVertical = parseInt(getVariableByName('chipSelect/padding/vertical', resolvedModes), 10)
|
|
66
|
-
const radius = parseInt(getVariableByName('chipSelect/radius', resolvedModes), 10)
|
|
63
|
+
const gap = parseInt(getVariableByName('chipSelect/gap', resolvedModes), 10);
|
|
64
|
+
const paddingHorizontal = parseInt(getVariableByName('chipSelect/padding/horizontal', resolvedModes), 10);
|
|
65
|
+
const paddingVertical = parseInt(getVariableByName('chipSelect/padding/vertical', resolvedModes), 10);
|
|
66
|
+
const radius = parseInt(getVariableByName('chipSelect/radius', resolvedModes), 10);
|
|
67
67
|
|
|
68
68
|
// Background
|
|
69
|
-
const backgroundColor = getVariableByName('chipSelect/background', resolvedModes)
|
|
69
|
+
const backgroundColor = getVariableByName('chipSelect/background', resolvedModes);
|
|
70
70
|
|
|
71
71
|
// Text Styles
|
|
72
|
-
const textColor = getVariableByName('chipSelect/foreground', resolvedModes)
|
|
73
|
-
const fontSize = parseInt(getVariableByName('chipSelect/fontSize', resolvedModes), 10)
|
|
74
|
-
const fontFamily = getVariableByName('chipSelect/fontFamily', resolvedModes)
|
|
75
|
-
const lineHeight = parseInt(getVariableByName('chipSelect/lineHeight', resolvedModes), 10)
|
|
76
|
-
const fontWeight = getVariableByName('chipSelect/fontWeight', resolvedModes)
|
|
72
|
+
const textColor = getVariableByName('chipSelect/foreground', resolvedModes);
|
|
73
|
+
const fontSize = parseInt(getVariableByName('chipSelect/fontSize', resolvedModes), 10);
|
|
74
|
+
const fontFamily = getVariableByName('chipSelect/fontFamily', resolvedModes);
|
|
75
|
+
const lineHeight = parseInt(getVariableByName('chipSelect/lineHeight', resolvedModes), 10);
|
|
76
|
+
const fontWeight = getVariableByName('chipSelect/fontWeight', resolvedModes);
|
|
77
77
|
|
|
78
78
|
// Icon Styles
|
|
79
|
-
const iconSize = parseInt(getVariableByName('chipSelect/icon/size', resolvedModes), 10)
|
|
79
|
+
const iconSize = parseInt(getVariableByName('chipSelect/icon/size', resolvedModes), 10);
|
|
80
80
|
|
|
81
81
|
// --- Styles ---
|
|
82
82
|
const containerStyle: ViewStyle = {
|
|
@@ -3,7 +3,7 @@ import { StyleSheet, Text, View, type StyleProp, type TextStyle, type ViewStyle
|
|
|
3
3
|
import Svg, { Circle } from 'react-native-svg'
|
|
4
4
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
5
5
|
import { useTokens } from '../../design-tokens/JFSThemeProvider'
|
|
6
|
-
import { EMPTY_MODES } from '../../utils/react-utils'
|
|
6
|
+
import { EMPTY_MODES, resolveTruncation } from '../../utils/react-utils'
|
|
7
7
|
import { IconMinus } from '../../icons/components/IconMinus'
|
|
8
8
|
import type { Modes } from '../../design-tokens'
|
|
9
9
|
|
|
@@ -40,6 +40,12 @@ export type CircularProgressBarProps = CircularProgressBarBaseProps & {
|
|
|
40
40
|
supportTextStyle?: StyleProp<TextStyle>
|
|
41
41
|
/** Accessibility label for the whole progress component. */
|
|
42
42
|
accessibilityLabel?: string
|
|
43
|
+
/**
|
|
44
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
45
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
46
|
+
* lines as it needs even when horizontal space is tight.
|
|
47
|
+
*/
|
|
48
|
+
disableTruncation?: boolean
|
|
43
49
|
}
|
|
44
50
|
|
|
45
51
|
const STROKE_WIDTH_RATIO = 8 / 60
|
|
@@ -72,8 +78,11 @@ const toFontWeight = (value: unknown, fallback: TextStyle['fontWeight']) => {
|
|
|
72
78
|
}
|
|
73
79
|
|
|
74
80
|
const getStrokeColor = (style: StyleProp<ViewStyle>, fallback: string) => {
|
|
81
|
+
// `StyleSheet.flatten(undefined)` returns `undefined`, so guard before
|
|
82
|
+
// reading `backgroundColor` — otherwise omitting the optional style prop
|
|
83
|
+
// crashes with "Cannot read property 'backgroundColor' of undefined".
|
|
75
84
|
const flattened = StyleSheet.flatten(style)
|
|
76
|
-
return typeof flattened
|
|
85
|
+
return typeof flattened?.backgroundColor === 'string'
|
|
77
86
|
? flattened.backgroundColor
|
|
78
87
|
: fallback
|
|
79
88
|
}
|
|
@@ -90,6 +99,7 @@ function CircularProgressBar({
|
|
|
90
99
|
valueStyle,
|
|
91
100
|
supportTextStyle,
|
|
92
101
|
accessibilityLabel,
|
|
102
|
+
disableTruncation,
|
|
93
103
|
...rest
|
|
94
104
|
}: CircularProgressBarProps) {
|
|
95
105
|
const { modes: globalModes } = useTokens()
|
|
@@ -116,18 +126,18 @@ function CircularProgressBar({
|
|
|
116
126
|
|
|
117
127
|
const trackColor = getStrokeColor(
|
|
118
128
|
trackStyle,
|
|
119
|
-
getVariableByName('circularProgressBar/track/color', trackModes)
|
|
129
|
+
getVariableByName('circularProgressBar/track/color', trackModes)
|
|
120
130
|
)
|
|
121
131
|
const progressColor = getStrokeColor(
|
|
122
132
|
progressStyle,
|
|
123
|
-
getVariableByName('circularProgressBar/progress/color', modes)
|
|
133
|
+
getVariableByName('circularProgressBar/progress/color', modes)
|
|
124
134
|
)
|
|
125
|
-
const iconColor = getVariableByName('circularProgressBar/icon/color', modes)
|
|
135
|
+
const iconColor = getVariableByName('circularProgressBar/icon/color', modes)
|
|
126
136
|
const iconSize = toNumber(getVariableByName('circularProgressBar/icon/size', modes), 24)
|
|
127
137
|
|
|
128
|
-
const foreground = getVariableByName('circularProgressBar/foreground', modes)
|
|
138
|
+
const foreground = getVariableByName('circularProgressBar/foreground', modes)
|
|
129
139
|
const fontSize = toNumber(getVariableByName('circularProgressBar/value/fontSize', modes), 18)
|
|
130
|
-
const fontFamily = getVariableByName('circularProgressBar/fontFamily', modes)
|
|
140
|
+
const fontFamily = getVariableByName('circularProgressBar/fontFamily', modes)
|
|
131
141
|
const lineHeight = toNumber(getVariableByName('circularProgressBar/value/lineHeight', modes), 21)
|
|
132
142
|
const fontWeight = toFontWeight(getVariableByName('circularProgressBar/value/fontWeight', modes), '700')
|
|
133
143
|
|
|
@@ -232,11 +242,11 @@ function CircularProgressBar({
|
|
|
232
242
|
{isActive ? (
|
|
233
243
|
<View style={textStackStyle} pointerEvents="none">
|
|
234
244
|
{hasSupportText ? (
|
|
235
|
-
<Text style={[computedSupportTextStyle, supportTextStyle]}
|
|
245
|
+
<Text style={[computedSupportTextStyle, supportTextStyle]} {...resolveTruncation(disableTruncation, 1)}>
|
|
236
246
|
{supportText}
|
|
237
247
|
</Text>
|
|
238
248
|
) : null}
|
|
239
|
-
<Text style={[computedValueStyle, valueStyle]}
|
|
249
|
+
<Text style={[computedValueStyle, valueStyle]} {...resolveTruncation(disableTruncation, 1)}>
|
|
240
250
|
{displayValue}
|
|
241
251
|
</Text>
|
|
242
252
|
</View>
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
} from 'react-native'
|
|
12
12
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
13
13
|
import { useTokens } from '../../design-tokens/JFSThemeProvider'
|
|
14
|
-
import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils'
|
|
14
|
+
import { EMPTY_MODES, cloneChildrenWithModes, resolveTruncation } from '../../utils/react-utils'
|
|
15
15
|
import { IconChevronright } from '../../icons/components/IconChevronright'
|
|
16
16
|
import type { Modes } from '../../design-tokens'
|
|
17
17
|
|
|
@@ -58,6 +58,12 @@ export type CircularProgressBarDotedProps = CircularProgressBarDotedBaseProps &
|
|
|
58
58
|
tierLabelStyle?: StyleProp<TextStyle>
|
|
59
59
|
/** Accessibility label for the whole progress component. */
|
|
60
60
|
accessibilityLabel?: string
|
|
61
|
+
/**
|
|
62
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
63
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
64
|
+
* lines as it needs even when horizontal space is tight.
|
|
65
|
+
*/
|
|
66
|
+
disableTruncation?: boolean
|
|
61
67
|
}
|
|
62
68
|
|
|
63
69
|
const DEFAULT_DOT_COUNT = 24
|
|
@@ -92,7 +98,7 @@ const toFontWeight = (value: unknown, fallback: TextStyle['fontWeight']) => {
|
|
|
92
98
|
|
|
93
99
|
const getBackgroundColor = (style: StyleProp<ViewStyle>, fallback: string) => {
|
|
94
100
|
const flattened = StyleSheet.flatten(style)
|
|
95
|
-
return typeof flattened.backgroundColor === 'string'
|
|
101
|
+
return flattened && typeof flattened.backgroundColor === 'string'
|
|
96
102
|
? flattened.backgroundColor
|
|
97
103
|
: fallback
|
|
98
104
|
}
|
|
@@ -118,6 +124,7 @@ function CircularProgressBarDoted({
|
|
|
118
124
|
scoreLabelStyle,
|
|
119
125
|
tierLabelStyle,
|
|
120
126
|
accessibilityLabel,
|
|
127
|
+
disableTruncation,
|
|
121
128
|
onLayout,
|
|
122
129
|
...rest
|
|
123
130
|
}: CircularProgressBarDotedProps) {
|
|
@@ -140,11 +147,11 @@ function CircularProgressBarDoted({
|
|
|
140
147
|
|
|
141
148
|
const trackDotColor = getBackgroundColor(
|
|
142
149
|
trackDotStyle,
|
|
143
|
-
getVariableByName('circularProgressBarDoted/trackDot/bg', modes)
|
|
150
|
+
getVariableByName('circularProgressBarDoted/trackDot/bg', modes)
|
|
144
151
|
)
|
|
145
152
|
const progressDotColor = getBackgroundColor(
|
|
146
153
|
progressDotStyle,
|
|
147
|
-
getVariableByName('circularProgressBarDoted/progressDot/bg', modes)
|
|
154
|
+
getVariableByName('circularProgressBarDoted/progressDot/bg', modes)
|
|
148
155
|
)
|
|
149
156
|
|
|
150
157
|
const contentGap = toNumber(getVariableByName('circularProgressBarDoted/gap', modes), 12)
|
|
@@ -153,21 +160,21 @@ function CircularProgressBarDoted({
|
|
|
153
160
|
const scoreTrendGap = toNumber(getVariableByName('circularProgressBarDoted/scoreTrend/gap', modes), 2)
|
|
154
161
|
const scoreTrendHeight = toNumber(getVariableByName('circularProgressBarDoted/scoreTrend/height', modes), 24)
|
|
155
162
|
|
|
156
|
-
const typographyFontFamily = getVariableByName('Typography/Font Family', modes)
|
|
157
|
-
const labelColor = getVariableByName('circularProgressBarDoted/label/color', modes)
|
|
163
|
+
const typographyFontFamily = getVariableByName('Typography/Font Family', modes)
|
|
164
|
+
const labelColor = getVariableByName('circularProgressBarDoted/label/color', modes)
|
|
158
165
|
const labelFontSize = toNumber(getVariableByName('Typography/Size/Body/XS', modes), 12)
|
|
159
166
|
const labelFontWeight = toFontWeight(getVariableByName('Typography/Font Weight/Body Low (Regular)', modes), '400')
|
|
160
167
|
|
|
161
|
-
const scoreColor = getVariableByName('circularProgressBarDoted/scoreLabel/color', modes)
|
|
168
|
+
const scoreColor = getVariableByName('circularProgressBarDoted/scoreLabel/color', modes)
|
|
162
169
|
const scoreFontSize = toNumber(getVariableByName('circularProgressBarDoted/scoreLabel/fontSize', modes), 56)
|
|
163
|
-
const scoreFontFamily = getVariableByName('circularProgressBarDoted/scoreLabel/fontFamily', modes)
|
|
170
|
+
const scoreFontFamily = getVariableByName('circularProgressBarDoted/scoreLabel/fontFamily', modes)
|
|
164
171
|
const scoreLineHeight = toNumber(getVariableByName('circularProgressBarDoted/scoreLabel/lineHeight', modes), 56)
|
|
165
172
|
const scoreFontWeight = toFontWeight(getVariableByName('circularProgressBarDoted/scoreLabel/fontWeight', modes), '900')
|
|
166
173
|
|
|
167
|
-
const tierColor = getVariableByName('circularProgressBarDoted/tierLabel/color', modes)
|
|
174
|
+
const tierColor = getVariableByName('circularProgressBarDoted/tierLabel/color', modes)
|
|
168
175
|
const tierFontSize = toNumber(getVariableByName('Typography/Size/Body/M', modes), 16)
|
|
169
176
|
const tierFontWeight = toFontWeight(getVariableByName('Typography/Font Weight/Body High', modes), '700')
|
|
170
|
-
const iconColor = getVariableByName('circularProgressBarDoted/icon/color', modes)
|
|
177
|
+
const iconColor = getVariableByName('circularProgressBarDoted/icon/color', modes)
|
|
171
178
|
const iconSize = toNumber(getVariableByName('circularProgressBarDoted/icon/size', modes), 24)
|
|
172
179
|
|
|
173
180
|
const dots = useMemo(
|
|
@@ -277,7 +284,7 @@ function CircularProgressBarDoted({
|
|
|
277
284
|
|
|
278
285
|
const trendContent = (
|
|
279
286
|
<>
|
|
280
|
-
<Text
|
|
287
|
+
<Text {...resolveTruncation(disableTruncation, 1)} style={[computedTierLabelStyle, tierLabelStyle]}>
|
|
281
288
|
{tierLabel}
|
|
282
289
|
</Text>
|
|
283
290
|
{showChevron ? (
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
10
10
|
import { useTokens } from '../../design-tokens/JFSThemeProvider'
|
|
11
11
|
import Icon from '../../icons/Icon'
|
|
12
|
-
import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils'
|
|
12
|
+
import { EMPTY_MODES, cloneChildrenWithModes, resolveTruncation } from '../../utils/react-utils'
|
|
13
13
|
import CircularProgressBarDoted from '../CircularProgressBarDoted/CircularProgressBarDoted'
|
|
14
14
|
import Nudge from '../Nudge/Nudge'
|
|
15
15
|
import type { Modes } from '../../design-tokens'
|
|
@@ -57,6 +57,12 @@ export type CircularRatingProps = CircularRatingBaseProps & {
|
|
|
57
57
|
nudgeStyle?: StyleProp<ViewStyle>
|
|
58
58
|
/** Accessibility label for the whole component. */
|
|
59
59
|
accessibilityLabel?: string
|
|
60
|
+
/**
|
|
61
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
62
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
63
|
+
* lines as it needs even when horizontal space is tight.
|
|
64
|
+
*/
|
|
65
|
+
disableTruncation?: boolean
|
|
60
66
|
}
|
|
61
67
|
|
|
62
68
|
interface CircularRatingTokens {
|
|
@@ -99,9 +105,9 @@ function resolveCircularRatingTokens(modes: Modes): CircularRatingTokens {
|
|
|
99
105
|
|
|
100
106
|
const footerGap = toNumber(getVariableByName('circularRating/footer/gap', modes), 4)
|
|
101
107
|
const footerHeight = toNumber(getVariableByName('circularRating/footer/height', modes), 16)
|
|
102
|
-
const footerTextColor = getVariableByName('circularRating/footer/text/color', modes)
|
|
108
|
+
const footerTextColor = getVariableByName('circularRating/footer/text/color', modes)
|
|
103
109
|
const footerTextFontSize = toNumber(getVariableByName('circularRating/footer/text/fontSize', modes), 12)
|
|
104
|
-
const footerTextFontFamily = getVariableByName('circularRating/footer/text/fontFamily', modes)
|
|
110
|
+
const footerTextFontFamily = getVariableByName('circularRating/footer/text/fontFamily', modes)
|
|
105
111
|
const footerTextLineHeight = toNumber(getVariableByName('circularRating/footer/text/lineHeight', modes), 16)
|
|
106
112
|
const footerTextFontWeight = toFontWeight(
|
|
107
113
|
getVariableByName('circularRating/footer/text/fontWeight', modes),
|
|
@@ -135,7 +141,7 @@ function resolveCircularRatingTokens(modes: Modes): CircularRatingTokens {
|
|
|
135
141
|
lineHeight: footerTextLineHeight,
|
|
136
142
|
textAlign: 'center',
|
|
137
143
|
},
|
|
138
|
-
footerIconColor: (getVariableByName('circularRating/footer/icon/color', modes)
|
|
144
|
+
footerIconColor: (getVariableByName('circularRating/footer/icon/color', modes)) as string,
|
|
139
145
|
footerIconSize: toNumber(getVariableByName('circularRating/footer/icon/size', modes), 16),
|
|
140
146
|
}
|
|
141
147
|
}
|
|
@@ -161,6 +167,7 @@ function CircularRating({
|
|
|
161
167
|
footerTextStyle,
|
|
162
168
|
nudgeStyle,
|
|
163
169
|
accessibilityLabel,
|
|
170
|
+
disableTruncation,
|
|
164
171
|
...rest
|
|
165
172
|
}: CircularRatingProps) {
|
|
166
173
|
const { modes: globalModes } = useTokens()
|
|
@@ -207,7 +214,7 @@ function CircularRating({
|
|
|
207
214
|
<View style={[tokens.footerStyle, footerStyle]}>
|
|
208
215
|
{processedFooterSlot || (
|
|
209
216
|
<>
|
|
210
|
-
<Text
|
|
217
|
+
<Text {...resolveTruncation(disableTruncation, 1)} style={[tokens.footerTextStyle, footerTextStyle]}>
|
|
211
218
|
{footerText}
|
|
212
219
|
</Text>
|
|
213
220
|
{showFooterIcon ? (
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
} from 'react-native'
|
|
12
12
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
13
13
|
import { useTokens } from '../../design-tokens/JFSThemeProvider'
|
|
14
|
-
import { EMPTY_MODES } from '../../utils/react-utils'
|
|
14
|
+
import { EMPTY_MODES, resolveTruncation } from '../../utils/react-utils'
|
|
15
15
|
import type { Modes } from '../../design-tokens'
|
|
16
16
|
|
|
17
17
|
/** Where the value/label text sits relative to the circle. */
|
|
@@ -76,6 +76,12 @@ export type ClusterBubbleProps = {
|
|
|
76
76
|
modes?: Modes
|
|
77
77
|
/** Accessibility label. Defaults to a `value + label` composite. */
|
|
78
78
|
accessibilityLabel?: string
|
|
79
|
+
/**
|
|
80
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
81
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
82
|
+
* lines as it needs even when horizontal space is tight.
|
|
83
|
+
*/
|
|
84
|
+
disableTruncation?: boolean
|
|
79
85
|
}
|
|
80
86
|
|
|
81
87
|
const DEFAULT_FILL = '#5d00b5'
|
|
@@ -149,6 +155,7 @@ function ClusterBubble({
|
|
|
149
155
|
style,
|
|
150
156
|
modes: propModes = EMPTY_MODES,
|
|
151
157
|
accessibilityLabel,
|
|
158
|
+
disableTruncation,
|
|
152
159
|
}: ClusterBubbleProps) {
|
|
153
160
|
const { modes: globalModes } = useTokens()
|
|
154
161
|
const modes = useMemo(() => ({ ...globalModes, ...propModes }), [globalModes, propModes])
|
|
@@ -207,7 +214,7 @@ function ClusterBubble({
|
|
|
207
214
|
if (node === undefined || node === null || node === false) return null
|
|
208
215
|
if (typeof node === 'string' || typeof node === 'number') {
|
|
209
216
|
return (
|
|
210
|
-
<Text style={[baseStyle, override]}
|
|
217
|
+
<Text style={[baseStyle, override]} {...resolveTruncation(disableTruncation, 2)}>
|
|
211
218
|
{node}
|
|
212
219
|
</Text>
|
|
213
220
|
)
|