jfs-components 0.1.8 → 0.1.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +31 -0
- package/lib/commonjs/components/Accordion/Accordion.js +2 -1
- package/lib/commonjs/components/AccordionCheckbox/AccordionCheckbox.js +4 -3
- package/lib/commonjs/components/AccountCard/AccountCard.js +4 -3
- package/lib/commonjs/components/ActionFooter/ActionFooter.js +7 -24
- package/lib/commonjs/components/ActionTile/ActionTile.js +10 -10
- package/lib/commonjs/components/AllocationComparisonChart/AllocationComparisonChart.js +9 -6
- package/lib/commonjs/components/AmountInput/AmountInput.js +3 -3
- package/lib/commonjs/components/AreaLineChart/AreaLineChart.js +13 -9
- package/lib/commonjs/components/Attached/Attached.js +1 -1
- package/lib/commonjs/components/Avatar/Avatar.js +10 -10
- package/lib/commonjs/components/AvatarGroup/AvatarGroup.js +9 -9
- package/lib/commonjs/components/Badge/Badge.js +55 -16
- package/lib/commonjs/components/BenefitCard/BenefitCard.js +95 -21
- package/lib/commonjs/components/BottomNav/BottomNav.js +2 -2
- package/lib/commonjs/components/BottomNavItem/BottomNavItem.js +3 -3
- package/lib/commonjs/components/BrandChip/BrandChip.js +3 -3
- package/lib/commonjs/components/Button/Button.js +32 -19
- package/lib/commonjs/components/Card/Card.js +20 -20
- package/lib/commonjs/components/CardAdvisory/CardAdvisory.js +8 -7
- package/lib/commonjs/components/CardBankAccount/CardBankAccount.js +3 -2
- package/lib/commonjs/components/CardCTA/CardCTA.js +215 -45
- package/lib/commonjs/components/CardFeedback/CardFeedback.js +18 -18
- package/lib/commonjs/components/CardFinancialCondition/CardFinancialCondition.js +7 -7
- package/lib/commonjs/components/CardInsight/CardInsight.js +6 -3
- package/lib/commonjs/components/Carousel/Carousel.js +18 -12
- package/lib/commonjs/components/CarouselCardAccounts/CarouselCardAccounts.js +75 -0
- package/lib/commonjs/components/Checkbox/Checkbox.js +6 -13
- package/lib/commonjs/components/ChipGroup/ChipGroup.js +1 -1
- package/lib/commonjs/components/ChipSelect/ChipSelect.js +11 -11
- package/lib/commonjs/components/CircularProgressBar/CircularProgressBar.js +12 -8
- package/lib/commonjs/components/CircularProgressBarDoted/CircularProgressBarDoted.js +11 -10
- package/lib/commonjs/components/CircularRating/CircularRating.js +5 -4
- package/lib/commonjs/components/ClusterBubble/ClusterBubble.js +3 -2
- package/lib/commonjs/components/CompareTable/CompareTable.js +88 -59
- package/lib/commonjs/components/CoverageBarComparison/CoverageBarComparison.js +3 -2
- package/lib/commonjs/components/DebitCard/DebitCard.js +18 -18
- package/lib/commonjs/components/Disclaimer/Disclaimer.js +5 -5
- package/lib/commonjs/components/DonutChart/DonutChart.js +15 -14
- package/lib/commonjs/components/Drawer/Drawer.js +60 -60
- package/lib/commonjs/components/Dropdown/Dropdown.js +25 -25
- package/lib/commonjs/components/DropdownInput/DropdownInput.js +13 -12
- package/lib/commonjs/components/EmptyState/EmptyState.js +14 -14
- package/lib/commonjs/components/ExpandableCheckbox/ExpandableCheckbox.js +2 -1
- package/lib/commonjs/components/FilterBar/FilterBar.js +2 -2
- package/lib/commonjs/components/Form/Form.js +3 -3
- package/lib/commonjs/components/FormField/FormField.js +48 -8
- package/lib/commonjs/components/FullscreenModal/FullscreenModal.js +24 -24
- package/lib/commonjs/components/Gauge/Gauge.js +9 -9
- package/lib/commonjs/components/HoldingsCard/HoldingsCard.js +13 -12
- package/lib/commonjs/components/Icon/Icon.js +6 -6
- package/lib/commonjs/components/IconCapsule/IconCapsule.js +7 -7
- package/lib/commonjs/components/InputSearch/InputSearch.js +9 -9
- package/lib/commonjs/components/InstitutionBadge/InstitutionBadge.js +5 -4
- package/lib/commonjs/components/ListGroup/ListGroup.js +10 -9
- package/lib/commonjs/components/ListItem/ListItem.js +13 -12
- package/lib/commonjs/components/LottieIntroBlock/LottieIntroBlock.js +13 -13
- package/lib/commonjs/components/LottiePlayer/LottiePlayer.js +2 -2
- package/lib/commonjs/components/LottiePlayer/LottiePlayer.web.js +2 -2
- package/lib/commonjs/components/MediaCard/MediaCard.js +25 -23
- package/lib/commonjs/components/MessageField/MessageField.js +8 -8
- package/lib/commonjs/components/MetricLegendItem/MetricLegendItem.js +3 -2
- package/lib/commonjs/components/MoneyValue/MoneyValue.js +7 -7
- package/lib/commonjs/components/MonthlyStatusGrid/MonthlyStatusGrid.js +6 -3
- package/lib/commonjs/components/NavArrow/NavArrow.js +8 -8
- package/lib/commonjs/components/NoteInput/NoteInput.js +12 -12
- package/lib/commonjs/components/Nudge/Nudge.js +20 -20
- package/lib/commonjs/components/OTP/OTP.js +15 -15
- package/lib/commonjs/components/PageHero/PageHero.js +16 -16
- package/lib/commonjs/components/PaymentFeedback/PaymentFeedback.js +23 -23
- package/lib/commonjs/components/Popup/Popup.js +1 -1
- package/lib/commonjs/components/PoweredByLabel/PoweredByLabel.js +3 -2
- package/lib/commonjs/components/ProductMerchandisingCard/ProductMerchandisingCard.js +107 -33
- package/lib/commonjs/components/ProductOverview/ProductOverview.js +4 -3
- package/lib/commonjs/components/ProgressBadge/ProgressBadge.js +7 -7
- package/lib/commonjs/components/ProjectionMarker/ProjectionMarker.js +3 -2
- package/lib/commonjs/components/Radio/Radio.js +8 -8
- package/lib/commonjs/components/RechargeCard/RechargeCard.js +31 -31
- package/lib/commonjs/components/SavingsGoalSummary/SavingsGoalSummary.js +59 -12
- package/lib/commonjs/components/ScrollArea/ScrollArea.js +126 -0
- package/lib/commonjs/components/Section/Section.js +27 -26
- package/lib/commonjs/components/Slider/Slider.js +3 -2
- package/lib/commonjs/components/Stack/Stack.js +86 -0
- package/lib/commonjs/components/StatusHero/StatusHero.js +14 -14
- package/lib/commonjs/components/Stepper/Step.js +16 -16
- package/lib/commonjs/components/Stepper/StepLabel.js +16 -16
- package/lib/commonjs/components/Stepper/Stepper.js +3 -3
- package/lib/commonjs/components/SuggestiveSearch/SuggestiveSearch.js +20 -11
- package/lib/commonjs/components/SummaryTile/SummaryTile.js +3 -2
- package/lib/commonjs/components/SupportText/SupportText.js +6 -6
- package/lib/commonjs/components/SupportText/SupportTextIcon.js +2 -2
- package/lib/commonjs/components/Table/Table.js +324 -0
- package/lib/commonjs/components/Text/Text.js +15 -2
- package/lib/commonjs/components/TextInput/TextInput.js +23 -15
- package/lib/commonjs/components/TextSegment/TextSegment.js +15 -2
- package/lib/commonjs/components/ThreadHero/ThreadHero.js +21 -22
- package/lib/commonjs/components/Title/Title.js +39 -16
- package/lib/commonjs/components/Toast/Toast.js +18 -17
- package/lib/commonjs/components/Toggle/Toggle.js +3 -11
- package/lib/commonjs/components/Tooltip/Tooltip.js +12 -12
- package/lib/commonjs/components/TransactionBubble/TransactionBubble.js +15 -14
- package/lib/commonjs/components/TransactionDetails/TransactionDetails.js +10 -10
- package/lib/commonjs/components/TransactionStatus/TransactionStatus.js +12 -11
- package/lib/commonjs/components/UpiHandle/UpiHandle.js +17 -17
- package/lib/commonjs/components/index.js +58 -0
- package/lib/commonjs/design-tokens/Coin Variables-variables-full.json +1 -1
- package/lib/commonjs/design-tokens/figma-modes.generated.js +51 -42
- package/lib/commonjs/icons/components/Icon4g.js +19 -0
- package/lib/commonjs/icons/components/Icon4gltedata.js +19 -0
- package/lib/commonjs/icons/components/Icon5g.js +19 -0
- package/lib/commonjs/icons/components/Icon5gdoubleplus.js +19 -0
- package/lib/commonjs/icons/components/Icon5gplus.js +19 -0
- package/lib/commonjs/icons/components/IconAdblocker.js +19 -0
- package/lib/commonjs/icons/components/IconAdblockplus.js +19 -0
- package/lib/commonjs/icons/components/IconAnalytics.js +19 -0
- package/lib/commonjs/icons/components/IconAnalyticsdata.js +19 -0
- package/lib/commonjs/icons/components/IconAnalyticspiechart.js +19 -0
- package/lib/commonjs/icons/components/IconAnalyticspiecharttree.js +19 -0
- package/lib/commonjs/icons/components/IconAnalyticspiecharttwo.js +19 -0
- package/lib/commonjs/icons/components/IconCompoundinterest.js +19 -0
- package/lib/commonjs/icons/components/IconConsumptionaccounted.js +19 -0
- package/lib/commonjs/icons/components/IconConsumptionaverage.js +19 -0
- package/lib/commonjs/icons/components/IconConsumptionhigh.js +19 -0
- package/lib/commonjs/icons/components/IconConsumptionlow.js +19 -0
- package/lib/commonjs/icons/components/IconConsumptionunaccounted.js +19 -0
- package/lib/commonjs/icons/components/IconCsvdoc.js +19 -0
- package/lib/commonjs/icons/components/IconDatabase.js +19 -0
- package/lib/commonjs/icons/components/IconDigitalecosystem.js +19 -0
- package/lib/commonjs/icons/components/IconDigitalselfservice.js +19 -0
- package/lib/commonjs/icons/components/IconDistribution.js +19 -0
- package/lib/commonjs/icons/components/IconDocument.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentdoc.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentjpg.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentodt.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentpdf.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentpng.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentraw.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentrtf.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentsettings.js +19 -0
- package/lib/commonjs/icons/components/IconDocumenttif.js +19 -0
- package/lib/commonjs/icons/components/IconDocumenttxt.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentunknown.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentxls.js +19 -0
- package/lib/commonjs/icons/components/IconDocumentxlsx.js +19 -0
- package/lib/commonjs/icons/components/IconFilerequest.js +19 -0
- package/lib/commonjs/icons/components/IconFilesend.js +19 -0
- package/lib/commonjs/icons/components/IconFileshare.js +19 -0
- package/lib/commonjs/icons/components/IconFindinpage.js +19 -0
- package/lib/commonjs/icons/components/IconFolder.js +19 -0
- package/lib/commonjs/icons/components/IconFolderbookmarks.js +19 -0
- package/lib/commonjs/icons/components/IconFolderfavorites.js +19 -0
- package/lib/commonjs/icons/components/IconFolderlocked.js +19 -0
- package/lib/commonjs/icons/components/IconFoldermovefiles.js +19 -0
- package/lib/commonjs/icons/components/IconFolderpublic.js +19 -0
- package/lib/commonjs/icons/components/IconFolderrated.js +19 -0
- package/lib/commonjs/icons/components/IconFolderrequest.js +19 -0
- package/lib/commonjs/icons/components/IconForm.js +19 -0
- package/lib/commonjs/icons/components/IconFormadd.js +19 -0
- package/lib/commonjs/icons/components/IconForms.js +19 -0
- package/lib/commonjs/icons/components/IconGraphincreasing.js +19 -0
- package/lib/commonjs/icons/components/IconGraphlow.js +19 -0
- package/lib/commonjs/icons/components/IconGraphtable.js +19 -0
- package/lib/commonjs/icons/components/IconHealthreport.js +19 -0
- package/lib/commonjs/icons/components/IconHubmode.js +19 -0
- package/lib/commonjs/icons/components/IconInfrastructure.js +19 -0
- package/lib/commonjs/icons/components/IconInterestlow.js +19 -0
- package/lib/commonjs/icons/components/IconLte.js +19 -0
- package/lib/commonjs/icons/components/IconNetworkfuture.js +19 -0
- package/lib/commonjs/icons/components/IconPagesettings.js +19 -0
- package/lib/commonjs/icons/components/IconPptxdoc.js +19 -0
- package/lib/commonjs/icons/components/IconPreferrednumber.js +19 -0
- package/lib/commonjs/icons/components/IconPremiumnumber.js +19 -0
- package/lib/commonjs/icons/components/IconProjection.js +19 -0
- package/lib/commonjs/icons/components/IconRequest.js +19 -0
- package/lib/commonjs/icons/components/IconRoutestraffic.js +19 -0
- package/lib/commonjs/icons/components/IconTechnology.js +19 -0
- package/lib/commonjs/icons/components/IconVolte.js +19 -0
- package/lib/commonjs/icons/components/IconVonr.js +19 -0
- package/lib/commonjs/icons/components/IconVowifi.js +19 -0
- package/lib/commonjs/icons/components/IconVpndata.js +19 -0
- package/lib/commonjs/icons/components/index.js +803 -0
- package/lib/commonjs/icons/registry.js +2 -2
- package/lib/commonjs/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.js +11 -3
- package/lib/commonjs/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.js +8 -4
- package/lib/commonjs/utils/index.js +25 -0
- package/lib/commonjs/utils/react-utils.js +118 -0
- package/lib/commonjs/utils/shadow.js +200 -0
- package/lib/commonjs/utils/web-platform-utils.js +59 -0
- package/lib/module/components/Accordion/Accordion.js +3 -2
- package/lib/module/components/AccordionCheckbox/AccordionCheckbox.js +5 -4
- package/lib/module/components/AccountCard/AccountCard.js +5 -4
- package/lib/module/components/ActionFooter/ActionFooter.js +7 -24
- package/lib/module/components/ActionTile/ActionTile.js +10 -10
- package/lib/module/components/AllocationComparisonChart/AllocationComparisonChart.js +10 -7
- package/lib/module/components/AmountInput/AmountInput.js +3 -3
- package/lib/module/components/AreaLineChart/AreaLineChart.js +14 -10
- package/lib/module/components/Attached/Attached.js +1 -1
- package/lib/module/components/Avatar/Avatar.js +10 -10
- package/lib/module/components/AvatarGroup/AvatarGroup.js +9 -9
- package/lib/module/components/Badge/Badge.js +57 -18
- package/lib/module/components/BenefitCard/BenefitCard.js +95 -21
- package/lib/module/components/BottomNav/BottomNav.js +2 -2
- package/lib/module/components/BottomNavItem/BottomNavItem.js +3 -3
- package/lib/module/components/BrandChip/BrandChip.js +4 -4
- package/lib/module/components/Button/Button.js +32 -19
- package/lib/module/components/Card/Card.js +20 -20
- package/lib/module/components/CardAdvisory/CardAdvisory.js +9 -8
- package/lib/module/components/CardBankAccount/CardBankAccount.js +4 -3
- package/lib/module/components/CardCTA/CardCTA.js +216 -46
- package/lib/module/components/CardFeedback/CardFeedback.js +18 -18
- package/lib/module/components/CardFinancialCondition/CardFinancialCondition.js +7 -7
- package/lib/module/components/CardInsight/CardInsight.js +6 -3
- package/lib/module/components/Carousel/Carousel.js +18 -12
- package/lib/module/components/CarouselCardAccounts/CarouselCardAccounts.js +71 -0
- package/lib/module/components/Checkbox/Checkbox.js +2 -9
- package/lib/module/components/ChipGroup/ChipGroup.js +1 -1
- package/lib/module/components/ChipSelect/ChipSelect.js +11 -11
- package/lib/module/components/CircularProgressBar/CircularProgressBar.js +13 -9
- package/lib/module/components/CircularProgressBarDoted/CircularProgressBarDoted.js +12 -11
- package/lib/module/components/CircularRating/CircularRating.js +6 -5
- package/lib/module/components/ClusterBubble/ClusterBubble.js +4 -3
- package/lib/module/components/CompareTable/CompareTable.js +89 -60
- package/lib/module/components/CoverageBarComparison/CoverageBarComparison.js +4 -3
- package/lib/module/components/DebitCard/DebitCard.js +18 -18
- package/lib/module/components/Disclaimer/Disclaimer.js +5 -5
- package/lib/module/components/DonutChart/DonutChart.js +16 -15
- package/lib/module/components/Drawer/Drawer.js +60 -60
- package/lib/module/components/Dropdown/Dropdown.js +26 -26
- package/lib/module/components/DropdownInput/DropdownInput.js +14 -13
- package/lib/module/components/EmptyState/EmptyState.js +14 -14
- package/lib/module/components/ExpandableCheckbox/ExpandableCheckbox.js +2 -1
- package/lib/module/components/FilterBar/FilterBar.js +2 -2
- package/lib/module/components/Form/Form.js +3 -3
- package/lib/module/components/FormField/FormField.js +51 -11
- package/lib/module/components/FullscreenModal/FullscreenModal.js +24 -24
- package/lib/module/components/Gauge/Gauge.js +9 -9
- package/lib/module/components/HoldingsCard/HoldingsCard.js +14 -13
- package/lib/module/components/Icon/Icon.js +6 -6
- package/lib/module/components/IconCapsule/IconCapsule.js +7 -7
- package/lib/module/components/InputSearch/InputSearch.js +9 -9
- package/lib/module/components/InstitutionBadge/InstitutionBadge.js +6 -5
- package/lib/module/components/ListGroup/ListGroup.js +11 -10
- package/lib/module/components/ListItem/ListItem.js +14 -13
- package/lib/module/components/LottieIntroBlock/LottieIntroBlock.js +13 -13
- package/lib/module/components/LottiePlayer/LottiePlayer.js +2 -2
- package/lib/module/components/LottiePlayer/LottiePlayer.web.js +2 -2
- package/lib/module/components/MediaCard/MediaCard.js +25 -23
- package/lib/module/components/MessageField/MessageField.js +8 -8
- package/lib/module/components/MetricLegendItem/MetricLegendItem.js +4 -3
- package/lib/module/components/MoneyValue/MoneyValue.js +7 -7
- package/lib/module/components/MonthlyStatusGrid/MonthlyStatusGrid.js +7 -4
- package/lib/module/components/NavArrow/NavArrow.js +8 -8
- package/lib/module/components/NoteInput/NoteInput.js +12 -12
- package/lib/module/components/Nudge/Nudge.js +20 -20
- package/lib/module/components/OTP/OTP.js +15 -15
- package/lib/module/components/PageHero/PageHero.js +16 -16
- package/lib/module/components/PaymentFeedback/PaymentFeedback.js +23 -23
- package/lib/module/components/Popup/Popup.js +1 -1
- package/lib/module/components/PoweredByLabel/PoweredByLabel.js +4 -3
- package/lib/module/components/ProductMerchandisingCard/ProductMerchandisingCard.js +109 -35
- package/lib/module/components/ProductOverview/ProductOverview.js +5 -4
- package/lib/module/components/ProgressBadge/ProgressBadge.js +8 -8
- package/lib/module/components/ProjectionMarker/ProjectionMarker.js +4 -3
- package/lib/module/components/Radio/Radio.js +9 -9
- package/lib/module/components/RechargeCard/RechargeCard.js +31 -31
- package/lib/module/components/SavingsGoalSummary/SavingsGoalSummary.js +60 -13
- package/lib/module/components/ScrollArea/ScrollArea.js +121 -0
- package/lib/module/components/Section/Section.js +28 -27
- package/lib/module/components/Slider/Slider.js +4 -3
- package/lib/module/components/Stack/Stack.js +81 -0
- package/lib/module/components/StatusHero/StatusHero.js +14 -14
- package/lib/module/components/Stepper/Step.js +16 -16
- package/lib/module/components/Stepper/StepLabel.js +16 -16
- package/lib/module/components/Stepper/Stepper.js +3 -3
- package/lib/module/components/SuggestiveSearch/SuggestiveSearch.js +20 -11
- package/lib/module/components/SummaryTile/SummaryTile.js +4 -3
- package/lib/module/components/SupportText/SupportText.js +6 -6
- package/lib/module/components/SupportText/SupportTextIcon.js +2 -2
- package/lib/module/components/Table/Table.js +315 -0
- package/lib/module/components/Text/Text.js +16 -3
- package/lib/module/components/TextInput/TextInput.js +23 -15
- package/lib/module/components/TextSegment/TextSegment.js +16 -3
- package/lib/module/components/ThreadHero/ThreadHero.js +22 -23
- package/lib/module/components/Title/Title.js +40 -17
- package/lib/module/components/Toast/Toast.js +19 -18
- package/lib/module/components/Toggle/Toggle.js +4 -12
- package/lib/module/components/Tooltip/Tooltip.js +12 -12
- package/lib/module/components/TransactionBubble/TransactionBubble.js +16 -15
- package/lib/module/components/TransactionDetails/TransactionDetails.js +10 -10
- package/lib/module/components/TransactionStatus/TransactionStatus.js +13 -12
- package/lib/module/components/UpiHandle/UpiHandle.js +18 -18
- package/lib/module/components/index.js +4 -0
- package/lib/module/design-tokens/Coin Variables-variables-full.json +1 -1
- package/lib/module/design-tokens/figma-modes.generated.js +51 -42
- package/lib/module/icons/components/Icon4g.js +12 -0
- package/lib/module/icons/components/Icon4gltedata.js +12 -0
- package/lib/module/icons/components/Icon5g.js +12 -0
- package/lib/module/icons/components/Icon5gdoubleplus.js +12 -0
- package/lib/module/icons/components/Icon5gplus.js +12 -0
- package/lib/module/icons/components/IconAdblocker.js +12 -0
- package/lib/module/icons/components/IconAdblockplus.js +12 -0
- package/lib/module/icons/components/IconAnalytics.js +12 -0
- package/lib/module/icons/components/IconAnalyticsdata.js +12 -0
- package/lib/module/icons/components/IconAnalyticspiechart.js +12 -0
- package/lib/module/icons/components/IconAnalyticspiecharttree.js +12 -0
- package/lib/module/icons/components/IconAnalyticspiecharttwo.js +12 -0
- package/lib/module/icons/components/IconCompoundinterest.js +12 -0
- package/lib/module/icons/components/IconConsumptionaccounted.js +12 -0
- package/lib/module/icons/components/IconConsumptionaverage.js +12 -0
- package/lib/module/icons/components/IconConsumptionhigh.js +12 -0
- package/lib/module/icons/components/IconConsumptionlow.js +12 -0
- package/lib/module/icons/components/IconConsumptionunaccounted.js +12 -0
- package/lib/module/icons/components/IconCsvdoc.js +12 -0
- package/lib/module/icons/components/IconDatabase.js +12 -0
- package/lib/module/icons/components/IconDigitalecosystem.js +12 -0
- package/lib/module/icons/components/IconDigitalselfservice.js +12 -0
- package/lib/module/icons/components/IconDistribution.js +12 -0
- package/lib/module/icons/components/IconDocument.js +12 -0
- package/lib/module/icons/components/IconDocumentdoc.js +12 -0
- package/lib/module/icons/components/IconDocumentjpg.js +12 -0
- package/lib/module/icons/components/IconDocumentodt.js +12 -0
- package/lib/module/icons/components/IconDocumentpdf.js +12 -0
- package/lib/module/icons/components/IconDocumentpng.js +12 -0
- package/lib/module/icons/components/IconDocumentraw.js +12 -0
- package/lib/module/icons/components/IconDocumentrtf.js +12 -0
- package/lib/module/icons/components/IconDocumentsettings.js +12 -0
- package/lib/module/icons/components/IconDocumenttif.js +12 -0
- package/lib/module/icons/components/IconDocumenttxt.js +12 -0
- package/lib/module/icons/components/IconDocumentunknown.js +12 -0
- package/lib/module/icons/components/IconDocumentxls.js +12 -0
- package/lib/module/icons/components/IconDocumentxlsx.js +12 -0
- package/lib/module/icons/components/IconFilerequest.js +12 -0
- package/lib/module/icons/components/IconFilesend.js +12 -0
- package/lib/module/icons/components/IconFileshare.js +12 -0
- package/lib/module/icons/components/IconFindinpage.js +12 -0
- package/lib/module/icons/components/IconFolder.js +12 -0
- package/lib/module/icons/components/IconFolderbookmarks.js +12 -0
- package/lib/module/icons/components/IconFolderfavorites.js +12 -0
- package/lib/module/icons/components/IconFolderlocked.js +12 -0
- package/lib/module/icons/components/IconFoldermovefiles.js +12 -0
- package/lib/module/icons/components/IconFolderpublic.js +12 -0
- package/lib/module/icons/components/IconFolderrated.js +12 -0
- package/lib/module/icons/components/IconFolderrequest.js +12 -0
- package/lib/module/icons/components/IconForm.js +12 -0
- package/lib/module/icons/components/IconFormadd.js +12 -0
- package/lib/module/icons/components/IconForms.js +12 -0
- package/lib/module/icons/components/IconGraphincreasing.js +12 -0
- package/lib/module/icons/components/IconGraphlow.js +12 -0
- package/lib/module/icons/components/IconGraphtable.js +12 -0
- package/lib/module/icons/components/IconHealthreport.js +12 -0
- package/lib/module/icons/components/IconHubmode.js +12 -0
- package/lib/module/icons/components/IconInfrastructure.js +12 -0
- package/lib/module/icons/components/IconInterestlow.js +12 -0
- package/lib/module/icons/components/IconLte.js +12 -0
- package/lib/module/icons/components/IconNetworkfuture.js +12 -0
- package/lib/module/icons/components/IconPagesettings.js +12 -0
- package/lib/module/icons/components/IconPptxdoc.js +12 -0
- package/lib/module/icons/components/IconPreferrednumber.js +12 -0
- package/lib/module/icons/components/IconPremiumnumber.js +12 -0
- package/lib/module/icons/components/IconProjection.js +12 -0
- package/lib/module/icons/components/IconRequest.js +12 -0
- package/lib/module/icons/components/IconRoutestraffic.js +12 -0
- package/lib/module/icons/components/IconTechnology.js +12 -0
- package/lib/module/icons/components/IconVolte.js +12 -0
- package/lib/module/icons/components/IconVonr.js +12 -0
- package/lib/module/icons/components/IconVowifi.js +12 -0
- package/lib/module/icons/components/IconVpndata.js +12 -0
- package/lib/module/icons/components/index.js +73 -0
- package/lib/module/icons/registry.js +2 -2
- package/lib/module/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.js +11 -3
- package/lib/module/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.js +8 -4
- package/lib/module/utils/index.js +2 -1
- package/lib/module/utils/react-utils.js +115 -0
- package/lib/module/utils/shadow.js +194 -0
- package/lib/module/utils/web-platform-utils.js +58 -0
- package/lib/typescript/src/components/Accordion/Accordion.d.ts +7 -1
- package/lib/typescript/src/components/AccordionCheckbox/AccordionCheckbox.d.ts +7 -1
- package/lib/typescript/src/components/AccountCard/AccountCard.d.ts +7 -1
- package/lib/typescript/src/components/AllocationComparisonChart/AllocationComparisonChart.d.ts +7 -1
- package/lib/typescript/src/components/AreaLineChart/AreaLineChart.d.ts +8 -1
- package/lib/typescript/src/components/Badge/Badge.d.ts +32 -2
- package/lib/typescript/src/components/BenefitCard/BenefitCard.d.ts +33 -4
- package/lib/typescript/src/components/BrandChip/BrandChip.d.ts +7 -1
- package/lib/typescript/src/components/Button/Button.d.ts +7 -1
- package/lib/typescript/src/components/CardAdvisory/CardAdvisory.d.ts +7 -1
- package/lib/typescript/src/components/CardBankAccount/CardBankAccount.d.ts +7 -1
- package/lib/typescript/src/components/CardCTA/CardCTA.d.ts +27 -5
- package/lib/typescript/src/components/Carousel/Carousel.d.ts +11 -1
- package/lib/typescript/src/components/CarouselCardAccounts/CarouselCardAccounts.d.ts +57 -0
- package/lib/typescript/src/components/CircularProgressBar/CircularProgressBar.d.ts +7 -1
- package/lib/typescript/src/components/CircularProgressBarDoted/CircularProgressBarDoted.d.ts +7 -1
- package/lib/typescript/src/components/CircularRating/CircularRating.d.ts +7 -1
- package/lib/typescript/src/components/ClusterBubble/ClusterBubble.d.ts +7 -1
- package/lib/typescript/src/components/CompareTable/CompareTable.d.ts +7 -1
- package/lib/typescript/src/components/CoverageBarComparison/CoverageBarComparison.d.ts +7 -1
- package/lib/typescript/src/components/DonutChart/DonutChart.d.ts +7 -1
- package/lib/typescript/src/components/Dropdown/Dropdown.d.ts +7 -1
- package/lib/typescript/src/components/DropdownInput/DropdownInput.d.ts +6 -0
- package/lib/typescript/src/components/ExpandableCheckbox/ExpandableCheckbox.d.ts +7 -1
- package/lib/typescript/src/components/HoldingsCard/HoldingsCard.d.ts +7 -1
- package/lib/typescript/src/components/InstitutionBadge/InstitutionBadge.d.ts +7 -1
- package/lib/typescript/src/components/ListGroup/ListGroup.d.ts +7 -1
- package/lib/typescript/src/components/ListItem/ListItem.d.ts +7 -1
- package/lib/typescript/src/components/MetricLegendItem/MetricLegendItem.d.ts +7 -1
- package/lib/typescript/src/components/MonthlyStatusGrid/MonthlyStatusGrid.d.ts +14 -2
- package/lib/typescript/src/components/PoweredByLabel/PoweredByLabel.d.ts +7 -1
- package/lib/typescript/src/components/ProductMerchandisingCard/ProductMerchandisingCard.d.ts +7 -1
- package/lib/typescript/src/components/ProductOverview/ProductOverview.d.ts +7 -1
- package/lib/typescript/src/components/ProgressBadge/ProgressBadge.d.ts +7 -1
- package/lib/typescript/src/components/ProjectionMarker/ProjectionMarker.d.ts +7 -1
- package/lib/typescript/src/components/SavingsGoalSummary/SavingsGoalSummary.d.ts +11 -1
- package/lib/typescript/src/components/ScrollArea/ScrollArea.d.ts +77 -0
- package/lib/typescript/src/components/Section/Section.d.ts +7 -1
- package/lib/typescript/src/components/Slider/Slider.d.ts +6 -0
- package/lib/typescript/src/components/Stack/Stack.d.ts +81 -0
- package/lib/typescript/src/components/SummaryTile/SummaryTile.d.ts +7 -1
- package/lib/typescript/src/components/Table/Table.d.ts +139 -0
- package/lib/typescript/src/components/Text/Text.d.ts +16 -1
- package/lib/typescript/src/components/TextSegment/TextSegment.d.ts +16 -1
- package/lib/typescript/src/components/ThreadHero/ThreadHero.d.ts +7 -1
- package/lib/typescript/src/components/Title/Title.d.ts +17 -1
- package/lib/typescript/src/components/Toast/Toast.d.ts +7 -1
- package/lib/typescript/src/components/TransactionBubble/TransactionBubble.d.ts +7 -1
- package/lib/typescript/src/components/TransactionStatus/TransactionStatus.d.ts +7 -1
- package/lib/typescript/src/components/UpiHandle/UpiHandle.d.ts +7 -1
- package/lib/typescript/src/components/index.d.ts +6 -2
- package/lib/typescript/src/design-tokens/figma-modes.generated.d.ts +23 -15
- package/lib/typescript/src/icons/components/Icon4g.d.ts +3 -0
- package/lib/typescript/src/icons/components/Icon4gltedata.d.ts +3 -0
- package/lib/typescript/src/icons/components/Icon5g.d.ts +3 -0
- package/lib/typescript/src/icons/components/Icon5gdoubleplus.d.ts +3 -0
- package/lib/typescript/src/icons/components/Icon5gplus.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAdblocker.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAdblockplus.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAnalytics.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAnalyticsdata.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAnalyticspiechart.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAnalyticspiecharttree.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconAnalyticspiecharttwo.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconCompoundinterest.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconConsumptionaccounted.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconConsumptionaverage.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconConsumptionhigh.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconConsumptionlow.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconConsumptionunaccounted.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconCsvdoc.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDatabase.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDigitalecosystem.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDigitalselfservice.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDistribution.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocument.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentdoc.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentjpg.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentodt.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentpdf.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentpng.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentraw.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentrtf.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentsettings.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumenttif.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumenttxt.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentunknown.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentxls.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconDocumentxlsx.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFilerequest.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFilesend.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFileshare.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFindinpage.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolder.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderbookmarks.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderfavorites.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderlocked.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFoldermovefiles.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderpublic.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderrated.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFolderrequest.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconForm.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconFormadd.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconForms.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconGraphincreasing.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconGraphlow.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconGraphtable.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconHealthreport.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconHubmode.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconInfrastructure.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconInterestlow.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconLte.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconNetworkfuture.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconPagesettings.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconPptxdoc.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconPreferrednumber.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconPremiumnumber.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconProjection.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconRequest.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconRoutestraffic.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconTechnology.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconVolte.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconVonr.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconVowifi.d.ts +3 -0
- package/lib/typescript/src/icons/components/IconVpndata.d.ts +3 -0
- package/lib/typescript/src/icons/components/index.d.ts +73 -0
- package/lib/typescript/src/icons/registry.d.ts +1 -1
- package/lib/typescript/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.d.ts +31 -3
- package/lib/typescript/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.d.ts +18 -2
- package/lib/typescript/src/utils/index.d.ts +2 -0
- package/lib/typescript/src/utils/react-utils.d.ts +76 -0
- package/lib/typescript/src/utils/shadow.d.ts +72 -0
- package/lib/typescript/src/utils/web-platform-utils.d.ts +36 -0
- package/package.json +2 -1
- package/src/components/Accordion/Accordion.tsx +9 -2
- package/src/components/AccordionCheckbox/AccordionCheckbox.tsx +10 -3
- package/src/components/AccountCard/AccountCard.tsx +10 -3
- package/src/components/ActionFooter/ActionFooter.tsx +8 -26
- package/src/components/ActionTile/ActionTile.tsx +10 -10
- package/src/components/AllocationComparisonChart/AllocationComparisonChart.tsx +14 -4
- package/src/components/AmountInput/AmountInput.tsx +3 -3
- package/src/components/AreaLineChart/AreaLineChart.tsx +17 -7
- package/src/components/Attached/Attached.tsx +1 -1
- package/src/components/Avatar/Avatar.tsx +10 -10
- package/src/components/AvatarGroup/AvatarGroup.tsx +9 -9
- package/src/components/Badge/Badge.tsx +86 -17
- package/src/components/BenefitCard/BenefitCard.tsx +120 -27
- package/src/components/BottomNav/BottomNav.tsx +2 -2
- package/src/components/BottomNavItem/BottomNavItem.tsx +3 -3
- package/src/components/BrandChip/BrandChip.tsx +9 -3
- package/src/components/Button/Button.tsx +36 -19
- package/src/components/Card/Card.tsx +20 -20
- package/src/components/CardAdvisory/CardAdvisory.tsx +15 -8
- package/src/components/CardBankAccount/CardBankAccount.tsx +9 -2
- package/src/components/CardCTA/CardCTA.tsx +237 -64
- package/src/components/CardFeedback/CardFeedback.tsx +18 -18
- package/src/components/CardFinancialCondition/CardFinancialCondition.tsx +7 -10
- package/src/components/CardInsight/CardInsight.tsx +8 -4
- package/src/components/Carousel/Carousel.tsx +29 -12
- package/src/components/CarouselCardAccounts/CarouselCardAccounts.tsx +113 -0
- package/src/components/Checkbox/Checkbox.tsx +2 -8
- package/src/components/ChipGroup/ChipGroup.tsx +1 -1
- package/src/components/ChipSelect/ChipSelect.tsx +11 -11
- package/src/components/CircularProgressBar/CircularProgressBar.tsx +19 -9
- package/src/components/CircularProgressBarDoted/CircularProgressBarDoted.tsx +18 -11
- package/src/components/CircularRating/CircularRating.tsx +12 -5
- package/src/components/ClusterBubble/ClusterBubble.tsx +9 -2
- package/src/components/CompareTable/CompareTable.tsx +114 -66
- package/src/components/CoverageBarComparison/CoverageBarComparison.tsx +9 -2
- package/src/components/DebitCard/DebitCard.tsx +22 -22
- package/src/components/Disclaimer/Disclaimer.tsx +5 -5
- package/src/components/DonutChart/DonutChart.tsx +21 -48
- package/src/components/Drawer/Drawer.tsx +80 -71
- package/src/components/Dropdown/Dropdown.tsx +32 -30
- package/src/components/DropdownInput/DropdownInput.tsx +19 -19
- package/src/components/EmptyState/EmptyState.tsx +14 -14
- package/src/components/ExpandableCheckbox/ExpandableCheckbox.tsx +8 -1
- package/src/components/FilterBar/FilterBar.tsx +2 -2
- package/src/components/Form/Form.tsx +3 -3
- package/src/components/FormField/FormField.tsx +55 -15
- package/src/components/FullscreenModal/FullscreenModal.tsx +24 -24
- package/src/components/Gauge/Gauge.tsx +9 -9
- package/src/components/HoldingsCard/HoldingsCard.tsx +19 -12
- package/src/components/Icon/Icon.tsx +6 -6
- package/src/components/IconCapsule/IconCapsule.tsx +7 -7
- package/src/components/InputSearch/InputSearch.tsx +9 -9
- package/src/components/InstitutionBadge/InstitutionBadge.tsx +12 -8
- package/src/components/ListGroup/ListGroup.tsx +17 -10
- package/src/components/ListItem/ListItem.tsx +20 -13
- package/src/components/LottieIntroBlock/LottieIntroBlock.tsx +13 -16
- package/src/components/LottiePlayer/LottiePlayer.tsx +2 -2
- package/src/components/LottiePlayer/LottiePlayer.web.tsx +2 -2
- package/src/components/MediaCard/MediaCard.tsx +23 -23
- package/src/components/MessageField/MessageField.tsx +8 -16
- package/src/components/MetricLegendItem/MetricLegendItem.tsx +9 -2
- package/src/components/MoneyValue/MoneyValue.tsx +7 -7
- package/src/components/MonthlyStatusGrid/MonthlyStatusGrid.tsx +17 -2
- package/src/components/NavArrow/NavArrow.tsx +8 -8
- package/src/components/NoteInput/NoteInput.tsx +12 -12
- package/src/components/Nudge/Nudge.tsx +20 -20
- package/src/components/OTP/OTP.tsx +16 -16
- package/src/components/PageHero/PageHero.tsx +16 -16
- package/src/components/PaymentFeedback/PaymentFeedback.tsx +27 -27
- package/src/components/Popup/Popup.tsx +1 -1
- package/src/components/PoweredByLabel/PoweredByLabel.tsx +9 -2
- package/src/components/ProductMerchandisingCard/ProductMerchandisingCard.tsx +104 -37
- package/src/components/ProductOverview/ProductOverview.tsx +10 -3
- package/src/components/ProgressBadge/ProgressBadge.tsx +14 -8
- package/src/components/ProjectionMarker/ProjectionMarker.tsx +9 -2
- package/src/components/Radio/Radio.tsx +8 -9
- package/src/components/RechargeCard/RechargeCard.tsx +31 -31
- package/src/components/SavingsGoalSummary/SavingsGoalSummary.tsx +105 -13
- package/src/components/ScrollArea/ScrollArea.tsx +200 -0
- package/src/components/Section/Section.tsx +36 -29
- package/src/components/Slider/Slider.tsx +9 -2
- package/src/components/Stack/Stack.tsx +131 -0
- package/src/components/StatusHero/StatusHero.tsx +14 -14
- package/src/components/Stepper/Step.tsx +16 -18
- package/src/components/Stepper/StepLabel.tsx +16 -27
- package/src/components/Stepper/Stepper.tsx +3 -4
- package/src/components/SuggestiveSearch/SuggestiveSearch.tsx +20 -21
- package/src/components/SummaryTile/SummaryTile.tsx +9 -2
- package/src/components/SupportText/SupportText.tsx +6 -6
- package/src/components/SupportText/SupportTextIcon.tsx +2 -2
- package/src/components/Table/Table.tsx +449 -0
- package/src/components/Text/Text.tsx +28 -3
- package/src/components/TextInput/TextInput.tsx +21 -15
- package/src/components/TextSegment/TextSegment.tsx +27 -2
- package/src/components/ThreadHero/ThreadHero.tsx +27 -20
- package/src/components/Title/Title.tsx +50 -17
- package/src/components/Toast/Toast.tsx +24 -17
- package/src/components/Toggle/Toggle.tsx +5 -10
- package/src/components/Tooltip/Tooltip.tsx +12 -12
- package/src/components/TransactionBubble/TransactionBubble.tsx +22 -15
- package/src/components/TransactionDetails/TransactionDetails.tsx +10 -10
- package/src/components/TransactionStatus/TransactionStatus.tsx +18 -11
- package/src/components/UpiHandle/UpiHandle.tsx +24 -18
- package/src/components/index.ts +25 -2
- package/src/design-tokens/Coin Variables-variables-full.json +1 -1
- package/src/design-tokens/figma-modes.generated.ts +51 -42
- package/src/icons/components/Icon4g.tsx +11 -0
- package/src/icons/components/Icon4gltedata.tsx +11 -0
- package/src/icons/components/Icon5g.tsx +11 -0
- package/src/icons/components/Icon5gdoubleplus.tsx +11 -0
- package/src/icons/components/Icon5gplus.tsx +11 -0
- package/src/icons/components/IconAdblocker.tsx +11 -0
- package/src/icons/components/IconAdblockplus.tsx +11 -0
- package/src/icons/components/IconAnalytics.tsx +11 -0
- package/src/icons/components/IconAnalyticsdata.tsx +11 -0
- package/src/icons/components/IconAnalyticspiechart.tsx +11 -0
- package/src/icons/components/IconAnalyticspiecharttree.tsx +11 -0
- package/src/icons/components/IconAnalyticspiecharttwo.tsx +11 -0
- package/src/icons/components/IconCompoundinterest.tsx +11 -0
- package/src/icons/components/IconConsumptionaccounted.tsx +11 -0
- package/src/icons/components/IconConsumptionaverage.tsx +11 -0
- package/src/icons/components/IconConsumptionhigh.tsx +11 -0
- package/src/icons/components/IconConsumptionlow.tsx +11 -0
- package/src/icons/components/IconConsumptionunaccounted.tsx +11 -0
- package/src/icons/components/IconCsvdoc.tsx +11 -0
- package/src/icons/components/IconDatabase.tsx +11 -0
- package/src/icons/components/IconDigitalecosystem.tsx +11 -0
- package/src/icons/components/IconDigitalselfservice.tsx +11 -0
- package/src/icons/components/IconDistribution.tsx +11 -0
- package/src/icons/components/IconDocument.tsx +11 -0
- package/src/icons/components/IconDocumentdoc.tsx +11 -0
- package/src/icons/components/IconDocumentjpg.tsx +11 -0
- package/src/icons/components/IconDocumentodt.tsx +11 -0
- package/src/icons/components/IconDocumentpdf.tsx +11 -0
- package/src/icons/components/IconDocumentpng.tsx +11 -0
- package/src/icons/components/IconDocumentraw.tsx +11 -0
- package/src/icons/components/IconDocumentrtf.tsx +11 -0
- package/src/icons/components/IconDocumentsettings.tsx +11 -0
- package/src/icons/components/IconDocumenttif.tsx +11 -0
- package/src/icons/components/IconDocumenttxt.tsx +11 -0
- package/src/icons/components/IconDocumentunknown.tsx +11 -0
- package/src/icons/components/IconDocumentxls.tsx +11 -0
- package/src/icons/components/IconDocumentxlsx.tsx +11 -0
- package/src/icons/components/IconFilerequest.tsx +11 -0
- package/src/icons/components/IconFilesend.tsx +11 -0
- package/src/icons/components/IconFileshare.tsx +11 -0
- package/src/icons/components/IconFindinpage.tsx +11 -0
- package/src/icons/components/IconFolder.tsx +11 -0
- package/src/icons/components/IconFolderbookmarks.tsx +11 -0
- package/src/icons/components/IconFolderfavorites.tsx +11 -0
- package/src/icons/components/IconFolderlocked.tsx +11 -0
- package/src/icons/components/IconFoldermovefiles.tsx +11 -0
- package/src/icons/components/IconFolderpublic.tsx +11 -0
- package/src/icons/components/IconFolderrated.tsx +11 -0
- package/src/icons/components/IconFolderrequest.tsx +11 -0
- package/src/icons/components/IconForm.tsx +11 -0
- package/src/icons/components/IconFormadd.tsx +11 -0
- package/src/icons/components/IconForms.tsx +11 -0
- package/src/icons/components/IconGraphincreasing.tsx +11 -0
- package/src/icons/components/IconGraphlow.tsx +11 -0
- package/src/icons/components/IconGraphtable.tsx +11 -0
- package/src/icons/components/IconHealthreport.tsx +11 -0
- package/src/icons/components/IconHubmode.tsx +11 -0
- package/src/icons/components/IconInfrastructure.tsx +11 -0
- package/src/icons/components/IconInterestlow.tsx +11 -0
- package/src/icons/components/IconLte.tsx +11 -0
- package/src/icons/components/IconNetworkfuture.tsx +11 -0
- package/src/icons/components/IconPagesettings.tsx +11 -0
- package/src/icons/components/IconPptxdoc.tsx +11 -0
- package/src/icons/components/IconPreferrednumber.tsx +11 -0
- package/src/icons/components/IconPremiumnumber.tsx +11 -0
- package/src/icons/components/IconProjection.tsx +11 -0
- package/src/icons/components/IconRequest.tsx +11 -0
- package/src/icons/components/IconRoutestraffic.tsx +11 -0
- package/src/icons/components/IconTechnology.tsx +11 -0
- package/src/icons/components/IconVolte.tsx +11 -0
- package/src/icons/components/IconVonr.tsx +11 -0
- package/src/icons/components/IconVowifi.tsx +11 -0
- package/src/icons/components/IconVpndata.tsx +11 -0
- package/src/icons/components/index.ts +73 -0
- package/src/icons/registry.ts +293 -1
- package/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.tsx +32 -3
- package/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.tsx +25 -4
- package/src/utils/index.ts +2 -0
- package/src/utils/react-utils.ts +132 -0
- package/src/utils/shadow.ts +219 -0
- package/src/utils/web-platform-utils.ts +68 -0
- package/lib/commonjs/components/MediaCard/GlassFill.js +0 -62
- package/lib/commonjs/components/MediaCard/GlassFill.web.js +0 -48
- package/lib/module/components/MediaCard/GlassFill.js +0 -57
- package/lib/module/components/MediaCard/GlassFill.web.js +0 -43
- package/lib/typescript/src/components/MediaCard/GlassFill.d.ts +0 -47
- package/lib/typescript/src/components/MediaCard/GlassFill.web.d.ts +0 -20
- package/src/components/MediaCard/GlassFill.tsx +0 -89
- package/src/components/MediaCard/GlassFill.web.tsx +0 -53
|
@@ -4,7 +4,8 @@ import React, { useCallback, useMemo, useState } from 'react';
|
|
|
4
4
|
import { Platform, Pressable, ScrollView, Text, View } from 'react-native';
|
|
5
5
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
6
6
|
import { useTokens } from '../../design-tokens/JFSThemeProvider';
|
|
7
|
-
import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils';
|
|
7
|
+
import { EMPTY_MODES, cloneChildrenWithModes, resolveTruncation } from '../../utils/react-utils';
|
|
8
|
+
import { boxShadow } from '../../utils/shadow';
|
|
8
9
|
import Icon from '../../icons/Icon';
|
|
9
10
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
11
|
const IS_WEB = Platform.OS === 'web';
|
|
@@ -21,17 +22,17 @@ function useDropdownItemTokens(modes) {
|
|
|
21
22
|
const idleBackground = getVariableByName('dropdownItem/background', {
|
|
22
23
|
...modes,
|
|
23
24
|
'Dropdown Item State': 'Idle'
|
|
24
|
-
})
|
|
25
|
+
});
|
|
25
26
|
const selectedBackground = getVariableByName('dropdownItem/background', {
|
|
26
27
|
...modes,
|
|
27
28
|
'Dropdown Item State': 'Selected'
|
|
28
|
-
})
|
|
29
|
-
const foreground = getVariableByName('dropdownItem/foreground', modes)
|
|
30
|
-
const fontFamily = getVariableByName('dropdownItem/fontFamily', modes)
|
|
31
|
-
const fontSize = parseInt(getVariableByName('dropdownItem/fontSize', modes), 10)
|
|
32
|
-
const fontWeight = getVariableByName('dropdownItem/fontWeight', modes)
|
|
33
|
-
const lineHeight = parseInt(getVariableByName('dropdownItem/lineHeight', modes), 10)
|
|
34
|
-
const gap = parseInt(getVariableByName('dropdownItem/gap', modes), 10)
|
|
29
|
+
});
|
|
30
|
+
const foreground = getVariableByName('dropdownItem/foreground', modes);
|
|
31
|
+
const fontFamily = getVariableByName('dropdownItem/fontFamily', modes);
|
|
32
|
+
const fontSize = parseInt(getVariableByName('dropdownItem/fontSize', modes), 10);
|
|
33
|
+
const fontWeight = getVariableByName('dropdownItem/fontWeight', modes);
|
|
34
|
+
const lineHeight = parseInt(getVariableByName('dropdownItem/lineHeight', modes), 10);
|
|
35
|
+
const gap = parseInt(getVariableByName('dropdownItem/gap', modes), 10);
|
|
35
36
|
const paddingHorizontal = parseInt(getVariableByName('dropdownItem/padding/horizontal', modes), 10) || 12;
|
|
36
37
|
const paddingVertical = parseInt(getVariableByName('dropdownItem/padding/vertical', modes), 10) || 12;
|
|
37
38
|
return {
|
|
@@ -61,7 +62,8 @@ export function DropdownItem({
|
|
|
61
62
|
style,
|
|
62
63
|
labelStyle,
|
|
63
64
|
accessibilityLabel,
|
|
64
|
-
accessibilityHint
|
|
65
|
+
accessibilityHint,
|
|
66
|
+
disableTruncation
|
|
65
67
|
}) {
|
|
66
68
|
const {
|
|
67
69
|
modes: globalModes
|
|
@@ -130,7 +132,7 @@ export function DropdownItem({
|
|
|
130
132
|
...a11yProps,
|
|
131
133
|
children: [processedLeading, children != null ? children : /*#__PURE__*/_jsx(Text, {
|
|
132
134
|
style: [textStyle, labelStyle],
|
|
133
|
-
|
|
135
|
+
...resolveTruncation(disableTruncation, 1),
|
|
134
136
|
children: label
|
|
135
137
|
}), customTrailing, showDefaultCheck && /*#__PURE__*/_jsx(Icon, {
|
|
136
138
|
name: "ic_confirm",
|
|
@@ -164,12 +166,12 @@ export function Dropdown({
|
|
|
164
166
|
...globalModes,
|
|
165
167
|
...propModes
|
|
166
168
|
}), [globalModes, propModes]);
|
|
167
|
-
const radius = parseInt(getVariableByName('dropdown/radius', modes), 10)
|
|
168
|
-
const background = getVariableByName('dropdown/background', modes)
|
|
169
|
-
const shadowColor = getVariableByName('dropdown/shadow/color', modes)
|
|
170
|
-
const shadowOffsetX = parseInt(getVariableByName('dropdown/shadow/offsetX', modes), 10)
|
|
171
|
-
const shadowOffsetY = parseInt(getVariableByName('dropdown/shadow/offsetY', modes), 10)
|
|
172
|
-
const shadowBlur = parseInt(getVariableByName('dropdown/shadow/blur', modes), 10)
|
|
169
|
+
const radius = parseInt(getVariableByName('dropdown/radius', modes), 10);
|
|
170
|
+
const background = getVariableByName('dropdown/background', modes);
|
|
171
|
+
const shadowColor = getVariableByName('dropdown/shadow/color', modes);
|
|
172
|
+
const shadowOffsetX = parseInt(getVariableByName('dropdown/shadow/offsetX', modes), 10);
|
|
173
|
+
const shadowOffsetY = parseInt(getVariableByName('dropdown/shadow/offsetY', modes), 10);
|
|
174
|
+
const shadowBlur = parseInt(getVariableByName('dropdown/shadow/blur', modes), 10);
|
|
173
175
|
|
|
174
176
|
// Shadow lives on the OUTER view, which must NOT set `overflow: 'hidden'`.
|
|
175
177
|
// On native, clipping a view also clips its shadow (iOS clips the layer
|
|
@@ -178,18 +180,16 @@ export function Dropdown({
|
|
|
178
180
|
// get cut off. The rounded-corner clipping is moved to a separate inner
|
|
179
181
|
// view below.
|
|
180
182
|
//
|
|
181
|
-
// The `boxShadow`
|
|
182
|
-
//
|
|
183
|
-
//
|
|
184
|
-
// `shadow*` / `elevation`
|
|
185
|
-
//
|
|
186
|
-
//
|
|
187
|
-
// `elevation` is also undesirable here because it ignores the shadow color
|
|
188
|
-
// and only paints a generic gray shadow.
|
|
183
|
+
// The unified `boxShadow` helper is the single source of truth so the
|
|
184
|
+
// designed color/offset/blur are honored on iOS, Android AND web. On RN
|
|
185
|
+
// 0.76+ / web it emits the spec `boxShadow` prop; on older RN it translates
|
|
186
|
+
// to the legacy `shadow*` (iOS) / `elevation` (Android) API. We intentionally
|
|
187
|
+
// do NOT also set the legacy props manually on the supported path: those
|
|
188
|
+
// would stack a second shadow.
|
|
189
189
|
const shadowStyle = {
|
|
190
190
|
backgroundColor: background,
|
|
191
191
|
borderRadius: radius,
|
|
192
|
-
boxShadow
|
|
192
|
+
...boxShadow(`${shadowOffsetX}px ${shadowOffsetY}px ${shadowBlur}px 0px ${shadowColor}`)
|
|
193
193
|
};
|
|
194
194
|
|
|
195
195
|
// Inner view carries the rounded corners + clipping so list/scroll content
|
|
@@ -5,7 +5,7 @@ import { Dimensions, Modal, Platform, Pressable, StyleSheet, Text, View } from '
|
|
|
5
5
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
6
6
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
7
7
|
import { useTokens } from '../../design-tokens/JFSThemeProvider';
|
|
8
|
-
import { EMPTY_MODES, flattenChildren } from '../../utils/react-utils';
|
|
8
|
+
import { EMPTY_MODES, flattenChildren, resolveTruncation } from '../../utils/react-utils';
|
|
9
9
|
import Icon from '../../icons/Icon';
|
|
10
10
|
import SupportText from '../SupportText/SupportText';
|
|
11
11
|
import Dropdown, { DropdownItem } from '../Dropdown/Dropdown';
|
|
@@ -28,8 +28,8 @@ const IS_WEB = Platform.OS === 'web';
|
|
|
28
28
|
|
|
29
29
|
function useChevronTokens(modes) {
|
|
30
30
|
return useMemo(() => {
|
|
31
|
-
const iconSize = parseInt(getVariableByName('input/iconSize', modes), 10)
|
|
32
|
-
const iconColor = getVariableByName('iconButton/icon/color', modes)
|
|
31
|
+
const iconSize = parseInt(getVariableByName('input/iconSize', modes), 10);
|
|
32
|
+
const iconColor = getVariableByName('iconButton/icon/color', modes);
|
|
33
33
|
return {
|
|
34
34
|
iconSize,
|
|
35
35
|
iconColor
|
|
@@ -46,22 +46,22 @@ function toNumber(value, fallback) {
|
|
|
46
46
|
}
|
|
47
47
|
function useFormFieldTokens(modes) {
|
|
48
48
|
return useMemo(() => {
|
|
49
|
-
const labelColor = getVariableByName('formField/label/color', modes)
|
|
50
|
-
const labelFontFamily = getVariableByName('formField/label/fontFamily', modes)
|
|
49
|
+
const labelColor = getVariableByName('formField/label/color', modes);
|
|
50
|
+
const labelFontFamily = getVariableByName('formField/label/fontFamily', modes);
|
|
51
51
|
const labelFontSize = toNumber(getVariableByName('formField/label/fontSize', modes), 14);
|
|
52
52
|
const labelLineHeight = toNumber(getVariableByName('formField/label/lineHeight', modes), 17);
|
|
53
|
-
const labelFontWeight = getVariableByName('formField/label/fontWeight', modes)
|
|
53
|
+
const labelFontWeight = getVariableByName('formField/label/fontWeight', modes);
|
|
54
54
|
const gap = toNumber(getVariableByName('formField/gap', modes), 8);
|
|
55
55
|
const inputPaddingH = toNumber(getVariableByName('formField/input/padding/horizontal', modes), 12);
|
|
56
56
|
const inputGap = toNumber(getVariableByName('formField/input/gap', modes), 8);
|
|
57
57
|
const inputRadius = toNumber(getVariableByName('formField/input/radius', modes), 8);
|
|
58
|
-
const inputBackground = getVariableByName('formField/input/background', modes)
|
|
58
|
+
const inputBackground = getVariableByName('formField/input/background', modes);
|
|
59
59
|
const inputFontSize = toNumber(getVariableByName('formField/input/label/fontSize', modes), 16);
|
|
60
60
|
const inputLineHeight = toNumber(getVariableByName('formField/input/label/lineHeight', modes), 45);
|
|
61
|
-
const inputFontFamily = getVariableByName('formField/input/label/fontFamily', modes)
|
|
62
|
-
const inputFontWeight = getVariableByName('formField/input/label/fontWeight', modes)
|
|
63
|
-
const inputTextColor = getVariableByName('states/formField/input/label/color', modes) || getVariableByName('formField/input/label/color', modes)
|
|
64
|
-
const inputBorderColor = getVariableByName('states/formField/input/border/color', modes) || getVariableByName('formField/input/border/color', modes)
|
|
61
|
+
const inputFontFamily = getVariableByName('formField/input/label/fontFamily', modes);
|
|
62
|
+
const inputFontWeight = getVariableByName('formField/input/label/fontWeight', modes);
|
|
63
|
+
const inputTextColor = getVariableByName('states/formField/input/label/color', modes) || getVariableByName('formField/input/label/color', modes);
|
|
64
|
+
const inputBorderColor = getVariableByName('states/formField/input/border/color', modes) || getVariableByName('formField/input/border/color', modes);
|
|
65
65
|
// Figma spec: 1.5px. Using parseFloat (via toNumber) preserves the
|
|
66
66
|
// fractional value — parseInt was truncating it to 1, leaving the
|
|
67
67
|
// resolved row height ~1px shorter than the Figma reference.
|
|
@@ -155,7 +155,8 @@ const DropdownInput = /*#__PURE__*/forwardRef(function DropdownInput({
|
|
|
155
155
|
accessibilityLabel,
|
|
156
156
|
accessibilityHint,
|
|
157
157
|
onFocus,
|
|
158
|
-
onBlur
|
|
158
|
+
onBlur,
|
|
159
|
+
disableTruncation
|
|
159
160
|
}, ref) {
|
|
160
161
|
// ---------------- Modes ----------------
|
|
161
162
|
const {
|
|
@@ -542,7 +543,7 @@ const DropdownInput = /*#__PURE__*/forwardRef(function DropdownInput({
|
|
|
542
543
|
style: [valueTextStyle, !hasValue && {
|
|
543
544
|
color: placeholderColor
|
|
544
545
|
}],
|
|
545
|
-
|
|
546
|
+
...resolveTruncation(disableTruncation, 1),
|
|
546
547
|
children: displayLabel
|
|
547
548
|
}), /*#__PURE__*/_jsx(View, {
|
|
548
549
|
accessibilityElementsHidden: true,
|
|
@@ -32,26 +32,26 @@ function EmptyState({
|
|
|
32
32
|
};
|
|
33
33
|
|
|
34
34
|
// Container Tokens
|
|
35
|
-
const gap = getVariableByName('emptyState/gap', modes)
|
|
36
|
-
const padding = getVariableByName('emptyState/padding', modes)
|
|
37
|
-
const radius = getVariableByName('emptyState/radius', modes)
|
|
35
|
+
const gap = getVariableByName('emptyState/gap', modes);
|
|
36
|
+
const padding = getVariableByName('emptyState/padding', modes);
|
|
37
|
+
const radius = getVariableByName('emptyState/radius', modes);
|
|
38
38
|
|
|
39
39
|
// Content Wrap Tokens
|
|
40
|
-
const contentGap = getVariableByName('emptyState/content/gap', modes)
|
|
40
|
+
const contentGap = getVariableByName('emptyState/content/gap', modes);
|
|
41
41
|
|
|
42
42
|
// Title Tokens
|
|
43
|
-
const titleColor = getVariableByName('emptyState/title/color', modes)
|
|
44
|
-
const titleFontSize = getVariableByName('emptyState/title/fontSize', modes)
|
|
45
|
-
const titleFontFamily = getVariableByName('emptyState/title/fontFamily', modes)
|
|
46
|
-
const titleLineHeight = getVariableByName('emptyState/title/lineHeight', modes)
|
|
47
|
-
const titleFontWeight = getVariableByName('emptyState/title/fontWeight', modes)
|
|
43
|
+
const titleColor = getVariableByName('emptyState/title/color', modes);
|
|
44
|
+
const titleFontSize = getVariableByName('emptyState/title/fontSize', modes);
|
|
45
|
+
const titleFontFamily = getVariableByName('emptyState/title/fontFamily', modes);
|
|
46
|
+
const titleLineHeight = getVariableByName('emptyState/title/lineHeight', modes);
|
|
47
|
+
const titleFontWeight = getVariableByName('emptyState/title/fontWeight', modes);
|
|
48
48
|
|
|
49
49
|
// Body Tokens
|
|
50
|
-
const bodyColor = getVariableByName('emptyState/body/color', modes)
|
|
51
|
-
const bodyFontSize = getVariableByName('emptyState/body/fontSize', modes)
|
|
52
|
-
const bodyFontFamily = getVariableByName('emptyState/body/fontFamily', modes)
|
|
53
|
-
const bodyLineHeight = getVariableByName('emptyState/body/lineHeight', modes)
|
|
54
|
-
const bodyFontWeight = getVariableByName('emptyState/body/fontWeight', modes)
|
|
50
|
+
const bodyColor = getVariableByName('emptyState/body/color', modes);
|
|
51
|
+
const bodyFontSize = getVariableByName('emptyState/body/fontSize', modes);
|
|
52
|
+
const bodyFontFamily = getVariableByName('emptyState/body/fontFamily', modes);
|
|
53
|
+
const bodyLineHeight = getVariableByName('emptyState/body/lineHeight', modes);
|
|
54
|
+
const bodyFontWeight = getVariableByName('emptyState/body/fontWeight', modes);
|
|
55
55
|
const containerStyle = {
|
|
56
56
|
flexDirection: 'column',
|
|
57
57
|
alignItems: 'center',
|
|
@@ -58,6 +58,7 @@ function ExpandableCheckbox({
|
|
|
58
58
|
readMoreLabel = 'Read more',
|
|
59
59
|
readLessLabel = 'Read less',
|
|
60
60
|
collapsedLines = 1,
|
|
61
|
+
disableTruncation = false,
|
|
61
62
|
modes = EMPTY_MODES,
|
|
62
63
|
style,
|
|
63
64
|
labelStyle,
|
|
@@ -130,7 +131,7 @@ function ExpandableCheckbox({
|
|
|
130
131
|
}), [modes]);
|
|
131
132
|
const a11yLabel = accessibilityLabel ?? (typeof label === 'string' ? label : undefined);
|
|
132
133
|
const buttonLabel = isExpanded ? readLessLabel : readMoreLabel;
|
|
133
|
-
const labelNumberOfLinesProps = !isExpanded && collapsedLines > 0 ? {
|
|
134
|
+
const labelNumberOfLinesProps = !disableTruncation && !isExpanded && collapsedLines > 0 ? {
|
|
134
135
|
numberOfLines: collapsedLines,
|
|
135
136
|
ellipsizeMode: 'tail'
|
|
136
137
|
} : null;
|
|
@@ -43,8 +43,8 @@ function FilterBar({
|
|
|
43
43
|
borderColor: isFocused ? '#222' : 'transparent'
|
|
44
44
|
};
|
|
45
45
|
// Resolve container tokens
|
|
46
|
-
const paddingHorizontal = getVariableByName('filterBar/padding/horizontal', modes)
|
|
47
|
-
const paddingVertical = getVariableByName('filterBar/padding/vertical', modes)
|
|
46
|
+
const paddingHorizontal = getVariableByName('filterBar/padding/horizontal', modes);
|
|
47
|
+
const paddingVertical = getVariableByName('filterBar/padding/vertical', modes);
|
|
48
48
|
const resolvedAccessibilityLabel = accessibilityLabel || 'Search filter';
|
|
49
49
|
const containerStyle = {
|
|
50
50
|
flexDirection: 'column',
|
|
@@ -56,9 +56,9 @@ function Form({
|
|
|
56
56
|
validationErrors,
|
|
57
57
|
onFieldChange
|
|
58
58
|
}), [validationErrors, onFieldChange]);
|
|
59
|
-
const gap = parseInt(getVariableByName('form/gap', modes), 10)
|
|
60
|
-
const paddingHorizontal = parseInt(getVariableByName('form/padding/horizontal', modes), 10)
|
|
61
|
-
const paddingVertical = parseInt(getVariableByName('form/padding/vertical', modes), 10)
|
|
59
|
+
const gap = parseInt(getVariableByName('form/gap', modes), 10);
|
|
60
|
+
const paddingHorizontal = parseInt(getVariableByName('form/padding/horizontal', modes), 10);
|
|
61
|
+
const paddingVertical = parseInt(getVariableByName('form/padding/vertical', modes), 10);
|
|
62
62
|
const containerStyle = useMemo(() => ({
|
|
63
63
|
gap,
|
|
64
64
|
paddingHorizontal,
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import React, { forwardRef, useCallback, useMemo, useState } from 'react';
|
|
4
|
-
import { View, Text, TextInput as RNTextInput } from 'react-native';
|
|
3
|
+
import React, { forwardRef, useCallback, useMemo, useRef, useState } from 'react';
|
|
4
|
+
import { Platform, View, Text, TextInput as RNTextInput } from 'react-native';
|
|
5
5
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
6
6
|
import { useTokens } from '../../design-tokens/JFSThemeProvider';
|
|
7
|
-
import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils';
|
|
7
|
+
import { EMPTY_MODES, cloneChildrenWithModes, mergeRefs } from '../../utils/react-utils';
|
|
8
|
+
import { useWebOutsidePress } from '../../utils/web-platform-utils';
|
|
8
9
|
import SupportText from '../SupportText/SupportText';
|
|
9
10
|
import Icon from '../../icons/Icon';
|
|
10
11
|
import { useFormContext } from '../Form/Form';
|
|
@@ -32,8 +33,8 @@ function useFormFieldTokens(modes) {
|
|
|
32
33
|
const gap = toNumber(getVariableByName('formField/gap', modes), 8);
|
|
33
34
|
|
|
34
35
|
// Label (Figma: 14/17 medium, color #0c0d10)
|
|
35
|
-
const labelColor = getVariableByName('formField/label/color', modes)
|
|
36
|
-
const labelFontFamily = getVariableByName('formField/label/fontFamily', modes)
|
|
36
|
+
const labelColor = getVariableByName('formField/label/color', modes);
|
|
37
|
+
const labelFontFamily = getVariableByName('formField/label/fontFamily', modes);
|
|
37
38
|
const labelFontSize = toNumber(getVariableByName('formField/label/fontSize', modes), 14);
|
|
38
39
|
const labelLineHeight = toNumber(getVariableByName('formField/label/lineHeight', modes), 17);
|
|
39
40
|
const labelFontWeight = toFontWeight(getVariableByName('formField/label/fontWeight', modes), '500');
|
|
@@ -47,10 +48,10 @@ function useFormFieldTokens(modes) {
|
|
|
47
48
|
// Input text (Figma: 16/45 regular)
|
|
48
49
|
const inputFontSize = toNumber(getVariableByName('formField/input/label/fontSize', modes), 16);
|
|
49
50
|
const inputLineHeight = toNumber(getVariableByName('formField/input/label/lineHeight', modes), 45);
|
|
50
|
-
const inputFontFamily = getVariableByName('formField/input/label/fontFamily', modes)
|
|
51
|
+
const inputFontFamily = getVariableByName('formField/input/label/fontFamily', modes);
|
|
51
52
|
const inputFontWeight = toFontWeight(getVariableByName('formField/input/label/fontWeight', modes), '400');
|
|
52
|
-
const inputBackground = getVariableByName('formField/input/background', modes)
|
|
53
|
-
const inputBorderColor = getVariableByName('formField/input/border/color', modes)
|
|
53
|
+
const inputBackground = getVariableByName('formField/input/background', modes);
|
|
54
|
+
const inputBorderColor = getVariableByName('formField/input/border/color', modes);
|
|
54
55
|
if (__DEV__) {
|
|
55
56
|
console.warn('[FormField] border color (modes changed)', {
|
|
56
57
|
'FormField States': modes['FormField States'],
|
|
@@ -58,7 +59,7 @@ function useFormFieldTokens(modes) {
|
|
|
58
59
|
'formField/input/border/color': getVariableByName('formField/input/border/color', modes)
|
|
59
60
|
});
|
|
60
61
|
}
|
|
61
|
-
const inputTextColor = getVariableByName('formField/input/label/color', modes)
|
|
62
|
+
const inputTextColor = getVariableByName('formField/input/label/color', modes);
|
|
62
63
|
return {
|
|
63
64
|
gap,
|
|
64
65
|
labelColor,
|
|
@@ -202,6 +203,21 @@ const FormField = /*#__PURE__*/forwardRef(function FormField({
|
|
|
202
203
|
const [isFocused, setIsFocused] = useState(false);
|
|
203
204
|
const interactive = !isDisabled && !isReadOnly;
|
|
204
205
|
|
|
206
|
+
// Internal handles so we can (a) imperatively blur the input and (b) detect
|
|
207
|
+
// outside presses. The forwarded `ref` is merged in below, so the public
|
|
208
|
+
// ref API (focus/blur/clear/isFocused) is unchanged for consumers.
|
|
209
|
+
const inputRef = useRef(null);
|
|
210
|
+
const rootRef = useRef(null);
|
|
211
|
+
// Stable merged ref so React doesn't detach/reattach (and momentarily null
|
|
212
|
+
// `inputRef.current`) on every render.
|
|
213
|
+
const mergedInputRef = useMemo(() => mergeRefs(inputRef, ref), [ref]);
|
|
214
|
+
|
|
215
|
+
// Web: pressing an INTERACTIVE element outside the field (Button, link,
|
|
216
|
+
// another pressable) often does not move DOM focus, so the native `blur`
|
|
217
|
+
// never fires and the field stays visually "Active". Force a blur on any
|
|
218
|
+
// outside pointer press while focused. No-op on native.
|
|
219
|
+
useWebOutsidePress(rootRef, useCallback(() => inputRef.current?.blur(), []), isFocused);
|
|
220
|
+
|
|
205
221
|
// FormField States cascade — error > read only/disabled > active (focused) > idle.
|
|
206
222
|
// Disabled maps to "Read Only" since there is no dedicated disabled mode and
|
|
207
223
|
// the visual treatment is closest. This is only the DEFAULT — an explicit
|
|
@@ -284,7 +300,30 @@ const FormField = /*#__PURE__*/forwardRef(function FormField({
|
|
|
284
300
|
color: tokens.inputTextColor,
|
|
285
301
|
fontFamily: tokens.inputFontFamily,
|
|
286
302
|
fontSize: tokens.inputFontSize,
|
|
287
|
-
lineHeight: tokens.inputLineHeight
|
|
303
|
+
// ⚠️ DO NOT change to an unconditional `lineHeight: tokens.inputLineHeight`.
|
|
304
|
+
// This has regressed twice — read this before "simplifying" it.
|
|
305
|
+
//
|
|
306
|
+
// `inputLineHeight` comes from the Figma token `formField/input/label`
|
|
307
|
+
// ("16/45"), which is a 16px font inside a 45px ROW, i.e. it is the row
|
|
308
|
+
// HEIGHT, not the text leading. The row height is already applied via
|
|
309
|
+
// `inputRowStyle.minHeight` + `alignItems: 'center'`, so the text never
|
|
310
|
+
// needs this value as its own `lineHeight`.
|
|
311
|
+
//
|
|
312
|
+
// Passing a `lineHeight` (45) that is much larger than `fontSize` (16)
|
|
313
|
+
// onto a single-line RNTextInput breaks ONLY iOS: iOS puts ALL the extra
|
|
314
|
+
// vertical space ABOVE the glyphs, so the text/placeholder sinks to the
|
|
315
|
+
// bottom of the box instead of centering. Android and Web distribute the
|
|
316
|
+
// space evenly and look correct. This is a long-standing iOS native
|
|
317
|
+
// font-metrics bug in UITextField — see facebook/react-native#39145 and
|
|
318
|
+
// #28012; the documented workaround is exactly "drop lineHeight on the
|
|
319
|
+
// single-line input and let a wrapper center it". A single-line UITextField
|
|
320
|
+
// with no lineHeight centers its text natively (see react-native#56774).
|
|
321
|
+
//
|
|
322
|
+
// So: omit lineHeight on iOS (native centering via the row), and keep the
|
|
323
|
+
// token value on Android/Web where it already renders correctly.
|
|
324
|
+
...(Platform.OS === 'ios' ? null : {
|
|
325
|
+
lineHeight: tokens.inputLineHeight
|
|
326
|
+
}),
|
|
288
327
|
fontWeight: tokens.inputFontWeight,
|
|
289
328
|
padding: 0,
|
|
290
329
|
margin: 0,
|
|
@@ -321,6 +360,7 @@ const FormField = /*#__PURE__*/forwardRef(function FormField({
|
|
|
321
360
|
// -- Accessibility ------------------------------------------------------
|
|
322
361
|
const resolvedA11yLabel = accessibilityLabel || label || placeholder || 'Form field';
|
|
323
362
|
return /*#__PURE__*/_jsxs(View, {
|
|
363
|
+
ref: rootRef,
|
|
324
364
|
style: [wrapperStyle, style],
|
|
325
365
|
pointerEvents: isDisabled ? 'none' : 'auto',
|
|
326
366
|
testID: testID,
|
|
@@ -341,7 +381,7 @@ const FormField = /*#__PURE__*/forwardRef(function FormField({
|
|
|
341
381
|
importantForAccessibility: "no",
|
|
342
382
|
children: processedLeading
|
|
343
383
|
}), /*#__PURE__*/_jsx(RNTextInput, {
|
|
344
|
-
ref:
|
|
384
|
+
ref: mergedInputRef,
|
|
345
385
|
style: [inputTextStyles, inputTextStyle],
|
|
346
386
|
value: value ?? '',
|
|
347
387
|
onChangeText: handleChangeText,
|
|
@@ -56,39 +56,39 @@ function HeroText({
|
|
|
56
56
|
modes
|
|
57
57
|
}) {
|
|
58
58
|
const styles = useMemo(() => {
|
|
59
|
-
const gap = Number(getVariableByName('PageHero/gap', modes))
|
|
60
|
-
const textWrapGap = Number(getVariableByName('PageHero/textWrap/gap', modes))
|
|
59
|
+
const gap = Number(getVariableByName('PageHero/gap', modes));
|
|
60
|
+
const textWrapGap = Number(getVariableByName('PageHero/textWrap/gap', modes));
|
|
61
61
|
const eyebrowStyle = {
|
|
62
|
-
color: getVariableByName('PageHero/eyebrow/color', modes)
|
|
63
|
-
fontFamily: getVariableByName('PageHero/eyebrow/fontFamily', modes)
|
|
64
|
-
fontSize: Number(getVariableByName('PageHero/eyebrow/fontSize', modes))
|
|
65
|
-
fontWeight: String(getVariableByName('PageHero/eyebrow/fontWeight', modes)
|
|
66
|
-
lineHeight: Number(getVariableByName('PageHero/eyebrow/lineHeight', modes))
|
|
62
|
+
color: getVariableByName('PageHero/eyebrow/color', modes),
|
|
63
|
+
fontFamily: getVariableByName('PageHero/eyebrow/fontFamily', modes),
|
|
64
|
+
fontSize: Number(getVariableByName('PageHero/eyebrow/fontSize', modes)),
|
|
65
|
+
fontWeight: String(getVariableByName('PageHero/eyebrow/fontWeight', modes)),
|
|
66
|
+
lineHeight: Number(getVariableByName('PageHero/eyebrow/lineHeight', modes)),
|
|
67
67
|
textAlign: 'center'
|
|
68
68
|
};
|
|
69
69
|
const headlineStyle = {
|
|
70
|
-
color: getVariableByName('PageHero/headline/color', modes)
|
|
71
|
-
fontFamily: getVariableByName('PageHero/headline/fontFamily', modes)
|
|
72
|
-
fontSize: Number(getVariableByName('PageHero/headline/fontSize', modes))
|
|
73
|
-
fontWeight: String(getVariableByName('PageHero/headline/fontWeight', modes)
|
|
74
|
-
lineHeight: Number(getVariableByName('PageHero/headline/lineHeight', modes))
|
|
70
|
+
color: getVariableByName('PageHero/headline/color', modes),
|
|
71
|
+
fontFamily: getVariableByName('PageHero/headline/fontFamily', modes),
|
|
72
|
+
fontSize: Number(getVariableByName('PageHero/headline/fontSize', modes)),
|
|
73
|
+
fontWeight: String(getVariableByName('PageHero/headline/fontWeight', modes)),
|
|
74
|
+
lineHeight: Number(getVariableByName('PageHero/headline/lineHeight', modes)),
|
|
75
75
|
textAlign: 'center',
|
|
76
76
|
width: '100%'
|
|
77
77
|
};
|
|
78
78
|
const supportingTextStyle = {
|
|
79
|
-
color: getVariableByName('PageHero/supportingText/color', modes)
|
|
80
|
-
fontFamily: getVariableByName('PageHero/supportingText/fontFamily', modes)
|
|
81
|
-
fontSize: Number(getVariableByName('PageHero/supportingText/fontSize', modes))
|
|
82
|
-
fontWeight: String(getVariableByName('PageHero/supportingText/fontWeight', modes)
|
|
83
|
-
lineHeight: Number(getVariableByName('PageHero/supportingText/lineHeight', modes))
|
|
79
|
+
color: getVariableByName('PageHero/supportingText/color', modes),
|
|
80
|
+
fontFamily: getVariableByName('PageHero/supportingText/fontFamily', modes),
|
|
81
|
+
fontSize: Number(getVariableByName('PageHero/supportingText/fontSize', modes)),
|
|
82
|
+
fontWeight: String(getVariableByName('PageHero/supportingText/fontWeight', modes)),
|
|
83
|
+
lineHeight: Number(getVariableByName('PageHero/supportingText/lineHeight', modes)),
|
|
84
84
|
textAlign: 'center'
|
|
85
85
|
};
|
|
86
86
|
const priceTextStyle = {
|
|
87
|
-
color: getVariableByName('PageHero/body/color', modes)
|
|
88
|
-
fontFamily: getVariableByName('PageHero/body/fontFamily', modes)
|
|
89
|
-
fontSize: Number(getVariableByName('PageHero/body/fontSize', modes))
|
|
90
|
-
fontWeight: String(getVariableByName('PageHero/body/fontWeight', modes)
|
|
91
|
-
lineHeight: Number(getVariableByName('PageHero/body/lineHeight', modes))
|
|
87
|
+
color: getVariableByName('PageHero/body/color', modes),
|
|
88
|
+
fontFamily: getVariableByName('PageHero/body/fontFamily', modes),
|
|
89
|
+
fontSize: Number(getVariableByName('PageHero/body/fontSize', modes)),
|
|
90
|
+
fontWeight: String(getVariableByName('PageHero/body/fontWeight', modes)),
|
|
91
|
+
lineHeight: Number(getVariableByName('PageHero/body/lineHeight', modes)),
|
|
92
92
|
textAlign: 'center'
|
|
93
93
|
};
|
|
94
94
|
return {
|
|
@@ -211,7 +211,7 @@ function FullscreenModal({
|
|
|
211
211
|
...propModes,
|
|
212
212
|
...FULLSCREEN_MODAL_FORCED_MODES
|
|
213
213
|
}), [globalModes, propModes]);
|
|
214
|
-
const rootGap = Number(getVariableByName('fullScreenModal/gap', modes))
|
|
214
|
+
const rootGap = Number(getVariableByName('fullScreenModal/gap', modes));
|
|
215
215
|
|
|
216
216
|
// Safe-area insets so the floating chrome clears the system bars: the close
|
|
217
217
|
// button drops below the status bar / notch, and the sticky footer keeps its
|
|
@@ -225,7 +225,7 @@ function FullscreenModal({
|
|
|
225
225
|
// Extend (not replace) the footer's token bottom padding by the bottom inset
|
|
226
226
|
// so the action button never sits under the system navigation area.
|
|
227
227
|
const footerInsetStyle = useMemo(() => {
|
|
228
|
-
const base = Number(getVariableByName('actionFooter/padding/bottom', modes))
|
|
228
|
+
const base = Number(getVariableByName('actionFooter/padding/bottom', modes));
|
|
229
229
|
return {
|
|
230
230
|
paddingBottom: base + insets.bottom
|
|
231
231
|
};
|
|
@@ -35,7 +35,7 @@ const toFontWeight = (value, fallback) => {
|
|
|
35
35
|
};
|
|
36
36
|
const getStrokeColor = (style, fallback) => {
|
|
37
37
|
const flattened = StyleSheet.flatten(style);
|
|
38
|
-
return typeof flattened.backgroundColor === 'string' ? flattened.backgroundColor : fallback;
|
|
38
|
+
return flattened && typeof flattened.backgroundColor === 'string' ? flattened.backgroundColor : fallback;
|
|
39
39
|
};
|
|
40
40
|
function Gauge({
|
|
41
41
|
value = 84,
|
|
@@ -91,26 +91,26 @@ function Gauge({
|
|
|
91
91
|
const arcPath = `M ${startX} ${centerY} A ${radius} ${radius} 0 0 1 ${endX} ${centerY}`;
|
|
92
92
|
const arcLength = Math.PI * radius;
|
|
93
93
|
const progress = clamp(value, min, max);
|
|
94
|
-
const titleColor = getVariableByName('gauge/title/color', modes)
|
|
94
|
+
const titleColor = getVariableByName('gauge/title/color', modes);
|
|
95
95
|
const titleFontSize = toNumber(getVariableByName('gauge/title/fontSize', modes), 23);
|
|
96
96
|
const titleLineHeight = toNumber(getVariableByName('gauge/title/lineHeight', modes), 23);
|
|
97
|
-
const titleFontFamily = getVariableByName('gauge/title/fontFamily', modes)
|
|
97
|
+
const titleFontFamily = getVariableByName('gauge/title/fontFamily', modes);
|
|
98
98
|
const titleFontWeight = toFontWeight(getVariableByName('gauge/title/fontWeight', modes), '900');
|
|
99
99
|
const titleHeight = toNumber(getVariableByName('gauge/title/height', modes), 46);
|
|
100
100
|
const readoutGap = toNumber(getVariableByName('gauge/readout/gap', modes), 8);
|
|
101
101
|
const readoutPadding = toNumber(getVariableByName('gauge/readout/padding', modes), 8);
|
|
102
|
-
const valueColor = getVariableByName('gauge/readout/value/color', modes)
|
|
102
|
+
const valueColor = getVariableByName('gauge/readout/value/color', modes);
|
|
103
103
|
const valueFontSize = toNumber(getVariableByName('gauge/readout/value/fontSize', modes), 36);
|
|
104
104
|
const valueLineHeight = toNumber(getVariableByName('gauge/readout/value/lineHeight', modes), 36);
|
|
105
|
-
const valueFontFamily = getVariableByName('gauge/readout/value/fontFamily', modes)
|
|
105
|
+
const valueFontFamily = getVariableByName('gauge/readout/value/fontFamily', modes);
|
|
106
106
|
const valueFontWeight = toFontWeight(getVariableByName('gauge/readout/value/fontWeight', modes), '800');
|
|
107
|
-
const captionColor = getVariableByName('gauge/caption/color', modes)
|
|
107
|
+
const captionColor = getVariableByName('gauge/caption/color', modes);
|
|
108
108
|
const captionFontSize = toNumber(getVariableByName('gauge/caption/fontSize', modes), 14);
|
|
109
109
|
const captionLineHeight = toNumber(getVariableByName('gauge/caption/lineHeight', modes), 18);
|
|
110
|
-
const captionFontFamily = getVariableByName('gauge/caption/fontFamily', modes)
|
|
110
|
+
const captionFontFamily = getVariableByName('gauge/caption/fontFamily', modes);
|
|
111
111
|
const captionFontWeight = toFontWeight(getVariableByName('gauge/caption/fontWeight', modes), '500');
|
|
112
|
-
const trackColor = getStrokeColor(trackStyle, getVariableByName('gauge/track/color', modes)
|
|
113
|
-
const progressColor = getStrokeColor(progressStyle, getVariableByName('gauge/progress/color', modes)
|
|
112
|
+
const trackColor = getStrokeColor(trackStyle, getVariableByName('gauge/track/color', modes));
|
|
113
|
+
const progressColor = getStrokeColor(progressStyle, getVariableByName('gauge/progress/color', modes));
|
|
114
114
|
const containerStyle = {
|
|
115
115
|
alignItems: 'center',
|
|
116
116
|
gap,
|
|
@@ -4,7 +4,7 @@ import React from 'react';
|
|
|
4
4
|
import { View, Text, Pressable, Image } from 'react-native';
|
|
5
5
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
|
|
6
6
|
import Radio from '../Radio/Radio';
|
|
7
|
-
import { EMPTY_MODES } from '../../utils/react-utils';
|
|
7
|
+
import { EMPTY_MODES, resolveTruncation } from '../../utils/react-utils';
|
|
8
8
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
9
|
const GRID_COLUMNS = 3;
|
|
10
10
|
const GRID_COLUMN_GAP = 12;
|
|
@@ -34,11 +34,12 @@ export default function HoldingsCard({
|
|
|
34
34
|
onPress,
|
|
35
35
|
modes = EMPTY_MODES,
|
|
36
36
|
style,
|
|
37
|
-
testID
|
|
37
|
+
testID,
|
|
38
|
+
disableTruncation
|
|
38
39
|
}) {
|
|
39
40
|
// ---- Container tokens ----
|
|
40
|
-
const containerFill = getVariableByName('holdingsCard/container/fill', modes)
|
|
41
|
-
const containerStroke = getVariableByName('holdingsCard/container/stroke', modes)
|
|
41
|
+
const containerFill = getVariableByName('holdingsCard/container/fill', modes);
|
|
42
|
+
const containerStroke = getVariableByName('holdingsCard/container/stroke', modes);
|
|
42
43
|
const containerStrokeWeight = parseFloat((getVariableByName('holdingsCard/container/strokeWeight', modes) ?? 1).toString());
|
|
43
44
|
const containerCornerRadius = parseFloat((getVariableByName('holdingsCard/container/cornerRadius', modes) ?? 16).toString());
|
|
44
45
|
const containerGap = parseFloat((getVariableByName('holdingsCard/container/gap', modes) ?? 10).toString());
|
|
@@ -51,26 +52,26 @@ export default function HoldingsCard({
|
|
|
51
52
|
|
|
52
53
|
// ---- Hero tokens ----
|
|
53
54
|
const heroGap = parseFloat((getVariableByName('holdingsCard/hero/gap', modes) ?? 4).toString());
|
|
54
|
-
const heroLabelColor = getVariableByName('holdingsCard/hero/label/color', modes)
|
|
55
|
+
const heroLabelColor = getVariableByName('holdingsCard/hero/label/color', modes);
|
|
55
56
|
const heroLabelFontSize = parseFloat((getVariableByName('holdingsCard/hero/label/fontSize', modes) ?? 12).toString());
|
|
56
|
-
const heroLabelFontFamily = getVariableByName('holdingsCard/hero/label/fontFamily', modes)
|
|
57
|
+
const heroLabelFontFamily = getVariableByName('holdingsCard/hero/label/fontFamily', modes);
|
|
57
58
|
const heroLabelLineHeight = parseFloat((getVariableByName('holdingsCard/hero/label/lineHeight', modes) ?? 16).toString());
|
|
58
59
|
const heroLabelFontWeight = (getVariableByName('holdingsCard/hero/label/fontWeight', modes) ?? '400').toString();
|
|
59
|
-
const heroValueColor = getVariableByName('holdingsCard/hero/value/color', modes)
|
|
60
|
+
const heroValueColor = getVariableByName('holdingsCard/hero/value/color', modes);
|
|
60
61
|
const heroValueFontSize = parseFloat((getVariableByName('holdingsCard/hero/value/fontSize', modes) ?? 20).toString());
|
|
61
|
-
const heroValueFontFamily = getVariableByName('holdingsCard/hero/value/fontFamily', modes)
|
|
62
|
+
const heroValueFontFamily = getVariableByName('holdingsCard/hero/value/fontFamily', modes);
|
|
62
63
|
const heroValueLineHeight = parseFloat((getVariableByName('holdingsCard/hero/value/lineHeight', modes) ?? 22).toString());
|
|
63
64
|
const heroValueFontWeight = (getVariableByName('holdingsCard/hero/value/fontWeight', modes) ?? '700').toString();
|
|
64
65
|
|
|
65
66
|
// ---- Details grid tokens ----
|
|
66
|
-
const detailLabelColor = getVariableByName('holdingsCard/detailsGrid/label/color', modes)
|
|
67
|
+
const detailLabelColor = getVariableByName('holdingsCard/detailsGrid/label/color', modes);
|
|
67
68
|
const detailLabelFontSize = parseFloat((getVariableByName('holdingsCard/detailsGrid/label/fontSize', modes) ?? 10).toString());
|
|
68
|
-
const detailLabelFontFamily = getVariableByName('holdingsCard/detailsGrid/label/fontFamily', modes)
|
|
69
|
+
const detailLabelFontFamily = getVariableByName('holdingsCard/detailsGrid/label/fontFamily', modes);
|
|
69
70
|
const detailLabelLineHeight = parseFloat((getVariableByName('holdingsCard/detailsGrid/label/lineHeight', modes) ?? 12).toString());
|
|
70
71
|
const detailLabelFontWeight = (getVariableByName('holdingsCard/detailsGrid/label/fontWeight', modes) ?? '500').toString();
|
|
71
|
-
const detailValueColor = getVariableByName('holdingsCard/detailsGrid/value/color', modes)
|
|
72
|
+
const detailValueColor = getVariableByName('holdingsCard/detailsGrid/value/color', modes);
|
|
72
73
|
const detailValueFontSize = parseFloat((getVariableByName('holdingsCard/detailsGrid/value/fontSize', modes) ?? 12).toString());
|
|
73
|
-
const detailValueFontFamily = getVariableByName('holdingsCard/detailsGrid/value/fontFamily', modes)
|
|
74
|
+
const detailValueFontFamily = getVariableByName('holdingsCard/detailsGrid/value/fontFamily', modes);
|
|
74
75
|
const detailValueLineHeight = parseFloat((getVariableByName('holdingsCard/detailsGrid/value/lineHeight', modes) ?? 14).toString());
|
|
75
76
|
const detailValueFontWeight = (getVariableByName('holdingsCard/detailsGrid/value/fontWeight', modes) ?? '500').toString();
|
|
76
77
|
const dataItemGap = parseFloat((getVariableByName('holdingsCard/dataItem/gap', modes) ?? 4).toString());
|
|
@@ -186,7 +187,7 @@ export default function HoldingsCard({
|
|
|
186
187
|
lineHeight: detailValueLineHeight,
|
|
187
188
|
fontWeight: detailValueFontWeight
|
|
188
189
|
},
|
|
189
|
-
|
|
190
|
+
...resolveTruncation(disableTruncation, 1),
|
|
190
191
|
children: item.value
|
|
191
192
|
})]
|
|
192
193
|
}, `${rowIndex}-${colIndex}`)), row.length < GRID_COLUMNS && Array.from({
|
|
@@ -8,12 +8,12 @@ import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils';
|
|
|
8
8
|
import BaseIcon from '../../icons/Icon';
|
|
9
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
10
|
function resolveIconTokens(modes) {
|
|
11
|
-
const iconColor = getVariableByName('icon/color', modes)
|
|
12
|
-
const iconSize = getVariableByName('icon/size', modes)
|
|
13
|
-
const paddingLeft = getVariableByName('icon/padding/left', modes)
|
|
14
|
-
const paddingTop = getVariableByName('icon/padding/top', modes)
|
|
15
|
-
const paddingRight = getVariableByName('icon/padding/right', modes)
|
|
16
|
-
const paddingBottom = getVariableByName('icon/padding/bottom', modes)
|
|
11
|
+
const iconColor = getVariableByName('icon/color', modes);
|
|
12
|
+
const iconSize = getVariableByName('icon/size', modes);
|
|
13
|
+
const paddingLeft = getVariableByName('icon/padding/left', modes);
|
|
14
|
+
const paddingTop = getVariableByName('icon/padding/top', modes);
|
|
15
|
+
const paddingRight = getVariableByName('icon/padding/right', modes);
|
|
16
|
+
const paddingBottom = getVariableByName('icon/padding/bottom', modes);
|
|
17
17
|
return {
|
|
18
18
|
containerStyle: {
|
|
19
19
|
flexDirection: 'column',
|
|
@@ -8,13 +8,13 @@ import { EMPTY_MODES } from '../../utils/react-utils';
|
|
|
8
8
|
import Icon from '../../icons/Icon';
|
|
9
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
10
|
function resolveIconCapsuleTokens(modes) {
|
|
11
|
-
const size = getVariableByName('iconCapsule/size', modes)
|
|
12
|
-
const radiusRaw = getVariableByName('iconCapsule/radius', modes)
|
|
13
|
-
const backgroundColor = getVariableByName('iconCapsule/background', modes)
|
|
14
|
-
const borderColor = getVariableByName('iconCapsule/border/color', modes)
|
|
15
|
-
const borderSize = getVariableByName('iconCapsule/border/size', modes)
|
|
16
|
-
const iconColor = getVariableByName('iconCapsule/icon/color', modes)
|
|
17
|
-
const iconSize = getVariableByName('iconCapsule/icon/size', modes)
|
|
11
|
+
const size = getVariableByName('iconCapsule/size', modes);
|
|
12
|
+
const radiusRaw = getVariableByName('iconCapsule/radius', modes);
|
|
13
|
+
const backgroundColor = getVariableByName('iconCapsule/background', modes);
|
|
14
|
+
const borderColor = getVariableByName('iconCapsule/border/color', modes);
|
|
15
|
+
const borderSize = getVariableByName('iconCapsule/border/size', modes);
|
|
16
|
+
const iconColor = getVariableByName('iconCapsule/icon/color', modes);
|
|
17
|
+
const iconSize = getVariableByName('iconCapsule/icon/size', modes);
|
|
18
18
|
|
|
19
19
|
// 9999 is the design-token sentinel for "perfect circle"
|
|
20
20
|
const borderRadius = radiusRaw === 9999 ? size / 2 : radiusRaw;
|