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
|
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "MediaSource", {
|
|
|
9
9
|
return _MediaSource.default;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
Object.defineProperty(exports, "boxShadow", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _shadow.boxShadow;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
12
18
|
Object.defineProperty(exports, "cloneChildrenWithModes", {
|
|
13
19
|
enumerable: true,
|
|
14
20
|
get: function () {
|
|
@@ -27,7 +33,26 @@ Object.defineProperty(exports, "formatIndianNumber", {
|
|
|
27
33
|
return _numberUtils.formatIndianNumber;
|
|
28
34
|
}
|
|
29
35
|
});
|
|
36
|
+
Object.defineProperty(exports, "parseBoxShadow", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _shadow.parseBoxShadow;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
Object.defineProperty(exports, "parseSingleShadow", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function () {
|
|
45
|
+
return _shadow.parseSingleShadow;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
Object.defineProperty(exports, "supportsNativeBoxShadow", {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
get: function () {
|
|
51
|
+
return _shadow.supportsNativeBoxShadow;
|
|
52
|
+
}
|
|
53
|
+
});
|
|
30
54
|
var _reactUtils = require("./react-utils");
|
|
31
55
|
var _MediaSource = _interopRequireDefault(require("./MediaSource"));
|
|
32
56
|
var _numberUtils = require("./number-utils");
|
|
57
|
+
var _shadow = require("./shadow");
|
|
33
58
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -8,8 +8,10 @@ exports.cloneChildrenWithModes = cloneChildrenWithModes;
|
|
|
8
8
|
exports.flattenChildren = flattenChildren;
|
|
9
9
|
exports.injectChildStyle = injectChildStyle;
|
|
10
10
|
exports.mergeRefs = mergeRefs;
|
|
11
|
+
exports.resolveTextLayout = resolveTextLayout;
|
|
11
12
|
exports.resolveTruncation = resolveTruncation;
|
|
12
13
|
var _react = _interopRequireDefault(require("react"));
|
|
14
|
+
var _reactNative = require("react-native");
|
|
13
15
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
16
|
/**
|
|
15
17
|
* A shared, frozen empty modes object.
|
|
@@ -156,6 +158,66 @@ function resolveTruncation(disableTruncation, numberOfLines, ellipsizeMode) {
|
|
|
156
158
|
ellipsizeMode
|
|
157
159
|
};
|
|
158
160
|
}
|
|
161
|
+
/**
|
|
162
|
+
* Resolves the `<Text>` props + style for the two truncation escape hatches.
|
|
163
|
+
* This supersedes {@link resolveTruncation} for components that want the
|
|
164
|
+
* "brutal" overflow behaviour rather than just dropping the line clamp.
|
|
165
|
+
*
|
|
166
|
+
* - `disableTruncation`: never truncate. Drops `numberOfLines`/`ellipsizeMode`
|
|
167
|
+
* AND sets `flexShrink: 0`, so a tight flex parent can no longer squeeze the
|
|
168
|
+
* text into an ellipsis — instead the text keeps its intrinsic size and
|
|
169
|
+
* overflows, even if that means blowing past (and visually breaking) the
|
|
170
|
+
* parent layout. The text still wraps onto multiple lines.
|
|
171
|
+
* - `singleLine`: force everything onto one line with no wrapping. Implies
|
|
172
|
+
* `disableTruncation` (the ellipsis is never shown). On web this adds
|
|
173
|
+
* `whiteSpace: 'nowrap'` so the single line overflows horizontally instead of
|
|
174
|
+
* wrapping. The text is never shrunk.
|
|
175
|
+
*
|
|
176
|
+
* Note (native): React Native's `<Text>` has no `white-space: nowrap`
|
|
177
|
+
* equivalent, so on iOS/Android `singleLine` cannot force a hard non-wrapping
|
|
178
|
+
* overflow — it behaves like `disableTruncation` (no ellipsis, no shrink). The
|
|
179
|
+
* hard single-line overflow is honoured on web (Storybook / react-native-web).
|
|
180
|
+
*
|
|
181
|
+
* When neither flag is set, the supplied `numberOfLines`/`ellipsizeMode` pass
|
|
182
|
+
* through unchanged and no extra style is returned.
|
|
183
|
+
*/
|
|
184
|
+
function resolveTextLayout({
|
|
185
|
+
disableTruncation,
|
|
186
|
+
singleLine,
|
|
187
|
+
numberOfLines,
|
|
188
|
+
ellipsizeMode
|
|
189
|
+
}) {
|
|
190
|
+
if (singleLine) {
|
|
191
|
+
return {
|
|
192
|
+
numberOfLines: undefined,
|
|
193
|
+
ellipsizeMode: undefined,
|
|
194
|
+
style: {
|
|
195
|
+
flexShrink: 0,
|
|
196
|
+
flexGrow: 0,
|
|
197
|
+
...(_reactNative.Platform.OS === 'web' ? {
|
|
198
|
+
whiteSpace: 'nowrap',
|
|
199
|
+
overflow: 'visible'
|
|
200
|
+
} : {})
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
if (disableTruncation) {
|
|
205
|
+
return {
|
|
206
|
+
numberOfLines: undefined,
|
|
207
|
+
ellipsizeMode: undefined,
|
|
208
|
+
style: {
|
|
209
|
+
flexShrink: 0,
|
|
210
|
+
...(_reactNative.Platform.OS === 'web' ? {
|
|
211
|
+
overflow: 'visible'
|
|
212
|
+
} : {})
|
|
213
|
+
}
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
return {
|
|
217
|
+
numberOfLines,
|
|
218
|
+
ellipsizeMode
|
|
219
|
+
};
|
|
220
|
+
}
|
|
159
221
|
|
|
160
222
|
/**
|
|
161
223
|
* Flattens React children, extracting them from Fragments.
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.boxShadow = boxShadow;
|
|
7
|
+
exports.parseBoxShadow = parseBoxShadow;
|
|
8
|
+
exports.parseSingleShadow = parseSingleShadow;
|
|
9
|
+
exports.supportsNativeBoxShadow = supportsNativeBoxShadow;
|
|
10
|
+
var _reactNative = require("react-native");
|
|
11
|
+
/**
|
|
12
|
+
* Cross-platform drop-shadow helper with a backward-compatibility layer.
|
|
13
|
+
*
|
|
14
|
+
* Why this exists
|
|
15
|
+
* ----------------
|
|
16
|
+
* The spec-compliant `boxShadow` style prop only landed in React Native 0.76
|
|
17
|
+
* (and only on the New Architecture / Fabric). Older apps that consume this
|
|
18
|
+
* library are still on pre-0.76 React Native where `boxShadow` is silently
|
|
19
|
+
* ignored on native, so their shadows simply disappear.
|
|
20
|
+
*
|
|
21
|
+
* Rather than hand-rolling a `Platform.select` block in every component, route
|
|
22
|
+
* ALL drop shadows through this single helper. When `boxShadow` is natively
|
|
23
|
+
* supported it is used verbatim (web + RN 0.76+ Fabric). When it is NOT
|
|
24
|
+
* supported, the CSS-style shadow string is parsed and translated into the
|
|
25
|
+
* legacy native shadow API:
|
|
26
|
+
* - iOS: `shadowColor`, `shadowOffset`, `shadowOpacity`, `shadowRadius`
|
|
27
|
+
* - Android: `elevation`
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```tsx
|
|
31
|
+
* const style = boxShadow('0px 2px 4px 0px rgba(0,0,0,0.18)')
|
|
32
|
+
* <View style={[base, style]} />
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
|
|
36
|
+
// `boxShadow` is intentionally absent from the @types/react-native surface in
|
|
37
|
+
// this repo (pinned to 0.73), so we widen ViewStyle locally for the cases
|
|
38
|
+
// where we DO emit the native/web boxShadow string.
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Whether the spec-compliant `boxShadow` style prop is honored at runtime.
|
|
42
|
+
* - Web (react-native-web) always supports it.
|
|
43
|
+
* - Native supports it from RN 0.76+ AND only on the New Architecture (Fabric).
|
|
44
|
+
*/
|
|
45
|
+
function supportsNativeBoxShadow() {
|
|
46
|
+
if (_reactNative.Platform.OS === 'web') {
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
const version = _reactNative.Platform.constants?.reactNativeVersion;
|
|
50
|
+
const isVersionSupported = version ? version.major > 0 || version.major === 0 && version.minor >= 76 : false;
|
|
51
|
+
|
|
52
|
+
// Even on 0.76+, boxShadow is a New Architecture feature. Fabric exposes a
|
|
53
|
+
// global UI manager; its presence is the most reliable runtime signal.
|
|
54
|
+
const isFabric = typeof globalThis !== 'undefined' && globalThis.nativeFabricUIManager != null;
|
|
55
|
+
return isVersionSupported && isFabric;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Splits a (potentially multi-) box-shadow string on top-level commas, i.e.
|
|
60
|
+
* commas that are NOT inside a color function such as `rgba(12, 13, 16, 0.12)`.
|
|
61
|
+
*/
|
|
62
|
+
function splitShadows(value) {
|
|
63
|
+
const out = [];
|
|
64
|
+
let depth = 0;
|
|
65
|
+
let current = '';
|
|
66
|
+
for (const ch of value) {
|
|
67
|
+
if (ch === '(') depth++;else if (ch === ')') depth--;
|
|
68
|
+
if (ch === ',' && depth === 0) {
|
|
69
|
+
if (current.trim()) out.push(current.trim());
|
|
70
|
+
current = '';
|
|
71
|
+
} else {
|
|
72
|
+
current += ch;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (current.trim()) out.push(current.trim());
|
|
76
|
+
return out;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Parses a single CSS box-shadow layer into its primitive parts.
|
|
81
|
+
* Supports: `[inset] offsetX offsetY [blur] [spread] color` in any sensible
|
|
82
|
+
* ordering of the keyword/color, with `rgb()/rgba()/hsl()/hsla()`, hex, or
|
|
83
|
+
* named colors.
|
|
84
|
+
*/
|
|
85
|
+
function parseSingleShadow(input) {
|
|
86
|
+
let s = input.trim();
|
|
87
|
+
let inset = false;
|
|
88
|
+
if (/(^|\s)inset(\s|$)/i.test(s)) {
|
|
89
|
+
inset = true;
|
|
90
|
+
s = s.replace(/(^|\s)inset(\s|$)/i, ' ').trim();
|
|
91
|
+
}
|
|
92
|
+
let color = 'rgba(0,0,0,1)';
|
|
93
|
+
const fnColor = s.match(/(?:rgba?|hsla?)\([^)]*\)/i);
|
|
94
|
+
if (fnColor) {
|
|
95
|
+
color = fnColor[0];
|
|
96
|
+
s = s.replace(fnColor[0], ' ').trim();
|
|
97
|
+
} else {
|
|
98
|
+
const hex = s.match(/#[0-9a-fA-F]{3,8}\b/);
|
|
99
|
+
if (hex) {
|
|
100
|
+
color = hex[0];
|
|
101
|
+
s = s.replace(hex[0], ' ').trim();
|
|
102
|
+
} else {
|
|
103
|
+
// Fall back to a trailing named color token (e.g. "red", "black").
|
|
104
|
+
const tokens = s.split(/\s+/).filter(Boolean);
|
|
105
|
+
const last = tokens[tokens.length - 1];
|
|
106
|
+
if (last && Number.isNaN(parseFloat(last))) {
|
|
107
|
+
color = last;
|
|
108
|
+
tokens.pop();
|
|
109
|
+
s = tokens.join(' ');
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
const nums = s.split(/\s+/).filter(Boolean).map(t => parseFloat(t) || 0);
|
|
114
|
+
const [offsetX = 0, offsetY = 0, blur = 0, spread = 0] = nums;
|
|
115
|
+
return {
|
|
116
|
+
offsetX,
|
|
117
|
+
offsetY,
|
|
118
|
+
blur,
|
|
119
|
+
spread,
|
|
120
|
+
color,
|
|
121
|
+
inset
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Parses a full box-shadow string (one or more comma-separated layers).
|
|
127
|
+
*/
|
|
128
|
+
function parseBoxShadow(value) {
|
|
129
|
+
return splitShadows(value).map(parseSingleShadow);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Picks the visually dominant shadow layer (largest blur, then largest spread).
|
|
134
|
+
* iOS' legacy shadow API can only render a single shadow per view.
|
|
135
|
+
*/
|
|
136
|
+
function pickPrimary(shadows) {
|
|
137
|
+
if (shadows.length === 0) return undefined;
|
|
138
|
+
return shadows.reduce((best, s) => {
|
|
139
|
+
if (s.blur > best.blur) return s;
|
|
140
|
+
if (s.blur === best.blur && s.spread > best.spread) return s;
|
|
141
|
+
return best;
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Translates the parsed shadow into the legacy native shadow style used by
|
|
147
|
+
* pre-0.76 React Native.
|
|
148
|
+
*/
|
|
149
|
+
function legacyShadowStyle(value, options) {
|
|
150
|
+
const shadows = parseBoxShadow(value);
|
|
151
|
+
const primary = pickPrimary(shadows);
|
|
152
|
+
if (!primary) {
|
|
153
|
+
return {};
|
|
154
|
+
}
|
|
155
|
+
if (_reactNative.Platform.OS === 'android') {
|
|
156
|
+
const elevation = options?.elevation ?? Math.max(0, Math.round(primary.blur / 2));
|
|
157
|
+
if (elevation <= 0) {
|
|
158
|
+
return {};
|
|
159
|
+
}
|
|
160
|
+
return {
|
|
161
|
+
elevation
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
// iOS: shadowOpacity defaults to 0 (invisible), so it MUST be set. We keep
|
|
166
|
+
// the full color (its own alpha is respected) and use opacity 1 as the
|
|
167
|
+
// multiplier so rgba() alpha is honored end-to-end.
|
|
168
|
+
return {
|
|
169
|
+
shadowColor: primary.color,
|
|
170
|
+
shadowOffset: {
|
|
171
|
+
width: primary.offsetX,
|
|
172
|
+
height: primary.offsetY
|
|
173
|
+
},
|
|
174
|
+
shadowOpacity: 1,
|
|
175
|
+
shadowRadius: primary.blur
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Returns a style object that renders the given CSS-style box-shadow on every
|
|
181
|
+
* platform. Uses the native `boxShadow` prop when supported, otherwise falls
|
|
182
|
+
* back to the legacy `shadow*` (iOS) / `elevation` (Android) API.
|
|
183
|
+
*
|
|
184
|
+
* @param value A CSS box-shadow string, e.g. `'0px 2px 4px 0px rgba(0,0,0,0.2)'`.
|
|
185
|
+
* Multiple comma-separated layers are supported; on the legacy
|
|
186
|
+
* fallback iOS uses the most prominent layer and Android uses a
|
|
187
|
+
* single elevation.
|
|
188
|
+
* @param options Optional overrides (e.g. explicit Android `elevation`).
|
|
189
|
+
*/
|
|
190
|
+
function boxShadow(value, options) {
|
|
191
|
+
if (!value) {
|
|
192
|
+
return {};
|
|
193
|
+
}
|
|
194
|
+
if (supportsNativeBoxShadow()) {
|
|
195
|
+
return {
|
|
196
|
+
boxShadow: value
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
return legacyShadowStyle(value, options);
|
|
200
|
+
}
|
|
@@ -4,10 +4,9 @@ import React, { useEffect, useMemo, useRef } from 'react';
|
|
|
4
4
|
import { Animated, Keyboard, View, Platform } from 'react-native';
|
|
5
5
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
6
6
|
import { EMPTY_MODES, cloneChildrenWithModes, flattenChildren } from '../../utils/react-utils';
|
|
7
|
+
import { boxShadow } from '../../utils/shadow';
|
|
7
8
|
import IconButton from '../IconButton/IconButton';
|
|
8
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
|
-
const IS_WEB = Platform.OS === 'web';
|
|
10
|
-
|
|
11
10
|
// ---------------------------------------------------------------------------
|
|
12
11
|
// Yoga-safe stretch
|
|
13
12
|
// ---------------------------------------------------------------------------
|
|
@@ -36,27 +35,11 @@ const STRETCH_STYLE = {
|
|
|
36
35
|
minWidth: 0
|
|
37
36
|
};
|
|
38
37
|
|
|
39
|
-
//
|
|
40
|
-
//
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
ios: {
|
|
44
|
-
shadowColor: '#0c0d10',
|
|
45
|
-
shadowOffset: {
|
|
46
|
-
width: 0,
|
|
47
|
-
height: -12
|
|
48
|
-
},
|
|
49
|
-
shadowOpacity: 0.16,
|
|
50
|
-
shadowRadius: 24
|
|
51
|
-
},
|
|
52
|
-
android: {
|
|
53
|
-
elevation: 16
|
|
54
|
-
},
|
|
55
|
-
default: {}
|
|
38
|
+
// Upward drop shadow routed through the unified helper: native `boxShadow` on
|
|
39
|
+
// web + RN 0.76+, legacy `shadow*` (iOS) / `elevation` (Android) on older RN.
|
|
40
|
+
const SHADOW = boxShadow('0px -12px 24px 0px rgba(12, 13, 16, 0.12), 0px -16px 48px 0px rgba(12, 13, 16, 0.16)', {
|
|
41
|
+
elevation: 16
|
|
56
42
|
});
|
|
57
|
-
const WEB_SHADOW = IS_WEB ? {
|
|
58
|
-
boxShadow: '0px -12px 24px 0px rgba(12, 13, 16, 0.12), 0px -16px 48px 0px rgba(12, 13, 16, 0.16)'
|
|
59
|
-
} : null;
|
|
60
43
|
|
|
61
44
|
// The runtime token a slot child must equal (by reference) to be treated as
|
|
62
45
|
// an IconButton. `IconButton` is exported wrapped in `React.memo`, so the
|
|
@@ -165,7 +148,7 @@ function ActionFooter({
|
|
|
165
148
|
paddingRight: paddingHorizontal,
|
|
166
149
|
paddingTop,
|
|
167
150
|
paddingBottom,
|
|
168
|
-
...
|
|
151
|
+
...SHADOW
|
|
169
152
|
};
|
|
170
153
|
const slot = {
|
|
171
154
|
flexDirection: 'row',
|
|
@@ -202,7 +185,7 @@ function ActionFooter({
|
|
|
202
185
|
});
|
|
203
186
|
}, [children, modes]);
|
|
204
187
|
return /*#__PURE__*/_jsx(Animated.View, {
|
|
205
|
-
style: [containerStyle,
|
|
188
|
+
style: [containerStyle, style,
|
|
206
189
|
// Counter-translate by the keyboard height on Android so `adjustResize`
|
|
207
190
|
// can't lift the footer above the keyboard (no-op on iOS/web where the
|
|
208
191
|
// value stays at 0).
|
|
@@ -29,18 +29,18 @@ export default function ActionTile({
|
|
|
29
29
|
};
|
|
30
30
|
|
|
31
31
|
// Resolve tokens
|
|
32
|
-
const backgroundColor = getVariableByName('actionTile/background', modes)
|
|
33
|
-
const gap = Number(getVariableByName('actionTile/gap', modes))
|
|
34
|
-
const paddingHorizontal = Number(getVariableByName('actionTile/padding/horizontal', modes))
|
|
35
|
-
const paddingVertical = Number(getVariableByName('actionTile/padding/vertical', modes))
|
|
36
|
-
const radius = Number(getVariableByName('actionTile/radius', modes))
|
|
32
|
+
const backgroundColor = getVariableByName('actionTile/background', modes);
|
|
33
|
+
const gap = Number(getVariableByName('actionTile/gap', modes));
|
|
34
|
+
const paddingHorizontal = Number(getVariableByName('actionTile/padding/horizontal', modes));
|
|
35
|
+
const paddingVertical = Number(getVariableByName('actionTile/padding/vertical', modes));
|
|
36
|
+
const radius = Number(getVariableByName('actionTile/radius', modes));
|
|
37
37
|
|
|
38
38
|
// Text tokens
|
|
39
|
-
const textColor = getVariableByName('actionTile/foreground', modes)
|
|
40
|
-
const fontSize = Number(getVariableByName('actionTile/fontSize', modes))
|
|
41
|
-
const fontFamily = getVariableByName('actionTile/fontFamily', modes)
|
|
42
|
-
const fontWeightStr = getVariableByName('actionTile/fontWeight', modes)
|
|
43
|
-
const lineHeight = Number(getVariableByName('actionTile/lineHeight', modes))
|
|
39
|
+
const textColor = getVariableByName('actionTile/foreground', modes);
|
|
40
|
+
const fontSize = Number(getVariableByName('actionTile/fontSize', modes));
|
|
41
|
+
const fontFamily = getVariableByName('actionTile/fontFamily', modes);
|
|
42
|
+
const fontWeightStr = getVariableByName('actionTile/fontWeight', modes);
|
|
43
|
+
const lineHeight = Number(getVariableByName('actionTile/lineHeight', modes));
|
|
44
44
|
const containerStyle = {
|
|
45
45
|
backgroundColor,
|
|
46
46
|
borderRadius: radius,
|
|
@@ -28,9 +28,9 @@ const AmountInput = /*#__PURE__*/forwardRef(function AmountInput({
|
|
|
28
28
|
};
|
|
29
29
|
|
|
30
30
|
// Resolve tokens
|
|
31
|
-
const gap = Number(getVariableByName('amountInput/gap', modes))
|
|
32
|
-
const paddingHorizontal = Number(getVariableByName('amountInput/padding/horizontal', modes))
|
|
33
|
-
const paddingVertical = Number(getVariableByName('amountInput/padding/vertical', modes))
|
|
31
|
+
const gap = Number(getVariableByName('amountInput/gap', modes));
|
|
32
|
+
const paddingHorizontal = Number(getVariableByName('amountInput/padding/horizontal', modes));
|
|
33
|
+
const paddingVertical = Number(getVariableByName('amountInput/padding/vertical', modes));
|
|
34
34
|
const containerStyle = {
|
|
35
35
|
flexDirection: 'column',
|
|
36
36
|
alignItems: 'center',
|
|
@@ -720,7 +720,7 @@ function ChartTooltip({
|
|
|
720
720
|
const bg = getVariableByName('tooltip/background', modes) ?? '#0f0d0a';
|
|
721
721
|
const paddingH = toNumber(getVariableByName('tooltip/padding/horizontal', modes), 12);
|
|
722
722
|
const paddingV = toNumber(getVariableByName('tooltip/padding/vertical', modes), 8);
|
|
723
|
-
const radius =
|
|
723
|
+
const radius = 8;
|
|
724
724
|
const labelColor = getVariableByName('tooltip/label/color', modes) ?? '#ffffff';
|
|
725
725
|
if (items.length === 0) return null;
|
|
726
726
|
|
|
@@ -798,7 +798,7 @@ function ChartLegend() {
|
|
|
798
798
|
/** Resolve `axisItem/*` typography tokens into a memoized text style. */
|
|
799
799
|
function useAxisTypography(modes) {
|
|
800
800
|
return useMemo(() => {
|
|
801
|
-
const color = getVariableByName('axisItem/
|
|
801
|
+
const color = getVariableByName('axisItem/fg', modes) ?? '#000000';
|
|
802
802
|
const fontFamily = getVariableByName('axisItem/fontFamily', modes) ?? 'JioType Var';
|
|
803
803
|
const fontSize = toNumber(getVariableByName('axisItem/fontSize', modes), 12);
|
|
804
804
|
const lineHeight = toNumber(getVariableByName('axisItem/lineHeight', modes), 16);
|
|
@@ -124,7 +124,7 @@ function Attached({
|
|
|
124
124
|
// anchor centering intact).
|
|
125
125
|
const slotBorderStyle = useMemo(() => {
|
|
126
126
|
const borderColor = getVariableByName('attached/slot/border', modes);
|
|
127
|
-
const borderWidth = parseFloat(getVariableByName('attached/slot/borderWidth', modes)
|
|
127
|
+
const borderWidth = parseFloat(getVariableByName('attached/slot/borderWidth', modes));
|
|
128
128
|
if (!borderColor || !(borderWidth > 0)) return null;
|
|
129
129
|
|
|
130
130
|
// Match the inner clip radius so the ring stays concentric. The outer edge
|
|
@@ -51,17 +51,17 @@ const monogramContainerStyle = {
|
|
|
51
51
|
// ---------------------------------------------------------------------------
|
|
52
52
|
|
|
53
53
|
function resolveAvatarTokens(modes, isMonogram) {
|
|
54
|
-
const size = getVariableByName('avatar/size', modes)
|
|
55
|
-
const radiusRaw = getVariableByName('avatar/radius', modes)
|
|
56
|
-
const backgroundColor = getVariableByName('avatar/background', modes)
|
|
57
|
-
const borderColor = getVariableByName('avatar/border/color', modes)
|
|
58
|
-
const borderSize = getVariableByName('avatar/border/size', modes)
|
|
59
|
-
const labelColor = getVariableByName('avatar/label/color', modes)
|
|
60
|
-
const labelFontSize = getVariableByName('avatar/label/fontSize', modes)
|
|
61
|
-
const labelLineHeight = getVariableByName('avatar/label/lineHeight', modes)
|
|
62
|
-
const labelFontWeightRaw = getVariableByName('avatar/label/fontWeight', modes)
|
|
54
|
+
const size = getVariableByName('avatar/size', modes);
|
|
55
|
+
const radiusRaw = getVariableByName('avatar/radius', modes);
|
|
56
|
+
const backgroundColor = getVariableByName('avatar/background', modes);
|
|
57
|
+
const borderColor = getVariableByName('avatar/border/color', modes);
|
|
58
|
+
const borderSize = getVariableByName('avatar/border/size', modes);
|
|
59
|
+
const labelColor = getVariableByName('avatar/label/color', modes);
|
|
60
|
+
const labelFontSize = getVariableByName('avatar/label/fontSize', modes);
|
|
61
|
+
const labelLineHeight = getVariableByName('avatar/label/lineHeight', modes);
|
|
62
|
+
const labelFontWeightRaw = getVariableByName('avatar/label/fontWeight', modes);
|
|
63
63
|
const labelFontWeight = typeof labelFontWeightRaw === 'number' ? labelFontWeightRaw.toString() : labelFontWeightRaw;
|
|
64
|
-
const labelFontFamily = getVariableByName('avatar/label/fontFamily', modes)
|
|
64
|
+
const labelFontFamily = getVariableByName('avatar/label/fontFamily', modes);
|
|
65
65
|
|
|
66
66
|
// 9999 is the design-token sentinel for "perfect circle"
|
|
67
67
|
const borderRadius = radiusRaw === 9999 ? size / 2 : radiusRaw;
|
|
@@ -13,15 +13,15 @@ function AvatarGroup({
|
|
|
13
13
|
style,
|
|
14
14
|
...rest
|
|
15
15
|
}) {
|
|
16
|
-
const gap = getVariableByName('avatarGroup/gap', modes)
|
|
17
|
-
const avatarSize = getVariableByName('avatar/size', modes)
|
|
18
|
-
const avatarRadius = getVariableByName('avatar/radius', modes)
|
|
19
|
-
const borderSize = getVariableByName('avatar/border/size', modes)
|
|
20
|
-
const borderColor = getVariableByName('avatar/border/color', modes)
|
|
21
|
-
const paddingLeft = getVariableByName('avatarGroup/padding/left', modes)
|
|
22
|
-
const paddingRight = getVariableByName('avatarGroup/padding/right', modes)
|
|
23
|
-
const paddingTop = getVariableByName('avatarGroup/padding/top', modes)
|
|
24
|
-
const paddingBottom = getVariableByName('avatarGroup/padding/bottom', modes)
|
|
16
|
+
const gap = getVariableByName('avatarGroup/gap', modes);
|
|
17
|
+
const avatarSize = getVariableByName('avatar/size', modes);
|
|
18
|
+
const avatarRadius = getVariableByName('avatar/radius', modes);
|
|
19
|
+
const borderSize = getVariableByName('avatar/border/size', modes);
|
|
20
|
+
const borderColor = getVariableByName('avatar/border/color', modes);
|
|
21
|
+
const paddingLeft = getVariableByName('avatarGroup/padding/left', modes);
|
|
22
|
+
const paddingRight = getVariableByName('avatarGroup/padding/right', modes);
|
|
23
|
+
const paddingTop = getVariableByName('avatarGroup/padding/top', modes);
|
|
24
|
+
const paddingBottom = getVariableByName('avatarGroup/padding/bottom', modes);
|
|
25
25
|
const validChildren = flattenChildren(children);
|
|
26
26
|
const totalChildren = validChildren.length;
|
|
27
27
|
|
|
@@ -29,20 +29,20 @@ function Badge({
|
|
|
29
29
|
// Resolve token values (fall back to sensible defaults). The glass type
|
|
30
30
|
// swaps the solid fill for a translucent overlay + white label, matching the
|
|
31
31
|
// Figma `badge/glass/*` tokens.
|
|
32
|
-
const backgroundColor = getVariableByName('badge/color/background', modes)
|
|
33
|
-
const glassBackground = getVariableByName('badge/glass/color/background', modes)
|
|
34
|
-
const glassLabelColor = getVariableByName('badge/glass/color/label', modes)
|
|
35
|
-
const labelColor = isGlass ? glassLabelColor : getVariableByName('badge/color/label', modes)
|
|
36
|
-
const fontSize = Number(getVariableByName('badge/label/fontSize', modes))
|
|
37
|
-
const fontFamily = getVariableByName('badge/fontFamily', modes)
|
|
38
|
-
const fontWeight = getVariableByName('badge/label/fontWeight', modes)
|
|
39
|
-
const paddingHorizontal = Number(getVariableByName('badge/padding/horizontal', modes))
|
|
40
|
-
const paddingVertical = Number(getVariableByName('badge/padding/vertical', modes))
|
|
41
|
-
const borderRadius = Number(getVariableByName('badge/radius', modes))
|
|
42
|
-
const lineHeight = Number(getVariableByName('badge/label/lineHeight', modes))
|
|
32
|
+
const backgroundColor = getVariableByName('badge/color/background', modes);
|
|
33
|
+
const glassBackground = getVariableByName('badge/glass/color/background', modes);
|
|
34
|
+
const glassLabelColor = getVariableByName('badge/glass/color/label', modes);
|
|
35
|
+
const labelColor = isGlass ? glassLabelColor : getVariableByName('badge/color/label', modes);
|
|
36
|
+
const fontSize = Number(getVariableByName('badge/label/fontSize', modes));
|
|
37
|
+
const fontFamily = getVariableByName('badge/fontFamily', modes);
|
|
38
|
+
const fontWeight = getVariableByName('badge/label/fontWeight', modes);
|
|
39
|
+
const paddingHorizontal = Number(getVariableByName('badge/padding/horizontal', modes));
|
|
40
|
+
const paddingVertical = Number(getVariableByName('badge/padding/vertical', modes));
|
|
41
|
+
const borderRadius = Number(getVariableByName('badge/radius', modes));
|
|
42
|
+
const lineHeight = Number(getVariableByName('badge/label/lineHeight', modes));
|
|
43
43
|
// Figma `blur/minimal` (px radius) -> GlassFill's 0–100 intensity scale, the
|
|
44
44
|
// same 1:1 mapping the merchandising card footer uses.
|
|
45
|
-
const blurIntensity = Math.max(0, Math.min(100, Math.round(Number(getVariableByName('blur/minimal', modes))
|
|
45
|
+
const blurIntensity = Math.max(0, Math.min(100, Math.round(Number(getVariableByName('blur/minimal', modes)))));
|
|
46
46
|
|
|
47
47
|
// Skeleton short-circuit. Size derived from the same tokens the loaded
|
|
48
48
|
// badge would use so the placeholder occupies the same box.
|