jfs-components 0.1.12 → 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 +15 -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 +9 -9
- 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/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/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 +9 -9
- 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/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/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/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 -1
- 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 +9 -9
- 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/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/index.ts +2 -0
- package/src/utils/react-utils.ts +72 -1
- package/src/utils/shadow.ts +219 -0
|
@@ -35,16 +35,18 @@ export function Carousel({
|
|
|
35
35
|
loop = true,
|
|
36
36
|
gap: gapProp,
|
|
37
37
|
itemWidth: itemWidthProp,
|
|
38
|
+
paddingHorizontal: paddingHorizontalProp,
|
|
39
|
+
paddingVertical: paddingVerticalProp,
|
|
38
40
|
onIndexChange,
|
|
39
41
|
style
|
|
40
42
|
}) {
|
|
41
43
|
// ---- Token resolution ----
|
|
42
|
-
const tokenGap = parseFloat(getVariableByName('carousel/gap', modes)
|
|
44
|
+
const tokenGap = parseFloat(getVariableByName('carousel/gap', modes));
|
|
43
45
|
const gap = gapProp ?? tokenGap;
|
|
44
|
-
const containerPaddingH = parseFloat(getVariableByName('carousel/padding/horizontal', modes)
|
|
45
|
-
const containerPaddingV = parseFloat(getVariableByName('carousel/padding/vertical', modes)
|
|
46
|
+
const containerPaddingH = parseFloat(getVariableByName('carousel/padding/horizontal', modes));
|
|
47
|
+
const containerPaddingV = parseFloat(getVariableByName('carousel/padding/vertical', modes));
|
|
46
48
|
// Outer container max height per Figma (`carousel/maxHeight`).
|
|
47
|
-
const maxHeight = parseFloat(getVariableByName('carousel/maxHeight', modes)
|
|
49
|
+
const maxHeight = parseFloat(getVariableByName('carousel/maxHeight', modes));
|
|
48
50
|
// Spacing between the cards row and the pagination dots uses `carousel/gap`.
|
|
49
51
|
const paginationOffset = gap;
|
|
50
52
|
|
|
@@ -155,12 +157,16 @@ export function Carousel({
|
|
|
155
157
|
}), [modes, activeIndex, totalItems, goTo, goNext, goPrev]);
|
|
156
158
|
|
|
157
159
|
// ---- Render ----
|
|
160
|
+
// Explicit padding props win verbatim; otherwise fall back to the
|
|
161
|
+
// token-derived values (horizontal keeps its legacy ×2 "peek" multiplier).
|
|
162
|
+
const effectivePaddingH = paddingHorizontalProp ?? containerPaddingH;
|
|
163
|
+
const effectivePaddingV = paddingVerticalProp ?? containerPaddingV;
|
|
158
164
|
const outerStyle = {
|
|
159
|
-
paddingVertical:
|
|
165
|
+
paddingVertical: effectivePaddingV,
|
|
160
166
|
maxHeight
|
|
161
167
|
};
|
|
162
168
|
const contentContainerStyle = {
|
|
163
|
-
paddingHorizontal:
|
|
169
|
+
paddingHorizontal: effectivePaddingH,
|
|
164
170
|
gap,
|
|
165
171
|
// Align items to the start so snap works correctly
|
|
166
172
|
alignItems: 'flex-start'
|
|
@@ -266,12 +272,12 @@ export function Pagination({
|
|
|
266
272
|
|
|
267
273
|
// Token resolution for dots — matches Figma tokens
|
|
268
274
|
// (carousel/pagination/gap, carousel/pagination/indicator/{activeColor,inactiveColor,radius,size,activeWidth}).
|
|
269
|
-
const dotSize = parseFloat(getVariableByName('carousel/pagination/indicator/size', modes)
|
|
270
|
-
const dotActiveWidth = parseFloat(getVariableByName('carousel/pagination/indicator/activeWidth', modes)
|
|
271
|
-
const dotGap = parseFloat(getVariableByName('carousel/pagination/gap', modes)
|
|
272
|
-
const dotColor = getVariableByName('carousel/pagination/indicator/inactiveColor', modes)
|
|
273
|
-
const dotActiveColor = getVariableByName('carousel/pagination/indicator/activeColor', modes)
|
|
274
|
-
const dotRadius = parseFloat(getVariableByName('carousel/pagination/indicator/radius', modes)
|
|
275
|
+
const dotSize = parseFloat(getVariableByName('carousel/pagination/indicator/size', modes));
|
|
276
|
+
const dotActiveWidth = parseFloat(getVariableByName('carousel/pagination/indicator/activeWidth', modes));
|
|
277
|
+
const dotGap = parseFloat(getVariableByName('carousel/pagination/gap', modes));
|
|
278
|
+
const dotColor = getVariableByName('carousel/pagination/indicator/inactiveColor', modes);
|
|
279
|
+
const dotActiveColor = getVariableByName('carousel/pagination/indicator/activeColor', modes);
|
|
280
|
+
const dotRadius = parseFloat(getVariableByName('carousel/pagination/indicator/radius', modes));
|
|
275
281
|
const containerStyle = {
|
|
276
282
|
flexDirection: 'row',
|
|
277
283
|
justifyContent: 'center',
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
5
|
+
import { EMPTY_MODES } from '../../utils/react-utils';
|
|
6
|
+
import Carousel from '../Carousel/Carousel';
|
|
7
|
+
|
|
8
|
+
// Figma reference width for a single Account Card slot (`Carousel / Card Accounts`).
|
|
9
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
|
+
const DEFAULT_ITEM_WIDTH = 125;
|
|
11
|
+
const toNumber = (value, fallback) => {
|
|
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
|
+
* `CarouselCardAccounts` — a horizontally scrollable strip of compact
|
|
21
|
+
* `AccountCard`s (the Figma "Carousel / Card Accounts" component).
|
|
22
|
+
*
|
|
23
|
+
* It is a thin, opinionated preset over the shared {@link Carousel} scroll
|
|
24
|
+
* engine — so the snap/scroll/modes-cascade behaviour is **not** duplicated.
|
|
25
|
+
* Its niche is the account-selection strip: fixed-width card slots, flush
|
|
26
|
+
* (no peek) padding, per-card snapping, and no pagination by default.
|
|
27
|
+
*
|
|
28
|
+
* The cards are a real slot: pass any number of `AccountCard` children
|
|
29
|
+
* (typically a list of `connected` cards followed by a single `add` card).
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* <CarouselCardAccounts modes={modes}>
|
|
33
|
+
* <AccountCard title="Personal account" subtitle="**** 5651" imageSource={art} />
|
|
34
|
+
* <AccountCard title="Salary account" subtitle="**** 1180" imageSource={art} />
|
|
35
|
+
* <AccountCard state="add" title="Add a card" onPress={openLinkFlow} />
|
|
36
|
+
* </CarouselCardAccounts>
|
|
37
|
+
*/
|
|
38
|
+
function CarouselCardAccounts({
|
|
39
|
+
children,
|
|
40
|
+
modes = EMPTY_MODES,
|
|
41
|
+
itemWidth = DEFAULT_ITEM_WIDTH,
|
|
42
|
+
gap: gapProp,
|
|
43
|
+
showPagination = false,
|
|
44
|
+
loop = false,
|
|
45
|
+
onIndexChange,
|
|
46
|
+
style
|
|
47
|
+
}) {
|
|
48
|
+
const gap = gapProp ?? toNumber(getVariableByName('carouselCardAccounts/gap', modes), 8);
|
|
49
|
+
|
|
50
|
+
// Outer-container padding is driven by the design's own tokens
|
|
51
|
+
// (`carouselCardAccounts/padding/*`) rather than the generic `carousel/*`
|
|
52
|
+
// padding, matching the Figma "Carousel / Card Accounts" frame.
|
|
53
|
+
const paddingHorizontal = toNumber(getVariableByName('carouselCardAccounts/padding/horizontal', modes), 0);
|
|
54
|
+
const paddingVertical = toNumber(getVariableByName('carouselCardAccounts/padding/vertical', modes), 0);
|
|
55
|
+
return /*#__PURE__*/_jsx(Carousel, {
|
|
56
|
+
modes: modes,
|
|
57
|
+
itemWidth: itemWidth,
|
|
58
|
+
gap: gap,
|
|
59
|
+
showPagination: showPagination,
|
|
60
|
+
loop: loop,
|
|
61
|
+
autoPlay: false,
|
|
62
|
+
paddingHorizontal: paddingHorizontal,
|
|
63
|
+
paddingVertical: paddingVertical,
|
|
64
|
+
...(onIndexChange ? {
|
|
65
|
+
onIndexChange
|
|
66
|
+
} : {}),
|
|
67
|
+
style: style,
|
|
68
|
+
children: children
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
export default /*#__PURE__*/React.memo(CarouselCardAccounts);
|
|
@@ -5,6 +5,7 @@ import { Pressable, Platform, View } from 'react-native';
|
|
|
5
5
|
import Svg, { Path } from 'react-native-svg';
|
|
6
6
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
7
7
|
import { EMPTY_MODES } from '../../utils/react-utils';
|
|
8
|
+
import { boxShadow } from '../../utils/shadow';
|
|
8
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
10
|
/**
|
|
10
11
|
* Tracks whether the last user interaction was a keyboard event (Tab).
|
|
@@ -97,7 +98,7 @@ const Checkbox = /*#__PURE__*/forwardRef(function Checkbox({
|
|
|
97
98
|
} = useFocusVisible();
|
|
98
99
|
const size = getVariableByName('checkbox/size', modes) ?? 18;
|
|
99
100
|
const radius = getVariableByName('checkbox/radius', modes) ?? 4;
|
|
100
|
-
const strokeWidth =
|
|
101
|
+
const strokeWidth = 1;
|
|
101
102
|
const idleStroke = getVariableByName('checkbox/idle/stroke/color', modes) ?? '#666666';
|
|
102
103
|
const hoverFill = getVariableByName('checkbox/hover/fill/color', modes) ?? 'rgba(0,0,0,0.1)';
|
|
103
104
|
const hoverStroke = getVariableByName('checkbox/hover/stroke/color', modes) ?? '#666666';
|
|
@@ -223,12 +224,4 @@ const Checkbox = /*#__PURE__*/forwardRef(function Checkbox({
|
|
|
223
224
|
})
|
|
224
225
|
});
|
|
225
226
|
});
|
|
226
|
-
function boxShadow(value) {
|
|
227
|
-
if (Platform.OS === 'web') {
|
|
228
|
-
return {
|
|
229
|
-
boxShadow: value
|
|
230
|
-
};
|
|
231
|
-
}
|
|
232
|
-
return {};
|
|
233
|
-
}
|
|
234
227
|
export default Checkbox;
|
|
@@ -16,7 +16,7 @@ function ChipGroup({
|
|
|
16
16
|
testID
|
|
17
17
|
}) {
|
|
18
18
|
// --- Token Resolution ---
|
|
19
|
-
const gap = parseInt(getVariableByName('chipGroup/gap', modes), 10)
|
|
19
|
+
const gap = parseInt(getVariableByName('chipGroup/gap', modes), 10);
|
|
20
20
|
|
|
21
21
|
// --- Styles ---
|
|
22
22
|
const containerStyle = {
|
|
@@ -27,23 +27,23 @@ function ChipSelect({
|
|
|
27
27
|
};
|
|
28
28
|
|
|
29
29
|
// --- Token Resolution ---
|
|
30
|
-
const gap = parseInt(getVariableByName('chipSelect/gap', resolvedModes), 10)
|
|
31
|
-
const paddingHorizontal = parseInt(getVariableByName('chipSelect/padding/horizontal', resolvedModes), 10)
|
|
32
|
-
const paddingVertical = parseInt(getVariableByName('chipSelect/padding/vertical', resolvedModes), 10)
|
|
33
|
-
const radius = parseInt(getVariableByName('chipSelect/radius', resolvedModes), 10)
|
|
30
|
+
const gap = parseInt(getVariableByName('chipSelect/gap', resolvedModes), 10);
|
|
31
|
+
const paddingHorizontal = parseInt(getVariableByName('chipSelect/padding/horizontal', resolvedModes), 10);
|
|
32
|
+
const paddingVertical = parseInt(getVariableByName('chipSelect/padding/vertical', resolvedModes), 10);
|
|
33
|
+
const radius = parseInt(getVariableByName('chipSelect/radius', resolvedModes), 10);
|
|
34
34
|
|
|
35
35
|
// Background
|
|
36
|
-
const backgroundColor = getVariableByName('chipSelect/background', resolvedModes)
|
|
36
|
+
const backgroundColor = getVariableByName('chipSelect/background', resolvedModes);
|
|
37
37
|
|
|
38
38
|
// Text Styles
|
|
39
|
-
const textColor = getVariableByName('chipSelect/foreground', resolvedModes)
|
|
40
|
-
const fontSize = parseInt(getVariableByName('chipSelect/fontSize', resolvedModes), 10)
|
|
41
|
-
const fontFamily = getVariableByName('chipSelect/fontFamily', resolvedModes)
|
|
42
|
-
const lineHeight = parseInt(getVariableByName('chipSelect/lineHeight', resolvedModes), 10)
|
|
43
|
-
const fontWeight = getVariableByName('chipSelect/fontWeight', resolvedModes)
|
|
39
|
+
const textColor = getVariableByName('chipSelect/foreground', resolvedModes);
|
|
40
|
+
const fontSize = parseInt(getVariableByName('chipSelect/fontSize', resolvedModes), 10);
|
|
41
|
+
const fontFamily = getVariableByName('chipSelect/fontFamily', resolvedModes);
|
|
42
|
+
const lineHeight = parseInt(getVariableByName('chipSelect/lineHeight', resolvedModes), 10);
|
|
43
|
+
const fontWeight = getVariableByName('chipSelect/fontWeight', resolvedModes);
|
|
44
44
|
|
|
45
45
|
// Icon Styles
|
|
46
|
-
const iconSize = parseInt(getVariableByName('chipSelect/icon/size', resolvedModes), 10)
|
|
46
|
+
const iconSize = parseInt(getVariableByName('chipSelect/icon/size', resolvedModes), 10);
|
|
47
47
|
|
|
48
48
|
// --- Styles ---
|
|
49
49
|
const containerStyle = {
|
|
@@ -76,13 +76,13 @@ function CircularProgressBar({
|
|
|
76
76
|
const radius = Math.max(0, (size - strokeWidth) / 2);
|
|
77
77
|
const center = size / 2;
|
|
78
78
|
const circumference = 2 * Math.PI * radius;
|
|
79
|
-
const trackColor = getStrokeColor(trackStyle, getVariableByName('circularProgressBar/track/color', trackModes)
|
|
80
|
-
const progressColor = getStrokeColor(progressStyle, getVariableByName('circularProgressBar/progress/color', modes)
|
|
81
|
-
const iconColor = getVariableByName('circularProgressBar/icon/color', modes)
|
|
79
|
+
const trackColor = getStrokeColor(trackStyle, getVariableByName('circularProgressBar/track/color', trackModes));
|
|
80
|
+
const progressColor = getStrokeColor(progressStyle, getVariableByName('circularProgressBar/progress/color', modes));
|
|
81
|
+
const iconColor = getVariableByName('circularProgressBar/icon/color', modes);
|
|
82
82
|
const iconSize = toNumber(getVariableByName('circularProgressBar/icon/size', modes), 24);
|
|
83
|
-
const foreground = getVariableByName('circularProgressBar/foreground', modes)
|
|
83
|
+
const foreground = getVariableByName('circularProgressBar/foreground', modes);
|
|
84
84
|
const fontSize = toNumber(getVariableByName('circularProgressBar/value/fontSize', modes), 18);
|
|
85
|
-
const fontFamily = getVariableByName('circularProgressBar/fontFamily', modes)
|
|
85
|
+
const fontFamily = getVariableByName('circularProgressBar/fontFamily', modes);
|
|
86
86
|
const lineHeight = toNumber(getVariableByName('circularProgressBar/value/lineHeight', modes), 21);
|
|
87
87
|
const fontWeight = toFontWeight(getVariableByName('circularProgressBar/value/fontWeight', modes), '700');
|
|
88
88
|
const supportFontSize = toNumber(getVariableByName('circularProgressBar/supportText/fontSize', modes), 11);
|
|
@@ -75,26 +75,26 @@ function CircularProgressBarDoted({
|
|
|
75
75
|
const outerDotSize = dotSize;
|
|
76
76
|
const ringSize = layoutSize;
|
|
77
77
|
const ringRadius = Math.max(0, (ringSize - outerDotSize) / 2);
|
|
78
|
-
const trackDotColor = getBackgroundColor(trackDotStyle, getVariableByName('circularProgressBarDoted/trackDot/bg', modes)
|
|
79
|
-
const progressDotColor = getBackgroundColor(progressDotStyle, getVariableByName('circularProgressBarDoted/progressDot/bg', modes)
|
|
78
|
+
const trackDotColor = getBackgroundColor(trackDotStyle, getVariableByName('circularProgressBarDoted/trackDot/bg', modes));
|
|
79
|
+
const progressDotColor = getBackgroundColor(progressDotStyle, getVariableByName('circularProgressBarDoted/progressDot/bg', modes));
|
|
80
80
|
const contentGap = toNumber(getVariableByName('circularProgressBarDoted/gap', modes), 12);
|
|
81
81
|
const scoreTierGap = toNumber(getVariableByName('circularProgressBarDoted/scoreTier/gap', modes), 6);
|
|
82
82
|
const scoreTierWidth = toNumber(getVariableByName('circularProgressBarDoted/scoreTier/width', modes), 116);
|
|
83
83
|
const scoreTrendGap = toNumber(getVariableByName('circularProgressBarDoted/scoreTrend/gap', modes), 2);
|
|
84
84
|
const scoreTrendHeight = toNumber(getVariableByName('circularProgressBarDoted/scoreTrend/height', modes), 24);
|
|
85
|
-
const typographyFontFamily = getVariableByName('Typography/Font Family', modes)
|
|
86
|
-
const labelColor = getVariableByName('circularProgressBarDoted/label/color', modes)
|
|
85
|
+
const typographyFontFamily = getVariableByName('Typography/Font Family', modes);
|
|
86
|
+
const labelColor = getVariableByName('circularProgressBarDoted/label/color', modes);
|
|
87
87
|
const labelFontSize = toNumber(getVariableByName('Typography/Size/Body/XS', modes), 12);
|
|
88
88
|
const labelFontWeight = toFontWeight(getVariableByName('Typography/Font Weight/Body Low (Regular)', modes), '400');
|
|
89
|
-
const scoreColor = getVariableByName('circularProgressBarDoted/scoreLabel/color', modes)
|
|
89
|
+
const scoreColor = getVariableByName('circularProgressBarDoted/scoreLabel/color', modes);
|
|
90
90
|
const scoreFontSize = toNumber(getVariableByName('circularProgressBarDoted/scoreLabel/fontSize', modes), 56);
|
|
91
|
-
const scoreFontFamily = getVariableByName('circularProgressBarDoted/scoreLabel/fontFamily', modes)
|
|
91
|
+
const scoreFontFamily = getVariableByName('circularProgressBarDoted/scoreLabel/fontFamily', modes);
|
|
92
92
|
const scoreLineHeight = toNumber(getVariableByName('circularProgressBarDoted/scoreLabel/lineHeight', modes), 56);
|
|
93
93
|
const scoreFontWeight = toFontWeight(getVariableByName('circularProgressBarDoted/scoreLabel/fontWeight', modes), '900');
|
|
94
|
-
const tierColor = getVariableByName('circularProgressBarDoted/tierLabel/color', modes)
|
|
94
|
+
const tierColor = getVariableByName('circularProgressBarDoted/tierLabel/color', modes);
|
|
95
95
|
const tierFontSize = toNumber(getVariableByName('Typography/Size/Body/M', modes), 16);
|
|
96
96
|
const tierFontWeight = toFontWeight(getVariableByName('Typography/Font Weight/Body High', modes), '700');
|
|
97
|
-
const iconColor = getVariableByName('circularProgressBarDoted/icon/color', modes)
|
|
97
|
+
const iconColor = getVariableByName('circularProgressBarDoted/icon/color', modes);
|
|
98
98
|
const iconSize = toNumber(getVariableByName('circularProgressBarDoted/icon/size', modes), 24);
|
|
99
99
|
const dots = useMemo(() => Array.from({
|
|
100
100
|
length: resolvedDotCount
|
|
@@ -33,9 +33,9 @@ function resolveCircularRatingTokens(modes) {
|
|
|
33
33
|
const padding = toNumber(getVariableByName('circularRating/padding', modes), 10);
|
|
34
34
|
const footerGap = toNumber(getVariableByName('circularRating/footer/gap', modes), 4);
|
|
35
35
|
const footerHeight = toNumber(getVariableByName('circularRating/footer/height', modes), 16);
|
|
36
|
-
const footerTextColor = getVariableByName('circularRating/footer/text/color', modes)
|
|
36
|
+
const footerTextColor = getVariableByName('circularRating/footer/text/color', modes);
|
|
37
37
|
const footerTextFontSize = toNumber(getVariableByName('circularRating/footer/text/fontSize', modes), 12);
|
|
38
|
-
const footerTextFontFamily = getVariableByName('circularRating/footer/text/fontFamily', modes)
|
|
38
|
+
const footerTextFontFamily = getVariableByName('circularRating/footer/text/fontFamily', modes);
|
|
39
39
|
const footerTextLineHeight = toNumber(getVariableByName('circularRating/footer/text/lineHeight', modes), 16);
|
|
40
40
|
const footerTextFontWeight = toFontWeight(getVariableByName('circularRating/footer/text/fontWeight', modes), '400');
|
|
41
41
|
return {
|
|
@@ -65,7 +65,7 @@ function resolveCircularRatingTokens(modes) {
|
|
|
65
65
|
lineHeight: footerTextLineHeight,
|
|
66
66
|
textAlign: 'center'
|
|
67
67
|
},
|
|
68
|
-
footerIconColor: getVariableByName('circularRating/footer/icon/color', modes)
|
|
68
|
+
footerIconColor: getVariableByName('circularRating/footer/icon/color', modes),
|
|
69
69
|
footerIconSize: toNumber(getVariableByName('circularRating/footer/icon/size', modes), 16)
|
|
70
70
|
};
|
|
71
71
|
}
|
|
@@ -141,24 +141,24 @@ function CompareTable({
|
|
|
141
141
|
const addIconColor = ADD_BUTTON_ICON_COLOR;
|
|
142
142
|
|
|
143
143
|
// --- table header tokens --------------------------------------------------
|
|
144
|
-
const headerBg = getVariableByName('
|
|
145
|
-
const headerLabelColor = getVariableByName('
|
|
146
|
-
const headerFontSize = getVariableByName('
|
|
147
|
-
const headerFontFamily = getVariableByName('
|
|
148
|
-
const headerFontWeight = getVariableByName('
|
|
149
|
-
const headerPaddingH = getVariableByName('
|
|
150
|
-
const headerPaddingV = getVariableByName('
|
|
144
|
+
const headerBg = getVariableByName('tableHeader/background/color', modes) ?? '#f5f5f5';
|
|
145
|
+
const headerLabelColor = getVariableByName('tableHeader/label/color', modes) ?? '#000000';
|
|
146
|
+
const headerFontSize = getVariableByName('tableHeader/label/fontsize', modes) ?? 14;
|
|
147
|
+
const headerFontFamily = getVariableByName('tableHeader/label/fontfamily', modes) ?? 'JioType Var';
|
|
148
|
+
const headerFontWeight = getVariableByName('tableHeader/label/fontweight', modes) ?? 600;
|
|
149
|
+
const headerPaddingH = getVariableByName('tableHeader/padding/horizontal', modes) ?? 12;
|
|
150
|
+
const headerPaddingV = getVariableByName('tableHeader/padding/vertical', modes) ?? 12;
|
|
151
151
|
|
|
152
152
|
// --- table cell tokens ----------------------------------------------------
|
|
153
|
-
const cellBorderColor = getVariableByName('
|
|
154
|
-
const cellBorderSize = getVariableByName('
|
|
155
|
-
const cellBg = getVariableByName('
|
|
156
|
-
const cellLabelColor = getVariableByName('
|
|
157
|
-
const cellFontSize = getVariableByName('
|
|
158
|
-
const cellFontFamily = getVariableByName('
|
|
159
|
-
const cellFontWeight = getVariableByName('
|
|
160
|
-
const cellPaddingH = getVariableByName('
|
|
161
|
-
const cellPaddingV = getVariableByName('
|
|
153
|
+
const cellBorderColor = getVariableByName('tableCell/border/color', modes) ?? '#eeeeee';
|
|
154
|
+
const cellBorderSize = getVariableByName('tableCell/border/size', modes) ?? 1;
|
|
155
|
+
const cellBg = getVariableByName('tableCell/background/color', modes) ?? '#ffffff';
|
|
156
|
+
const cellLabelColor = getVariableByName('tableCell/label/color', modes) ?? '#000000';
|
|
157
|
+
const cellFontSize = getVariableByName('tableCell/label/fontsize', modes) ?? 14;
|
|
158
|
+
const cellFontFamily = getVariableByName('tableCell/label/fontfamily', modes) ?? 'JioType Var';
|
|
159
|
+
const cellFontWeight = getVariableByName('tableCell/label/fontweight', modes) ?? 400;
|
|
160
|
+
const cellPaddingH = getVariableByName('tableCell/padding/horizontal', modes) ?? 12;
|
|
161
|
+
const cellPaddingV = getVariableByName('tableCell/padding/vertical', modes) ?? 12;
|
|
162
162
|
const columnCount = columns.length;
|
|
163
163
|
const showAddCard = onAddColumn != null && columnCount < maxColumns;
|
|
164
164
|
/** Grid columns shared by the selection-card row and every table row. */
|
|
@@ -26,24 +26,24 @@ function DebitCard({
|
|
|
26
26
|
...globalModes,
|
|
27
27
|
...propModes
|
|
28
28
|
};
|
|
29
|
-
const background = getVariableByName('debitCard/background', modes)
|
|
30
|
-
const radius = getVariableByName('debitCard/radius', modes)
|
|
31
|
-
const width = getVariableByName('debitCard/width', modes)
|
|
32
|
-
const height = getVariableByName('debitCard/height', modes)
|
|
33
|
-
const paddingBottom = getVariableByName('debitCard/padding/bottom', modes)
|
|
34
|
-
const headerPaddingH = getVariableByName('debitCard/header/padding/horizontal', modes)
|
|
35
|
-
const headerPaddingTop = getVariableByName('debitCard/header/padding/top', modes)
|
|
36
|
-
const headerPaddingBottom = getVariableByName('debitCard/header/padding/bottom', modes)
|
|
37
|
-
const cardArtHeight = getVariableByName('debitCard/cardArt/height', modes)
|
|
38
|
-
const cardArtRadius = getVariableByName('debitCard/cardArt/radius', modes)
|
|
39
|
-
const footerGap = getVariableByName('debitCard/footer/gap', modes)
|
|
40
|
-
const footerPaddingH = getVariableByName('debitCard/footer/padding/horizontal', modes)
|
|
41
|
-
const footerPaddingTop = getVariableByName('debitCard/footer/padding/top', modes)
|
|
42
|
-
const foreground = getVariableByName('debitCard/foreground', modes)
|
|
43
|
-
const fontSize = getVariableByName('debitCard/fontSize', modes)
|
|
44
|
-
const fontFamily = getVariableByName('debitCard/fontFamily', modes)
|
|
45
|
-
const lineHeight = getVariableByName('debitCard/lineHeight', modes)
|
|
46
|
-
const fontWeightRaw = getVariableByName('debitCard/fontWeight', modes)
|
|
29
|
+
const background = getVariableByName('debitCard/background', modes);
|
|
30
|
+
const radius = getVariableByName('debitCard/radius', modes);
|
|
31
|
+
const width = getVariableByName('debitCard/width', modes);
|
|
32
|
+
const height = getVariableByName('debitCard/height', modes);
|
|
33
|
+
const paddingBottom = getVariableByName('debitCard/padding/bottom', modes);
|
|
34
|
+
const headerPaddingH = getVariableByName('debitCard/header/padding/horizontal', modes);
|
|
35
|
+
const headerPaddingTop = getVariableByName('debitCard/header/padding/top', modes);
|
|
36
|
+
const headerPaddingBottom = getVariableByName('debitCard/header/padding/bottom', modes);
|
|
37
|
+
const cardArtHeight = getVariableByName('debitCard/cardArt/height', modes);
|
|
38
|
+
const cardArtRadius = getVariableByName('debitCard/cardArt/radius', modes);
|
|
39
|
+
const footerGap = getVariableByName('debitCard/footer/gap', modes);
|
|
40
|
+
const footerPaddingH = getVariableByName('debitCard/footer/padding/horizontal', modes);
|
|
41
|
+
const footerPaddingTop = getVariableByName('debitCard/footer/padding/top', modes);
|
|
42
|
+
const foreground = getVariableByName('debitCard/foreground', modes);
|
|
43
|
+
const fontSize = getVariableByName('debitCard/fontSize', modes);
|
|
44
|
+
const fontFamily = getVariableByName('debitCard/fontFamily', modes);
|
|
45
|
+
const lineHeight = getVariableByName('debitCard/lineHeight', modes);
|
|
46
|
+
const fontWeightRaw = getVariableByName('debitCard/fontWeight', modes);
|
|
47
47
|
const fontWeight = typeof fontWeightRaw === 'number' ? fontWeightRaw.toString() : fontWeightRaw;
|
|
48
48
|
const containerStyle = {
|
|
49
49
|
backgroundColor: background,
|
|
@@ -44,11 +44,11 @@ function Disclaimer({
|
|
|
44
44
|
...propModes
|
|
45
45
|
};
|
|
46
46
|
// Resolve typography and color from Figma variables
|
|
47
|
-
const color = getVariableByName('disclaimer/color', modes)
|
|
48
|
-
const fontSize = getVariableByName('disclaimer/label/fontSize', modes)
|
|
49
|
-
const lineHeight = getVariableByName('disclaimer/label/lineHeight', modes)
|
|
50
|
-
const fontFamily = getVariableByName('disclaimer/label/fontFamily', modes)
|
|
51
|
-
const fontWeightRaw = getVariableByName('disclaimer/label/fontWeight', modes)
|
|
47
|
+
const color = getVariableByName('disclaimer/color', modes);
|
|
48
|
+
const fontSize = getVariableByName('disclaimer/label/fontSize', modes);
|
|
49
|
+
const lineHeight = getVariableByName('disclaimer/label/lineHeight', modes);
|
|
50
|
+
const fontFamily = getVariableByName('disclaimer/label/fontFamily', modes);
|
|
51
|
+
const fontWeightRaw = getVariableByName('disclaimer/label/fontWeight', modes);
|
|
52
52
|
const fontWeight = typeof fontWeightRaw === 'number' ? fontWeightRaw.toString() : fontWeightRaw;
|
|
53
53
|
const baseTextStyle = {
|
|
54
54
|
color,
|
|
@@ -164,17 +164,17 @@ function DonutChart({
|
|
|
164
164
|
const hasChildrenSlot = customCenterChildren.length > 0;
|
|
165
165
|
const showValueLabel = !hasChildrenSlot && shouldRenderText(value);
|
|
166
166
|
const showLabel = !hasChildrenSlot && shouldRenderText(label);
|
|
167
|
-
const valueColor = getVariableByName('
|
|
168
|
-
const valueFontFamily = getVariableByName('
|
|
169
|
-
const valueFontSize = toNumber(getVariableByName('
|
|
170
|
-
const valueLineHeight = toNumber(getVariableByName('
|
|
171
|
-
const valueFontWeight = toFontWeight(getVariableByName('
|
|
172
|
-
const labelColor = getVariableByName('
|
|
173
|
-
const labelFontFamily = getVariableByName('
|
|
174
|
-
const labelFontSize = toNumber(getVariableByName('
|
|
175
|
-
const labelLineHeight = toNumber(getVariableByName('
|
|
176
|
-
const labelFontWeight = toFontWeight(getVariableByName('
|
|
177
|
-
const textWrapGap = toNumber(getVariableByName('
|
|
167
|
+
const valueColor = getVariableByName('value/fg', modes);
|
|
168
|
+
const valueFontFamily = getVariableByName('value/fontFamily', modes);
|
|
169
|
+
const valueFontSize = toNumber(getVariableByName('value/fontSize', modes), 29);
|
|
170
|
+
const valueLineHeight = toNumber(getVariableByName('value/lineHeight', modes), 29);
|
|
171
|
+
const valueFontWeight = toFontWeight(getVariableByName('value/fontWeight', modes), '900');
|
|
172
|
+
const labelColor = getVariableByName('label/fg', modes);
|
|
173
|
+
const labelFontFamily = getVariableByName('label/fontFamily', modes);
|
|
174
|
+
const labelFontSize = toNumber(getVariableByName('label/fontSize', modes), 12);
|
|
175
|
+
const labelLineHeight = toNumber(getVariableByName('label/lineHeight', modes), 15.6);
|
|
176
|
+
const labelFontWeight = toFontWeight(getVariableByName('label/fontWeight', modes), '400');
|
|
177
|
+
const textWrapGap = toNumber(getVariableByName('textWrap/gap', modes), 7);
|
|
178
178
|
const containerStyle = {
|
|
179
179
|
alignItems: 'center',
|
|
180
180
|
height: size,
|
|
@@ -6,6 +6,7 @@ import { Gesture, GestureDetector, ScrollView } from 'react-native-gesture-handl
|
|
|
6
6
|
import Animated, { runOnJS, useAnimatedProps, useAnimatedScrollHandler, useAnimatedStyle, useSharedValue, withSpring } from 'react-native-reanimated';
|
|
7
7
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
8
8
|
import { EMPTY_MODES } from '../../utils/react-utils';
|
|
9
|
+
import { boxShadow } from '../../utils/shadow';
|
|
9
10
|
import Overlay from '../Overlay/Overlay';
|
|
10
11
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
12
|
const AnimatedScrollView = Animated.createAnimatedComponent(ScrollView);
|
|
@@ -303,28 +304,29 @@ function DrawerInner({
|
|
|
303
304
|
});
|
|
304
305
|
|
|
305
306
|
// Design Tokens
|
|
306
|
-
const backgroundColor = getVariableByName('drawer/background', modes)
|
|
307
|
-
const radius = getVariableByName('drawer/radius/top', modes)
|
|
307
|
+
const backgroundColor = getVariableByName('drawer/background', modes);
|
|
308
|
+
const radius = getVariableByName('drawer/radius/top', modes);
|
|
308
309
|
|
|
309
310
|
// Handle
|
|
310
|
-
const handleColor = getVariableByName('drawer/handlebar/background', modes)
|
|
311
|
-
const handleWidth = getVariableByName('drawer/handlebar/width', modes)
|
|
312
|
-
const handleHeight = getVariableByName('drawer/handlebar/height', modes)
|
|
313
|
-
const handleRadius = getVariableByName('drawer/handlebar/radius', modes)
|
|
311
|
+
const handleColor = getVariableByName('drawer/handlebar/background', modes);
|
|
312
|
+
const handleWidth = getVariableByName('drawer/handlebar/width', modes);
|
|
313
|
+
const handleHeight = getVariableByName('drawer/handlebar/height', modes);
|
|
314
|
+
const handleRadius = getVariableByName('drawer/handlebar/radius', modes);
|
|
314
315
|
|
|
315
316
|
// Padding
|
|
316
|
-
const paddingLeft = getVariableByName('drawer/padding/left', modes)
|
|
317
|
-
const paddingRight = getVariableByName('drawer/padding/right', modes)
|
|
318
|
-
const paddingBottom = getVariableByName('drawer/padding/bottom', modes)
|
|
319
|
-
const drawerGap = getVariableByName('drawer/gap', modes)
|
|
320
|
-
// Note: drawer/padding/top is 0 in tokens, but we keep the 8px visual spacing for the handle as requested.
|
|
317
|
+
const paddingLeft = getVariableByName('drawer/padding/left', modes);
|
|
318
|
+
const paddingRight = getVariableByName('drawer/padding/right', modes);
|
|
319
|
+
const paddingBottom = getVariableByName('drawer/padding/bottom', modes);
|
|
320
|
+
const drawerGap = getVariableByName('drawer/gap', modes);
|
|
321
321
|
|
|
322
322
|
// Title
|
|
323
|
-
const titleColor = getVariableByName('drawer/title/color', modes)
|
|
324
|
-
const titleSize = getVariableByName('drawer/title/fontSize', modes)
|
|
325
|
-
const titleWeight = getVariableByName('drawer/title/fontWeight', modes)
|
|
326
|
-
const titleLineHeight = getVariableByName('drawer/title/lineHeight', modes)
|
|
327
|
-
const
|
|
323
|
+
const titleColor = getVariableByName('drawer/title/color', modes);
|
|
324
|
+
const titleSize = getVariableByName('drawer/title/fontSize', modes);
|
|
325
|
+
const titleWeight = getVariableByName('drawer/title/fontWeight', modes);
|
|
326
|
+
const titleLineHeight = getVariableByName('drawer/title/lineHeight', modes);
|
|
327
|
+
const titleWrapPaddingTop = getVariableByName('drawer/titleWrap/padding/top', modes);
|
|
328
|
+
const titleWrapPaddingBottom = getVariableByName('drawer/titleWrap/padding/bottom', modes);
|
|
329
|
+
const titleWrapPaddingHorizontal = getVariableByName('drawer/titleWrap/padding/horizontal', modes);
|
|
328
330
|
|
|
329
331
|
// Drop shadow — Figma layers two shadows (primary + secondary) sharing
|
|
330
332
|
// the same offsetY/blur but with their own offsetX and color.
|
|
@@ -335,26 +337,12 @@ function DrawerInner({
|
|
|
335
337
|
const shadowSecondaryOffsetX = getVariableByName('drawer/shadow/secondary/offsetX', modes) ?? 0;
|
|
336
338
|
const shadowSecondaryColor = getVariableByName('drawer/shadow/secondary/color', modes) ?? 'rgba(12, 13, 16, 0.12)';
|
|
337
339
|
|
|
338
|
-
// Cross-platform shadow
|
|
339
|
-
//
|
|
340
|
-
//
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
},
|
|
345
|
-
ios: {
|
|
346
|
-
shadowColor: shadowPrimaryColor,
|
|
347
|
-
shadowOffset: {
|
|
348
|
-
width: shadowPrimaryOffsetX,
|
|
349
|
-
height: shadowPrimaryOffsetY
|
|
350
|
-
},
|
|
351
|
-
shadowOpacity: 1,
|
|
352
|
-
shadowRadius: shadowPrimaryBlur / 2
|
|
353
|
-
},
|
|
354
|
-
android: {
|
|
355
|
-
elevation: 16
|
|
356
|
-
},
|
|
357
|
-
default: {}
|
|
340
|
+
// Cross-platform shadow via the unified helper. Figma layers two shadows
|
|
341
|
+
// (secondary + primary) which stack natively as a single multi-layer
|
|
342
|
+
// boxShadow on web + RN 0.76+. On older RN the helper falls back to the most
|
|
343
|
+
// prominent layer (iOS shadow*) / a fixed elevation (Android).
|
|
344
|
+
const shadowStyle = boxShadow(`${shadowSecondaryOffsetX}px ${shadowPrimaryOffsetY}px ${shadowPrimaryBlur}px 0px ${shadowSecondaryColor}, ` + `${shadowPrimaryOffsetX}px ${shadowPrimaryOffsetY}px ${shadowPrimaryBlur}px 0px ${shadowPrimaryColor}`, {
|
|
345
|
+
elevation: 16
|
|
358
346
|
});
|
|
359
347
|
const defaultAccessibilityLabel = accessibilityLabel || title || 'Drawer';
|
|
360
348
|
return (
|
|
@@ -399,30 +387,42 @@ function DrawerInner({
|
|
|
399
387
|
borderTopRightRadius: radius,
|
|
400
388
|
paddingLeft,
|
|
401
389
|
paddingRight,
|
|
402
|
-
paddingBottom
|
|
403
|
-
rowGap: drawerGap
|
|
390
|
+
paddingBottom
|
|
404
391
|
}],
|
|
405
|
-
children: [/*#__PURE__*/
|
|
406
|
-
style:
|
|
407
|
-
|
|
408
|
-
}
|
|
409
|
-
children: /*#__PURE__*/_jsx(View, {
|
|
410
|
-
style: [{
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
392
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
393
|
+
style: {
|
|
394
|
+
marginBottom: drawerGap
|
|
395
|
+
},
|
|
396
|
+
children: [/*#__PURE__*/_jsx(View, {
|
|
397
|
+
style: [styles.handleArea, !title && !header && {
|
|
398
|
+
marginBottom: drawerGap
|
|
399
|
+
}],
|
|
400
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
401
|
+
style: [{
|
|
402
|
+
backgroundColor: handleColor,
|
|
403
|
+
width: handleWidth,
|
|
404
|
+
height: handleHeight,
|
|
405
|
+
borderRadius: handleRadius
|
|
406
|
+
}]
|
|
407
|
+
})
|
|
408
|
+
}), header, title && /*#__PURE__*/_jsx(View, {
|
|
409
|
+
style: {
|
|
410
|
+
paddingTop: titleWrapPaddingTop,
|
|
411
|
+
paddingBottom: titleWrapPaddingBottom,
|
|
412
|
+
paddingHorizontal: titleWrapPaddingHorizontal,
|
|
413
|
+
alignItems: 'center'
|
|
414
|
+
},
|
|
415
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
416
|
+
style: [{
|
|
417
|
+
color: titleColor,
|
|
418
|
+
fontSize: titleSize,
|
|
419
|
+
fontWeight: titleWeight,
|
|
420
|
+
lineHeight: titleLineHeight,
|
|
421
|
+
textAlign: 'center'
|
|
422
|
+
}],
|
|
423
|
+
children: title
|
|
424
|
+
})
|
|
425
|
+
})]
|
|
426
426
|
}), /*#__PURE__*/_jsx(AnimatedScrollView, {
|
|
427
427
|
ref: scrollRef,
|
|
428
428
|
style: [styles.content, contentStyle],
|
|
@@ -474,7 +474,7 @@ const styles = StyleSheet.create({
|
|
|
474
474
|
},
|
|
475
475
|
handleArea: {
|
|
476
476
|
alignItems: 'center',
|
|
477
|
-
|
|
477
|
+
marginTop: 8,
|
|
478
478
|
width: '100%'
|
|
479
479
|
},
|
|
480
480
|
content: {
|