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
|
@@ -14,9 +14,18 @@ var _Button = _interopRequireDefault(require("../Button/Button"));
|
|
|
14
14
|
var _Badge = _interopRequireDefault(require("../Badge/Badge"));
|
|
15
15
|
var _ButtonGroup = _interopRequireDefault(require("../ButtonGroup/ButtonGroup"));
|
|
16
16
|
var _IconButton = _interopRequireDefault(require("../IconButton/IconButton"));
|
|
17
|
+
var _Avatar = _interopRequireDefault(require("../Avatar/Avatar"));
|
|
17
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
19
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
|
+
/**
|
|
21
|
+
* Accepted `type` values. The canonical (and historical) values are lowercase
|
|
22
|
+
* (`'cta' | 'rating' | 'sip'`). The Figma variant names are PascalCase
|
|
23
|
+
* (`'CTA' | 'Rating' | 'Sip'`) — we accept those too and normalize internally
|
|
24
|
+
* so callers can pass either casing without a breaking change.
|
|
25
|
+
*/
|
|
26
|
+
|
|
19
27
|
const optionalTokenAvailability = new Map();
|
|
28
|
+
const toWeight = w => typeof w === 'number' ? `${w}` : w;
|
|
20
29
|
function getOptionalVariableByName(name, modes, fallback) {
|
|
21
30
|
let isAvailable = optionalTokenAvailability.get(name);
|
|
22
31
|
if (isAvailable === undefined) {
|
|
@@ -39,11 +48,16 @@ function CardCTA({
|
|
|
39
48
|
showRatingActions = true,
|
|
40
49
|
onPressLike,
|
|
41
50
|
onPressDislike,
|
|
51
|
+
headline = 'Headline',
|
|
52
|
+
description = 'Description',
|
|
53
|
+
subtitle = 'Subtitle',
|
|
54
|
+
avatarSource,
|
|
42
55
|
modes: propModes = _reactUtils.EMPTY_MODES,
|
|
43
56
|
iconSlot,
|
|
44
57
|
buttonSlot,
|
|
45
58
|
ratingBadgeSlot,
|
|
46
59
|
ratingActionsSlot,
|
|
60
|
+
avatarSlot,
|
|
47
61
|
style
|
|
48
62
|
}) {
|
|
49
63
|
const {
|
|
@@ -53,28 +67,31 @@ function CardCTA({
|
|
|
53
67
|
...globalModes,
|
|
54
68
|
...propModes
|
|
55
69
|
};
|
|
56
|
-
|
|
57
|
-
const
|
|
58
|
-
const
|
|
59
|
-
const
|
|
60
|
-
const
|
|
61
|
-
const
|
|
62
|
-
const
|
|
63
|
-
const
|
|
64
|
-
const
|
|
65
|
-
const
|
|
66
|
-
const
|
|
67
|
-
const
|
|
68
|
-
const
|
|
69
|
-
const
|
|
70
|
-
const
|
|
71
|
-
const
|
|
70
|
+
// Accept both lowercase (canonical) and Figma PascalCase variant names.
|
|
71
|
+
const normalizedType = typeof type === 'string' ? type.toLowerCase() : 'cta';
|
|
72
|
+
const isRating = normalizedType === 'rating';
|
|
73
|
+
const isSip = normalizedType === 'sip';
|
|
74
|
+
const background = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/background', modes);
|
|
75
|
+
const radius = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/radius', modes);
|
|
76
|
+
const borderSize = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/border/size', modes);
|
|
77
|
+
const borderColor = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/border/color', modes);
|
|
78
|
+
const leftPaddingH = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/left-wrap/padding/horizontal', modes);
|
|
79
|
+
const leftPaddingV = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/left-wrap/padding/vertical', modes);
|
|
80
|
+
const leftGap = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/left-wrap/gap', modes);
|
|
81
|
+
const rightPaddingH = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/right-wrap/padding/horizontal', modes);
|
|
82
|
+
const rightPaddingV = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/right-wrap/padding/vertical', modes);
|
|
83
|
+
const textGap = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/text-wrap/gap', modes);
|
|
84
|
+
const titleColor = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/title/color', modes);
|
|
85
|
+
const titleFontFamily = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/title/fontFamily', modes);
|
|
86
|
+
const titleFontSize = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/title/fontSize', modes);
|
|
87
|
+
const titleLineHeight = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/title/lineHeight', modes);
|
|
88
|
+
const titleFontWeightRaw = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/title/fontWeight', modes);
|
|
72
89
|
const titleFontWeight = typeof titleFontWeightRaw === 'number' ? titleFontWeightRaw.toString() : titleFontWeightRaw;
|
|
73
|
-
const bodyColor = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/body/color', modes)
|
|
74
|
-
const bodyFontFamily = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/body/fontFamily', modes)
|
|
75
|
-
const bodyFontSize = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/body/fontSize', modes)
|
|
76
|
-
const bodyLineHeight = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/body/lineHeight', modes)
|
|
77
|
-
const bodyFontWeightRaw = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/body/fontWeight', modes)
|
|
90
|
+
const bodyColor = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/body/color', modes);
|
|
91
|
+
const bodyFontFamily = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/body/fontFamily', modes);
|
|
92
|
+
const bodyFontSize = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/body/fontSize', modes);
|
|
93
|
+
const bodyLineHeight = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/body/lineHeight', modes);
|
|
94
|
+
const bodyFontWeightRaw = (0, _figmaVariablesResolver.getVariableByName)('cardCTA/body/fontWeight', modes);
|
|
78
95
|
const bodyFontWeight = typeof bodyFontWeightRaw === 'number' ? bodyFontWeightRaw.toString() : bodyFontWeightRaw;
|
|
79
96
|
const ratingContentGap = getOptionalVariableByName('cardCTA/rating/content/gap', modes, 12);
|
|
80
97
|
const ratingContentPaddingH = getOptionalVariableByName('cardCTA/rating/content/padding/horizontal', modes, 16);
|
|
@@ -82,6 +99,33 @@ function CardCTA({
|
|
|
82
99
|
const ratingFooterPaddingH = getOptionalVariableByName('cardCTA/rating/footer/horizontal', modes, 16);
|
|
83
100
|
const ratingFooterPaddingTop = getOptionalVariableByName('cardCTA/rating/footer/top', modes, 0);
|
|
84
101
|
const ratingFooterPaddingBottom = getOptionalVariableByName('cardCTA/rating/footer/bottom', modes, 12);
|
|
102
|
+
|
|
103
|
+
// Sip variant footer text block (Headline / Description / Subtitle). These
|
|
104
|
+
// `ccCard/*` tokens were introduced for the Sip layout — resolve them
|
|
105
|
+
// optionally so older token snapshots that lack them fall back gracefully.
|
|
106
|
+
const sipFooterGap = getOptionalVariableByName('ccCard/footer/textWrap/gap', modes, 4);
|
|
107
|
+
const sipHeadlineColor = getOptionalVariableByName('ccCard/headline/color', modes, '#707275');
|
|
108
|
+
const sipHeadlineFontFamily = getOptionalVariableByName('ccCard/headline/fontFamily', modes, 'JioType Var');
|
|
109
|
+
const sipHeadlineFontSize = getOptionalVariableByName('ccCard/headline/fontSize', modes, 10);
|
|
110
|
+
const sipHeadlineLineHeight = getOptionalVariableByName('ccCard/headline/lineHeight', modes, 13);
|
|
111
|
+
const sipHeadlineFontWeightRaw = getOptionalVariableByName('ccCard/headline/fontWeight', modes, 500);
|
|
112
|
+
const sipHeadlineFontWeight = typeof sipHeadlineFontWeightRaw === 'number' ? sipHeadlineFontWeightRaw.toString() : sipHeadlineFontWeightRaw;
|
|
113
|
+
const sipDescriptionColor = getOptionalVariableByName('ccCard/title/color', modes, '#081007');
|
|
114
|
+
const sipDescriptionFontFamily = getOptionalVariableByName('ccCard/title/fontFamily', modes, 'JioType Var');
|
|
115
|
+
const sipDescriptionFontSize = getOptionalVariableByName('ccCard/title/fontSize', modes, 14);
|
|
116
|
+
const sipDescriptionLineHeight = getOptionalVariableByName('ccCard/title/lineHeight', modes, 15);
|
|
117
|
+
const sipDescriptionFontWeightRaw = getOptionalVariableByName('ccCard/title/fontWeight', modes, 700);
|
|
118
|
+
const sipDescriptionFontWeight = typeof sipDescriptionFontWeightRaw === 'number' ? sipDescriptionFontWeightRaw.toString() : sipDescriptionFontWeightRaw;
|
|
119
|
+
const sipSubtitleColor = getOptionalVariableByName('ccCard/subtitle/color', modes, '#707275');
|
|
120
|
+
const sipSubtitleFontFamily = getOptionalVariableByName('ccCard/subtitle/fontFamily', modes, 'JioType Var');
|
|
121
|
+
const sipSubtitleFontSize = getOptionalVariableByName('ccCard/subtitle/fontSize', modes, 10);
|
|
122
|
+
const sipSubtitleLineHeight = getOptionalVariableByName('ccCard/subtitle/lineHeight', modes, 13);
|
|
123
|
+
const sipSubtitleFontWeightRaw = getOptionalVariableByName('ccCard/subtitle/fontWeight', modes, 500);
|
|
124
|
+
const sipSubtitleFontWeight = typeof sipSubtitleFontWeightRaw === 'number' ? sipSubtitleFontWeightRaw.toString() : sipSubtitleFontWeightRaw;
|
|
125
|
+
const avatarModes = {
|
|
126
|
+
...modes,
|
|
127
|
+
'Avatar Size': 'L'
|
|
128
|
+
};
|
|
85
129
|
const buttonModes = {
|
|
86
130
|
...modes,
|
|
87
131
|
AppearanceBrand: 'Secondary',
|
|
@@ -96,27 +140,74 @@ function CardCTA({
|
|
|
96
140
|
const effectiveButtonLabel = buttonLabel ?? (isRating ? 'Save' : 'Button');
|
|
97
141
|
const nonWrappingButtonLabel = effectiveButtonLabel.replace(/\s/g, '\u00A0');
|
|
98
142
|
const [measuredButtonLabelWidth, setMeasuredButtonLabelWidth] = _react.default.useState(null);
|
|
99
|
-
const buttonPaddingH = (0, _figmaVariablesResolver.getVariableByName)('button/padding/horizontal', buttonModes)
|
|
143
|
+
const buttonPaddingH = (0, _figmaVariablesResolver.getVariableByName)('button/padding/horizontal', buttonModes);
|
|
100
144
|
const buttonBorderSize = (0, _figmaVariablesResolver.getVariableByName)('button/border/size', buttonModes) ?? 1;
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
145
|
+
// Small safety pad so sub-pixel rounding between the measure pass and the
|
|
146
|
+
// rendered glyph run can never clip the final character.
|
|
147
|
+
const measuredButtonWidth = measuredButtonLabelWidth === null ? undefined : Math.ceil(measuredButtonLabelWidth + buttonPaddingH * 2 + buttonBorderSize * 2 + 2);
|
|
148
|
+
|
|
149
|
+
// ROOT-CAUSE FIX for the Android "jumping button" feedback loop + clipping.
|
|
150
|
+
//
|
|
151
|
+
// Previously the *visible* label measured itself via `onTextLayout` and we
|
|
152
|
+
// fed that width straight back onto the same Button. Because the button is
|
|
153
|
+
// width-constrained by its parent, Android clamps the overflowing text and
|
|
154
|
+
// even character-breaks a single word ("Save" -> "Sav"/"e"); the re-applied
|
|
155
|
+
// width re-triggers layout, producing an endless ~60fps width oscillation.
|
|
156
|
+
//
|
|
157
|
+
// We now measure an *off-screen* copy of the label, laid out at an
|
|
158
|
+
// effectively unbounded width, so its reported single-line width is
|
|
159
|
+
// intrinsic and constant regardless of the button's applied width — the
|
|
160
|
+
// measurement can no longer depend on the value it produces, so the loop is
|
|
161
|
+
// impossible. Crucially the measurer reuses the Button's own resolved label
|
|
162
|
+
// styles (passed into `renderContent`), so the measured font matches the
|
|
163
|
+
// rendered font exactly and the width is never an under-estimate. The label
|
|
164
|
+
// is always a single line that overflows rather than wraps or truncates.
|
|
165
|
+
const handleMeasureTextLayout = _react.default.useCallback(event => {
|
|
166
|
+
const line = event?.nativeEvent?.lines?.[0];
|
|
167
|
+
const width = line && typeof line.width === 'number' ? line.width : 0;
|
|
168
|
+
if (width <= 0) return;
|
|
169
|
+
setMeasuredButtonLabelWidth(currentWidth => currentWidth !== null && Math.abs(currentWidth - width) < 0.5 ? currentWidth : Math.ceil(width));
|
|
113
170
|
}, []);
|
|
171
|
+
|
|
172
|
+
// Off-screen measurer wrapper: absolute + opacity 0 + pointerEvents none =>
|
|
173
|
+
// out of flow, invisible, never intercepts touches, zero layout impact.
|
|
174
|
+
const measurerWrapStyle = {
|
|
175
|
+
position: 'absolute',
|
|
176
|
+
left: 0,
|
|
177
|
+
top: 0,
|
|
178
|
+
opacity: 0
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
// Renders the visible single-line label (never wraps, never ellipsizes) plus
|
|
182
|
+
// the co-located off-screen measurer that shares the Button's exact label
|
|
183
|
+
// styles. `width: 9999` forces the measurer onto one line so `onTextLayout`
|
|
184
|
+
// reports the true intrinsic width.
|
|
185
|
+
const renderButtonContent = labelExtraStyle => labelStyles => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
186
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
187
|
+
numberOfLines: 1,
|
|
188
|
+
ellipsizeMode: "clip",
|
|
189
|
+
style: [labelStyles, labelExtraStyle],
|
|
190
|
+
children: nonWrappingButtonLabel
|
|
191
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
192
|
+
pointerEvents: "none",
|
|
193
|
+
accessibilityElementsHidden: true,
|
|
194
|
+
importantForAccessibility: "no",
|
|
195
|
+
style: measurerWrapStyle,
|
|
196
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
197
|
+
style: [labelStyles, {
|
|
198
|
+
width: 9999
|
|
199
|
+
}],
|
|
200
|
+
onTextLayout: handleMeasureTextLayout,
|
|
201
|
+
children: nonWrappingButtonLabel
|
|
202
|
+
})
|
|
203
|
+
})]
|
|
204
|
+
});
|
|
114
205
|
const containerStyle = {
|
|
115
206
|
backgroundColor: background,
|
|
116
207
|
borderRadius: radius,
|
|
117
208
|
borderWidth: borderSize,
|
|
118
209
|
borderColor,
|
|
119
|
-
flexDirection: isRating ? 'column' : 'row',
|
|
210
|
+
flexDirection: isRating || isSip ? 'column' : 'row',
|
|
120
211
|
overflow: 'visible'
|
|
121
212
|
};
|
|
122
213
|
|
|
@@ -202,6 +293,47 @@ function CardCTA({
|
|
|
202
293
|
lineHeight: bodyLineHeight,
|
|
203
294
|
fontWeight: bodyFontWeight
|
|
204
295
|
};
|
|
296
|
+
const sipWrapStyle = {
|
|
297
|
+
width: '100%',
|
|
298
|
+
paddingHorizontal: leftPaddingH,
|
|
299
|
+
paddingVertical: leftPaddingV,
|
|
300
|
+
gap: leftGap,
|
|
301
|
+
alignItems: 'flex-start',
|
|
302
|
+
justifyContent: 'flex-start',
|
|
303
|
+
overflow: 'visible'
|
|
304
|
+
};
|
|
305
|
+
const sipFooterTextWrapStyle = {
|
|
306
|
+
gap: sipFooterGap,
|
|
307
|
+
alignItems: 'flex-start',
|
|
308
|
+
alignSelf: 'stretch',
|
|
309
|
+
minWidth: 0
|
|
310
|
+
};
|
|
311
|
+
const sipDescriptionWrapStyle = {
|
|
312
|
+
flexDirection: 'row',
|
|
313
|
+
gap: sipFooterGap,
|
|
314
|
+
alignItems: 'flex-end'
|
|
315
|
+
};
|
|
316
|
+
const sipHeadlineStyle = {
|
|
317
|
+
color: sipHeadlineColor,
|
|
318
|
+
fontFamily: sipHeadlineFontFamily,
|
|
319
|
+
fontSize: sipHeadlineFontSize,
|
|
320
|
+
lineHeight: sipHeadlineLineHeight,
|
|
321
|
+
fontWeight: toWeight(sipHeadlineFontWeightRaw)
|
|
322
|
+
};
|
|
323
|
+
const sipDescriptionStyle = {
|
|
324
|
+
color: sipDescriptionColor,
|
|
325
|
+
fontFamily: sipDescriptionFontFamily,
|
|
326
|
+
fontSize: sipDescriptionFontSize,
|
|
327
|
+
lineHeight: sipDescriptionLineHeight,
|
|
328
|
+
fontWeight: toWeight(sipDescriptionFontWeightRaw)
|
|
329
|
+
};
|
|
330
|
+
const sipSubtitleStyle = {
|
|
331
|
+
color: sipSubtitleColor,
|
|
332
|
+
fontFamily: sipSubtitleFontFamily,
|
|
333
|
+
fontSize: sipSubtitleFontSize,
|
|
334
|
+
lineHeight: sipSubtitleLineHeight,
|
|
335
|
+
fontWeight: toWeight(sipSubtitleFontWeightRaw)
|
|
336
|
+
};
|
|
205
337
|
const ratingContentStyle = {
|
|
206
338
|
paddingHorizontal: ratingContentPaddingH,
|
|
207
339
|
paddingVertical: ratingContentPaddingV,
|
|
@@ -248,6 +380,52 @@ function CardCTA({
|
|
|
248
380
|
flexShrink: 0,
|
|
249
381
|
flexWrap: 'nowrap'
|
|
250
382
|
};
|
|
383
|
+
if (isSip) {
|
|
384
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
385
|
+
style: [containerStyle, style],
|
|
386
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
387
|
+
style: sipWrapStyle,
|
|
388
|
+
children: [avatarSlot ? (0, _reactUtils.cloneChildrenWithModes)(avatarSlot, avatarModes) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {
|
|
389
|
+
style: "Image",
|
|
390
|
+
imageSource: avatarSource,
|
|
391
|
+
modes: avatarModes
|
|
392
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
393
|
+
style: textWrapStyle,
|
|
394
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
395
|
+
style: titleStyle,
|
|
396
|
+
children: title
|
|
397
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
398
|
+
style: bodyStyle,
|
|
399
|
+
children: body
|
|
400
|
+
})]
|
|
401
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
402
|
+
style: sipFooterTextWrapStyle,
|
|
403
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
404
|
+
style: sipHeadlineStyle,
|
|
405
|
+
children: headline
|
|
406
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
407
|
+
style: sipDescriptionWrapStyle,
|
|
408
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
409
|
+
style: sipDescriptionStyle,
|
|
410
|
+
children: description
|
|
411
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
412
|
+
style: sipSubtitleStyle,
|
|
413
|
+
children: subtitle
|
|
414
|
+
})]
|
|
415
|
+
})]
|
|
416
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
417
|
+
style: buttonWrapStyle,
|
|
418
|
+
children: buttonSlot ? (0, _reactUtils.cloneChildrenWithModes)(buttonSlot, buttonModes) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
419
|
+
label: effectiveButtonLabel,
|
|
420
|
+
onPress: onPressButton || (() => {}),
|
|
421
|
+
modes: buttonModes,
|
|
422
|
+
style: buttonStyle,
|
|
423
|
+
renderContent: renderButtonContent(buttonLabelStyle)
|
|
424
|
+
})
|
|
425
|
+
})]
|
|
426
|
+
})
|
|
427
|
+
});
|
|
428
|
+
}
|
|
251
429
|
if (isRating) {
|
|
252
430
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
253
431
|
style: [containerStyle, style],
|
|
@@ -275,11 +453,7 @@ function CardCTA({
|
|
|
275
453
|
onPress: onPressButton || (() => {}),
|
|
276
454
|
modes: buttonModes,
|
|
277
455
|
style: ratingButtonStyle,
|
|
278
|
-
renderContent:
|
|
279
|
-
onTextLayout: handleButtonLabelTextLayout,
|
|
280
|
-
style: [labelStyles, ratingButtonLabelStyle],
|
|
281
|
-
children: nonWrappingButtonLabel
|
|
282
|
-
})
|
|
456
|
+
renderContent: renderButtonContent(ratingButtonLabelStyle)
|
|
283
457
|
})
|
|
284
458
|
}), showRatingActions ? ratingActionsSlot ? (0, _reactUtils.cloneChildrenWithModes)(ratingActionsSlot, iconButtonModes) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ButtonGroup.default, {
|
|
285
459
|
modes: iconButtonModes,
|
|
@@ -320,11 +494,7 @@ function CardCTA({
|
|
|
320
494
|
onPress: onPressButton || (() => {}),
|
|
321
495
|
modes: buttonModes,
|
|
322
496
|
style: buttonStyle,
|
|
323
|
-
renderContent:
|
|
324
|
-
onTextLayout: handleButtonLabelTextLayout,
|
|
325
|
-
style: [labelStyles, buttonLabelStyle],
|
|
326
|
-
children: nonWrappingButtonLabel
|
|
327
|
-
})
|
|
497
|
+
renderContent: renderButtonContent(buttonLabelStyle)
|
|
328
498
|
})
|
|
329
499
|
})]
|
|
330
500
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
@@ -38,11 +38,11 @@ function CardFeedback({
|
|
|
38
38
|
...propModes
|
|
39
39
|
};
|
|
40
40
|
// Container Tokens
|
|
41
|
-
const backgroundColor = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/background', modes)
|
|
42
|
-
const radius = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/radius', modes)
|
|
43
|
-
const gap = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/gap', modes)
|
|
44
|
-
const paddingHorizontal = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/padding/horizontal', modes)
|
|
45
|
-
const paddingVertical = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/padding/vertical', modes)
|
|
41
|
+
const backgroundColor = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/background', modes);
|
|
42
|
+
const radius = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/radius', modes));
|
|
43
|
+
const gap = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/gap', modes));
|
|
44
|
+
const paddingHorizontal = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/padding/horizontal', modes));
|
|
45
|
+
const paddingVertical = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/padding/vertical', modes));
|
|
46
46
|
const containerStyle = {
|
|
47
47
|
backgroundColor,
|
|
48
48
|
borderRadius: radius,
|
|
@@ -81,7 +81,7 @@ function Icon({
|
|
|
81
81
|
}) {
|
|
82
82
|
const context = (0, _react.useContext)(CardFeedbackContext);
|
|
83
83
|
const modes = propModes || context.modes || {};
|
|
84
|
-
const size = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/icon/size', modes)
|
|
84
|
+
const size = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/icon/size', modes));
|
|
85
85
|
// Color for the icon itself
|
|
86
86
|
const color = (0, _figmaVariablesResolver.getVariableByName)('appearanceFeedback/cardFeedback/icon/color', modes);
|
|
87
87
|
console.log(color);
|
|
@@ -127,7 +127,7 @@ function Content({
|
|
|
127
127
|
}) {
|
|
128
128
|
const context = (0, _react.useContext)(CardFeedbackContext);
|
|
129
129
|
const modes = propModes || context.modes || {};
|
|
130
|
-
const gap = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/text/gap', modes)
|
|
130
|
+
const gap = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/text/gap', modes));
|
|
131
131
|
|
|
132
132
|
// Pass modes to children (Title, Body, etc.)
|
|
133
133
|
const childrenWithModes = _react.default.Children.map(children, child => {
|
|
@@ -161,11 +161,11 @@ function Title({
|
|
|
161
161
|
}) {
|
|
162
162
|
const context = (0, _react.useContext)(CardFeedbackContext);
|
|
163
163
|
const modes = propModes || context.modes || {};
|
|
164
|
-
const color = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/title/color', modes)
|
|
165
|
-
const fontSize = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/title/fontSize', modes)
|
|
166
|
-
const fontFamily = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/title/fontFamily', modes)
|
|
167
|
-
const lineHeight = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/title/lineHeight', modes)
|
|
168
|
-
const fontWeight = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/title/fontWeight', modes)
|
|
164
|
+
const color = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/title/color', modes);
|
|
165
|
+
const fontSize = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/title/fontSize', modes));
|
|
166
|
+
const fontFamily = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/title/fontFamily', modes);
|
|
167
|
+
const lineHeight = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/title/lineHeight', modes));
|
|
168
|
+
const fontWeight = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/title/fontWeight', modes);
|
|
169
169
|
const textStyle = {
|
|
170
170
|
color,
|
|
171
171
|
fontSize,
|
|
@@ -190,11 +190,11 @@ function Body({
|
|
|
190
190
|
}) {
|
|
191
191
|
const context = (0, _react.useContext)(CardFeedbackContext);
|
|
192
192
|
const modes = propModes || context.modes || {};
|
|
193
|
-
const color = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/body/color', modes)
|
|
194
|
-
const fontSize = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/body/fontSize', modes)
|
|
195
|
-
const fontFamily = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/body/fontFamily', modes)
|
|
196
|
-
const lineHeight = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/body/lineHeight', modes)
|
|
197
|
-
const fontWeight = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/body/fontWeight', modes)
|
|
193
|
+
const color = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/body/color', modes);
|
|
194
|
+
const fontSize = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/body/fontSize', modes));
|
|
195
|
+
const fontFamily = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/body/fontFamily', modes);
|
|
196
|
+
const lineHeight = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/body/lineHeight', modes));
|
|
197
|
+
const fontWeight = (0, _figmaVariablesResolver.getVariableByName)('cardFeedback/body/fontWeight', modes);
|
|
198
198
|
const textStyle = {
|
|
199
199
|
color,
|
|
200
200
|
fontSize,
|
|
@@ -219,7 +219,7 @@ function Action({
|
|
|
219
219
|
}) {
|
|
220
220
|
const context = (0, _react.useContext)(CardFeedbackContext);
|
|
221
221
|
const modes = propModes || context.modes || {};
|
|
222
|
-
const gap = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/actionSlot/gap', modes)
|
|
222
|
+
const gap = parseFloat((0, _figmaVariablesResolver.getVariableByName)('cardFeedback/actionSlot/gap', modes));
|
|
223
223
|
|
|
224
224
|
// "Maximise existing component usage" -> Pass modes to children (Buttons)
|
|
225
225
|
const childrenWithModes = _react.default.Children.map(children, child => {
|
|
@@ -36,26 +36,26 @@ const toFontWeight = (value, fallback) => {
|
|
|
36
36
|
return fallback;
|
|
37
37
|
};
|
|
38
38
|
function resolveCardFinancialConditionTokens(modes) {
|
|
39
|
-
const background = (0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/background', modes)
|
|
39
|
+
const background = (0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/background', modes);
|
|
40
40
|
const radius = toNumber((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/radius', modes), 16);
|
|
41
41
|
const paddingH = toNumber((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/padding/horizontal', modes), 16);
|
|
42
42
|
const paddingV = toNumber((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/padding/vertical', modes), 16);
|
|
43
43
|
const gap = toNumber((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/gap', modes), 8);
|
|
44
44
|
const headerGap = toNumber((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/header/gap', modes), 16);
|
|
45
45
|
const textContentGap = toNumber((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/textContent/gap', modes), 8);
|
|
46
|
-
const titleColor = (0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/title/color', modes)
|
|
46
|
+
const titleColor = (0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/title/color', modes);
|
|
47
47
|
const titleFontSize = toNumber((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/title/fontSize', modes), 16);
|
|
48
|
-
const titleFontFamily = (0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/title/fontFamily', modes)
|
|
48
|
+
const titleFontFamily = (0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/title/fontFamily', modes);
|
|
49
49
|
const titleLineHeight = toNumber((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/title/lineHeight', modes), 18);
|
|
50
50
|
const titleFontWeight = toFontWeight((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/title/fontWeight', modes), '700');
|
|
51
|
-
const bodyColor = (0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/body/color', modes)
|
|
51
|
+
const bodyColor = (0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/body/color', modes);
|
|
52
52
|
const bodyFontSize = toNumber((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/body/fontSize', modes), 14);
|
|
53
|
-
const bodyFontFamily = (0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/body/fontFamily', modes)
|
|
53
|
+
const bodyFontFamily = (0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/body/fontFamily', modes);
|
|
54
54
|
const bodyLineHeight = toNumber((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/body/lineHeight', modes), 17);
|
|
55
55
|
const bodyFontWeight = toFontWeight((0, _figmaVariablesResolver.getVariableByName)('financialConditionCard/body/fontWeight', modes), '400');
|
|
56
|
-
const nudgeBodyColor = (0, _figmaVariablesResolver.getVariableByName)('nudge/body/color', modes)
|
|
56
|
+
const nudgeBodyColor = (0, _figmaVariablesResolver.getVariableByName)('nudge/body/color', modes);
|
|
57
57
|
const nudgeBodyFontSize = toNumber((0, _figmaVariablesResolver.getVariableByName)('nudge/body/fontSize', modes), 12);
|
|
58
|
-
const nudgeBodyFontFamily = (0, _figmaVariablesResolver.getVariableByName)('nudge/body/fontFamily', modes)
|
|
58
|
+
const nudgeBodyFontFamily = (0, _figmaVariablesResolver.getVariableByName)('nudge/body/fontFamily', modes);
|
|
59
59
|
const nudgeBodyLineHeight = toNumber((0, _figmaVariablesResolver.getVariableByName)('nudge/body/lineHeight', modes), 16);
|
|
60
60
|
const nudgeBodyFontWeight = toFontWeight((0, _figmaVariablesResolver.getVariableByName)('nudge/body/fontWeight', modes), '500');
|
|
61
61
|
return {
|
|
@@ -36,12 +36,13 @@ function CardInsight({
|
|
|
36
36
|
style
|
|
37
37
|
}) {
|
|
38
38
|
const background = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/background', modes) ?? '#ffffff';
|
|
39
|
-
const radius = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/radius', modes) ??
|
|
39
|
+
const radius = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/radius', modes) ?? 12;
|
|
40
|
+
const borderWidth = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/borderWidth', modes) ?? 1;
|
|
41
|
+
const borderColor = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/border/color', modes) ?? '#ffffff';
|
|
40
42
|
const paddingHorizontal = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/padding/horizontal', modes) ?? 12;
|
|
41
43
|
const paddingVertical = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/padding/vertical', modes) ?? 16;
|
|
42
44
|
const gap = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/gap', modes) ?? 12;
|
|
43
45
|
const contentGap = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/contentGap', modes) ?? 8;
|
|
44
|
-
const width = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/width', modes) ?? 356;
|
|
45
46
|
const slotBackground = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/slot/background', modes) ?? '#ffffff';
|
|
46
47
|
const headerGap = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/header/gap', modes) ?? 8;
|
|
47
48
|
const textGap = (0, _figmaVariablesResolver.getVariableByName)('cardInsight/text/gap', modes) ?? 4;
|
|
@@ -71,6 +72,7 @@ function CardInsight({
|
|
|
71
72
|
const renderSlot = () => {
|
|
72
73
|
if (!children) {
|
|
73
74
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_SavingsGoalSummary.default, {
|
|
75
|
+
label: "Credit usage",
|
|
74
76
|
modes: modes
|
|
75
77
|
});
|
|
76
78
|
}
|
|
@@ -106,9 +108,10 @@ function CardInsight({
|
|
|
106
108
|
const showDivider = footerNode !== null && divider !== false && divider !== null;
|
|
107
109
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
108
110
|
style: [{
|
|
109
|
-
width,
|
|
110
111
|
backgroundColor: background,
|
|
111
112
|
borderRadius: radius,
|
|
113
|
+
borderWidth,
|
|
114
|
+
borderColor,
|
|
112
115
|
paddingHorizontal,
|
|
113
116
|
paddingVertical,
|
|
114
117
|
gap,
|
|
@@ -43,16 +43,18 @@ function Carousel({
|
|
|
43
43
|
loop = true,
|
|
44
44
|
gap: gapProp,
|
|
45
45
|
itemWidth: itemWidthProp,
|
|
46
|
+
paddingHorizontal: paddingHorizontalProp,
|
|
47
|
+
paddingVertical: paddingVerticalProp,
|
|
46
48
|
onIndexChange,
|
|
47
49
|
style
|
|
48
50
|
}) {
|
|
49
51
|
// ---- Token resolution ----
|
|
50
|
-
const tokenGap = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/gap', modes)
|
|
52
|
+
const tokenGap = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/gap', modes));
|
|
51
53
|
const gap = gapProp ?? tokenGap;
|
|
52
|
-
const containerPaddingH = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/padding/horizontal', modes)
|
|
53
|
-
const containerPaddingV = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/padding/vertical', modes)
|
|
54
|
+
const containerPaddingH = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/padding/horizontal', modes));
|
|
55
|
+
const containerPaddingV = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/padding/vertical', modes));
|
|
54
56
|
// Outer container max height per Figma (`carousel/maxHeight`).
|
|
55
|
-
const maxHeight = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/maxHeight', modes)
|
|
57
|
+
const maxHeight = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/maxHeight', modes));
|
|
56
58
|
// Spacing between the cards row and the pagination dots uses `carousel/gap`.
|
|
57
59
|
const paginationOffset = gap;
|
|
58
60
|
|
|
@@ -163,12 +165,16 @@ function Carousel({
|
|
|
163
165
|
}), [modes, activeIndex, totalItems, goTo, goNext, goPrev]);
|
|
164
166
|
|
|
165
167
|
// ---- Render ----
|
|
168
|
+
// Explicit padding props win verbatim; otherwise fall back to the
|
|
169
|
+
// token-derived values (horizontal keeps its legacy ×2 "peek" multiplier).
|
|
170
|
+
const effectivePaddingH = paddingHorizontalProp ?? containerPaddingH;
|
|
171
|
+
const effectivePaddingV = paddingVerticalProp ?? containerPaddingV;
|
|
166
172
|
const outerStyle = {
|
|
167
|
-
paddingVertical:
|
|
173
|
+
paddingVertical: effectivePaddingV,
|
|
168
174
|
maxHeight
|
|
169
175
|
};
|
|
170
176
|
const contentContainerStyle = {
|
|
171
|
-
paddingHorizontal:
|
|
177
|
+
paddingHorizontal: effectivePaddingH,
|
|
172
178
|
gap,
|
|
173
179
|
// Align items to the start so snap works correctly
|
|
174
180
|
alignItems: 'flex-start'
|
|
@@ -274,12 +280,12 @@ function Pagination({
|
|
|
274
280
|
|
|
275
281
|
// Token resolution for dots — matches Figma tokens
|
|
276
282
|
// (carousel/pagination/gap, carousel/pagination/indicator/{activeColor,inactiveColor,radius,size,activeWidth}).
|
|
277
|
-
const dotSize = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/indicator/size', modes)
|
|
278
|
-
const dotActiveWidth = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/indicator/activeWidth', modes)
|
|
279
|
-
const dotGap = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/gap', modes)
|
|
280
|
-
const dotColor = (0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/indicator/inactiveColor', modes)
|
|
281
|
-
const dotActiveColor = (0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/indicator/activeColor', modes)
|
|
282
|
-
const dotRadius = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/indicator/radius', modes)
|
|
283
|
+
const dotSize = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/indicator/size', modes));
|
|
284
|
+
const dotActiveWidth = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/indicator/activeWidth', modes));
|
|
285
|
+
const dotGap = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/gap', modes));
|
|
286
|
+
const dotColor = (0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/indicator/inactiveColor', modes);
|
|
287
|
+
const dotActiveColor = (0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/indicator/activeColor', modes);
|
|
288
|
+
const dotRadius = parseFloat((0, _figmaVariablesResolver.getVariableByName)('carousel/pagination/indicator/radius', modes));
|
|
283
289
|
const containerStyle = {
|
|
284
290
|
flexDirection: 'row',
|
|
285
291
|
justifyContent: 'center',
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _figmaVariablesResolver = require("../../design-tokens/figma-variables-resolver");
|
|
9
|
+
var _reactUtils = require("../../utils/react-utils");
|
|
10
|
+
var _Carousel = _interopRequireDefault(require("../Carousel/Carousel"));
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
// Figma reference width for a single Account Card slot (`Carousel / Card Accounts`).
|
|
14
|
+
const DEFAULT_ITEM_WIDTH = 125;
|
|
15
|
+
const toNumber = (value, fallback) => {
|
|
16
|
+
if (typeof value === 'number') return Number.isFinite(value) ? value : fallback;
|
|
17
|
+
if (typeof value === 'string') {
|
|
18
|
+
const parsed = parseFloat(value);
|
|
19
|
+
return Number.isFinite(parsed) ? parsed : fallback;
|
|
20
|
+
}
|
|
21
|
+
return fallback;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* `CarouselCardAccounts` — a horizontally scrollable strip of compact
|
|
25
|
+
* `AccountCard`s (the Figma "Carousel / Card Accounts" component).
|
|
26
|
+
*
|
|
27
|
+
* It is a thin, opinionated preset over the shared {@link Carousel} scroll
|
|
28
|
+
* engine — so the snap/scroll/modes-cascade behaviour is **not** duplicated.
|
|
29
|
+
* Its niche is the account-selection strip: fixed-width card slots, flush
|
|
30
|
+
* (no peek) padding, per-card snapping, and no pagination by default.
|
|
31
|
+
*
|
|
32
|
+
* The cards are a real slot: pass any number of `AccountCard` children
|
|
33
|
+
* (typically a list of `connected` cards followed by a single `add` card).
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* <CarouselCardAccounts modes={modes}>
|
|
37
|
+
* <AccountCard title="Personal account" subtitle="**** 5651" imageSource={art} />
|
|
38
|
+
* <AccountCard title="Salary account" subtitle="**** 1180" imageSource={art} />
|
|
39
|
+
* <AccountCard state="add" title="Add a card" onPress={openLinkFlow} />
|
|
40
|
+
* </CarouselCardAccounts>
|
|
41
|
+
*/
|
|
42
|
+
function CarouselCardAccounts({
|
|
43
|
+
children,
|
|
44
|
+
modes = _reactUtils.EMPTY_MODES,
|
|
45
|
+
itemWidth = DEFAULT_ITEM_WIDTH,
|
|
46
|
+
gap: gapProp,
|
|
47
|
+
showPagination = false,
|
|
48
|
+
loop = false,
|
|
49
|
+
onIndexChange,
|
|
50
|
+
style
|
|
51
|
+
}) {
|
|
52
|
+
const gap = gapProp ?? toNumber((0, _figmaVariablesResolver.getVariableByName)('carouselCardAccounts/gap', modes), 8);
|
|
53
|
+
|
|
54
|
+
// Outer-container padding is driven by the design's own tokens
|
|
55
|
+
// (`carouselCardAccounts/padding/*`) rather than the generic `carousel/*`
|
|
56
|
+
// padding, matching the Figma "Carousel / Card Accounts" frame.
|
|
57
|
+
const paddingHorizontal = toNumber((0, _figmaVariablesResolver.getVariableByName)('carouselCardAccounts/padding/horizontal', modes), 0);
|
|
58
|
+
const paddingVertical = toNumber((0, _figmaVariablesResolver.getVariableByName)('carouselCardAccounts/padding/vertical', modes), 0);
|
|
59
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Carousel.default, {
|
|
60
|
+
modes: modes,
|
|
61
|
+
itemWidth: itemWidth,
|
|
62
|
+
gap: gap,
|
|
63
|
+
showPagination: showPagination,
|
|
64
|
+
loop: loop,
|
|
65
|
+
autoPlay: false,
|
|
66
|
+
paddingHorizontal: paddingHorizontal,
|
|
67
|
+
paddingVertical: paddingVertical,
|
|
68
|
+
...(onIndexChange ? {
|
|
69
|
+
onIndexChange
|
|
70
|
+
} : {}),
|
|
71
|
+
style: style,
|
|
72
|
+
children: children
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
var _default = exports.default = /*#__PURE__*/_react.default.memo(CarouselCardAccounts);
|