jfs-components 0.1.12 → 0.1.18
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 +24 -0
- package/lib/commonjs/components/ActionFooter/ActionFooter.js +7 -24
- package/lib/commonjs/components/ActionTile/ActionTile.js +10 -10
- package/lib/commonjs/components/AmountInput/AmountInput.js +3 -3
- package/lib/commonjs/components/AreaLineChart/AreaLineChart.js +2 -2
- 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 +50 -29
- package/lib/commonjs/components/Badge/Badge.js +12 -12
- 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/Button/Button.js +31 -19
- package/lib/commonjs/components/Card/Card.js +20 -20
- package/lib/commonjs/components/CardAdvisory/CardAdvisory.js +6 -6
- package/lib/commonjs/components/CardCTA/CardCTA.js +21 -21
- 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 +1 -2
- 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 +5 -5
- package/lib/commonjs/components/CircularProgressBarDoted/CircularProgressBarDoted.js +8 -8
- package/lib/commonjs/components/CircularRating/CircularRating.js +3 -3
- package/lib/commonjs/components/CompareTable/CompareTable.js +16 -16
- 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 +11 -11
- package/lib/commonjs/components/Drawer/Drawer.js +60 -60
- package/lib/commonjs/components/Dropdown/Dropdown.js +22 -23
- package/lib/commonjs/components/DropdownInput/DropdownInput.js +10 -10
- package/lib/commonjs/components/EmptyState/EmptyState.js +14 -14
- 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 +6 -6
- package/lib/commonjs/components/FullscreenModal/FullscreenModal.js +24 -24
- package/lib/commonjs/components/Gauge/Gauge.js +8 -8
- package/lib/commonjs/components/HoldingsCard/HoldingsCard.js +10 -10
- 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 +3 -3
- package/lib/commonjs/components/ListGroup/ListGroup.js +8 -8
- package/lib/commonjs/components/ListItem/ListItem.js +10 -10
- 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 +21 -21
- package/lib/commonjs/components/MessageField/MessageField.js +8 -8
- package/lib/commonjs/components/MoneyValue/MoneyValue.js +7 -7
- 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/ProductMerchandisingCard/ProductMerchandisingCard.js +64 -60
- package/lib/commonjs/components/ProgressBadge/ProgressBadge.js +5 -5
- 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 +24 -24
- 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 +10 -10
- package/lib/commonjs/components/SupportText/SupportText.js +6 -6
- package/lib/commonjs/components/SupportText/SupportTextIcon.js +2 -2
- package/lib/commonjs/components/Text/Text.js +14 -2
- package/lib/commonjs/components/TextInput/TextInput.js +14 -14
- package/lib/commonjs/components/TextSegment/TextSegment.js +14 -2
- package/lib/commonjs/components/ThreadHero/ThreadHero.js +17 -17
- package/lib/commonjs/components/Title/Title.js +38 -16
- package/lib/commonjs/components/Toast/Toast.js +15 -15
- 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 +13 -13
- package/lib/commonjs/components/TransactionDetails/TransactionDetails.js +10 -10
- package/lib/commonjs/components/TransactionStatus/TransactionStatus.js +9 -9
- package/lib/commonjs/components/UpiHandle/UpiHandle.js +15 -15
- package/lib/commonjs/components/index.js +14 -0
- package/lib/commonjs/design-tokens/Coin Variables-variables-full.json +1 -1
- package/lib/commonjs/design-tokens/figma-modes.generated.js +50 -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/utils/GlassFill/GlassFill.js +69 -73
- package/lib/commonjs/utils/index.js +25 -0
- package/lib/commonjs/utils/react-utils.js +62 -0
- package/lib/commonjs/utils/shadow.js +200 -0
- package/lib/module/components/ActionFooter/ActionFooter.js +7 -24
- package/lib/module/components/ActionTile/ActionTile.js +10 -10
- package/lib/module/components/AmountInput/AmountInput.js +3 -3
- package/lib/module/components/AreaLineChart/AreaLineChart.js +2 -2
- 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 +52 -30
- package/lib/module/components/Badge/Badge.js +12 -12
- 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/Button/Button.js +32 -20
- package/lib/module/components/Card/Card.js +20 -20
- package/lib/module/components/CardAdvisory/CardAdvisory.js +6 -6
- package/lib/module/components/CardCTA/CardCTA.js +21 -21
- 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 +1 -2
- 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 +5 -5
- package/lib/module/components/CircularProgressBarDoted/CircularProgressBarDoted.js +8 -8
- package/lib/module/components/CircularRating/CircularRating.js +3 -3
- package/lib/module/components/CompareTable/CompareTable.js +16 -16
- 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 +11 -11
- package/lib/module/components/Drawer/Drawer.js +60 -60
- package/lib/module/components/Dropdown/Dropdown.js +22 -23
- package/lib/module/components/DropdownInput/DropdownInput.js +10 -10
- package/lib/module/components/EmptyState/EmptyState.js +14 -14
- 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 +6 -6
- package/lib/module/components/FullscreenModal/FullscreenModal.js +24 -24
- package/lib/module/components/Gauge/Gauge.js +8 -8
- package/lib/module/components/HoldingsCard/HoldingsCard.js +10 -10
- 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 +3 -3
- package/lib/module/components/ListGroup/ListGroup.js +8 -8
- package/lib/module/components/ListItem/ListItem.js +10 -10
- 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 +21 -21
- package/lib/module/components/MessageField/MessageField.js +8 -8
- package/lib/module/components/MoneyValue/MoneyValue.js +7 -7
- 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/ProductMerchandisingCard/ProductMerchandisingCard.js +66 -62
- package/lib/module/components/ProgressBadge/ProgressBadge.js +5 -5
- 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 +24 -24
- 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 +10 -10
- package/lib/module/components/SupportText/SupportText.js +6 -6
- package/lib/module/components/SupportText/SupportTextIcon.js +2 -2
- package/lib/module/components/Text/Text.js +15 -3
- package/lib/module/components/TextInput/TextInput.js +14 -14
- package/lib/module/components/TextSegment/TextSegment.js +15 -3
- package/lib/module/components/ThreadHero/ThreadHero.js +17 -17
- package/lib/module/components/Title/Title.js +39 -17
- package/lib/module/components/Toast/Toast.js +15 -15
- 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 +13 -13
- package/lib/module/components/TransactionDetails/TransactionDetails.js +10 -10
- package/lib/module/components/TransactionStatus/TransactionStatus.js +9 -9
- package/lib/module/components/UpiHandle/UpiHandle.js +15 -15
- package/lib/module/components/index.js +2 -0
- package/lib/module/design-tokens/Coin Variables-variables-full.json +1 -1
- package/lib/module/design-tokens/figma-modes.generated.js +50 -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/utils/GlassFill/GlassFill.js +69 -72
- package/lib/module/utils/index.js +2 -1
- package/lib/module/utils/react-utils.js +61 -0
- package/lib/module/utils/shadow.js +194 -0
- package/lib/typescript/src/components/BenefitCard/BenefitCard.d.ts +33 -4
- 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/SavingsGoalSummary/SavingsGoalSummary.d.ts +11 -1
- package/lib/typescript/src/components/ScrollArea/ScrollArea.d.ts +77 -0
- package/lib/typescript/src/components/Text/Text.d.ts +12 -3
- package/lib/typescript/src/components/TextSegment/TextSegment.d.ts +12 -3
- package/lib/typescript/src/components/Title/Title.d.ts +12 -2
- package/lib/typescript/src/components/index.d.ts +2 -0
- 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/utils/GlassFill/GlassFill.d.ts +11 -4
- package/lib/typescript/src/utils/index.d.ts +2 -0
- package/lib/typescript/src/utils/react-utils.d.ts +40 -1
- package/lib/typescript/src/utils/shadow.d.ts +72 -0
- package/package.json +2 -2
- package/src/components/ActionFooter/ActionFooter.tsx +8 -26
- package/src/components/ActionTile/ActionTile.tsx +10 -10
- package/src/components/AmountInput/AmountInput.tsx +3 -3
- package/src/components/AreaLineChart/AreaLineChart.tsx +2 -2
- package/src/components/Attached/Attached.tsx +1 -1
- package/src/components/Avatar/Avatar.tsx +10 -10
- package/src/components/AvatarGroup/AvatarGroup.tsx +53 -27
- package/src/components/Badge/Badge.tsx +12 -13
- 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/Button/Button.tsx +30 -20
- package/src/components/Card/Card.tsx +20 -20
- package/src/components/CardAdvisory/CardAdvisory.tsx +6 -6
- package/src/components/CardCTA/CardCTA.tsx +21 -21
- package/src/components/CardFeedback/CardFeedback.tsx +18 -18
- package/src/components/CardFinancialCondition/CardFinancialCondition.tsx +7 -10
- package/src/components/CardInsight/CardInsight.tsx +1 -3
- 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 +5 -5
- package/src/components/CircularProgressBarDoted/CircularProgressBarDoted.tsx +8 -8
- package/src/components/CircularRating/CircularRating.tsx +3 -3
- package/src/components/CompareTable/CompareTable.tsx +16 -16
- package/src/components/DebitCard/DebitCard.tsx +22 -22
- package/src/components/Disclaimer/Disclaimer.tsx +5 -5
- package/src/components/DonutChart/DonutChart.tsx +11 -45
- package/src/components/Drawer/Drawer.tsx +80 -71
- package/src/components/Dropdown/Dropdown.tsx +23 -28
- package/src/components/DropdownInput/DropdownInput.tsx +10 -17
- package/src/components/EmptyState/EmptyState.tsx +14 -14
- package/src/components/FilterBar/FilterBar.tsx +2 -2
- package/src/components/Form/Form.tsx +3 -3
- package/src/components/FormField/FormField.tsx +6 -11
- package/src/components/FullscreenModal/FullscreenModal.tsx +24 -24
- package/src/components/Gauge/Gauge.tsx +8 -8
- package/src/components/HoldingsCard/HoldingsCard.tsx +10 -10
- 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 +3 -6
- package/src/components/ListGroup/ListGroup.tsx +8 -8
- package/src/components/ListItem/ListItem.tsx +10 -10
- 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 +21 -21
- package/src/components/MessageField/MessageField.tsx +8 -16
- package/src/components/MoneyValue/MoneyValue.tsx +7 -7
- 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/ProductMerchandisingCard/ProductMerchandisingCard.tsx +76 -47
- package/src/components/ProgressBadge/ProgressBadge.tsx +5 -5
- 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 +26 -26
- 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 +10 -20
- package/src/components/SupportText/SupportText.tsx +6 -6
- package/src/components/SupportText/SupportTextIcon.tsx +2 -2
- package/src/components/Text/Text.tsx +23 -5
- package/src/components/TextInput/TextInput.tsx +14 -14
- package/src/components/TextSegment/TextSegment.tsx +22 -4
- package/src/components/ThreadHero/ThreadHero.tsx +17 -17
- package/src/components/Title/Title.tsx +44 -18
- package/src/components/Toast/Toast.tsx +15 -15
- package/src/components/Toggle/Toggle.tsx +5 -10
- package/src/components/Tooltip/Tooltip.tsx +12 -12
- package/src/components/TransactionBubble/TransactionBubble.tsx +15 -15
- package/src/components/TransactionDetails/TransactionDetails.tsx +10 -10
- package/src/components/TransactionStatus/TransactionStatus.tsx +9 -9
- package/src/components/UpiHandle/UpiHandle.tsx +15 -15
- package/src/components/index.ts +2 -0
- package/src/design-tokens/Coin Variables-variables-full.json +1 -1
- package/src/design-tokens/figma-modes.generated.ts +50 -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/utils/GlassFill/GlassFill.tsx +59 -56
- package/src/utils/index.ts +2 -0
- package/src/utils/react-utils.ts +72 -1
- package/src/utils/shadow.ts +219 -0
|
@@ -25,29 +25,29 @@ export default function PaymentFeedback({
|
|
|
25
25
|
...globalModes,
|
|
26
26
|
...propModes
|
|
27
27
|
};
|
|
28
|
-
const containerGap = Number(getVariableByName('paymnetFeedback/container/gap', modes))
|
|
29
|
-
const messageGap = Number(getVariableByName('paymnetFeedback/message/gap', modes))
|
|
30
|
-
const titleColor = getVariableByName('paymnetFeedback/title/color', modes)
|
|
31
|
-
const titleFontSize = Number(getVariableByName('paymnetFeedback/title/fontSize', modes))
|
|
32
|
-
const titleFontFamily = getVariableByName('paymnetFeedback/title/fontFamily', modes)
|
|
33
|
-
const titleLineHeight = Number(getVariableByName('paymnetFeedback/title/lineHeight', modes))
|
|
34
|
-
const titleFontWeight = getVariableByName('paymnetFeedback/title/fontWeight', modes)
|
|
35
|
-
const subtitleColor = getVariableByName('paymnetFeedback/subtitle/color', modes)
|
|
36
|
-
const subtitleFontSize = Number(getVariableByName('paymnetFeedback/subtitle/fontSize', modes))
|
|
37
|
-
const subtitleFontFamily = getVariableByName('paymnetFeedback/subtitle/fontFamily', modes)
|
|
38
|
-
const subtitleLineHeight = Number(getVariableByName('paymnetFeedback/subtitle/lineHeight', modes))
|
|
39
|
-
const subtitleFontWeight = getVariableByName('paymnetFeedback/subtitle/fontWeight', modes)
|
|
40
|
-
const bodyColor = getVariableByName('paymnetFeedback/body/color', modes)
|
|
41
|
-
const bodyFontSize = Number(getVariableByName('paymnetFeedback/body/fontSize', modes))
|
|
42
|
-
const bodyFontFamily = getVariableByName('paymnetFeedback/body/fontFamily', modes)
|
|
43
|
-
const bodyLineHeight = Number(getVariableByName('paymnetFeedback/body/lineHeight', modes))
|
|
44
|
-
const bodyFontWeight = getVariableByName('paymnetFeedback/body/fontWeight', modes)
|
|
45
|
-
const detailsColor = getVariableByName('paymnetFeedback/details/color', modes)
|
|
46
|
-
const detailsFontSize = Number(getVariableByName('paymnetFeedback/details/fontSize', modes))
|
|
47
|
-
const detailsFontFamily = getVariableByName('paymnetFeedback/details/fontFamily', modes)
|
|
48
|
-
const detailsLineHeight = Number(getVariableByName('paymnetFeedback/details/lineHeight', modes))
|
|
49
|
-
const detailsFontWeight = getVariableByName('paymnetFeedback/details/fontWeight', modes)
|
|
50
|
-
const detailsParagraphSpacing = Number(getVariableByName('paymnetFeedback/details/paragraphSpacing', modes))
|
|
28
|
+
const containerGap = Number(getVariableByName('paymnetFeedback/container/gap', modes));
|
|
29
|
+
const messageGap = Number(getVariableByName('paymnetFeedback/message/gap', modes));
|
|
30
|
+
const titleColor = getVariableByName('paymnetFeedback/title/color', modes);
|
|
31
|
+
const titleFontSize = Number(getVariableByName('paymnetFeedback/title/fontSize', modes));
|
|
32
|
+
const titleFontFamily = getVariableByName('paymnetFeedback/title/fontFamily', modes);
|
|
33
|
+
const titleLineHeight = Number(getVariableByName('paymnetFeedback/title/lineHeight', modes));
|
|
34
|
+
const titleFontWeight = getVariableByName('paymnetFeedback/title/fontWeight', modes);
|
|
35
|
+
const subtitleColor = getVariableByName('paymnetFeedback/subtitle/color', modes);
|
|
36
|
+
const subtitleFontSize = Number(getVariableByName('paymnetFeedback/subtitle/fontSize', modes));
|
|
37
|
+
const subtitleFontFamily = getVariableByName('paymnetFeedback/subtitle/fontFamily', modes);
|
|
38
|
+
const subtitleLineHeight = Number(getVariableByName('paymnetFeedback/subtitle/lineHeight', modes));
|
|
39
|
+
const subtitleFontWeight = getVariableByName('paymnetFeedback/subtitle/fontWeight', modes);
|
|
40
|
+
const bodyColor = getVariableByName('paymnetFeedback/body/color', modes);
|
|
41
|
+
const bodyFontSize = Number(getVariableByName('paymnetFeedback/body/fontSize', modes));
|
|
42
|
+
const bodyFontFamily = getVariableByName('paymnetFeedback/body/fontFamily', modes);
|
|
43
|
+
const bodyLineHeight = Number(getVariableByName('paymnetFeedback/body/lineHeight', modes));
|
|
44
|
+
const bodyFontWeight = getVariableByName('paymnetFeedback/body/fontWeight', modes);
|
|
45
|
+
const detailsColor = getVariableByName('paymnetFeedback/details/color', modes);
|
|
46
|
+
const detailsFontSize = Number(getVariableByName('paymnetFeedback/details/fontSize', modes));
|
|
47
|
+
const detailsFontFamily = getVariableByName('paymnetFeedback/details/fontFamily', modes);
|
|
48
|
+
const detailsLineHeight = Number(getVariableByName('paymnetFeedback/details/lineHeight', modes));
|
|
49
|
+
const detailsFontWeight = getVariableByName('paymnetFeedback/details/fontWeight', modes);
|
|
50
|
+
const detailsParagraphSpacing = Number(getVariableByName('paymnetFeedback/details/paragraphSpacing', modes));
|
|
51
51
|
const containerStyle = {
|
|
52
52
|
flexDirection: 'column',
|
|
53
53
|
alignItems: 'center',
|
|
@@ -83,7 +83,7 @@ const Popup = /*#__PURE__*/forwardRef(function Popup({
|
|
|
83
83
|
});
|
|
84
84
|
return () => anim.stop();
|
|
85
85
|
}, [isOpen, modalVisible, slideY, backdropAnim, maxBackdropOpacity, animationDuration]);
|
|
86
|
-
const background = getVariableByName('popup/background', modes)
|
|
86
|
+
const background = getVariableByName('popup/background', modes);
|
|
87
87
|
const paddingH = getVariableByName('popup/padding/horizontal', modes) ?? 0;
|
|
88
88
|
const paddingTopVal = getVariableByName('popup/padding/top', modes) ?? 0;
|
|
89
89
|
const paddingBottomVal = getVariableByName('popup/padding/bottom', modes) ?? 24;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import React, { useId, useMemo } from 'react';
|
|
4
|
-
import { View, Text, Pressable, StyleSheet
|
|
5
|
-
import
|
|
6
|
-
import Svg, { Defs, LinearGradient, Stop, Rect } from 'react-native-svg';
|
|
4
|
+
import { View, Text, Pressable, StyleSheet } from 'react-native';
|
|
5
|
+
import Svg, { Defs, LinearGradient, Stop, Rect, Mask, Filter, FeGaussianBlur, Image as SvgImage } from 'react-native-svg';
|
|
7
6
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
8
7
|
import { EMPTY_MODES, resolveTruncation } from '../../utils/react-utils';
|
|
9
8
|
import Avatar from '../Avatar/Avatar';
|
|
@@ -65,7 +64,9 @@ function ProductMerchandisingCard({
|
|
|
65
64
|
const rawId = useId();
|
|
66
65
|
const safeId = rawId.replace(/[^a-zA-Z0-9_-]/g, '');
|
|
67
66
|
const scrimId = `pmc-footer-scrim-${safeId}`;
|
|
67
|
+
const blurGradientId = `pmc-footer-blurgrad-${safeId}`;
|
|
68
68
|
const blurMaskId = `pmc-footer-blurmask-${safeId}`;
|
|
69
|
+
const blurFilterId = `pmc-footer-blurfilter-${safeId}`;
|
|
69
70
|
const normalizedImageSource = useMemo(() => normalizeImageSource(imageSource), [imageSource]);
|
|
70
71
|
const tokens = useMemo(() => resolveTokens(modes), [modes]);
|
|
71
72
|
const containerStyle = {
|
|
@@ -159,57 +160,63 @@ function ProductMerchandisingCard({
|
|
|
159
160
|
children: [normalizedImageSource != null ? /*#__PURE__*/_jsx(View, {
|
|
160
161
|
style: StyleSheet.absoluteFill,
|
|
161
162
|
pointerEvents: "none",
|
|
162
|
-
children: /*#__PURE__*/
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
163
|
+
children: /*#__PURE__*/_jsxs(Svg, {
|
|
164
|
+
width: "100%",
|
|
165
|
+
height: "100%",
|
|
166
|
+
children: [/*#__PURE__*/_jsxs(Defs, {
|
|
167
|
+
children: [/*#__PURE__*/_jsx(Filter, {
|
|
168
|
+
id: blurFilterId,
|
|
169
|
+
x: "-15%",
|
|
170
|
+
y: "-15%",
|
|
171
|
+
width: "130%",
|
|
172
|
+
height: "130%",
|
|
173
|
+
children: /*#__PURE__*/_jsx(FeGaussianBlur, {
|
|
174
|
+
stdDeviation: tokens.imageBlurStdDeviation,
|
|
175
|
+
edgeMode: "duplicate"
|
|
176
|
+
})
|
|
177
|
+
}), /*#__PURE__*/_jsxs(LinearGradient, {
|
|
178
|
+
id: blurGradientId,
|
|
179
|
+
x1: "0",
|
|
180
|
+
y1: "0",
|
|
181
|
+
x2: "0",
|
|
182
|
+
y2: "1",
|
|
183
|
+
children: [/*#__PURE__*/_jsx(Stop, {
|
|
184
|
+
offset: "0",
|
|
185
|
+
stopColor: "#ffffff",
|
|
186
|
+
stopOpacity: 0
|
|
187
|
+
}), /*#__PURE__*/_jsx(Stop, {
|
|
188
|
+
offset: "0.35",
|
|
189
|
+
stopColor: "#ffffff",
|
|
190
|
+
stopOpacity: 0.5
|
|
191
|
+
}), /*#__PURE__*/_jsx(Stop, {
|
|
192
|
+
offset: "0.7",
|
|
193
|
+
stopColor: "#ffffff",
|
|
194
|
+
stopOpacity: 0.92
|
|
195
|
+
}), /*#__PURE__*/_jsx(Stop, {
|
|
196
|
+
offset: "1",
|
|
197
|
+
stopColor: "#ffffff",
|
|
198
|
+
stopOpacity: 1
|
|
199
|
+
})]
|
|
200
|
+
}), /*#__PURE__*/_jsx(Mask, {
|
|
201
|
+
id: blurMaskId,
|
|
202
|
+
children: /*#__PURE__*/_jsx(Rect, {
|
|
203
|
+
x: "0",
|
|
204
|
+
y: "0",
|
|
205
|
+
width: "100%",
|
|
206
|
+
height: "100%",
|
|
207
|
+
fill: `url(#${blurGradientId})`
|
|
191
208
|
})
|
|
192
|
-
}), /*#__PURE__*/_jsx(Rect, {
|
|
193
|
-
x: "0",
|
|
194
|
-
y: "0",
|
|
195
|
-
width: "100%",
|
|
196
|
-
height: "100%",
|
|
197
|
-
fill: `url(#${blurMaskId})`
|
|
198
209
|
})]
|
|
199
|
-
}),
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
width: '100%',
|
|
210
|
-
height
|
|
211
|
-
}
|
|
212
|
-
})
|
|
210
|
+
}), /*#__PURE__*/_jsx(SvgImage, {
|
|
211
|
+
href: normalizedImageSource,
|
|
212
|
+
x: "0",
|
|
213
|
+
y: "0",
|
|
214
|
+
width: "100%",
|
|
215
|
+
height: "100%",
|
|
216
|
+
preserveAspectRatio: "xMidYMid slice",
|
|
217
|
+
filter: `url(#${blurFilterId})`,
|
|
218
|
+
mask: `url(#${blurMaskId})`
|
|
219
|
+
})]
|
|
213
220
|
})
|
|
214
221
|
}) : /*#__PURE__*/_jsx(GlassFill, {
|
|
215
222
|
tint: "dark",
|
|
@@ -328,19 +335,16 @@ function resolveTokens(modes) {
|
|
|
328
335
|
const sbFamily = asStr(getVariableByName('productMerchandisingcard/specialbadge/text/fontfamily', modes), 'JioType Var');
|
|
329
336
|
const sbWeight = asStr(getVariableByName('productMerchandisingcard/specialbadge/text/fontweight', modes), '500');
|
|
330
337
|
|
|
331
|
-
//
|
|
332
|
-
//
|
|
333
|
-
//
|
|
334
|
-
// "
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
android: Math.max(12, Math.round(blurRadius * 0.95)),
|
|
338
|
-
default: Math.max(8, Math.round(blurRadius * 0.6))
|
|
339
|
-
});
|
|
338
|
+
// SVG `<FeGaussianBlur stdDeviation>` is resolution-independent and renders
|
|
339
|
+
// an identical Gaussian on iOS, Android and web — so unlike the old
|
|
340
|
+
// `Image.blurRadius` path it needs no per-platform tuning. `stdDeviation` is
|
|
341
|
+
// roughly half a perceptual "blur radius", so we scale the `blur/minimal`
|
|
342
|
+
// token down to land on the same subtle frosted strength as the design.
|
|
343
|
+
const imageBlurStdDeviation = Math.max(4, Math.round(blurRadius * 0.35));
|
|
340
344
|
return {
|
|
341
345
|
radius,
|
|
342
346
|
blurIntensity: Math.max(0, Math.min(100, Math.round(blurRadius * BLUR_INTENSITY_FACTOR))),
|
|
343
|
-
|
|
347
|
+
imageBlurStdDeviation,
|
|
344
348
|
header: {
|
|
345
349
|
flexDirection: 'row',
|
|
346
350
|
alignItems: 'flex-start',
|
|
@@ -33,8 +33,8 @@ function ProgressBadge({
|
|
|
33
33
|
...rest
|
|
34
34
|
}) {
|
|
35
35
|
// Resolve layout tokens
|
|
36
|
-
const backgroundColor = getVariableByName('progressBadge/background', modes)
|
|
37
|
-
const progressColor = getVariableByName('progressBadge/progress/color', modes)
|
|
36
|
+
const backgroundColor = getVariableByName('progressBadge/background', modes);
|
|
37
|
+
const progressColor = getVariableByName('progressBadge/progress/color', modes);
|
|
38
38
|
const gap = getVariableByName('progressBadge/gap', modes) ?? 12;
|
|
39
39
|
const paddingHorizontal = getVariableByName('progressBadge/padding/horizontal', modes) ?? 16;
|
|
40
40
|
const paddingVertical = getVariableByName('progressBadge/padding/vertical', modes) ?? 6;
|
|
@@ -42,15 +42,15 @@ function ProgressBadge({
|
|
|
42
42
|
const descriptionGap = getVariableByName('progressBadge/description/gap', modes) ?? 8;
|
|
43
43
|
|
|
44
44
|
// Resolve typography tokens
|
|
45
|
-
const fontFamily = getVariableByName('progressBadge/fontFamily', modes)
|
|
45
|
+
const fontFamily = getVariableByName('progressBadge/fontFamily', modes);
|
|
46
46
|
const fontWeightRaw = getVariableByName('progressBadge/fontWeight', modes) ?? 500;
|
|
47
47
|
const fontWeight = typeof fontWeightRaw === 'number' ? fontWeightRaw.toString() : fontWeightRaw;
|
|
48
48
|
const fontSize = getVariableByName('progressBadge/fontSize', modes) ?? 14;
|
|
49
49
|
const lineHeight = getVariableByName('progressBadge/lineHeight', modes) ?? 17;
|
|
50
|
-
const textColor = getVariableByName('progressBadge/foreground', modes)
|
|
50
|
+
const textColor = getVariableByName('progressBadge/foreground', modes);
|
|
51
51
|
|
|
52
52
|
// Resolve icon tokens
|
|
53
|
-
const iconColor = getVariableByName('progressBadge/icon/color', modes)
|
|
53
|
+
const iconColor = getVariableByName('progressBadge/icon/color', modes);
|
|
54
54
|
const iconSize = getVariableByName('progressBadge/icon/size', modes) ?? 18;
|
|
55
55
|
const containerStyle = {
|
|
56
56
|
backgroundColor,
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import React, { forwardRef, useState } from 'react';
|
|
4
|
-
import { Pressable, View
|
|
4
|
+
import { Pressable, View } from 'react-native';
|
|
5
5
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
6
6
|
import { EMPTY_MODES } from '../../utils/react-utils';
|
|
7
|
+
import { boxShadow } from '../../utils/shadow';
|
|
7
8
|
|
|
8
9
|
// ---------------------------------------------------------------------------
|
|
9
10
|
// Props
|
|
@@ -27,9 +28,9 @@ export const Radio = /*#__PURE__*/forwardRef(function Radio({
|
|
|
27
28
|
const [pressed, setPressed] = useState(false);
|
|
28
29
|
|
|
29
30
|
// ---- Dimensions ----
|
|
30
|
-
const widthStr = getVariableByName('radio/width', modes)
|
|
31
|
-
const heightStr = getVariableByName('radio/height', modes)
|
|
32
|
-
const selectorSizeStr = getVariableByName('radio/selector/size', modes)
|
|
31
|
+
const widthStr = getVariableByName('radio/width', modes);
|
|
32
|
+
const heightStr = getVariableByName('radio/height', modes);
|
|
33
|
+
const selectorSizeStr = getVariableByName('radio/selector/size', modes);
|
|
33
34
|
const width = parseFloat(widthStr?.toString() || '18');
|
|
34
35
|
const height = parseFloat(heightStr?.toString() || '18');
|
|
35
36
|
const selectorSize = parseFloat(selectorSizeStr?.toString() || '10');
|
|
@@ -66,7 +67,7 @@ export const Radio = /*#__PURE__*/forwardRef(function Radio({
|
|
|
66
67
|
// ---- Colors & Border ----
|
|
67
68
|
|
|
68
69
|
const resolveColor = (path, fallback) => {
|
|
69
|
-
return getVariableByName(path, modes)
|
|
70
|
+
return getVariableByName(path, modes);
|
|
70
71
|
};
|
|
71
72
|
|
|
72
73
|
// Background Color
|
|
@@ -120,10 +121,9 @@ export const Radio = /*#__PURE__*/forwardRef(function Radio({
|
|
|
120
121
|
backgroundColor,
|
|
121
122
|
justifyContent: 'center',
|
|
122
123
|
alignItems: 'center',
|
|
123
|
-
//
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
} : {})
|
|
124
|
+
// Focus/selected glow ring. Rendered via the unified boxShadow helper
|
|
125
|
+
// so it works on web + RN 0.76+ and degrades gracefully on older RN.
|
|
126
|
+
...(shadowSize > 0 ? boxShadow(`0px 0px 0px ${shadowSize}px ${shadowColor}`) : {})
|
|
127
127
|
};
|
|
128
128
|
const selectorStyle = {
|
|
129
129
|
width: selectorSize,
|
|
@@ -39,47 +39,47 @@ export default function RechargeCard({
|
|
|
39
39
|
style
|
|
40
40
|
}) {
|
|
41
41
|
// Container Tokens (defaults mirror Figma node 2235:937).
|
|
42
|
-
const backgroundColor = getVariableByName('rechargeCard/background', modes)
|
|
43
|
-
const paddingHorizontal = parseInt(getVariableByName('rechargeCard/padding/horizontal', modes)
|
|
44
|
-
const paddingVertical = parseInt(getVariableByName('rechargeCard/padding/vertical', modes)
|
|
45
|
-
const gap = parseInt(getVariableByName('rechargeCard/gap', modes)
|
|
46
|
-
const radius = parseInt(getVariableByName('rechargeCard/radius', modes)
|
|
47
|
-
const minWidth = parseInt(getVariableByName('rechargeCard/minWidth', modes)
|
|
48
|
-
const strokeWidth = parseInt(getVariableByName('rechargeCard/strokeWidth', modes)
|
|
49
|
-
const strokeColor = getVariableByName('rechargeCard/stroke/color', modes)
|
|
42
|
+
const backgroundColor = getVariableByName('rechargeCard/background', modes);
|
|
43
|
+
const paddingHorizontal = parseInt(getVariableByName('rechargeCard/padding/horizontal', modes), 10);
|
|
44
|
+
const paddingVertical = parseInt(getVariableByName('rechargeCard/padding/vertical', modes), 10);
|
|
45
|
+
const gap = parseInt(getVariableByName('rechargeCard/gap', modes), 10);
|
|
46
|
+
const radius = parseInt(getVariableByName('rechargeCard/radius', modes), 10);
|
|
47
|
+
const minWidth = parseInt(getVariableByName('rechargeCard/minWidth', modes), 10);
|
|
48
|
+
const strokeWidth = parseInt(getVariableByName('rechargeCard/strokeWidth', modes), 10);
|
|
49
|
+
const strokeColor = getVariableByName('rechargeCard/stroke/color', modes);
|
|
50
50
|
|
|
51
51
|
// Header Tokens
|
|
52
|
-
const headerGap = parseInt(getVariableByName('rechargeCard/header/gap', modes)
|
|
53
|
-
const titleColor = getVariableByName('rechargeCard/title/color', modes)
|
|
54
|
-
const titleFontSize = parseInt(getVariableByName('rechargeCard/title/fontSize', modes)
|
|
55
|
-
const titleFontFamily = getVariableByName('rechargeCard/title/fontFamily', modes)
|
|
56
|
-
const titleLineHeight = parseInt(getVariableByName('rechargeCard/title/lineHeight', modes)
|
|
57
|
-
const titleFontWeight = getVariableByName('rechargeCard/title/fontWeight', modes)
|
|
52
|
+
const headerGap = parseInt(getVariableByName('rechargeCard/header/gap', modes), 10);
|
|
53
|
+
const titleColor = getVariableByName('rechargeCard/title/color', modes);
|
|
54
|
+
const titleFontSize = parseInt(getVariableByName('rechargeCard/title/fontSize', modes), 10);
|
|
55
|
+
const titleFontFamily = getVariableByName('rechargeCard/title/fontFamily', modes);
|
|
56
|
+
const titleLineHeight = parseInt(getVariableByName('rechargeCard/title/lineHeight', modes), 10);
|
|
57
|
+
const titleFontWeight = getVariableByName('rechargeCard/title/fontWeight', modes);
|
|
58
58
|
|
|
59
59
|
// Specs Tokens
|
|
60
|
-
const specsGap = parseInt(getVariableByName('rechargeCard/specs/gap', modes)
|
|
61
|
-
const specItemGap = parseInt(getVariableByName('rechargeCard/specItem/gap', modes)
|
|
60
|
+
const specsGap = parseInt(getVariableByName('rechargeCard/specs/gap', modes), 10);
|
|
61
|
+
const specItemGap = parseInt(getVariableByName('rechargeCard/specItem/gap', modes), 10);
|
|
62
62
|
|
|
63
63
|
// Spec Label Tokens
|
|
64
|
-
const specLabelColor = getVariableByName('rechargeCard/specItem/label/color', modes)
|
|
65
|
-
const specLabelFontSize = parseInt(getVariableByName('rechargeCard/specItem/label/fontSize', modes)
|
|
66
|
-
const specLabelFontFamily = getVariableByName('rechargeCard/specItem/label/fontFamily', modes)
|
|
67
|
-
const specLabelLineHeight = parseInt(getVariableByName('rechargeCard/specItem/label/lineHeight', modes)
|
|
68
|
-
const specLabelFontWeight = getVariableByName('rechargeCard/specItem/label/fontWeight', modes)
|
|
64
|
+
const specLabelColor = getVariableByName('rechargeCard/specItem/label/color', modes);
|
|
65
|
+
const specLabelFontSize = parseInt(getVariableByName('rechargeCard/specItem/label/fontSize', modes), 10);
|
|
66
|
+
const specLabelFontFamily = getVariableByName('rechargeCard/specItem/label/fontFamily', modes);
|
|
67
|
+
const specLabelLineHeight = parseInt(getVariableByName('rechargeCard/specItem/label/lineHeight', modes), 10);
|
|
68
|
+
const specLabelFontWeight = getVariableByName('rechargeCard/specItem/label/fontWeight', modes);
|
|
69
69
|
|
|
70
70
|
// Spec Value Tokens
|
|
71
|
-
const specValueColor = getVariableByName('rechargeCard/specItem/value/color', modes)
|
|
72
|
-
const specValueFontSize = parseInt(getVariableByName('rechargeCard/specItem/value/fontSize', modes)
|
|
73
|
-
const specValueFontFamily = getVariableByName('rechargeCard/specItem/value/fontFamily', modes)
|
|
74
|
-
const specValueLineHeight = parseInt(getVariableByName('rechargeCard/specItem/value/lineHeight', modes)
|
|
75
|
-
const specValueFontWeight = getVariableByName('rechargeCard/specItem/value/fontWeight', modes)
|
|
71
|
+
const specValueColor = getVariableByName('rechargeCard/specItem/value/color', modes);
|
|
72
|
+
const specValueFontSize = parseInt(getVariableByName('rechargeCard/specItem/value/fontSize', modes), 10);
|
|
73
|
+
const specValueFontFamily = getVariableByName('rechargeCard/specItem/value/fontFamily', modes);
|
|
74
|
+
const specValueLineHeight = parseInt(getVariableByName('rechargeCard/specItem/value/lineHeight', modes), 10);
|
|
75
|
+
const specValueFontWeight = getVariableByName('rechargeCard/specItem/value/fontWeight', modes);
|
|
76
76
|
|
|
77
77
|
// Disclaimer Tokens
|
|
78
|
-
const disclaimerColor = getVariableByName('rechargeCard/disclaimer/color', modes)
|
|
79
|
-
const disclaimerFontSize = parseInt(getVariableByName('rechargeCard/disclaimer/fontSize', modes)
|
|
80
|
-
const disclaimerFontFamily = getVariableByName('rechargeCard/disclaimer/fontFamily', modes)
|
|
81
|
-
const disclaimerLineHeight = parseInt(getVariableByName('rechargeCard/disclaimer/lineHeight', modes)
|
|
82
|
-
const disclaimerFontWeight = getVariableByName('rechargeCard/disclaimer/fontWeight', modes)
|
|
78
|
+
const disclaimerColor = getVariableByName('rechargeCard/disclaimer/color', modes);
|
|
79
|
+
const disclaimerFontSize = parseInt(getVariableByName('rechargeCard/disclaimer/fontSize', modes), 10);
|
|
80
|
+
const disclaimerFontFamily = getVariableByName('rechargeCard/disclaimer/fontFamily', modes);
|
|
81
|
+
const disclaimerLineHeight = parseInt(getVariableByName('rechargeCard/disclaimer/lineHeight', modes), 10);
|
|
82
|
+
const disclaimerFontWeight = getVariableByName('rechargeCard/disclaimer/fontWeight', modes);
|
|
83
83
|
const resolveFontWeight = weight => typeof weight === 'number' ? weight.toString() : weight;
|
|
84
84
|
|
|
85
85
|
// Pass modes to subscription children (e.g. AvatarGroup)
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import React, { useMemo } from 'react';
|
|
4
|
-
import { View } from 'react-native';
|
|
4
|
+
import { View, Text } from 'react-native';
|
|
5
5
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
6
6
|
import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils';
|
|
7
7
|
import { formatIndianNumber } from '../../utils/number-utils';
|
|
8
|
-
import Title from '../Title/Title';
|
|
9
8
|
import LinearProgress from '../LinearProgress/LinearProgress';
|
|
10
9
|
import MetricLegendItem from '../MetricLegendItem/MetricLegendItem';
|
|
11
10
|
|
|
@@ -57,6 +56,7 @@ const DEFAULT_TARGET = {
|
|
|
57
56
|
* @param {SavingsGoalSummaryProps} props
|
|
58
57
|
*/
|
|
59
58
|
function SavingsGoalSummary({
|
|
59
|
+
label,
|
|
60
60
|
currency = '₹',
|
|
61
61
|
current = DEFAULT_CURRENT,
|
|
62
62
|
target = DEFAULT_TARGET,
|
|
@@ -64,6 +64,7 @@ function SavingsGoalSummary({
|
|
|
64
64
|
modes = EMPTY_MODES,
|
|
65
65
|
style,
|
|
66
66
|
titleStyle,
|
|
67
|
+
labelStyle,
|
|
67
68
|
legendStyle
|
|
68
69
|
}) {
|
|
69
70
|
// Merge caller modes on top of the defaults so callers can override
|
|
@@ -111,6 +112,40 @@ function SavingsGoalSummary({
|
|
|
111
112
|
const percentageLabel = `${Math.round(resolvedProgress * 100)}%`;
|
|
112
113
|
const gap = getVariableByName('savingsGoalSummary/gap', mergedModes) ?? 23;
|
|
113
114
|
const legendGap = getVariableByName('savingsGoalSummary/legend/gap', mergedModes) ?? 16;
|
|
115
|
+
|
|
116
|
+
// Percentage value typography — driven by the dedicated
|
|
117
|
+
// `savingsGoalSummary/value/*` tokens (Figma 29 / 900) rather than the
|
|
118
|
+
// generic `Title` tokens, so the value matches the design exactly.
|
|
119
|
+
const valueFontSize = getVariableByName('savingsGoalSummary/value/fontSize', mergedModes) ?? 29;
|
|
120
|
+
const valueFontFamily = getVariableByName('savingsGoalSummary/value/fontFamily', mergedModes) ?? 'JioType Var';
|
|
121
|
+
const valueRawLineHeight = getVariableByName('savingsGoalSummary/value/lineHeight', mergedModes) ?? 29;
|
|
122
|
+
// The value tokens ship with `lineHeight === fontSize` (29/29); clamp to
|
|
123
|
+
// ~1.2x so descenders never clip on native (same guard `Title` uses).
|
|
124
|
+
const valueLineHeight = Math.max(valueRawLineHeight, Math.ceil(valueFontSize * 1.2));
|
|
125
|
+
const valueFontWeight = String(getVariableByName('savingsGoalSummary/value/fontWeight', mergedModes) ?? 900);
|
|
126
|
+
const valueColor = getVariableByName('savingsGoalSummary/value/color', mergedModes) ?? '#0d0d0f';
|
|
127
|
+
|
|
128
|
+
// Caption ("Credit usage") typography — `savingsGoalSummary/label/*`
|
|
129
|
+
// (Figma 12 / 400). Only rendered when a `label` is supplied.
|
|
130
|
+
const labelFontSize = getVariableByName('savingsGoalSummary/label/fontSize', mergedModes) ?? 12;
|
|
131
|
+
const labelFontFamily = getVariableByName('savingsGoalSummary/label/fontFamily', mergedModes) ?? 'JioType Var';
|
|
132
|
+
const labelLineHeight = getVariableByName('savingsGoalSummary/label/lineHeight', mergedModes) ?? 16;
|
|
133
|
+
const labelFontWeight = String(getVariableByName('savingsGoalSummary/label/fontWeight', mergedModes) ?? 400);
|
|
134
|
+
const labelColor = getVariableByName('savingsGoalSummary/label/color', mergedModes) ?? '#0d0d0f';
|
|
135
|
+
const labelNode = label == null || label === false ? null : typeof label === 'string' ? /*#__PURE__*/_jsx(Text, {
|
|
136
|
+
style: [{
|
|
137
|
+
color: labelColor,
|
|
138
|
+
fontFamily: labelFontFamily,
|
|
139
|
+
fontSize: labelFontSize,
|
|
140
|
+
lineHeight: labelLineHeight,
|
|
141
|
+
fontWeight: labelFontWeight,
|
|
142
|
+
width: '100%'
|
|
143
|
+
}, labelStyle],
|
|
144
|
+
children: label
|
|
145
|
+
}) : (() => {
|
|
146
|
+
const processed = cloneChildrenWithModes(label, mergedModes);
|
|
147
|
+
return processed.length === 1 ? processed[0] : processed;
|
|
148
|
+
})();
|
|
114
149
|
const customLegend = children ? cloneChildrenWithModes(children, mergedModes) : null;
|
|
115
150
|
const defaultLegend = !customLegend && (current || target) ? /*#__PURE__*/_jsxs(_Fragment, {
|
|
116
151
|
children: [current && /*#__PURE__*/_jsx(MetricLegendItem, {
|
|
@@ -133,12 +168,22 @@ function SavingsGoalSummary({
|
|
|
133
168
|
gap,
|
|
134
169
|
alignItems: 'stretch'
|
|
135
170
|
}, style],
|
|
136
|
-
accessibilityLabel: `Savings goal progress, ${percentageLabel}`,
|
|
137
|
-
children: [/*#__PURE__*/
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
171
|
+
accessibilityLabel: typeof label === 'string' ? `${label}, ${percentageLabel}` : `Savings goal progress, ${percentageLabel}`,
|
|
172
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
173
|
+
style: HEADER_GROUP_STYLE,
|
|
174
|
+
children: [labelNode, /*#__PURE__*/_jsx(Text, {
|
|
175
|
+
style: [{
|
|
176
|
+
color: valueColor,
|
|
177
|
+
fontFamily: valueFontFamily,
|
|
178
|
+
fontSize: valueFontSize,
|
|
179
|
+
lineHeight: valueLineHeight,
|
|
180
|
+
fontWeight: valueFontWeight,
|
|
181
|
+
width: '100%'
|
|
182
|
+
}, titleStyle],
|
|
183
|
+
accessibilityElementsHidden: true,
|
|
184
|
+
importantForAccessibility: "no",
|
|
185
|
+
children: percentageLabel
|
|
186
|
+
})]
|
|
142
187
|
}), /*#__PURE__*/_jsx(LinearProgress, {
|
|
143
188
|
value: resolvedProgress,
|
|
144
189
|
modes: mergedModes
|
|
@@ -166,10 +211,12 @@ function formatLegendValue(value, currency) {
|
|
|
166
211
|
});
|
|
167
212
|
}
|
|
168
213
|
|
|
169
|
-
//
|
|
170
|
-
//
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
214
|
+
// Groups the optional caption ("Credit usage") tightly above the percentage
|
|
215
|
+
// value. The parent container owns the larger spacing to the bar via `gap`,
|
|
216
|
+
// so this only needs the small label→value gap.
|
|
217
|
+
const HEADER_GROUP_STYLE = {
|
|
218
|
+
width: '100%',
|
|
219
|
+
gap: 2,
|
|
220
|
+
alignItems: 'flex-start'
|
|
174
221
|
};
|
|
175
222
|
export default SavingsGoalSummary;
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React, { forwardRef } from 'react';
|
|
4
|
+
import { ScrollView } from 'react-native';
|
|
5
|
+
import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Axis (or axes) along which the content can be scrolled.
|
|
9
|
+
*
|
|
10
|
+
* - `vertical` (default) — content taller than the viewport scrolls up/down.
|
|
11
|
+
* - `horizontal` — content wider than the viewport scrolls left/right.
|
|
12
|
+
* - `both` — content larger on either axis scrolls in both directions
|
|
13
|
+
* (implemented as a horizontal `ScrollView` nested in a vertical one).
|
|
14
|
+
*/
|
|
15
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
16
|
+
/**
|
|
17
|
+
* Build a padding style fragment, letting the more specific props win over the
|
|
18
|
+
* broader ones (`paddingTop` > `paddingVertical` > `padding`). Only defined
|
|
19
|
+
* values are emitted so consumer `contentContainerStyle` overrides survive.
|
|
20
|
+
*/
|
|
21
|
+
function resolvePadding({
|
|
22
|
+
padding,
|
|
23
|
+
paddingHorizontal,
|
|
24
|
+
paddingVertical,
|
|
25
|
+
paddingTop,
|
|
26
|
+
paddingRight,
|
|
27
|
+
paddingBottom,
|
|
28
|
+
paddingLeft
|
|
29
|
+
}) {
|
|
30
|
+
const top = paddingTop ?? paddingVertical ?? padding;
|
|
31
|
+
const right = paddingRight ?? paddingHorizontal ?? padding;
|
|
32
|
+
const bottom = paddingBottom ?? paddingVertical ?? padding;
|
|
33
|
+
const left = paddingLeft ?? paddingHorizontal ?? padding;
|
|
34
|
+
const style = {};
|
|
35
|
+
if (top != null) style.paddingTop = top;
|
|
36
|
+
if (right != null) style.paddingRight = right;
|
|
37
|
+
if (bottom != null) style.paddingBottom = bottom;
|
|
38
|
+
if (left != null) style.paddingLeft = left;
|
|
39
|
+
return style;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* ScrollArea — a transparent, size-constrained viewport that makes content
|
|
44
|
+
* larger than itself smoothly scrollable (Figma node 6319:46886).
|
|
45
|
+
*
|
|
46
|
+
* It has no background of its own; constrain its size through `style`
|
|
47
|
+
* (`height`, `maxHeight`, or `flex`) and drop any over-sized content inside.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* // Vertical (default): a tall column inside a fixed-height window.
|
|
51
|
+
* <ScrollArea style={{ height: 240 }}>
|
|
52
|
+
* <LongContent />
|
|
53
|
+
* </ScrollArea>
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* // Horizontal: a wide row of cards inside a full-width window.
|
|
57
|
+
* <ScrollArea direction="horizontal">
|
|
58
|
+
* <Card /> <Card /> <Card />
|
|
59
|
+
* </ScrollArea>
|
|
60
|
+
*/
|
|
61
|
+
export const ScrollArea = /*#__PURE__*/forwardRef(function ScrollArea({
|
|
62
|
+
children,
|
|
63
|
+
direction = 'vertical',
|
|
64
|
+
showScrollIndicator = false,
|
|
65
|
+
padding,
|
|
66
|
+
paddingHorizontal,
|
|
67
|
+
paddingVertical,
|
|
68
|
+
paddingTop,
|
|
69
|
+
paddingRight,
|
|
70
|
+
paddingBottom,
|
|
71
|
+
paddingLeft,
|
|
72
|
+
style,
|
|
73
|
+
contentContainerStyle,
|
|
74
|
+
modes = EMPTY_MODES,
|
|
75
|
+
scrollEventThrottle = 16,
|
|
76
|
+
...rest
|
|
77
|
+
}, ref) {
|
|
78
|
+
const paddingStyle = resolvePadding({
|
|
79
|
+
padding,
|
|
80
|
+
paddingHorizontal,
|
|
81
|
+
paddingVertical,
|
|
82
|
+
paddingTop,
|
|
83
|
+
paddingRight,
|
|
84
|
+
paddingBottom,
|
|
85
|
+
paddingLeft
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
// Cascade modes into every child so slotted tokens resolve correctly.
|
|
89
|
+
const content = cloneChildrenWithModes(children, modes);
|
|
90
|
+
if (direction === 'both') {
|
|
91
|
+
// Outer vertical scroll, inner horizontal scroll. Padding lives on the
|
|
92
|
+
// inner content container so it scrolls with the content on both axes.
|
|
93
|
+
return /*#__PURE__*/_jsx(ScrollView, {
|
|
94
|
+
ref: ref,
|
|
95
|
+
style: style,
|
|
96
|
+
showsVerticalScrollIndicator: showScrollIndicator,
|
|
97
|
+
scrollEventThrottle: scrollEventThrottle,
|
|
98
|
+
...rest,
|
|
99
|
+
children: /*#__PURE__*/_jsx(ScrollView, {
|
|
100
|
+
horizontal: true,
|
|
101
|
+
showsHorizontalScrollIndicator: showScrollIndicator,
|
|
102
|
+
scrollEventThrottle: scrollEventThrottle,
|
|
103
|
+
contentContainerStyle: [paddingStyle, contentContainerStyle],
|
|
104
|
+
children: content
|
|
105
|
+
})
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
const isHorizontal = direction === 'horizontal';
|
|
109
|
+
return /*#__PURE__*/_jsx(ScrollView, {
|
|
110
|
+
ref: ref,
|
|
111
|
+
horizontal: isHorizontal,
|
|
112
|
+
style: style,
|
|
113
|
+
showsVerticalScrollIndicator: isHorizontal ? undefined : showScrollIndicator,
|
|
114
|
+
showsHorizontalScrollIndicator: isHorizontal ? showScrollIndicator : undefined,
|
|
115
|
+
scrollEventThrottle: scrollEventThrottle,
|
|
116
|
+
contentContainerStyle: [paddingStyle, contentContainerStyle],
|
|
117
|
+
...rest,
|
|
118
|
+
children: content
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
export default ScrollArea;
|