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
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
type TextStyle,
|
|
12
12
|
} from 'react-native'
|
|
13
13
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
14
|
-
import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils'
|
|
14
|
+
import { EMPTY_MODES, cloneChildrenWithModes, resolveTruncation } from '../../utils/react-utils'
|
|
15
15
|
import Checkbox from '../Checkbox/Checkbox'
|
|
16
16
|
import Divider from '../Divider/Divider'
|
|
17
17
|
import Icon from '../../icons/Icon'
|
|
@@ -52,6 +52,12 @@ export type AccordionCheckboxProps = {
|
|
|
52
52
|
style?: StyleProp<ViewStyle>
|
|
53
53
|
/** Accessibility label for the header press target. Defaults to `title`. */
|
|
54
54
|
accessibilityLabel?: string
|
|
55
|
+
/**
|
|
56
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
57
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
58
|
+
* lines as it needs even when horizontal space is tight.
|
|
59
|
+
*/
|
|
60
|
+
disableTruncation?: boolean
|
|
55
61
|
}
|
|
56
62
|
|
|
57
63
|
/**
|
|
@@ -102,6 +108,7 @@ function AccordionCheckbox({
|
|
|
102
108
|
modes = EMPTY_MODES,
|
|
103
109
|
style,
|
|
104
110
|
accessibilityLabel,
|
|
111
|
+
disableTruncation,
|
|
105
112
|
}: AccordionCheckboxProps) {
|
|
106
113
|
const isExpandedControlled = controlledExpanded !== undefined
|
|
107
114
|
const [internalExpanded, setInternalExpanded] = useState(defaultExpanded)
|
|
@@ -288,11 +295,11 @@ function AccordionCheckbox({
|
|
|
288
295
|
}
|
|
289
296
|
/>
|
|
290
297
|
<View style={textWrapStyle}>
|
|
291
|
-
<Text style={titleStyle}
|
|
298
|
+
<Text style={titleStyle} {...resolveTruncation(disableTruncation, 1)} selectable={false}>
|
|
292
299
|
{title}
|
|
293
300
|
</Text>
|
|
294
301
|
{subtitle ? (
|
|
295
|
-
<Text style={subtitleStyle}
|
|
302
|
+
<Text style={subtitleStyle} {...resolveTruncation(disableTruncation, 1)} selectable={false}>
|
|
296
303
|
{subtitle}
|
|
297
304
|
</Text>
|
|
298
305
|
) : null}
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
type ViewStyle,
|
|
14
14
|
} from 'react-native'
|
|
15
15
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
16
|
-
import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils'
|
|
16
|
+
import { EMPTY_MODES, cloneChildrenWithModes, resolveTruncation } from '../../utils/react-utils'
|
|
17
17
|
import Icon from '../../icons/Icon'
|
|
18
18
|
import type { Modes } from '../../design-tokens'
|
|
19
19
|
|
|
@@ -88,6 +88,12 @@ export type AccountCardProps = {
|
|
|
88
88
|
accessibilityLabel?: string
|
|
89
89
|
/** Accessibility hint forwarded to the underlying `Pressable`. */
|
|
90
90
|
accessibilityHint?: string
|
|
91
|
+
/**
|
|
92
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
93
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
94
|
+
* lines as it needs even when horizontal space is tight.
|
|
95
|
+
*/
|
|
96
|
+
disableTruncation?: boolean
|
|
91
97
|
}
|
|
92
98
|
|
|
93
99
|
const toNumber = (value: unknown, fallback: number): number => {
|
|
@@ -148,6 +154,7 @@ function AccountCard({
|
|
|
148
154
|
style,
|
|
149
155
|
accessibilityLabel,
|
|
150
156
|
accessibilityHint,
|
|
157
|
+
disableTruncation,
|
|
151
158
|
}: AccountCardProps) {
|
|
152
159
|
const iconModes = useMemo(
|
|
153
160
|
() =>
|
|
@@ -330,12 +337,12 @@ function AccountCard({
|
|
|
330
337
|
}}
|
|
331
338
|
>
|
|
332
339
|
{title != null && title !== '' ? (
|
|
333
|
-
<Text style={titleStyle}
|
|
340
|
+
<Text style={titleStyle} {...resolveTruncation(disableTruncation, 1)}>
|
|
334
341
|
{title}
|
|
335
342
|
</Text>
|
|
336
343
|
) : null}
|
|
337
344
|
{showSubtitle ? (
|
|
338
|
-
<Text style={subtitleStyle}
|
|
345
|
+
<Text style={subtitleStyle} {...resolveTruncation(disableTruncation, 1)}>
|
|
339
346
|
{subtitle}
|
|
340
347
|
</Text>
|
|
341
348
|
) : null}
|
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
} from 'react-native'
|
|
11
11
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
12
12
|
import { EMPTY_MODES, cloneChildrenWithModes, flattenChildren } from '../../utils/react-utils'
|
|
13
|
+
import { boxShadow } from '../../utils/shadow'
|
|
13
14
|
import IconButton from '../IconButton/IconButton'
|
|
14
15
|
import type { Modes } from '../../design-tokens'
|
|
15
16
|
|
|
@@ -37,8 +38,6 @@ export type ActionFooterProps = {
|
|
|
37
38
|
accessibilityLabel?: string
|
|
38
39
|
}
|
|
39
40
|
|
|
40
|
-
const IS_WEB = Platform.OS === 'web'
|
|
41
|
-
|
|
42
41
|
// ---------------------------------------------------------------------------
|
|
43
42
|
// Yoga-safe stretch
|
|
44
43
|
// ---------------------------------------------------------------------------
|
|
@@ -67,28 +66,12 @@ const STRETCH_STYLE: ViewStyle = {
|
|
|
67
66
|
minWidth: 0,
|
|
68
67
|
}
|
|
69
68
|
|
|
70
|
-
//
|
|
71
|
-
//
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
shadowOffset: { width: 0, height: -12 },
|
|
77
|
-
shadowOpacity: 0.16,
|
|
78
|
-
shadowRadius: 24,
|
|
79
|
-
},
|
|
80
|
-
android: {
|
|
81
|
-
elevation: 16,
|
|
82
|
-
},
|
|
83
|
-
default: {},
|
|
84
|
-
}) as ViewStyle
|
|
85
|
-
|
|
86
|
-
const WEB_SHADOW = IS_WEB
|
|
87
|
-
? ({
|
|
88
|
-
boxShadow:
|
|
89
|
-
'0px -12px 24px 0px rgba(12, 13, 16, 0.12), 0px -16px 48px 0px rgba(12, 13, 16, 0.16)',
|
|
90
|
-
} as ViewStyle)
|
|
91
|
-
: null
|
|
69
|
+
// Upward drop shadow routed through the unified helper: native `boxShadow` on
|
|
70
|
+
// web + RN 0.76+, legacy `shadow*` (iOS) / `elevation` (Android) on older RN.
|
|
71
|
+
const SHADOW = boxShadow(
|
|
72
|
+
'0px -12px 24px 0px rgba(12, 13, 16, 0.12), 0px -16px 48px 0px rgba(12, 13, 16, 0.16)',
|
|
73
|
+
{ elevation: 16 },
|
|
74
|
+
)
|
|
92
75
|
|
|
93
76
|
// The runtime token a slot child must equal (by reference) to be treated as
|
|
94
77
|
// an IconButton. `IconButton` is exported wrapped in `React.memo`, so the
|
|
@@ -200,7 +183,7 @@ function ActionFooter({
|
|
|
200
183
|
paddingRight: paddingHorizontal,
|
|
201
184
|
paddingTop,
|
|
202
185
|
paddingBottom,
|
|
203
|
-
...
|
|
186
|
+
...SHADOW,
|
|
204
187
|
}
|
|
205
188
|
|
|
206
189
|
const slot: ViewStyle = {
|
|
@@ -240,7 +223,6 @@ function ActionFooter({
|
|
|
240
223
|
<Animated.View
|
|
241
224
|
style={[
|
|
242
225
|
containerStyle,
|
|
243
|
-
WEB_SHADOW,
|
|
244
226
|
style,
|
|
245
227
|
// Counter-translate by the keyboard height on Android so `adjustResize`
|
|
246
228
|
// can't lift the footer above the keyboard (no-op on iOS/web where the
|
|
@@ -40,18 +40,18 @@ export default function ActionTile({
|
|
|
40
40
|
const modes = { ...globalModes, ...propModes }
|
|
41
41
|
|
|
42
42
|
// Resolve tokens
|
|
43
|
-
const backgroundColor = getVariableByName('actionTile/background', modes)
|
|
44
|
-
const gap = Number(getVariableByName('actionTile/gap', modes))
|
|
45
|
-
const paddingHorizontal = Number(getVariableByName('actionTile/padding/horizontal', modes))
|
|
46
|
-
const paddingVertical = Number(getVariableByName('actionTile/padding/vertical', modes))
|
|
47
|
-
const radius = Number(getVariableByName('actionTile/radius', modes))
|
|
43
|
+
const backgroundColor = getVariableByName('actionTile/background', modes)
|
|
44
|
+
const gap = Number(getVariableByName('actionTile/gap', modes))
|
|
45
|
+
const paddingHorizontal = Number(getVariableByName('actionTile/padding/horizontal', modes))
|
|
46
|
+
const paddingVertical = Number(getVariableByName('actionTile/padding/vertical', modes))
|
|
47
|
+
const radius = Number(getVariableByName('actionTile/radius', modes))
|
|
48
48
|
|
|
49
49
|
// Text tokens
|
|
50
|
-
const textColor = getVariableByName('actionTile/foreground', modes)
|
|
51
|
-
const fontSize = Number(getVariableByName('actionTile/fontSize', modes))
|
|
52
|
-
const fontFamily = getVariableByName('actionTile/fontFamily', modes)
|
|
53
|
-
const fontWeightStr = getVariableByName('actionTile/fontWeight', modes)
|
|
54
|
-
const lineHeight = Number(getVariableByName('actionTile/lineHeight', modes))
|
|
50
|
+
const textColor = getVariableByName('actionTile/foreground', modes)
|
|
51
|
+
const fontSize = Number(getVariableByName('actionTile/fontSize', modes))
|
|
52
|
+
const fontFamily = getVariableByName('actionTile/fontFamily', modes)
|
|
53
|
+
const fontWeightStr = getVariableByName('actionTile/fontWeight', modes)
|
|
54
|
+
const lineHeight = Number(getVariableByName('actionTile/lineHeight', modes))
|
|
55
55
|
|
|
56
56
|
const containerStyle: ViewStyle = {
|
|
57
57
|
backgroundColor,
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
import Svg, { Line } from 'react-native-svg'
|
|
10
10
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
11
11
|
import { useTokens } from '../../design-tokens/JFSThemeProvider'
|
|
12
|
-
import { EMPTY_MODES } from '../../utils/react-utils'
|
|
12
|
+
import { EMPTY_MODES, resolveTruncation } from '../../utils/react-utils'
|
|
13
13
|
import MetricLegendItem from '../MetricLegendItem/MetricLegendItem'
|
|
14
14
|
import type { Modes } from '../../design-tokens'
|
|
15
15
|
|
|
@@ -109,6 +109,12 @@ export type AllocationComparisonChartProps = {
|
|
|
109
109
|
legendStyle?: StyleProp<ViewStyle>
|
|
110
110
|
/** Accessibility label for the whole chart. */
|
|
111
111
|
accessibilityLabel?: string
|
|
112
|
+
/**
|
|
113
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
114
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
115
|
+
* lines as it needs even when horizontal space is tight.
|
|
116
|
+
*/
|
|
117
|
+
disableTruncation?: boolean
|
|
112
118
|
}
|
|
113
119
|
|
|
114
120
|
const DEFAULT_DATA: AllocationSegment[] = [
|
|
@@ -162,6 +168,7 @@ type SegmentBarProps = {
|
|
|
162
168
|
baselineLabel: React.ReactNode
|
|
163
169
|
showMarker: boolean
|
|
164
170
|
theme: SegmentTheme
|
|
171
|
+
disableTruncation?: boolean
|
|
165
172
|
}
|
|
166
173
|
|
|
167
174
|
/**
|
|
@@ -177,6 +184,7 @@ function SegmentBar({
|
|
|
177
184
|
baselineLabel,
|
|
178
185
|
showMarker,
|
|
179
186
|
theme,
|
|
187
|
+
disableTruncation,
|
|
180
188
|
}: SegmentBarProps) {
|
|
181
189
|
const { barWidth, pillRadius, gap, currentColor, baselineColor, lineColor, lineSize, labelStyle } =
|
|
182
190
|
theme
|
|
@@ -195,7 +203,7 @@ function SegmentBar({
|
|
|
195
203
|
accessibilityLabel={segment.accessibilityLabel}
|
|
196
204
|
>
|
|
197
205
|
{showValueLabel ? (
|
|
198
|
-
<Text
|
|
206
|
+
<Text {...resolveTruncation(disableTruncation, 1)} style={labelStyle}>
|
|
199
207
|
{segment.valueLabel}
|
|
200
208
|
</Text>
|
|
201
209
|
) : null}
|
|
@@ -247,7 +255,7 @@ function SegmentBar({
|
|
|
247
255
|
/>
|
|
248
256
|
</Svg>
|
|
249
257
|
{isShown(baselineLabel) ? (
|
|
250
|
-
<Text
|
|
258
|
+
<Text {...resolveTruncation(disableTruncation, 1)} style={[labelStyle, { marginLeft: 6 }]}>
|
|
251
259
|
{baselineLabel}
|
|
252
260
|
</Text>
|
|
253
261
|
) : null}
|
|
@@ -257,7 +265,7 @@ function SegmentBar({
|
|
|
257
265
|
) : null}
|
|
258
266
|
</View>
|
|
259
267
|
|
|
260
|
-
<Text
|
|
268
|
+
<Text {...resolveTruncation(disableTruncation, 1)} style={labelStyle}>
|
|
261
269
|
{segment.label}
|
|
262
270
|
</Text>
|
|
263
271
|
</View>
|
|
@@ -295,6 +303,7 @@ function AllocationComparisonChart({
|
|
|
295
303
|
chartStyle,
|
|
296
304
|
legendStyle,
|
|
297
305
|
accessibilityLabel,
|
|
306
|
+
disableTruncation,
|
|
298
307
|
}: AllocationComparisonChartProps) {
|
|
299
308
|
const { modes: globalModes } = useTokens()
|
|
300
309
|
const modes = React.useMemo(
|
|
@@ -440,6 +449,7 @@ function AllocationComparisonChart({
|
|
|
440
449
|
baselineLabel={baselineLabel}
|
|
441
450
|
showMarker={showMarker}
|
|
442
451
|
theme={theme}
|
|
452
|
+
disableTruncation={disableTruncation}
|
|
443
453
|
/>
|
|
444
454
|
)
|
|
445
455
|
})}
|
|
@@ -37,9 +37,9 @@ const AmountInput = forwardRef<View, AmountInputProps>(function AmountInput({
|
|
|
37
37
|
const modes = { ...globalModes, ...propModes }
|
|
38
38
|
|
|
39
39
|
// Resolve tokens
|
|
40
|
-
const gap = Number(getVariableByName('amountInput/gap', modes))
|
|
41
|
-
const paddingHorizontal = Number(getVariableByName('amountInput/padding/horizontal', modes))
|
|
42
|
-
const paddingVertical = Number(getVariableByName('amountInput/padding/vertical', modes))
|
|
40
|
+
const gap = Number(getVariableByName('amountInput/gap', modes))
|
|
41
|
+
const paddingHorizontal = Number(getVariableByName('amountInput/padding/horizontal', modes))
|
|
42
|
+
const paddingVertical = Number(getVariableByName('amountInput/padding/vertical', modes))
|
|
43
43
|
|
|
44
44
|
const containerStyle: ViewStyle = {
|
|
45
45
|
flexDirection: 'column',
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
import Svg, { Circle, Line, Path } from 'react-native-svg'
|
|
24
24
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
25
25
|
import { useTokens } from '../../design-tokens/JFSThemeProvider'
|
|
26
|
-
import { EMPTY_MODES } from '../../utils/react-utils'
|
|
26
|
+
import { EMPTY_MODES, resolveTruncation } from '../../utils/react-utils'
|
|
27
27
|
import MetricLegendItem from '../MetricLegendItem/MetricLegendItem'
|
|
28
28
|
import type { Modes } from '../../design-tokens'
|
|
29
29
|
import {
|
|
@@ -149,6 +149,12 @@ export type AreaLineChartProps = {
|
|
|
149
149
|
children?: React.ReactNode
|
|
150
150
|
/** Accessibility label for the whole chart. */
|
|
151
151
|
accessibilityLabel?: string
|
|
152
|
+
/**
|
|
153
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
154
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
155
|
+
* lines as it needs even when horizontal space is tight.
|
|
156
|
+
*/
|
|
157
|
+
disableTruncation?: boolean
|
|
152
158
|
}
|
|
153
159
|
|
|
154
160
|
// --- Internal resolved types ----------------------------------------------
|
|
@@ -184,6 +190,7 @@ type ChartContextValue = {
|
|
|
184
190
|
formatY: (value: number) => React.ReactNode
|
|
185
191
|
showDots: boolean
|
|
186
192
|
modes: Modes
|
|
193
|
+
disableTruncation?: boolean
|
|
187
194
|
}
|
|
188
195
|
|
|
189
196
|
const ChartContext = createContext<ChartContextValue | null>(null)
|
|
@@ -307,6 +314,7 @@ function AreaLineChart({
|
|
|
307
314
|
style,
|
|
308
315
|
children,
|
|
309
316
|
accessibilityLabel,
|
|
317
|
+
disableTruncation,
|
|
310
318
|
}: AreaLineChartProps) {
|
|
311
319
|
const { modes: globalModes } = useTokens()
|
|
312
320
|
const modes = useMemo(() => ({ ...globalModes, ...propModes }), [globalModes, propModes])
|
|
@@ -440,6 +448,7 @@ function AreaLineChart({
|
|
|
440
448
|
formatY,
|
|
441
449
|
showDots,
|
|
442
450
|
modes,
|
|
451
|
+
disableTruncation,
|
|
443
452
|
}),
|
|
444
453
|
[
|
|
445
454
|
plotWidth,
|
|
@@ -459,6 +468,7 @@ function AreaLineChart({
|
|
|
459
468
|
formatY,
|
|
460
469
|
showDots,
|
|
461
470
|
modes,
|
|
471
|
+
disableTruncation,
|
|
462
472
|
]
|
|
463
473
|
)
|
|
464
474
|
|
|
@@ -650,7 +660,7 @@ function ChartYAxis({
|
|
|
650
660
|
showAxisLine = false,
|
|
651
661
|
formatLabel,
|
|
652
662
|
}: ChartYAxisProps) {
|
|
653
|
-
const { height, inset, yScale, yTicks, formatY, modes } = useChart()
|
|
663
|
+
const { height, inset, yScale, yTicks, formatY, modes, disableTruncation } = useChart()
|
|
654
664
|
const typo = useAxisTypography(modes)
|
|
655
665
|
const format = formatLabel ?? formatY
|
|
656
666
|
|
|
@@ -673,7 +683,7 @@ function ChartYAxis({
|
|
|
673
683
|
}}
|
|
674
684
|
>
|
|
675
685
|
{showLabels ? (
|
|
676
|
-
<Text style={typo.style}
|
|
686
|
+
<Text style={typo.style} {...resolveTruncation(disableTruncation, 1)}>
|
|
677
687
|
{format(t)}
|
|
678
688
|
</Text>
|
|
679
689
|
) : null}
|
|
@@ -736,7 +746,7 @@ function ChartXAxis({
|
|
|
736
746
|
selectable = true,
|
|
737
747
|
formatLabel,
|
|
738
748
|
}: ChartXAxisProps) {
|
|
739
|
-
const { width, inset, xScale, indexXs, count, xLabels, formatX, modes, activeIndex, setActiveIndex } =
|
|
749
|
+
const { width, inset, xScale, indexXs, count, xLabels, formatX, modes, activeIndex, setActiveIndex, disableTruncation } =
|
|
740
750
|
useChart()
|
|
741
751
|
const typo = useAxisTypography(modes)
|
|
742
752
|
const format = formatLabel ?? formatX
|
|
@@ -787,7 +797,7 @@ function ChartXAxis({
|
|
|
787
797
|
typo.style,
|
|
788
798
|
isActive ? { color: activeColor, fontWeight: '700' } : null,
|
|
789
799
|
]}
|
|
790
|
-
|
|
800
|
+
{...resolveTruncation(disableTruncation, 1)}
|
|
791
801
|
>
|
|
792
802
|
{format(label, i)}
|
|
793
803
|
</Text>
|
|
@@ -1025,7 +1035,7 @@ function ChartTooltip({
|
|
|
1025
1035
|
const bg = (getVariableByName('tooltip/background', modes) as string | null) ?? '#0f0d0a'
|
|
1026
1036
|
const paddingH = toNumber(getVariableByName('tooltip/padding/horizontal', modes), 12)
|
|
1027
1037
|
const paddingV = toNumber(getVariableByName('tooltip/padding/vertical', modes), 8)
|
|
1028
|
-
const radius =
|
|
1038
|
+
const radius = 8
|
|
1029
1039
|
const labelColor = (getVariableByName('tooltip/label/color', modes) as string | null) ?? '#ffffff'
|
|
1030
1040
|
|
|
1031
1041
|
if (items.length === 0) return null
|
|
@@ -1101,7 +1111,7 @@ function ChartLegend() {
|
|
|
1101
1111
|
/** Resolve `axisItem/*` typography tokens into a memoized text style. */
|
|
1102
1112
|
function useAxisTypography(modes: Modes) {
|
|
1103
1113
|
return useMemo(() => {
|
|
1104
|
-
const color = (getVariableByName('axisItem/
|
|
1114
|
+
const color = (getVariableByName('axisItem/fg', modes) as string | null) ?? '#000000'
|
|
1105
1115
|
const fontFamily =
|
|
1106
1116
|
(getVariableByName('axisItem/fontFamily', modes) as string | null) ?? 'JioType Var'
|
|
1107
1117
|
const fontSize = toNumber(getVariableByName('axisItem/fontSize', modes), 12)
|
|
@@ -189,7 +189,7 @@ function Attached({
|
|
|
189
189
|
// anchor centering intact).
|
|
190
190
|
const slotBorderStyle = useMemo<ViewStyle | null>(() => {
|
|
191
191
|
const borderColor = getVariableByName('attached/slot/border', modes)
|
|
192
|
-
const borderWidth = parseFloat(getVariableByName('attached/slot/borderWidth', modes)
|
|
192
|
+
const borderWidth = parseFloat(getVariableByName('attached/slot/borderWidth', modes))
|
|
193
193
|
if (!borderColor || !(borderWidth > 0)) return null
|
|
194
194
|
|
|
195
195
|
// Match the inner clip radius so the ring stays concentric. The outer edge
|
|
@@ -65,18 +65,18 @@ interface AvatarTokens {
|
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
function resolveAvatarTokens(modes: Modes, isMonogram: boolean): AvatarTokens {
|
|
68
|
-
const size = (getVariableByName('avatar/size', modes)
|
|
69
|
-
const radiusRaw = (getVariableByName('avatar/radius', modes)
|
|
70
|
-
const backgroundColor = getVariableByName('avatar/background', modes)
|
|
71
|
-
const borderColor = getVariableByName('avatar/border/color', modes)
|
|
72
|
-
const borderSize = (getVariableByName('avatar/border/size', modes)
|
|
73
|
-
const labelColor = getVariableByName('avatar/label/color', modes)
|
|
74
|
-
const labelFontSize = (getVariableByName('avatar/label/fontSize', modes)
|
|
75
|
-
const labelLineHeight = (getVariableByName('avatar/label/lineHeight', modes)
|
|
76
|
-
const labelFontWeightRaw = getVariableByName('avatar/label/fontWeight', modes)
|
|
68
|
+
const size = (getVariableByName('avatar/size', modes)) as number
|
|
69
|
+
const radiusRaw = (getVariableByName('avatar/radius', modes)) as number
|
|
70
|
+
const backgroundColor = getVariableByName('avatar/background', modes)
|
|
71
|
+
const borderColor = getVariableByName('avatar/border/color', modes)
|
|
72
|
+
const borderSize = (getVariableByName('avatar/border/size', modes)) as number
|
|
73
|
+
const labelColor = getVariableByName('avatar/label/color', modes)
|
|
74
|
+
const labelFontSize = (getVariableByName('avatar/label/fontSize', modes)) as number
|
|
75
|
+
const labelLineHeight = (getVariableByName('avatar/label/lineHeight', modes)) as number
|
|
76
|
+
const labelFontWeightRaw = getVariableByName('avatar/label/fontWeight', modes)
|
|
77
77
|
const labelFontWeight =
|
|
78
78
|
typeof labelFontWeightRaw === 'number' ? labelFontWeightRaw.toString() : labelFontWeightRaw
|
|
79
|
-
const labelFontFamily = (getVariableByName('avatar/label/fontFamily', modes)
|
|
79
|
+
const labelFontFamily = (getVariableByName('avatar/label/fontFamily', modes)) as string
|
|
80
80
|
|
|
81
81
|
// 9999 is the design-token sentinel for "perfect circle"
|
|
82
82
|
const borderRadius = radiusRaw === 9999 ? size / 2 : radiusRaw
|
|
@@ -13,18 +13,18 @@ type AvatarGroupProps = {
|
|
|
13
13
|
} & React.ComponentProps<typeof View>;
|
|
14
14
|
|
|
15
15
|
function AvatarGroup({ modes = EMPTY_MODES, children, style, ...rest }: AvatarGroupProps) {
|
|
16
|
-
const gap = getVariableByName('avatarGroup/gap', modes)
|
|
16
|
+
const gap = getVariableByName('avatarGroup/gap', modes);
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
const avatarSize = getVariableByName('avatar/size', modes)
|
|
20
|
-
const avatarRadius = getVariableByName('avatar/radius', modes)
|
|
21
|
-
const borderSize = getVariableByName('avatar/border/size', modes)
|
|
22
|
-
const borderColor = getVariableByName('avatar/border/color', modes)
|
|
19
|
+
const avatarSize = getVariableByName('avatar/size', modes);
|
|
20
|
+
const avatarRadius = getVariableByName('avatar/radius', modes);
|
|
21
|
+
const borderSize = getVariableByName('avatar/border/size', modes);
|
|
22
|
+
const borderColor = getVariableByName('avatar/border/color', modes);
|
|
23
23
|
|
|
24
|
-
const paddingLeft = getVariableByName('avatarGroup/padding/left', modes)
|
|
25
|
-
const paddingRight = getVariableByName('avatarGroup/padding/right', modes)
|
|
26
|
-
const paddingTop = getVariableByName('avatarGroup/padding/top', modes)
|
|
27
|
-
const paddingBottom = getVariableByName('avatarGroup/padding/bottom', modes)
|
|
24
|
+
const paddingLeft = getVariableByName('avatarGroup/padding/left', modes);
|
|
25
|
+
const paddingRight = getVariableByName('avatarGroup/padding/right', modes);
|
|
26
|
+
const paddingTop = getVariableByName('avatarGroup/padding/top', modes);
|
|
27
|
+
const paddingBottom = getVariableByName('avatarGroup/padding/bottom', modes);
|
|
28
28
|
|
|
29
29
|
const validChildren = flattenChildren(children);
|
|
30
30
|
const totalChildren = validChildren.length;
|
|
@@ -7,14 +7,24 @@ import {
|
|
|
7
7
|
type TextStyle,
|
|
8
8
|
} from 'react-native'
|
|
9
9
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
10
|
-
import { EMPTY_MODES } from '../../utils/react-utils'
|
|
10
|
+
import { EMPTY_MODES, resolveTruncation } from '../../utils/react-utils'
|
|
11
11
|
import Skeleton from '../../skeleton/Skeleton'
|
|
12
12
|
import { useSkeleton } from '../../skeleton/SkeletonGroup'
|
|
13
13
|
import type { Modes } from '../../design-tokens'
|
|
14
|
+
import GlassFill from '../../utils/GlassFill/GlassFill'
|
|
14
15
|
|
|
15
|
-
type
|
|
16
|
+
export type BadgeType = 'default' | 'glass'
|
|
17
|
+
|
|
18
|
+
export type BadgeProps = {
|
|
16
19
|
/** Visible label text shown inside the badge */
|
|
17
20
|
label?: string
|
|
21
|
+
/**
|
|
22
|
+
* Visual style (matches the Figma `type` property). `'default'` is a solid
|
|
23
|
+
* token-colored pill; `'glass'` is a frosted, translucent pill backed by a
|
|
24
|
+
* real background blur (`GlassFill`) — the same glass surface used at the
|
|
25
|
+
* bottom of media/merchandising cards.
|
|
26
|
+
*/
|
|
27
|
+
type?: BadgeType
|
|
18
28
|
/** Modes used to resolve design tokens (e.g. Appearance, Size) */
|
|
19
29
|
modes?: Modes
|
|
20
30
|
/** Optional press handler to make the badge interactive */
|
|
@@ -22,44 +32,86 @@ type BadgeProps = {
|
|
|
22
32
|
accessibilityLabel?: string
|
|
23
33
|
style?: ViewStyle
|
|
24
34
|
labelStyle?: TextStyle
|
|
35
|
+
/**
|
|
36
|
+
* Optional leading node (icon/image) rendered before the label, inside the
|
|
37
|
+
* badge surface. When present, the badge lays its contents out in a row.
|
|
38
|
+
*/
|
|
39
|
+
leading?: React.ReactNode
|
|
40
|
+
/**
|
|
41
|
+
* Glass-only override for the translucent overlay color painted over the live
|
|
42
|
+
* blur. Defaults to the `badge/glass/color/background` token. Ignored for the
|
|
43
|
+
* `'default'` type.
|
|
44
|
+
*/
|
|
45
|
+
glassOverlayColor?: string
|
|
46
|
+
/**
|
|
47
|
+
* Glass-only override for the blur intensity on the 0–100 scale. Defaults to
|
|
48
|
+
* the `blur/minimal` token. Ignored for the `'default'` type.
|
|
49
|
+
*/
|
|
50
|
+
glassIntensity?: number
|
|
25
51
|
/**
|
|
26
52
|
* Explicit per-instance loading override. When `true`, renders a
|
|
27
53
|
* badge-shaped skeleton placeholder instead of the badge. Defaults to
|
|
28
54
|
* inheriting from the surrounding `<SkeletonGroup>`.
|
|
29
55
|
*/
|
|
30
56
|
loading?: boolean
|
|
57
|
+
/**
|
|
58
|
+
* When `true`, disables text truncation: the trailing ellipsis (`…`) is never
|
|
59
|
+
* shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
|
|
60
|
+
* lines as it needs even when horizontal space is tight.
|
|
61
|
+
*/
|
|
62
|
+
disableTruncation?: boolean
|
|
31
63
|
} & Omit<React.ComponentProps<typeof View>, 'style' | 'accessibilityLabel' | 'accessibilityRole'>
|
|
32
64
|
|
|
33
65
|
function Badge({
|
|
34
66
|
label = 'Label',
|
|
67
|
+
type = 'default',
|
|
35
68
|
modes = EMPTY_MODES,
|
|
36
69
|
onPress,
|
|
37
70
|
accessibilityLabel,
|
|
38
71
|
style,
|
|
39
72
|
labelStyle,
|
|
40
73
|
loading,
|
|
74
|
+
disableTruncation,
|
|
75
|
+
leading,
|
|
76
|
+
glassOverlayColor,
|
|
77
|
+
glassIntensity,
|
|
41
78
|
...rest
|
|
42
79
|
}: BadgeProps) {
|
|
43
|
-
|
|
80
|
+
const isGlass = type === 'glass'
|
|
81
|
+
const hasLeading = leading != null
|
|
82
|
+
|
|
83
|
+
// Resolve token values (fall back to sensible defaults). The glass type
|
|
84
|
+
// swaps the solid fill for a translucent overlay + white label, matching the
|
|
85
|
+
// Figma `badge/glass/*` tokens.
|
|
44
86
|
const backgroundColor =
|
|
45
|
-
(getVariableByName('badge/color/background', modes) as string)
|
|
46
|
-
const
|
|
47
|
-
(getVariableByName('badge/color/
|
|
87
|
+
(getVariableByName('badge/color/background', modes) as string)
|
|
88
|
+
const glassBackground =
|
|
89
|
+
(getVariableByName('badge/glass/color/background', modes) as string)
|
|
90
|
+
const glassLabelColor =
|
|
91
|
+
(getVariableByName('badge/glass/color/label', modes) as string)
|
|
92
|
+
const labelColor = isGlass
|
|
93
|
+
? glassLabelColor
|
|
94
|
+
: (getVariableByName('badge/color/label', modes) as string)
|
|
48
95
|
const fontSize =
|
|
49
|
-
Number(getVariableByName('badge/label/fontSize', modes) as unknown)
|
|
96
|
+
Number(getVariableByName('badge/label/fontSize', modes) as unknown)
|
|
50
97
|
const fontFamily =
|
|
51
|
-
(getVariableByName('badge/fontFamily', modes) as string)
|
|
98
|
+
(getVariableByName('badge/fontFamily', modes) as string)
|
|
52
99
|
const fontWeight =
|
|
53
|
-
(getVariableByName('badge/label/fontWeight', modes) as string)
|
|
100
|
+
(getVariableByName('badge/label/fontWeight', modes) as string)
|
|
54
101
|
const paddingHorizontal =
|
|
55
|
-
Number(getVariableByName('badge/padding/horizontal', modes) as unknown)
|
|
102
|
+
Number(getVariableByName('badge/padding/horizontal', modes) as unknown)
|
|
56
103
|
const paddingVertical =
|
|
57
|
-
Number(getVariableByName('badge/padding/vertical', modes) as unknown)
|
|
104
|
+
Number(getVariableByName('badge/padding/vertical', modes) as unknown)
|
|
58
105
|
const borderRadius =
|
|
59
|
-
Number(getVariableByName('badge/radius', modes) as unknown)
|
|
106
|
+
Number(getVariableByName('badge/radius', modes) as unknown)
|
|
60
107
|
const lineHeight =
|
|
61
|
-
Number(getVariableByName('badge/label/lineHeight', modes) as unknown)
|
|
62
|
-
|
|
108
|
+
Number(getVariableByName('badge/label/lineHeight', modes) as unknown)
|
|
109
|
+
// Figma `blur/minimal` (px radius) -> GlassFill's 0–100 intensity scale, the
|
|
110
|
+
// same 1:1 mapping the merchandising card footer uses.
|
|
111
|
+
const blurIntensity = Math.max(
|
|
112
|
+
0,
|
|
113
|
+
Math.min(100, Math.round(Number(getVariableByName('blur/minimal', modes) as unknown))),
|
|
114
|
+
)
|
|
63
115
|
|
|
64
116
|
// Skeleton short-circuit. Size derived from the same tokens the loaded
|
|
65
117
|
// badge would use so the placeholder occupies the same box.
|
|
@@ -82,13 +134,20 @@ function Badge({
|
|
|
82
134
|
const Container: any = onPress ? Pressable : View
|
|
83
135
|
|
|
84
136
|
const containerStyle: ViewStyle = {
|
|
85
|
-
|
|
137
|
+
// Glass keeps the container transparent so the GlassFill blur shows through;
|
|
138
|
+
// `overflow: 'hidden'` clips the native blur view to the rounded pill (the
|
|
139
|
+
// blur view does not honor borderRadius itself).
|
|
140
|
+
backgroundColor: isGlass ? 'transparent' : backgroundColor,
|
|
86
141
|
paddingHorizontal,
|
|
87
142
|
paddingVertical,
|
|
88
143
|
borderRadius,
|
|
89
144
|
alignSelf: 'flex-start',
|
|
90
145
|
alignItems: 'center',
|
|
91
146
|
justifyContent: 'center',
|
|
147
|
+
// A leading node sits in-line before the label, so switch to a row with a
|
|
148
|
+
// small gap. Consumer `style` (spread last) can still override either.
|
|
149
|
+
...(hasLeading ? { flexDirection: 'row' as const, gap: 4 } : null),
|
|
150
|
+
...(isGlass ? { overflow: 'hidden' as const } : null),
|
|
92
151
|
...((style as any) || {}),
|
|
93
152
|
}
|
|
94
153
|
|
|
@@ -112,10 +171,18 @@ function Badge({
|
|
|
112
171
|
onPress={onPress}
|
|
113
172
|
{...rest}
|
|
114
173
|
>
|
|
174
|
+
{isGlass ? (
|
|
175
|
+
<GlassFill
|
|
176
|
+
tint="light"
|
|
177
|
+
intensity={glassIntensity ?? blurIntensity}
|
|
178
|
+
overlayColor={glassOverlayColor ?? glassBackground}
|
|
179
|
+
androidTintWash={false}
|
|
180
|
+
/>
|
|
181
|
+
) : null}
|
|
182
|
+
{hasLeading ? <View style={LEADING_WRAP}>{leading}</View> : null}
|
|
115
183
|
<Text
|
|
116
184
|
style={textStyle}
|
|
117
|
-
|
|
118
|
-
ellipsizeMode="tail"
|
|
185
|
+
{...resolveTruncation(disableTruncation, 1, 'tail')}
|
|
119
186
|
accessibilityElementsHidden={false}
|
|
120
187
|
>
|
|
121
188
|
{label}
|
|
@@ -124,6 +191,8 @@ function Badge({
|
|
|
124
191
|
)
|
|
125
192
|
}
|
|
126
193
|
|
|
194
|
+
const LEADING_WRAP: ViewStyle = { justifyContent: 'center', alignItems: 'center' }
|
|
195
|
+
|
|
127
196
|
export default Badge
|
|
128
197
|
|
|
129
198
|
|