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.
Files changed (704) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/lib/commonjs/components/Accordion/Accordion.js +2 -1
  3. package/lib/commonjs/components/AccordionCheckbox/AccordionCheckbox.js +4 -3
  4. package/lib/commonjs/components/AccountCard/AccountCard.js +4 -3
  5. package/lib/commonjs/components/ActionFooter/ActionFooter.js +7 -24
  6. package/lib/commonjs/components/ActionTile/ActionTile.js +10 -10
  7. package/lib/commonjs/components/AllocationComparisonChart/AllocationComparisonChart.js +9 -6
  8. package/lib/commonjs/components/AmountInput/AmountInput.js +3 -3
  9. package/lib/commonjs/components/AreaLineChart/AreaLineChart.js +13 -9
  10. package/lib/commonjs/components/Attached/Attached.js +1 -1
  11. package/lib/commonjs/components/Avatar/Avatar.js +10 -10
  12. package/lib/commonjs/components/AvatarGroup/AvatarGroup.js +9 -9
  13. package/lib/commonjs/components/Badge/Badge.js +55 -16
  14. package/lib/commonjs/components/BenefitCard/BenefitCard.js +95 -21
  15. package/lib/commonjs/components/BottomNav/BottomNav.js +2 -2
  16. package/lib/commonjs/components/BottomNavItem/BottomNavItem.js +3 -3
  17. package/lib/commonjs/components/BrandChip/BrandChip.js +3 -3
  18. package/lib/commonjs/components/Button/Button.js +32 -19
  19. package/lib/commonjs/components/Card/Card.js +20 -20
  20. package/lib/commonjs/components/CardAdvisory/CardAdvisory.js +8 -7
  21. package/lib/commonjs/components/CardBankAccount/CardBankAccount.js +3 -2
  22. package/lib/commonjs/components/CardCTA/CardCTA.js +215 -45
  23. package/lib/commonjs/components/CardFeedback/CardFeedback.js +18 -18
  24. package/lib/commonjs/components/CardFinancialCondition/CardFinancialCondition.js +7 -7
  25. package/lib/commonjs/components/CardInsight/CardInsight.js +6 -3
  26. package/lib/commonjs/components/Carousel/Carousel.js +18 -12
  27. package/lib/commonjs/components/CarouselCardAccounts/CarouselCardAccounts.js +75 -0
  28. package/lib/commonjs/components/Checkbox/Checkbox.js +6 -13
  29. package/lib/commonjs/components/ChipGroup/ChipGroup.js +1 -1
  30. package/lib/commonjs/components/ChipSelect/ChipSelect.js +11 -11
  31. package/lib/commonjs/components/CircularProgressBar/CircularProgressBar.js +12 -8
  32. package/lib/commonjs/components/CircularProgressBarDoted/CircularProgressBarDoted.js +11 -10
  33. package/lib/commonjs/components/CircularRating/CircularRating.js +5 -4
  34. package/lib/commonjs/components/ClusterBubble/ClusterBubble.js +3 -2
  35. package/lib/commonjs/components/CompareTable/CompareTable.js +88 -59
  36. package/lib/commonjs/components/CoverageBarComparison/CoverageBarComparison.js +3 -2
  37. package/lib/commonjs/components/DebitCard/DebitCard.js +18 -18
  38. package/lib/commonjs/components/Disclaimer/Disclaimer.js +5 -5
  39. package/lib/commonjs/components/DonutChart/DonutChart.js +15 -14
  40. package/lib/commonjs/components/Drawer/Drawer.js +60 -60
  41. package/lib/commonjs/components/Dropdown/Dropdown.js +25 -25
  42. package/lib/commonjs/components/DropdownInput/DropdownInput.js +13 -12
  43. package/lib/commonjs/components/EmptyState/EmptyState.js +14 -14
  44. package/lib/commonjs/components/ExpandableCheckbox/ExpandableCheckbox.js +2 -1
  45. package/lib/commonjs/components/FilterBar/FilterBar.js +2 -2
  46. package/lib/commonjs/components/Form/Form.js +3 -3
  47. package/lib/commonjs/components/FormField/FormField.js +48 -8
  48. package/lib/commonjs/components/FullscreenModal/FullscreenModal.js +24 -24
  49. package/lib/commonjs/components/Gauge/Gauge.js +9 -9
  50. package/lib/commonjs/components/HoldingsCard/HoldingsCard.js +13 -12
  51. package/lib/commonjs/components/Icon/Icon.js +6 -6
  52. package/lib/commonjs/components/IconCapsule/IconCapsule.js +7 -7
  53. package/lib/commonjs/components/InputSearch/InputSearch.js +9 -9
  54. package/lib/commonjs/components/InstitutionBadge/InstitutionBadge.js +5 -4
  55. package/lib/commonjs/components/ListGroup/ListGroup.js +10 -9
  56. package/lib/commonjs/components/ListItem/ListItem.js +13 -12
  57. package/lib/commonjs/components/LottieIntroBlock/LottieIntroBlock.js +13 -13
  58. package/lib/commonjs/components/LottiePlayer/LottiePlayer.js +2 -2
  59. package/lib/commonjs/components/LottiePlayer/LottiePlayer.web.js +2 -2
  60. package/lib/commonjs/components/MediaCard/MediaCard.js +25 -23
  61. package/lib/commonjs/components/MessageField/MessageField.js +8 -8
  62. package/lib/commonjs/components/MetricLegendItem/MetricLegendItem.js +3 -2
  63. package/lib/commonjs/components/MoneyValue/MoneyValue.js +7 -7
  64. package/lib/commonjs/components/MonthlyStatusGrid/MonthlyStatusGrid.js +6 -3
  65. package/lib/commonjs/components/NavArrow/NavArrow.js +8 -8
  66. package/lib/commonjs/components/NoteInput/NoteInput.js +12 -12
  67. package/lib/commonjs/components/Nudge/Nudge.js +20 -20
  68. package/lib/commonjs/components/OTP/OTP.js +15 -15
  69. package/lib/commonjs/components/PageHero/PageHero.js +16 -16
  70. package/lib/commonjs/components/PaymentFeedback/PaymentFeedback.js +23 -23
  71. package/lib/commonjs/components/Popup/Popup.js +1 -1
  72. package/lib/commonjs/components/PoweredByLabel/PoweredByLabel.js +3 -2
  73. package/lib/commonjs/components/ProductMerchandisingCard/ProductMerchandisingCard.js +107 -33
  74. package/lib/commonjs/components/ProductOverview/ProductOverview.js +4 -3
  75. package/lib/commonjs/components/ProgressBadge/ProgressBadge.js +7 -7
  76. package/lib/commonjs/components/ProjectionMarker/ProjectionMarker.js +3 -2
  77. package/lib/commonjs/components/Radio/Radio.js +8 -8
  78. package/lib/commonjs/components/RechargeCard/RechargeCard.js +31 -31
  79. package/lib/commonjs/components/SavingsGoalSummary/SavingsGoalSummary.js +59 -12
  80. package/lib/commonjs/components/ScrollArea/ScrollArea.js +126 -0
  81. package/lib/commonjs/components/Section/Section.js +27 -26
  82. package/lib/commonjs/components/Slider/Slider.js +3 -2
  83. package/lib/commonjs/components/Stack/Stack.js +86 -0
  84. package/lib/commonjs/components/StatusHero/StatusHero.js +14 -14
  85. package/lib/commonjs/components/Stepper/Step.js +16 -16
  86. package/lib/commonjs/components/Stepper/StepLabel.js +16 -16
  87. package/lib/commonjs/components/Stepper/Stepper.js +3 -3
  88. package/lib/commonjs/components/SuggestiveSearch/SuggestiveSearch.js +20 -11
  89. package/lib/commonjs/components/SummaryTile/SummaryTile.js +3 -2
  90. package/lib/commonjs/components/SupportText/SupportText.js +6 -6
  91. package/lib/commonjs/components/SupportText/SupportTextIcon.js +2 -2
  92. package/lib/commonjs/components/Table/Table.js +324 -0
  93. package/lib/commonjs/components/Text/Text.js +15 -2
  94. package/lib/commonjs/components/TextInput/TextInput.js +23 -15
  95. package/lib/commonjs/components/TextSegment/TextSegment.js +15 -2
  96. package/lib/commonjs/components/ThreadHero/ThreadHero.js +21 -22
  97. package/lib/commonjs/components/Title/Title.js +39 -16
  98. package/lib/commonjs/components/Toast/Toast.js +18 -17
  99. package/lib/commonjs/components/Toggle/Toggle.js +3 -11
  100. package/lib/commonjs/components/Tooltip/Tooltip.js +12 -12
  101. package/lib/commonjs/components/TransactionBubble/TransactionBubble.js +15 -14
  102. package/lib/commonjs/components/TransactionDetails/TransactionDetails.js +10 -10
  103. package/lib/commonjs/components/TransactionStatus/TransactionStatus.js +12 -11
  104. package/lib/commonjs/components/UpiHandle/UpiHandle.js +17 -17
  105. package/lib/commonjs/components/index.js +58 -0
  106. package/lib/commonjs/design-tokens/Coin Variables-variables-full.json +1 -1
  107. package/lib/commonjs/design-tokens/figma-modes.generated.js +51 -42
  108. package/lib/commonjs/icons/components/Icon4g.js +19 -0
  109. package/lib/commonjs/icons/components/Icon4gltedata.js +19 -0
  110. package/lib/commonjs/icons/components/Icon5g.js +19 -0
  111. package/lib/commonjs/icons/components/Icon5gdoubleplus.js +19 -0
  112. package/lib/commonjs/icons/components/Icon5gplus.js +19 -0
  113. package/lib/commonjs/icons/components/IconAdblocker.js +19 -0
  114. package/lib/commonjs/icons/components/IconAdblockplus.js +19 -0
  115. package/lib/commonjs/icons/components/IconAnalytics.js +19 -0
  116. package/lib/commonjs/icons/components/IconAnalyticsdata.js +19 -0
  117. package/lib/commonjs/icons/components/IconAnalyticspiechart.js +19 -0
  118. package/lib/commonjs/icons/components/IconAnalyticspiecharttree.js +19 -0
  119. package/lib/commonjs/icons/components/IconAnalyticspiecharttwo.js +19 -0
  120. package/lib/commonjs/icons/components/IconCompoundinterest.js +19 -0
  121. package/lib/commonjs/icons/components/IconConsumptionaccounted.js +19 -0
  122. package/lib/commonjs/icons/components/IconConsumptionaverage.js +19 -0
  123. package/lib/commonjs/icons/components/IconConsumptionhigh.js +19 -0
  124. package/lib/commonjs/icons/components/IconConsumptionlow.js +19 -0
  125. package/lib/commonjs/icons/components/IconConsumptionunaccounted.js +19 -0
  126. package/lib/commonjs/icons/components/IconCsvdoc.js +19 -0
  127. package/lib/commonjs/icons/components/IconDatabase.js +19 -0
  128. package/lib/commonjs/icons/components/IconDigitalecosystem.js +19 -0
  129. package/lib/commonjs/icons/components/IconDigitalselfservice.js +19 -0
  130. package/lib/commonjs/icons/components/IconDistribution.js +19 -0
  131. package/lib/commonjs/icons/components/IconDocument.js +19 -0
  132. package/lib/commonjs/icons/components/IconDocumentdoc.js +19 -0
  133. package/lib/commonjs/icons/components/IconDocumentjpg.js +19 -0
  134. package/lib/commonjs/icons/components/IconDocumentodt.js +19 -0
  135. package/lib/commonjs/icons/components/IconDocumentpdf.js +19 -0
  136. package/lib/commonjs/icons/components/IconDocumentpng.js +19 -0
  137. package/lib/commonjs/icons/components/IconDocumentraw.js +19 -0
  138. package/lib/commonjs/icons/components/IconDocumentrtf.js +19 -0
  139. package/lib/commonjs/icons/components/IconDocumentsettings.js +19 -0
  140. package/lib/commonjs/icons/components/IconDocumenttif.js +19 -0
  141. package/lib/commonjs/icons/components/IconDocumenttxt.js +19 -0
  142. package/lib/commonjs/icons/components/IconDocumentunknown.js +19 -0
  143. package/lib/commonjs/icons/components/IconDocumentxls.js +19 -0
  144. package/lib/commonjs/icons/components/IconDocumentxlsx.js +19 -0
  145. package/lib/commonjs/icons/components/IconFilerequest.js +19 -0
  146. package/lib/commonjs/icons/components/IconFilesend.js +19 -0
  147. package/lib/commonjs/icons/components/IconFileshare.js +19 -0
  148. package/lib/commonjs/icons/components/IconFindinpage.js +19 -0
  149. package/lib/commonjs/icons/components/IconFolder.js +19 -0
  150. package/lib/commonjs/icons/components/IconFolderbookmarks.js +19 -0
  151. package/lib/commonjs/icons/components/IconFolderfavorites.js +19 -0
  152. package/lib/commonjs/icons/components/IconFolderlocked.js +19 -0
  153. package/lib/commonjs/icons/components/IconFoldermovefiles.js +19 -0
  154. package/lib/commonjs/icons/components/IconFolderpublic.js +19 -0
  155. package/lib/commonjs/icons/components/IconFolderrated.js +19 -0
  156. package/lib/commonjs/icons/components/IconFolderrequest.js +19 -0
  157. package/lib/commonjs/icons/components/IconForm.js +19 -0
  158. package/lib/commonjs/icons/components/IconFormadd.js +19 -0
  159. package/lib/commonjs/icons/components/IconForms.js +19 -0
  160. package/lib/commonjs/icons/components/IconGraphincreasing.js +19 -0
  161. package/lib/commonjs/icons/components/IconGraphlow.js +19 -0
  162. package/lib/commonjs/icons/components/IconGraphtable.js +19 -0
  163. package/lib/commonjs/icons/components/IconHealthreport.js +19 -0
  164. package/lib/commonjs/icons/components/IconHubmode.js +19 -0
  165. package/lib/commonjs/icons/components/IconInfrastructure.js +19 -0
  166. package/lib/commonjs/icons/components/IconInterestlow.js +19 -0
  167. package/lib/commonjs/icons/components/IconLte.js +19 -0
  168. package/lib/commonjs/icons/components/IconNetworkfuture.js +19 -0
  169. package/lib/commonjs/icons/components/IconPagesettings.js +19 -0
  170. package/lib/commonjs/icons/components/IconPptxdoc.js +19 -0
  171. package/lib/commonjs/icons/components/IconPreferrednumber.js +19 -0
  172. package/lib/commonjs/icons/components/IconPremiumnumber.js +19 -0
  173. package/lib/commonjs/icons/components/IconProjection.js +19 -0
  174. package/lib/commonjs/icons/components/IconRequest.js +19 -0
  175. package/lib/commonjs/icons/components/IconRoutestraffic.js +19 -0
  176. package/lib/commonjs/icons/components/IconTechnology.js +19 -0
  177. package/lib/commonjs/icons/components/IconVolte.js +19 -0
  178. package/lib/commonjs/icons/components/IconVonr.js +19 -0
  179. package/lib/commonjs/icons/components/IconVowifi.js +19 -0
  180. package/lib/commonjs/icons/components/IconVpndata.js +19 -0
  181. package/lib/commonjs/icons/components/index.js +803 -0
  182. package/lib/commonjs/icons/registry.js +2 -2
  183. package/lib/commonjs/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.js +11 -3
  184. package/lib/commonjs/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.js +8 -4
  185. package/lib/commonjs/utils/index.js +25 -0
  186. package/lib/commonjs/utils/react-utils.js +118 -0
  187. package/lib/commonjs/utils/shadow.js +200 -0
  188. package/lib/commonjs/utils/web-platform-utils.js +59 -0
  189. package/lib/module/components/Accordion/Accordion.js +3 -2
  190. package/lib/module/components/AccordionCheckbox/AccordionCheckbox.js +5 -4
  191. package/lib/module/components/AccountCard/AccountCard.js +5 -4
  192. package/lib/module/components/ActionFooter/ActionFooter.js +7 -24
  193. package/lib/module/components/ActionTile/ActionTile.js +10 -10
  194. package/lib/module/components/AllocationComparisonChart/AllocationComparisonChart.js +10 -7
  195. package/lib/module/components/AmountInput/AmountInput.js +3 -3
  196. package/lib/module/components/AreaLineChart/AreaLineChart.js +14 -10
  197. package/lib/module/components/Attached/Attached.js +1 -1
  198. package/lib/module/components/Avatar/Avatar.js +10 -10
  199. package/lib/module/components/AvatarGroup/AvatarGroup.js +9 -9
  200. package/lib/module/components/Badge/Badge.js +57 -18
  201. package/lib/module/components/BenefitCard/BenefitCard.js +95 -21
  202. package/lib/module/components/BottomNav/BottomNav.js +2 -2
  203. package/lib/module/components/BottomNavItem/BottomNavItem.js +3 -3
  204. package/lib/module/components/BrandChip/BrandChip.js +4 -4
  205. package/lib/module/components/Button/Button.js +32 -19
  206. package/lib/module/components/Card/Card.js +20 -20
  207. package/lib/module/components/CardAdvisory/CardAdvisory.js +9 -8
  208. package/lib/module/components/CardBankAccount/CardBankAccount.js +4 -3
  209. package/lib/module/components/CardCTA/CardCTA.js +216 -46
  210. package/lib/module/components/CardFeedback/CardFeedback.js +18 -18
  211. package/lib/module/components/CardFinancialCondition/CardFinancialCondition.js +7 -7
  212. package/lib/module/components/CardInsight/CardInsight.js +6 -3
  213. package/lib/module/components/Carousel/Carousel.js +18 -12
  214. package/lib/module/components/CarouselCardAccounts/CarouselCardAccounts.js +71 -0
  215. package/lib/module/components/Checkbox/Checkbox.js +2 -9
  216. package/lib/module/components/ChipGroup/ChipGroup.js +1 -1
  217. package/lib/module/components/ChipSelect/ChipSelect.js +11 -11
  218. package/lib/module/components/CircularProgressBar/CircularProgressBar.js +13 -9
  219. package/lib/module/components/CircularProgressBarDoted/CircularProgressBarDoted.js +12 -11
  220. package/lib/module/components/CircularRating/CircularRating.js +6 -5
  221. package/lib/module/components/ClusterBubble/ClusterBubble.js +4 -3
  222. package/lib/module/components/CompareTable/CompareTable.js +89 -60
  223. package/lib/module/components/CoverageBarComparison/CoverageBarComparison.js +4 -3
  224. package/lib/module/components/DebitCard/DebitCard.js +18 -18
  225. package/lib/module/components/Disclaimer/Disclaimer.js +5 -5
  226. package/lib/module/components/DonutChart/DonutChart.js +16 -15
  227. package/lib/module/components/Drawer/Drawer.js +60 -60
  228. package/lib/module/components/Dropdown/Dropdown.js +26 -26
  229. package/lib/module/components/DropdownInput/DropdownInput.js +14 -13
  230. package/lib/module/components/EmptyState/EmptyState.js +14 -14
  231. package/lib/module/components/ExpandableCheckbox/ExpandableCheckbox.js +2 -1
  232. package/lib/module/components/FilterBar/FilterBar.js +2 -2
  233. package/lib/module/components/Form/Form.js +3 -3
  234. package/lib/module/components/FormField/FormField.js +51 -11
  235. package/lib/module/components/FullscreenModal/FullscreenModal.js +24 -24
  236. package/lib/module/components/Gauge/Gauge.js +9 -9
  237. package/lib/module/components/HoldingsCard/HoldingsCard.js +14 -13
  238. package/lib/module/components/Icon/Icon.js +6 -6
  239. package/lib/module/components/IconCapsule/IconCapsule.js +7 -7
  240. package/lib/module/components/InputSearch/InputSearch.js +9 -9
  241. package/lib/module/components/InstitutionBadge/InstitutionBadge.js +6 -5
  242. package/lib/module/components/ListGroup/ListGroup.js +11 -10
  243. package/lib/module/components/ListItem/ListItem.js +14 -13
  244. package/lib/module/components/LottieIntroBlock/LottieIntroBlock.js +13 -13
  245. package/lib/module/components/LottiePlayer/LottiePlayer.js +2 -2
  246. package/lib/module/components/LottiePlayer/LottiePlayer.web.js +2 -2
  247. package/lib/module/components/MediaCard/MediaCard.js +25 -23
  248. package/lib/module/components/MessageField/MessageField.js +8 -8
  249. package/lib/module/components/MetricLegendItem/MetricLegendItem.js +4 -3
  250. package/lib/module/components/MoneyValue/MoneyValue.js +7 -7
  251. package/lib/module/components/MonthlyStatusGrid/MonthlyStatusGrid.js +7 -4
  252. package/lib/module/components/NavArrow/NavArrow.js +8 -8
  253. package/lib/module/components/NoteInput/NoteInput.js +12 -12
  254. package/lib/module/components/Nudge/Nudge.js +20 -20
  255. package/lib/module/components/OTP/OTP.js +15 -15
  256. package/lib/module/components/PageHero/PageHero.js +16 -16
  257. package/lib/module/components/PaymentFeedback/PaymentFeedback.js +23 -23
  258. package/lib/module/components/Popup/Popup.js +1 -1
  259. package/lib/module/components/PoweredByLabel/PoweredByLabel.js +4 -3
  260. package/lib/module/components/ProductMerchandisingCard/ProductMerchandisingCard.js +109 -35
  261. package/lib/module/components/ProductOverview/ProductOverview.js +5 -4
  262. package/lib/module/components/ProgressBadge/ProgressBadge.js +8 -8
  263. package/lib/module/components/ProjectionMarker/ProjectionMarker.js +4 -3
  264. package/lib/module/components/Radio/Radio.js +9 -9
  265. package/lib/module/components/RechargeCard/RechargeCard.js +31 -31
  266. package/lib/module/components/SavingsGoalSummary/SavingsGoalSummary.js +60 -13
  267. package/lib/module/components/ScrollArea/ScrollArea.js +121 -0
  268. package/lib/module/components/Section/Section.js +28 -27
  269. package/lib/module/components/Slider/Slider.js +4 -3
  270. package/lib/module/components/Stack/Stack.js +81 -0
  271. package/lib/module/components/StatusHero/StatusHero.js +14 -14
  272. package/lib/module/components/Stepper/Step.js +16 -16
  273. package/lib/module/components/Stepper/StepLabel.js +16 -16
  274. package/lib/module/components/Stepper/Stepper.js +3 -3
  275. package/lib/module/components/SuggestiveSearch/SuggestiveSearch.js +20 -11
  276. package/lib/module/components/SummaryTile/SummaryTile.js +4 -3
  277. package/lib/module/components/SupportText/SupportText.js +6 -6
  278. package/lib/module/components/SupportText/SupportTextIcon.js +2 -2
  279. package/lib/module/components/Table/Table.js +315 -0
  280. package/lib/module/components/Text/Text.js +16 -3
  281. package/lib/module/components/TextInput/TextInput.js +23 -15
  282. package/lib/module/components/TextSegment/TextSegment.js +16 -3
  283. package/lib/module/components/ThreadHero/ThreadHero.js +22 -23
  284. package/lib/module/components/Title/Title.js +40 -17
  285. package/lib/module/components/Toast/Toast.js +19 -18
  286. package/lib/module/components/Toggle/Toggle.js +4 -12
  287. package/lib/module/components/Tooltip/Tooltip.js +12 -12
  288. package/lib/module/components/TransactionBubble/TransactionBubble.js +16 -15
  289. package/lib/module/components/TransactionDetails/TransactionDetails.js +10 -10
  290. package/lib/module/components/TransactionStatus/TransactionStatus.js +13 -12
  291. package/lib/module/components/UpiHandle/UpiHandle.js +18 -18
  292. package/lib/module/components/index.js +4 -0
  293. package/lib/module/design-tokens/Coin Variables-variables-full.json +1 -1
  294. package/lib/module/design-tokens/figma-modes.generated.js +51 -42
  295. package/lib/module/icons/components/Icon4g.js +12 -0
  296. package/lib/module/icons/components/Icon4gltedata.js +12 -0
  297. package/lib/module/icons/components/Icon5g.js +12 -0
  298. package/lib/module/icons/components/Icon5gdoubleplus.js +12 -0
  299. package/lib/module/icons/components/Icon5gplus.js +12 -0
  300. package/lib/module/icons/components/IconAdblocker.js +12 -0
  301. package/lib/module/icons/components/IconAdblockplus.js +12 -0
  302. package/lib/module/icons/components/IconAnalytics.js +12 -0
  303. package/lib/module/icons/components/IconAnalyticsdata.js +12 -0
  304. package/lib/module/icons/components/IconAnalyticspiechart.js +12 -0
  305. package/lib/module/icons/components/IconAnalyticspiecharttree.js +12 -0
  306. package/lib/module/icons/components/IconAnalyticspiecharttwo.js +12 -0
  307. package/lib/module/icons/components/IconCompoundinterest.js +12 -0
  308. package/lib/module/icons/components/IconConsumptionaccounted.js +12 -0
  309. package/lib/module/icons/components/IconConsumptionaverage.js +12 -0
  310. package/lib/module/icons/components/IconConsumptionhigh.js +12 -0
  311. package/lib/module/icons/components/IconConsumptionlow.js +12 -0
  312. package/lib/module/icons/components/IconConsumptionunaccounted.js +12 -0
  313. package/lib/module/icons/components/IconCsvdoc.js +12 -0
  314. package/lib/module/icons/components/IconDatabase.js +12 -0
  315. package/lib/module/icons/components/IconDigitalecosystem.js +12 -0
  316. package/lib/module/icons/components/IconDigitalselfservice.js +12 -0
  317. package/lib/module/icons/components/IconDistribution.js +12 -0
  318. package/lib/module/icons/components/IconDocument.js +12 -0
  319. package/lib/module/icons/components/IconDocumentdoc.js +12 -0
  320. package/lib/module/icons/components/IconDocumentjpg.js +12 -0
  321. package/lib/module/icons/components/IconDocumentodt.js +12 -0
  322. package/lib/module/icons/components/IconDocumentpdf.js +12 -0
  323. package/lib/module/icons/components/IconDocumentpng.js +12 -0
  324. package/lib/module/icons/components/IconDocumentraw.js +12 -0
  325. package/lib/module/icons/components/IconDocumentrtf.js +12 -0
  326. package/lib/module/icons/components/IconDocumentsettings.js +12 -0
  327. package/lib/module/icons/components/IconDocumenttif.js +12 -0
  328. package/lib/module/icons/components/IconDocumenttxt.js +12 -0
  329. package/lib/module/icons/components/IconDocumentunknown.js +12 -0
  330. package/lib/module/icons/components/IconDocumentxls.js +12 -0
  331. package/lib/module/icons/components/IconDocumentxlsx.js +12 -0
  332. package/lib/module/icons/components/IconFilerequest.js +12 -0
  333. package/lib/module/icons/components/IconFilesend.js +12 -0
  334. package/lib/module/icons/components/IconFileshare.js +12 -0
  335. package/lib/module/icons/components/IconFindinpage.js +12 -0
  336. package/lib/module/icons/components/IconFolder.js +12 -0
  337. package/lib/module/icons/components/IconFolderbookmarks.js +12 -0
  338. package/lib/module/icons/components/IconFolderfavorites.js +12 -0
  339. package/lib/module/icons/components/IconFolderlocked.js +12 -0
  340. package/lib/module/icons/components/IconFoldermovefiles.js +12 -0
  341. package/lib/module/icons/components/IconFolderpublic.js +12 -0
  342. package/lib/module/icons/components/IconFolderrated.js +12 -0
  343. package/lib/module/icons/components/IconFolderrequest.js +12 -0
  344. package/lib/module/icons/components/IconForm.js +12 -0
  345. package/lib/module/icons/components/IconFormadd.js +12 -0
  346. package/lib/module/icons/components/IconForms.js +12 -0
  347. package/lib/module/icons/components/IconGraphincreasing.js +12 -0
  348. package/lib/module/icons/components/IconGraphlow.js +12 -0
  349. package/lib/module/icons/components/IconGraphtable.js +12 -0
  350. package/lib/module/icons/components/IconHealthreport.js +12 -0
  351. package/lib/module/icons/components/IconHubmode.js +12 -0
  352. package/lib/module/icons/components/IconInfrastructure.js +12 -0
  353. package/lib/module/icons/components/IconInterestlow.js +12 -0
  354. package/lib/module/icons/components/IconLte.js +12 -0
  355. package/lib/module/icons/components/IconNetworkfuture.js +12 -0
  356. package/lib/module/icons/components/IconPagesettings.js +12 -0
  357. package/lib/module/icons/components/IconPptxdoc.js +12 -0
  358. package/lib/module/icons/components/IconPreferrednumber.js +12 -0
  359. package/lib/module/icons/components/IconPremiumnumber.js +12 -0
  360. package/lib/module/icons/components/IconProjection.js +12 -0
  361. package/lib/module/icons/components/IconRequest.js +12 -0
  362. package/lib/module/icons/components/IconRoutestraffic.js +12 -0
  363. package/lib/module/icons/components/IconTechnology.js +12 -0
  364. package/lib/module/icons/components/IconVolte.js +12 -0
  365. package/lib/module/icons/components/IconVonr.js +12 -0
  366. package/lib/module/icons/components/IconVowifi.js +12 -0
  367. package/lib/module/icons/components/IconVpndata.js +12 -0
  368. package/lib/module/icons/components/index.js +73 -0
  369. package/lib/module/icons/registry.js +2 -2
  370. package/lib/module/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.js +11 -3
  371. package/lib/module/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.js +8 -4
  372. package/lib/module/utils/index.js +2 -1
  373. package/lib/module/utils/react-utils.js +115 -0
  374. package/lib/module/utils/shadow.js +194 -0
  375. package/lib/module/utils/web-platform-utils.js +58 -0
  376. package/lib/typescript/src/components/Accordion/Accordion.d.ts +7 -1
  377. package/lib/typescript/src/components/AccordionCheckbox/AccordionCheckbox.d.ts +7 -1
  378. package/lib/typescript/src/components/AccountCard/AccountCard.d.ts +7 -1
  379. package/lib/typescript/src/components/AllocationComparisonChart/AllocationComparisonChart.d.ts +7 -1
  380. package/lib/typescript/src/components/AreaLineChart/AreaLineChart.d.ts +8 -1
  381. package/lib/typescript/src/components/Badge/Badge.d.ts +32 -2
  382. package/lib/typescript/src/components/BenefitCard/BenefitCard.d.ts +33 -4
  383. package/lib/typescript/src/components/BrandChip/BrandChip.d.ts +7 -1
  384. package/lib/typescript/src/components/Button/Button.d.ts +7 -1
  385. package/lib/typescript/src/components/CardAdvisory/CardAdvisory.d.ts +7 -1
  386. package/lib/typescript/src/components/CardBankAccount/CardBankAccount.d.ts +7 -1
  387. package/lib/typescript/src/components/CardCTA/CardCTA.d.ts +27 -5
  388. package/lib/typescript/src/components/Carousel/Carousel.d.ts +11 -1
  389. package/lib/typescript/src/components/CarouselCardAccounts/CarouselCardAccounts.d.ts +57 -0
  390. package/lib/typescript/src/components/CircularProgressBar/CircularProgressBar.d.ts +7 -1
  391. package/lib/typescript/src/components/CircularProgressBarDoted/CircularProgressBarDoted.d.ts +7 -1
  392. package/lib/typescript/src/components/CircularRating/CircularRating.d.ts +7 -1
  393. package/lib/typescript/src/components/ClusterBubble/ClusterBubble.d.ts +7 -1
  394. package/lib/typescript/src/components/CompareTable/CompareTable.d.ts +7 -1
  395. package/lib/typescript/src/components/CoverageBarComparison/CoverageBarComparison.d.ts +7 -1
  396. package/lib/typescript/src/components/DonutChart/DonutChart.d.ts +7 -1
  397. package/lib/typescript/src/components/Dropdown/Dropdown.d.ts +7 -1
  398. package/lib/typescript/src/components/DropdownInput/DropdownInput.d.ts +6 -0
  399. package/lib/typescript/src/components/ExpandableCheckbox/ExpandableCheckbox.d.ts +7 -1
  400. package/lib/typescript/src/components/HoldingsCard/HoldingsCard.d.ts +7 -1
  401. package/lib/typescript/src/components/InstitutionBadge/InstitutionBadge.d.ts +7 -1
  402. package/lib/typescript/src/components/ListGroup/ListGroup.d.ts +7 -1
  403. package/lib/typescript/src/components/ListItem/ListItem.d.ts +7 -1
  404. package/lib/typescript/src/components/MetricLegendItem/MetricLegendItem.d.ts +7 -1
  405. package/lib/typescript/src/components/MonthlyStatusGrid/MonthlyStatusGrid.d.ts +14 -2
  406. package/lib/typescript/src/components/PoweredByLabel/PoweredByLabel.d.ts +7 -1
  407. package/lib/typescript/src/components/ProductMerchandisingCard/ProductMerchandisingCard.d.ts +7 -1
  408. package/lib/typescript/src/components/ProductOverview/ProductOverview.d.ts +7 -1
  409. package/lib/typescript/src/components/ProgressBadge/ProgressBadge.d.ts +7 -1
  410. package/lib/typescript/src/components/ProjectionMarker/ProjectionMarker.d.ts +7 -1
  411. package/lib/typescript/src/components/SavingsGoalSummary/SavingsGoalSummary.d.ts +11 -1
  412. package/lib/typescript/src/components/ScrollArea/ScrollArea.d.ts +77 -0
  413. package/lib/typescript/src/components/Section/Section.d.ts +7 -1
  414. package/lib/typescript/src/components/Slider/Slider.d.ts +6 -0
  415. package/lib/typescript/src/components/Stack/Stack.d.ts +81 -0
  416. package/lib/typescript/src/components/SummaryTile/SummaryTile.d.ts +7 -1
  417. package/lib/typescript/src/components/Table/Table.d.ts +139 -0
  418. package/lib/typescript/src/components/Text/Text.d.ts +16 -1
  419. package/lib/typescript/src/components/TextSegment/TextSegment.d.ts +16 -1
  420. package/lib/typescript/src/components/ThreadHero/ThreadHero.d.ts +7 -1
  421. package/lib/typescript/src/components/Title/Title.d.ts +17 -1
  422. package/lib/typescript/src/components/Toast/Toast.d.ts +7 -1
  423. package/lib/typescript/src/components/TransactionBubble/TransactionBubble.d.ts +7 -1
  424. package/lib/typescript/src/components/TransactionStatus/TransactionStatus.d.ts +7 -1
  425. package/lib/typescript/src/components/UpiHandle/UpiHandle.d.ts +7 -1
  426. package/lib/typescript/src/components/index.d.ts +6 -2
  427. package/lib/typescript/src/design-tokens/figma-modes.generated.d.ts +23 -15
  428. package/lib/typescript/src/icons/components/Icon4g.d.ts +3 -0
  429. package/lib/typescript/src/icons/components/Icon4gltedata.d.ts +3 -0
  430. package/lib/typescript/src/icons/components/Icon5g.d.ts +3 -0
  431. package/lib/typescript/src/icons/components/Icon5gdoubleplus.d.ts +3 -0
  432. package/lib/typescript/src/icons/components/Icon5gplus.d.ts +3 -0
  433. package/lib/typescript/src/icons/components/IconAdblocker.d.ts +3 -0
  434. package/lib/typescript/src/icons/components/IconAdblockplus.d.ts +3 -0
  435. package/lib/typescript/src/icons/components/IconAnalytics.d.ts +3 -0
  436. package/lib/typescript/src/icons/components/IconAnalyticsdata.d.ts +3 -0
  437. package/lib/typescript/src/icons/components/IconAnalyticspiechart.d.ts +3 -0
  438. package/lib/typescript/src/icons/components/IconAnalyticspiecharttree.d.ts +3 -0
  439. package/lib/typescript/src/icons/components/IconAnalyticspiecharttwo.d.ts +3 -0
  440. package/lib/typescript/src/icons/components/IconCompoundinterest.d.ts +3 -0
  441. package/lib/typescript/src/icons/components/IconConsumptionaccounted.d.ts +3 -0
  442. package/lib/typescript/src/icons/components/IconConsumptionaverage.d.ts +3 -0
  443. package/lib/typescript/src/icons/components/IconConsumptionhigh.d.ts +3 -0
  444. package/lib/typescript/src/icons/components/IconConsumptionlow.d.ts +3 -0
  445. package/lib/typescript/src/icons/components/IconConsumptionunaccounted.d.ts +3 -0
  446. package/lib/typescript/src/icons/components/IconCsvdoc.d.ts +3 -0
  447. package/lib/typescript/src/icons/components/IconDatabase.d.ts +3 -0
  448. package/lib/typescript/src/icons/components/IconDigitalecosystem.d.ts +3 -0
  449. package/lib/typescript/src/icons/components/IconDigitalselfservice.d.ts +3 -0
  450. package/lib/typescript/src/icons/components/IconDistribution.d.ts +3 -0
  451. package/lib/typescript/src/icons/components/IconDocument.d.ts +3 -0
  452. package/lib/typescript/src/icons/components/IconDocumentdoc.d.ts +3 -0
  453. package/lib/typescript/src/icons/components/IconDocumentjpg.d.ts +3 -0
  454. package/lib/typescript/src/icons/components/IconDocumentodt.d.ts +3 -0
  455. package/lib/typescript/src/icons/components/IconDocumentpdf.d.ts +3 -0
  456. package/lib/typescript/src/icons/components/IconDocumentpng.d.ts +3 -0
  457. package/lib/typescript/src/icons/components/IconDocumentraw.d.ts +3 -0
  458. package/lib/typescript/src/icons/components/IconDocumentrtf.d.ts +3 -0
  459. package/lib/typescript/src/icons/components/IconDocumentsettings.d.ts +3 -0
  460. package/lib/typescript/src/icons/components/IconDocumenttif.d.ts +3 -0
  461. package/lib/typescript/src/icons/components/IconDocumenttxt.d.ts +3 -0
  462. package/lib/typescript/src/icons/components/IconDocumentunknown.d.ts +3 -0
  463. package/lib/typescript/src/icons/components/IconDocumentxls.d.ts +3 -0
  464. package/lib/typescript/src/icons/components/IconDocumentxlsx.d.ts +3 -0
  465. package/lib/typescript/src/icons/components/IconFilerequest.d.ts +3 -0
  466. package/lib/typescript/src/icons/components/IconFilesend.d.ts +3 -0
  467. package/lib/typescript/src/icons/components/IconFileshare.d.ts +3 -0
  468. package/lib/typescript/src/icons/components/IconFindinpage.d.ts +3 -0
  469. package/lib/typescript/src/icons/components/IconFolder.d.ts +3 -0
  470. package/lib/typescript/src/icons/components/IconFolderbookmarks.d.ts +3 -0
  471. package/lib/typescript/src/icons/components/IconFolderfavorites.d.ts +3 -0
  472. package/lib/typescript/src/icons/components/IconFolderlocked.d.ts +3 -0
  473. package/lib/typescript/src/icons/components/IconFoldermovefiles.d.ts +3 -0
  474. package/lib/typescript/src/icons/components/IconFolderpublic.d.ts +3 -0
  475. package/lib/typescript/src/icons/components/IconFolderrated.d.ts +3 -0
  476. package/lib/typescript/src/icons/components/IconFolderrequest.d.ts +3 -0
  477. package/lib/typescript/src/icons/components/IconForm.d.ts +3 -0
  478. package/lib/typescript/src/icons/components/IconFormadd.d.ts +3 -0
  479. package/lib/typescript/src/icons/components/IconForms.d.ts +3 -0
  480. package/lib/typescript/src/icons/components/IconGraphincreasing.d.ts +3 -0
  481. package/lib/typescript/src/icons/components/IconGraphlow.d.ts +3 -0
  482. package/lib/typescript/src/icons/components/IconGraphtable.d.ts +3 -0
  483. package/lib/typescript/src/icons/components/IconHealthreport.d.ts +3 -0
  484. package/lib/typescript/src/icons/components/IconHubmode.d.ts +3 -0
  485. package/lib/typescript/src/icons/components/IconInfrastructure.d.ts +3 -0
  486. package/lib/typescript/src/icons/components/IconInterestlow.d.ts +3 -0
  487. package/lib/typescript/src/icons/components/IconLte.d.ts +3 -0
  488. package/lib/typescript/src/icons/components/IconNetworkfuture.d.ts +3 -0
  489. package/lib/typescript/src/icons/components/IconPagesettings.d.ts +3 -0
  490. package/lib/typescript/src/icons/components/IconPptxdoc.d.ts +3 -0
  491. package/lib/typescript/src/icons/components/IconPreferrednumber.d.ts +3 -0
  492. package/lib/typescript/src/icons/components/IconPremiumnumber.d.ts +3 -0
  493. package/lib/typescript/src/icons/components/IconProjection.d.ts +3 -0
  494. package/lib/typescript/src/icons/components/IconRequest.d.ts +3 -0
  495. package/lib/typescript/src/icons/components/IconRoutestraffic.d.ts +3 -0
  496. package/lib/typescript/src/icons/components/IconTechnology.d.ts +3 -0
  497. package/lib/typescript/src/icons/components/IconVolte.d.ts +3 -0
  498. package/lib/typescript/src/icons/components/IconVonr.d.ts +3 -0
  499. package/lib/typescript/src/icons/components/IconVowifi.d.ts +3 -0
  500. package/lib/typescript/src/icons/components/IconVpndata.d.ts +3 -0
  501. package/lib/typescript/src/icons/components/index.d.ts +73 -0
  502. package/lib/typescript/src/icons/registry.d.ts +1 -1
  503. package/lib/typescript/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.d.ts +31 -3
  504. package/lib/typescript/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.d.ts +18 -2
  505. package/lib/typescript/src/utils/index.d.ts +2 -0
  506. package/lib/typescript/src/utils/react-utils.d.ts +76 -0
  507. package/lib/typescript/src/utils/shadow.d.ts +72 -0
  508. package/lib/typescript/src/utils/web-platform-utils.d.ts +36 -0
  509. package/package.json +2 -1
  510. package/src/components/Accordion/Accordion.tsx +9 -2
  511. package/src/components/AccordionCheckbox/AccordionCheckbox.tsx +10 -3
  512. package/src/components/AccountCard/AccountCard.tsx +10 -3
  513. package/src/components/ActionFooter/ActionFooter.tsx +8 -26
  514. package/src/components/ActionTile/ActionTile.tsx +10 -10
  515. package/src/components/AllocationComparisonChart/AllocationComparisonChart.tsx +14 -4
  516. package/src/components/AmountInput/AmountInput.tsx +3 -3
  517. package/src/components/AreaLineChart/AreaLineChart.tsx +17 -7
  518. package/src/components/Attached/Attached.tsx +1 -1
  519. package/src/components/Avatar/Avatar.tsx +10 -10
  520. package/src/components/AvatarGroup/AvatarGroup.tsx +9 -9
  521. package/src/components/Badge/Badge.tsx +86 -17
  522. package/src/components/BenefitCard/BenefitCard.tsx +120 -27
  523. package/src/components/BottomNav/BottomNav.tsx +2 -2
  524. package/src/components/BottomNavItem/BottomNavItem.tsx +3 -3
  525. package/src/components/BrandChip/BrandChip.tsx +9 -3
  526. package/src/components/Button/Button.tsx +36 -19
  527. package/src/components/Card/Card.tsx +20 -20
  528. package/src/components/CardAdvisory/CardAdvisory.tsx +15 -8
  529. package/src/components/CardBankAccount/CardBankAccount.tsx +9 -2
  530. package/src/components/CardCTA/CardCTA.tsx +237 -64
  531. package/src/components/CardFeedback/CardFeedback.tsx +18 -18
  532. package/src/components/CardFinancialCondition/CardFinancialCondition.tsx +7 -10
  533. package/src/components/CardInsight/CardInsight.tsx +8 -4
  534. package/src/components/Carousel/Carousel.tsx +29 -12
  535. package/src/components/CarouselCardAccounts/CarouselCardAccounts.tsx +113 -0
  536. package/src/components/Checkbox/Checkbox.tsx +2 -8
  537. package/src/components/ChipGroup/ChipGroup.tsx +1 -1
  538. package/src/components/ChipSelect/ChipSelect.tsx +11 -11
  539. package/src/components/CircularProgressBar/CircularProgressBar.tsx +19 -9
  540. package/src/components/CircularProgressBarDoted/CircularProgressBarDoted.tsx +18 -11
  541. package/src/components/CircularRating/CircularRating.tsx +12 -5
  542. package/src/components/ClusterBubble/ClusterBubble.tsx +9 -2
  543. package/src/components/CompareTable/CompareTable.tsx +114 -66
  544. package/src/components/CoverageBarComparison/CoverageBarComparison.tsx +9 -2
  545. package/src/components/DebitCard/DebitCard.tsx +22 -22
  546. package/src/components/Disclaimer/Disclaimer.tsx +5 -5
  547. package/src/components/DonutChart/DonutChart.tsx +21 -48
  548. package/src/components/Drawer/Drawer.tsx +80 -71
  549. package/src/components/Dropdown/Dropdown.tsx +32 -30
  550. package/src/components/DropdownInput/DropdownInput.tsx +19 -19
  551. package/src/components/EmptyState/EmptyState.tsx +14 -14
  552. package/src/components/ExpandableCheckbox/ExpandableCheckbox.tsx +8 -1
  553. package/src/components/FilterBar/FilterBar.tsx +2 -2
  554. package/src/components/Form/Form.tsx +3 -3
  555. package/src/components/FormField/FormField.tsx +55 -15
  556. package/src/components/FullscreenModal/FullscreenModal.tsx +24 -24
  557. package/src/components/Gauge/Gauge.tsx +9 -9
  558. package/src/components/HoldingsCard/HoldingsCard.tsx +19 -12
  559. package/src/components/Icon/Icon.tsx +6 -6
  560. package/src/components/IconCapsule/IconCapsule.tsx +7 -7
  561. package/src/components/InputSearch/InputSearch.tsx +9 -9
  562. package/src/components/InstitutionBadge/InstitutionBadge.tsx +12 -8
  563. package/src/components/ListGroup/ListGroup.tsx +17 -10
  564. package/src/components/ListItem/ListItem.tsx +20 -13
  565. package/src/components/LottieIntroBlock/LottieIntroBlock.tsx +13 -16
  566. package/src/components/LottiePlayer/LottiePlayer.tsx +2 -2
  567. package/src/components/LottiePlayer/LottiePlayer.web.tsx +2 -2
  568. package/src/components/MediaCard/MediaCard.tsx +23 -23
  569. package/src/components/MessageField/MessageField.tsx +8 -16
  570. package/src/components/MetricLegendItem/MetricLegendItem.tsx +9 -2
  571. package/src/components/MoneyValue/MoneyValue.tsx +7 -7
  572. package/src/components/MonthlyStatusGrid/MonthlyStatusGrid.tsx +17 -2
  573. package/src/components/NavArrow/NavArrow.tsx +8 -8
  574. package/src/components/NoteInput/NoteInput.tsx +12 -12
  575. package/src/components/Nudge/Nudge.tsx +20 -20
  576. package/src/components/OTP/OTP.tsx +16 -16
  577. package/src/components/PageHero/PageHero.tsx +16 -16
  578. package/src/components/PaymentFeedback/PaymentFeedback.tsx +27 -27
  579. package/src/components/Popup/Popup.tsx +1 -1
  580. package/src/components/PoweredByLabel/PoweredByLabel.tsx +9 -2
  581. package/src/components/ProductMerchandisingCard/ProductMerchandisingCard.tsx +104 -37
  582. package/src/components/ProductOverview/ProductOverview.tsx +10 -3
  583. package/src/components/ProgressBadge/ProgressBadge.tsx +14 -8
  584. package/src/components/ProjectionMarker/ProjectionMarker.tsx +9 -2
  585. package/src/components/Radio/Radio.tsx +8 -9
  586. package/src/components/RechargeCard/RechargeCard.tsx +31 -31
  587. package/src/components/SavingsGoalSummary/SavingsGoalSummary.tsx +105 -13
  588. package/src/components/ScrollArea/ScrollArea.tsx +200 -0
  589. package/src/components/Section/Section.tsx +36 -29
  590. package/src/components/Slider/Slider.tsx +9 -2
  591. package/src/components/Stack/Stack.tsx +131 -0
  592. package/src/components/StatusHero/StatusHero.tsx +14 -14
  593. package/src/components/Stepper/Step.tsx +16 -18
  594. package/src/components/Stepper/StepLabel.tsx +16 -27
  595. package/src/components/Stepper/Stepper.tsx +3 -4
  596. package/src/components/SuggestiveSearch/SuggestiveSearch.tsx +20 -21
  597. package/src/components/SummaryTile/SummaryTile.tsx +9 -2
  598. package/src/components/SupportText/SupportText.tsx +6 -6
  599. package/src/components/SupportText/SupportTextIcon.tsx +2 -2
  600. package/src/components/Table/Table.tsx +449 -0
  601. package/src/components/Text/Text.tsx +28 -3
  602. package/src/components/TextInput/TextInput.tsx +21 -15
  603. package/src/components/TextSegment/TextSegment.tsx +27 -2
  604. package/src/components/ThreadHero/ThreadHero.tsx +27 -20
  605. package/src/components/Title/Title.tsx +50 -17
  606. package/src/components/Toast/Toast.tsx +24 -17
  607. package/src/components/Toggle/Toggle.tsx +5 -10
  608. package/src/components/Tooltip/Tooltip.tsx +12 -12
  609. package/src/components/TransactionBubble/TransactionBubble.tsx +22 -15
  610. package/src/components/TransactionDetails/TransactionDetails.tsx +10 -10
  611. package/src/components/TransactionStatus/TransactionStatus.tsx +18 -11
  612. package/src/components/UpiHandle/UpiHandle.tsx +24 -18
  613. package/src/components/index.ts +25 -2
  614. package/src/design-tokens/Coin Variables-variables-full.json +1 -1
  615. package/src/design-tokens/figma-modes.generated.ts +51 -42
  616. package/src/icons/components/Icon4g.tsx +11 -0
  617. package/src/icons/components/Icon4gltedata.tsx +11 -0
  618. package/src/icons/components/Icon5g.tsx +11 -0
  619. package/src/icons/components/Icon5gdoubleplus.tsx +11 -0
  620. package/src/icons/components/Icon5gplus.tsx +11 -0
  621. package/src/icons/components/IconAdblocker.tsx +11 -0
  622. package/src/icons/components/IconAdblockplus.tsx +11 -0
  623. package/src/icons/components/IconAnalytics.tsx +11 -0
  624. package/src/icons/components/IconAnalyticsdata.tsx +11 -0
  625. package/src/icons/components/IconAnalyticspiechart.tsx +11 -0
  626. package/src/icons/components/IconAnalyticspiecharttree.tsx +11 -0
  627. package/src/icons/components/IconAnalyticspiecharttwo.tsx +11 -0
  628. package/src/icons/components/IconCompoundinterest.tsx +11 -0
  629. package/src/icons/components/IconConsumptionaccounted.tsx +11 -0
  630. package/src/icons/components/IconConsumptionaverage.tsx +11 -0
  631. package/src/icons/components/IconConsumptionhigh.tsx +11 -0
  632. package/src/icons/components/IconConsumptionlow.tsx +11 -0
  633. package/src/icons/components/IconConsumptionunaccounted.tsx +11 -0
  634. package/src/icons/components/IconCsvdoc.tsx +11 -0
  635. package/src/icons/components/IconDatabase.tsx +11 -0
  636. package/src/icons/components/IconDigitalecosystem.tsx +11 -0
  637. package/src/icons/components/IconDigitalselfservice.tsx +11 -0
  638. package/src/icons/components/IconDistribution.tsx +11 -0
  639. package/src/icons/components/IconDocument.tsx +11 -0
  640. package/src/icons/components/IconDocumentdoc.tsx +11 -0
  641. package/src/icons/components/IconDocumentjpg.tsx +11 -0
  642. package/src/icons/components/IconDocumentodt.tsx +11 -0
  643. package/src/icons/components/IconDocumentpdf.tsx +11 -0
  644. package/src/icons/components/IconDocumentpng.tsx +11 -0
  645. package/src/icons/components/IconDocumentraw.tsx +11 -0
  646. package/src/icons/components/IconDocumentrtf.tsx +11 -0
  647. package/src/icons/components/IconDocumentsettings.tsx +11 -0
  648. package/src/icons/components/IconDocumenttif.tsx +11 -0
  649. package/src/icons/components/IconDocumenttxt.tsx +11 -0
  650. package/src/icons/components/IconDocumentunknown.tsx +11 -0
  651. package/src/icons/components/IconDocumentxls.tsx +11 -0
  652. package/src/icons/components/IconDocumentxlsx.tsx +11 -0
  653. package/src/icons/components/IconFilerequest.tsx +11 -0
  654. package/src/icons/components/IconFilesend.tsx +11 -0
  655. package/src/icons/components/IconFileshare.tsx +11 -0
  656. package/src/icons/components/IconFindinpage.tsx +11 -0
  657. package/src/icons/components/IconFolder.tsx +11 -0
  658. package/src/icons/components/IconFolderbookmarks.tsx +11 -0
  659. package/src/icons/components/IconFolderfavorites.tsx +11 -0
  660. package/src/icons/components/IconFolderlocked.tsx +11 -0
  661. package/src/icons/components/IconFoldermovefiles.tsx +11 -0
  662. package/src/icons/components/IconFolderpublic.tsx +11 -0
  663. package/src/icons/components/IconFolderrated.tsx +11 -0
  664. package/src/icons/components/IconFolderrequest.tsx +11 -0
  665. package/src/icons/components/IconForm.tsx +11 -0
  666. package/src/icons/components/IconFormadd.tsx +11 -0
  667. package/src/icons/components/IconForms.tsx +11 -0
  668. package/src/icons/components/IconGraphincreasing.tsx +11 -0
  669. package/src/icons/components/IconGraphlow.tsx +11 -0
  670. package/src/icons/components/IconGraphtable.tsx +11 -0
  671. package/src/icons/components/IconHealthreport.tsx +11 -0
  672. package/src/icons/components/IconHubmode.tsx +11 -0
  673. package/src/icons/components/IconInfrastructure.tsx +11 -0
  674. package/src/icons/components/IconInterestlow.tsx +11 -0
  675. package/src/icons/components/IconLte.tsx +11 -0
  676. package/src/icons/components/IconNetworkfuture.tsx +11 -0
  677. package/src/icons/components/IconPagesettings.tsx +11 -0
  678. package/src/icons/components/IconPptxdoc.tsx +11 -0
  679. package/src/icons/components/IconPreferrednumber.tsx +11 -0
  680. package/src/icons/components/IconPremiumnumber.tsx +11 -0
  681. package/src/icons/components/IconProjection.tsx +11 -0
  682. package/src/icons/components/IconRequest.tsx +11 -0
  683. package/src/icons/components/IconRoutestraffic.tsx +11 -0
  684. package/src/icons/components/IconTechnology.tsx +11 -0
  685. package/src/icons/components/IconVolte.tsx +11 -0
  686. package/src/icons/components/IconVonr.tsx +11 -0
  687. package/src/icons/components/IconVowifi.tsx +11 -0
  688. package/src/icons/components/IconVpndata.tsx +11 -0
  689. package/src/icons/components/index.ts +73 -0
  690. package/src/icons/registry.ts +293 -1
  691. package/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.tsx +32 -3
  692. package/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.tsx +25 -4
  693. package/src/utils/index.ts +2 -0
  694. package/src/utils/react-utils.ts +132 -0
  695. package/src/utils/shadow.ts +219 -0
  696. package/src/utils/web-platform-utils.ts +68 -0
  697. package/lib/commonjs/components/MediaCard/GlassFill.js +0 -62
  698. package/lib/commonjs/components/MediaCard/GlassFill.web.js +0 -48
  699. package/lib/module/components/MediaCard/GlassFill.js +0 -57
  700. package/lib/module/components/MediaCard/GlassFill.web.js +0 -43
  701. package/lib/typescript/src/components/MediaCard/GlassFill.d.ts +0 -47
  702. package/lib/typescript/src/components/MediaCard/GlassFill.web.d.ts +0 -20
  703. package/src/components/MediaCard/GlassFill.tsx +0 -89
  704. package/src/components/MediaCard/GlassFill.web.tsx +0 -53
@@ -39,47 +39,47 @@ export default function RechargeCard({
39
39
  style
40
40
  }) {
41
41
  // Container Tokens (defaults mirror Figma node 2235:937).
42
- const backgroundColor = getVariableByName('rechargeCard/background', modes) || '#ffffff';
43
- const paddingHorizontal = parseInt(getVariableByName('rechargeCard/padding/horizontal', modes) || 16, 10);
44
- const paddingVertical = parseInt(getVariableByName('rechargeCard/padding/vertical', modes) || 20, 10);
45
- const gap = parseInt(getVariableByName('rechargeCard/gap', modes) || 20, 10);
46
- const radius = parseInt(getVariableByName('rechargeCard/radius', modes) || 20, 10);
47
- const minWidth = parseInt(getVariableByName('rechargeCard/minWidth', modes) || 312, 10);
48
- const strokeWidth = parseInt(getVariableByName('rechargeCard/strokeWidth', modes) || 1, 10);
49
- const strokeColor = getVariableByName('rechargeCard/stroke/color', modes) || '#ebebed';
42
+ const backgroundColor = getVariableByName('rechargeCard/background', modes);
43
+ const paddingHorizontal = parseInt(getVariableByName('rechargeCard/padding/horizontal', modes), 10);
44
+ const paddingVertical = parseInt(getVariableByName('rechargeCard/padding/vertical', modes), 10);
45
+ const gap = parseInt(getVariableByName('rechargeCard/gap', modes), 10);
46
+ const radius = parseInt(getVariableByName('rechargeCard/radius', modes), 10);
47
+ const minWidth = parseInt(getVariableByName('rechargeCard/minWidth', modes), 10);
48
+ const strokeWidth = parseInt(getVariableByName('rechargeCard/strokeWidth', modes), 10);
49
+ const strokeColor = getVariableByName('rechargeCard/stroke/color', modes);
50
50
 
51
51
  // Header Tokens
52
- const headerGap = parseInt(getVariableByName('rechargeCard/header/gap', modes) || 4, 10);
53
- const titleColor = getVariableByName('rechargeCard/title/color', modes) || '#000000';
54
- const titleFontSize = parseInt(getVariableByName('rechargeCard/title/fontSize', modes) || 12, 10);
55
- const titleFontFamily = getVariableByName('rechargeCard/title/fontFamily', modes) || 'JioType Var';
56
- const titleLineHeight = parseInt(getVariableByName('rechargeCard/title/lineHeight', modes) || 14, 10);
57
- const titleFontWeight = getVariableByName('rechargeCard/title/fontWeight', modes) || '700';
52
+ const headerGap = parseInt(getVariableByName('rechargeCard/header/gap', modes), 10);
53
+ const titleColor = getVariableByName('rechargeCard/title/color', modes);
54
+ const titleFontSize = parseInt(getVariableByName('rechargeCard/title/fontSize', modes), 10);
55
+ const titleFontFamily = getVariableByName('rechargeCard/title/fontFamily', modes);
56
+ const titleLineHeight = parseInt(getVariableByName('rechargeCard/title/lineHeight', modes), 10);
57
+ const titleFontWeight = getVariableByName('rechargeCard/title/fontWeight', modes);
58
58
 
59
59
  // Specs Tokens
60
- const specsGap = parseInt(getVariableByName('rechargeCard/specs/gap', modes) || 0, 10);
61
- const specItemGap = parseInt(getVariableByName('rechargeCard/specItem/gap', modes) || 4, 10);
60
+ const specsGap = parseInt(getVariableByName('rechargeCard/specs/gap', modes), 10);
61
+ const specItemGap = parseInt(getVariableByName('rechargeCard/specItem/gap', modes), 10);
62
62
 
63
63
  // Spec Label Tokens
64
- const specLabelColor = getVariableByName('rechargeCard/specItem/label/color', modes) || '#000000';
65
- const specLabelFontSize = parseInt(getVariableByName('rechargeCard/specItem/label/fontSize', modes) || 12, 10);
66
- const specLabelFontFamily = getVariableByName('rechargeCard/specItem/label/fontFamily', modes) || 'JioType Var';
67
- const specLabelLineHeight = parseInt(getVariableByName('rechargeCard/specItem/label/lineHeight', modes) || 14, 10);
68
- const specLabelFontWeight = getVariableByName('rechargeCard/specItem/label/fontWeight', modes) || '500';
64
+ const specLabelColor = getVariableByName('rechargeCard/specItem/label/color', modes);
65
+ const specLabelFontSize = parseInt(getVariableByName('rechargeCard/specItem/label/fontSize', modes), 10);
66
+ const specLabelFontFamily = getVariableByName('rechargeCard/specItem/label/fontFamily', modes);
67
+ const specLabelLineHeight = parseInt(getVariableByName('rechargeCard/specItem/label/lineHeight', modes), 10);
68
+ const specLabelFontWeight = getVariableByName('rechargeCard/specItem/label/fontWeight', modes);
69
69
 
70
70
  // Spec Value Tokens
71
- const specValueColor = getVariableByName('rechargeCard/specItem/value/color', modes) || '#000000';
72
- const specValueFontSize = parseInt(getVariableByName('rechargeCard/specItem/value/fontSize', modes) || 14, 10);
73
- const specValueFontFamily = getVariableByName('rechargeCard/specItem/value/fontFamily', modes) || 'JioType Var';
74
- const specValueLineHeight = parseInt(getVariableByName('rechargeCard/specItem/value/lineHeight', modes) || 17, 10);
75
- const specValueFontWeight = getVariableByName('rechargeCard/specItem/value/fontWeight', modes) || '500';
71
+ const specValueColor = getVariableByName('rechargeCard/specItem/value/color', modes);
72
+ const specValueFontSize = parseInt(getVariableByName('rechargeCard/specItem/value/fontSize', modes), 10);
73
+ const specValueFontFamily = getVariableByName('rechargeCard/specItem/value/fontFamily', modes);
74
+ const specValueLineHeight = parseInt(getVariableByName('rechargeCard/specItem/value/lineHeight', modes), 10);
75
+ const specValueFontWeight = getVariableByName('rechargeCard/specItem/value/fontWeight', modes);
76
76
 
77
77
  // Disclaimer Tokens
78
- const disclaimerColor = getVariableByName('rechargeCard/disclaimer/color', modes) || '#000000';
79
- const disclaimerFontSize = parseInt(getVariableByName('rechargeCard/disclaimer/fontSize', modes) || 10, 10);
80
- const disclaimerFontFamily = getVariableByName('rechargeCard/disclaimer/fontFamily', modes) || 'JioType Var';
81
- const disclaimerLineHeight = parseInt(getVariableByName('rechargeCard/disclaimer/lineHeight', modes) || 13, 10);
82
- const disclaimerFontWeight = getVariableByName('rechargeCard/disclaimer/fontWeight', modes) || '400';
78
+ const disclaimerColor = getVariableByName('rechargeCard/disclaimer/color', modes);
79
+ const disclaimerFontSize = parseInt(getVariableByName('rechargeCard/disclaimer/fontSize', modes), 10);
80
+ const disclaimerFontFamily = getVariableByName('rechargeCard/disclaimer/fontFamily', modes);
81
+ const disclaimerLineHeight = parseInt(getVariableByName('rechargeCard/disclaimer/lineHeight', modes), 10);
82
+ const disclaimerFontWeight = getVariableByName('rechargeCard/disclaimer/fontWeight', modes);
83
83
  const resolveFontWeight = weight => typeof weight === 'number' ? weight.toString() : weight;
84
84
 
85
85
  // Pass modes to subscription children (e.g. AvatarGroup)
@@ -1,11 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  import React, { useMemo } from 'react';
4
- import { View } from 'react-native';
4
+ import { View, Text } from 'react-native';
5
5
  import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
6
6
  import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils';
7
7
  import { formatIndianNumber } from '../../utils/number-utils';
8
- import Title from '../Title/Title';
9
8
  import LinearProgress from '../LinearProgress/LinearProgress';
10
9
  import MetricLegendItem from '../MetricLegendItem/MetricLegendItem';
11
10
 
@@ -57,6 +56,7 @@ const DEFAULT_TARGET = {
57
56
  * @param {SavingsGoalSummaryProps} props
58
57
  */
59
58
  function SavingsGoalSummary({
59
+ label,
60
60
  currency = '₹',
61
61
  current = DEFAULT_CURRENT,
62
62
  target = DEFAULT_TARGET,
@@ -64,6 +64,7 @@ function SavingsGoalSummary({
64
64
  modes = EMPTY_MODES,
65
65
  style,
66
66
  titleStyle,
67
+ labelStyle,
67
68
  legendStyle
68
69
  }) {
69
70
  // Merge caller modes on top of the defaults so callers can override
@@ -111,6 +112,40 @@ function SavingsGoalSummary({
111
112
  const percentageLabel = `${Math.round(resolvedProgress * 100)}%`;
112
113
  const gap = getVariableByName('savingsGoalSummary/gap', mergedModes) ?? 23;
113
114
  const legendGap = getVariableByName('savingsGoalSummary/legend/gap', mergedModes) ?? 16;
115
+
116
+ // Percentage value typography — driven by the dedicated
117
+ // `savingsGoalSummary/value/*` tokens (Figma 29 / 900) rather than the
118
+ // generic `Title` tokens, so the value matches the design exactly.
119
+ const valueFontSize = getVariableByName('savingsGoalSummary/value/fontSize', mergedModes) ?? 29;
120
+ const valueFontFamily = getVariableByName('savingsGoalSummary/value/fontFamily', mergedModes) ?? 'JioType Var';
121
+ const valueRawLineHeight = getVariableByName('savingsGoalSummary/value/lineHeight', mergedModes) ?? 29;
122
+ // The value tokens ship with `lineHeight === fontSize` (29/29); clamp to
123
+ // ~1.2x so descenders never clip on native (same guard `Title` uses).
124
+ const valueLineHeight = Math.max(valueRawLineHeight, Math.ceil(valueFontSize * 1.2));
125
+ const valueFontWeight = String(getVariableByName('savingsGoalSummary/value/fontWeight', mergedModes) ?? 900);
126
+ const valueColor = getVariableByName('savingsGoalSummary/value/color', mergedModes) ?? '#0d0d0f';
127
+
128
+ // Caption ("Credit usage") typography — `savingsGoalSummary/label/*`
129
+ // (Figma 12 / 400). Only rendered when a `label` is supplied.
130
+ const labelFontSize = getVariableByName('savingsGoalSummary/label/fontSize', mergedModes) ?? 12;
131
+ const labelFontFamily = getVariableByName('savingsGoalSummary/label/fontFamily', mergedModes) ?? 'JioType Var';
132
+ const labelLineHeight = getVariableByName('savingsGoalSummary/label/lineHeight', mergedModes) ?? 16;
133
+ const labelFontWeight = String(getVariableByName('savingsGoalSummary/label/fontWeight', mergedModes) ?? 400);
134
+ const labelColor = getVariableByName('savingsGoalSummary/label/color', mergedModes) ?? '#0d0d0f';
135
+ const labelNode = label == null || label === false ? null : typeof label === 'string' ? /*#__PURE__*/_jsx(Text, {
136
+ style: [{
137
+ color: labelColor,
138
+ fontFamily: labelFontFamily,
139
+ fontSize: labelFontSize,
140
+ lineHeight: labelLineHeight,
141
+ fontWeight: labelFontWeight,
142
+ width: '100%'
143
+ }, labelStyle],
144
+ children: label
145
+ }) : (() => {
146
+ const processed = cloneChildrenWithModes(label, mergedModes);
147
+ return processed.length === 1 ? processed[0] : processed;
148
+ })();
114
149
  const customLegend = children ? cloneChildrenWithModes(children, mergedModes) : null;
115
150
  const defaultLegend = !customLegend && (current || target) ? /*#__PURE__*/_jsxs(_Fragment, {
116
151
  children: [current && /*#__PURE__*/_jsx(MetricLegendItem, {
@@ -133,12 +168,22 @@ function SavingsGoalSummary({
133
168
  gap,
134
169
  alignItems: 'stretch'
135
170
  }, style],
136
- accessibilityLabel: `Savings goal progress, ${percentageLabel}`,
137
- children: [/*#__PURE__*/_jsx(Title, {
138
- title: percentageLabel,
139
- modes: mergedModes,
140
- style: TITLE_CONTAINER_STYLE,
141
- textStyle: titleStyle
171
+ accessibilityLabel: typeof label === 'string' ? `${label}, ${percentageLabel}` : `Savings goal progress, ${percentageLabel}`,
172
+ children: [/*#__PURE__*/_jsxs(View, {
173
+ style: HEADER_GROUP_STYLE,
174
+ children: [labelNode, /*#__PURE__*/_jsx(Text, {
175
+ style: [{
176
+ color: valueColor,
177
+ fontFamily: valueFontFamily,
178
+ fontSize: valueFontSize,
179
+ lineHeight: valueLineHeight,
180
+ fontWeight: valueFontWeight,
181
+ width: '100%'
182
+ }, titleStyle],
183
+ accessibilityElementsHidden: true,
184
+ importantForAccessibility: "no",
185
+ children: percentageLabel
186
+ })]
142
187
  }), /*#__PURE__*/_jsx(LinearProgress, {
143
188
  value: resolvedProgress,
144
189
  modes: mergedModes
@@ -166,10 +211,12 @@ function formatLegendValue(value, currency) {
166
211
  });
167
212
  }
168
213
 
169
- // Neutralise the `Title` component's default page-level padding so it sits
170
- // flush inside the summary card (the parent container owns spacing via `gap`).
171
- const TITLE_CONTAINER_STYLE = {
172
- paddingHorizontal: 0,
173
- paddingVertical: 0
214
+ // Groups the optional caption ("Credit usage") tightly above the percentage
215
+ // value. The parent container owns the larger spacing to the bar via `gap`,
216
+ // so this only needs the small label→value gap.
217
+ const HEADER_GROUP_STYLE = {
218
+ width: '100%',
219
+ gap: 2,
220
+ alignItems: 'flex-start'
174
221
  };
175
222
  export default SavingsGoalSummary;
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+
3
+ import React, { forwardRef } from 'react';
4
+ import { ScrollView } from 'react-native';
5
+ import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils';
6
+
7
+ /**
8
+ * Axis (or axes) along which the content can be scrolled.
9
+ *
10
+ * - `vertical` (default) — content taller than the viewport scrolls up/down.
11
+ * - `horizontal` — content wider than the viewport scrolls left/right.
12
+ * - `both` — content larger on either axis scrolls in both directions
13
+ * (implemented as a horizontal `ScrollView` nested in a vertical one).
14
+ */
15
+ import { jsx as _jsx } from "react/jsx-runtime";
16
+ /**
17
+ * Build a padding style fragment, letting the more specific props win over the
18
+ * broader ones (`paddingTop` > `paddingVertical` > `padding`). Only defined
19
+ * values are emitted so consumer `contentContainerStyle` overrides survive.
20
+ */
21
+ function resolvePadding({
22
+ padding,
23
+ paddingHorizontal,
24
+ paddingVertical,
25
+ paddingTop,
26
+ paddingRight,
27
+ paddingBottom,
28
+ paddingLeft
29
+ }) {
30
+ const top = paddingTop ?? paddingVertical ?? padding;
31
+ const right = paddingRight ?? paddingHorizontal ?? padding;
32
+ const bottom = paddingBottom ?? paddingVertical ?? padding;
33
+ const left = paddingLeft ?? paddingHorizontal ?? padding;
34
+ const style = {};
35
+ if (top != null) style.paddingTop = top;
36
+ if (right != null) style.paddingRight = right;
37
+ if (bottom != null) style.paddingBottom = bottom;
38
+ if (left != null) style.paddingLeft = left;
39
+ return style;
40
+ }
41
+
42
+ /**
43
+ * ScrollArea — a transparent, size-constrained viewport that makes content
44
+ * larger than itself smoothly scrollable (Figma node 6319:46886).
45
+ *
46
+ * It has no background of its own; constrain its size through `style`
47
+ * (`height`, `maxHeight`, or `flex`) and drop any over-sized content inside.
48
+ *
49
+ * @example
50
+ * // Vertical (default): a tall column inside a fixed-height window.
51
+ * <ScrollArea style={{ height: 240 }}>
52
+ * <LongContent />
53
+ * </ScrollArea>
54
+ *
55
+ * @example
56
+ * // Horizontal: a wide row of cards inside a full-width window.
57
+ * <ScrollArea direction="horizontal">
58
+ * <Card /> <Card /> <Card />
59
+ * </ScrollArea>
60
+ */
61
+ export const ScrollArea = /*#__PURE__*/forwardRef(function ScrollArea({
62
+ children,
63
+ direction = 'vertical',
64
+ showScrollIndicator = false,
65
+ padding,
66
+ paddingHorizontal,
67
+ paddingVertical,
68
+ paddingTop,
69
+ paddingRight,
70
+ paddingBottom,
71
+ paddingLeft,
72
+ style,
73
+ contentContainerStyle,
74
+ modes = EMPTY_MODES,
75
+ scrollEventThrottle = 16,
76
+ ...rest
77
+ }, ref) {
78
+ const paddingStyle = resolvePadding({
79
+ padding,
80
+ paddingHorizontal,
81
+ paddingVertical,
82
+ paddingTop,
83
+ paddingRight,
84
+ paddingBottom,
85
+ paddingLeft
86
+ });
87
+
88
+ // Cascade modes into every child so slotted tokens resolve correctly.
89
+ const content = cloneChildrenWithModes(children, modes);
90
+ if (direction === 'both') {
91
+ // Outer vertical scroll, inner horizontal scroll. Padding lives on the
92
+ // inner content container so it scrolls with the content on both axes.
93
+ return /*#__PURE__*/_jsx(ScrollView, {
94
+ ref: ref,
95
+ style: style,
96
+ showsVerticalScrollIndicator: showScrollIndicator,
97
+ scrollEventThrottle: scrollEventThrottle,
98
+ ...rest,
99
+ children: /*#__PURE__*/_jsx(ScrollView, {
100
+ horizontal: true,
101
+ showsHorizontalScrollIndicator: showScrollIndicator,
102
+ scrollEventThrottle: scrollEventThrottle,
103
+ contentContainerStyle: [paddingStyle, contentContainerStyle],
104
+ children: content
105
+ })
106
+ });
107
+ }
108
+ const isHorizontal = direction === 'horizontal';
109
+ return /*#__PURE__*/_jsx(ScrollView, {
110
+ ref: ref,
111
+ horizontal: isHorizontal,
112
+ style: style,
113
+ showsVerticalScrollIndicator: isHorizontal ? undefined : showScrollIndicator,
114
+ showsHorizontalScrollIndicator: isHorizontal ? showScrollIndicator : undefined,
115
+ scrollEventThrottle: scrollEventThrottle,
116
+ contentContainerStyle: [paddingStyle, contentContainerStyle],
117
+ ...rest,
118
+ children: content
119
+ });
120
+ });
121
+ export default ScrollArea;
@@ -8,7 +8,7 @@ import NavArrow from '../NavArrow/NavArrow';
8
8
  import IconCapsule from '../IconCapsule/IconCapsule';
9
9
  import ListItem from '../ListItem/ListItem';
10
10
  import { usePressableWebSupport } from '../../utils/web-platform-utils';
11
- import { EMPTY_MODES, cloneChildrenWithModes, flattenChildren } from '../../utils/react-utils';
11
+ import { EMPTY_MODES, cloneChildrenWithModes, flattenChildren, resolveTruncation } from '../../utils/react-utils';
12
12
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
13
13
  // Match Button: delay the press visual on iOS so a scroll-cancelled touch
14
14
  // never applies the "pressed" style. See Button.tsx for the rationale.
@@ -304,26 +304,26 @@ function slotGridPropsAreEqual(prev, next) {
304
304
  */
305
305
 
306
306
  function resolveSectionTokens(modes) {
307
- const backgroundColor = getVariableByName('section/background/color', modes) || '#ffffff';
308
- const sectionGap = getVariableByName('section/gap', modes) || 12;
309
- const slotGap = getVariableByName('slot/gap', modes) || 12;
310
- const paddingHorizontal = getVariableByName('section/padding/horizontal', modes) || 12;
311
- const paddingVertical = getVariableByName('section/padding/vertical', modes) || 16;
312
- const radius = getVariableByName('section/radius', modes) || 12;
313
- const headerGap = getVariableByName('section/header/gap', modes) || 8;
314
- const headerPaddingHorizontal = getVariableByName('section/header/padding/horizontal', modes) || 0;
315
- const headerPaddingVertical = getVariableByName('section/header/padding/vertical', modes) || 0;
316
- const titleColor = getVariableByName('section/title/color', modes) || '#0f0d0a';
317
- const titleFontSize = getVariableByName('section/title/fontSize', modes) || 18;
318
- const titleLineHeight = getVariableByName('section/title/lineHeight', modes) || 20;
319
- const titleFontFamily = getVariableByName('section/title/fontFamily', modes) || 'System';
320
- const titleFontWeightRaw = getVariableByName('section/title/fontWeight', modes) || 800;
307
+ const backgroundColor = getVariableByName('section/background/color', modes);
308
+ const sectionGap = getVariableByName('section/gap', modes);
309
+ const slotGap = getVariableByName('slot/gap', modes);
310
+ const paddingHorizontal = getVariableByName('section/padding/horizontal', modes);
311
+ const paddingVertical = getVariableByName('section/padding/vertical', modes);
312
+ const radius = getVariableByName('section/radius', modes);
313
+ const headerGap = getVariableByName('section/header/gap', modes);
314
+ const headerPaddingHorizontal = getVariableByName('section/header/padding/horizontal', modes);
315
+ const headerPaddingVertical = getVariableByName('section/header/padding/vertical', modes);
316
+ const titleColor = getVariableByName('section/title/color', modes);
317
+ const titleFontSize = getVariableByName('section/title/fontSize', modes);
318
+ const titleLineHeight = getVariableByName('section/title/lineHeight', modes);
319
+ const titleFontFamily = getVariableByName('section/title/fontFamily', modes);
320
+ const titleFontWeightRaw = getVariableByName('section/title/fontWeight', modes);
321
321
  const titleFontWeight = typeof titleFontWeightRaw === 'number' ? titleFontWeightRaw.toString() : titleFontWeightRaw;
322
- const supportTextColor = getVariableByName('section/supportText/color', modes) || '#1f1a14';
323
- const supportTextFontSize = getVariableByName('section/supportText/fontSize', modes) || 14;
324
- const supportTextLineHeight = getVariableByName('section/supportText/lineHeight', modes) || 18;
325
- const supportTextFontFamily = getVariableByName('section/supportText/fontFamily', modes) || 'System';
326
- const supportTextFontWeightRaw = getVariableByName('section/supportText/fontWeight', modes) || 500;
322
+ const supportTextColor = getVariableByName('section/supportText/color', modes);
323
+ const supportTextFontSize = getVariableByName('section/supportText/fontSize', modes);
324
+ const supportTextLineHeight = getVariableByName('section/supportText/lineHeight', modes);
325
+ const supportTextFontFamily = getVariableByName('section/supportText/fontFamily', modes);
326
+ const supportTextFontWeightRaw = getVariableByName('section/supportText/fontWeight', modes);
327
327
  const supportTextFontWeight = typeof supportTextFontWeightRaw === 'number' ? supportTextFontWeightRaw.toString() : supportTextFontWeightRaw;
328
328
  return {
329
329
  containerStyle: {
@@ -374,6 +374,7 @@ function Section({
374
374
  accessibilityLabel: _accessibilityLabel,
375
375
  accessibilityHint,
376
376
  webAccessibilityProps,
377
+ disableTruncation,
377
378
  ...rest
378
379
  }) {
379
380
  // Focus and hover are still mirrored in React because they are visible,
@@ -409,7 +410,7 @@ function Section({
409
410
  style: headerWrapStyle,
410
411
  children: [/*#__PURE__*/_jsx(Text, {
411
412
  style: tokens.titleStyle,
412
- numberOfLines: 1,
413
+ ...resolveTruncation(disableTruncation, 1),
413
414
  accessibilityElementsHidden: true,
414
415
  importantForAccessibility: "no",
415
416
  children: title
@@ -419,7 +420,7 @@ function Section({
419
420
  })]
420
421
  }), showSupportText && /*#__PURE__*/_jsx(Text, {
421
422
  style: tokens.supportTextStyle,
422
- numberOfLines: 2,
423
+ ...resolveTruncation(disableTruncation, 2),
423
424
  accessibilityElementsHidden: true,
424
425
  importantForAccessibility: "no",
425
426
  children: supportText
@@ -567,11 +568,11 @@ function SectionBento({
567
568
  renderToggle,
568
569
  ...rest
569
570
  }) {
570
- const backgroundColor = getVariableByName('section/background/color', modes) || '#ffffff';
571
- const gap = getVariableByName('section/gap', modes) || 12;
572
- const paddingHorizontal = getVariableByName('section/padding/horizontal', modes) || 12;
573
- const paddingVertical = getVariableByName('section/padding/vertical', modes) || 16;
574
- const radius = getVariableByName('section/radius', modes) || 12;
571
+ const backgroundColor = getVariableByName('section/background/color', modes);
572
+ const gap = getVariableByName('section/gap', modes);
573
+ const paddingHorizontal = getVariableByName('section/padding/horizontal', modes);
574
+ const paddingVertical = getVariableByName('section/padding/vertical', modes);
575
+ const radius = getVariableByName('section/radius', modes);
575
576
  const containerStyle = useMemo(() => ({
576
577
  backgroundColor,
577
578
  paddingHorizontal,
@@ -4,7 +4,7 @@ import React, { forwardRef, useCallback, useImperativeHandle, useMemo, useRef, u
4
4
  import { View, Text, PanResponder, Platform } from 'react-native';
5
5
  import Svg, { Path } from 'react-native-svg';
6
6
  import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
7
- import { EMPTY_MODES } from '../../utils/react-utils';
7
+ import { EMPTY_MODES, resolveTruncation } from '../../utils/react-utils';
8
8
 
9
9
  /**
10
10
  * Imperative handle exposed via `ref`. The primary way to read a slider's value
@@ -66,7 +66,8 @@ const Slider = /*#__PURE__*/forwardRef(function Slider({
66
66
  width = '100%',
67
67
  modes = EMPTY_MODES,
68
68
  style,
69
- accessibilityLabel
69
+ accessibilityLabel,
70
+ disableTruncation
70
71
  }, ref) {
71
72
  const tokens = useMemo(() => resolveTokens(modes), [modes]);
72
73
  const isControlled = controlledValue !== undefined;
@@ -247,7 +248,7 @@ const Slider = /*#__PURE__*/forwardRef(function Slider({
247
248
  pointerEvents: "none",
248
249
  children: [renderTooltip ? renderTooltip(currentValue) : /*#__PURE__*/_jsx(Text, {
249
250
  style: tokens.tooltipLabel,
250
- numberOfLines: 1,
251
+ ...resolveTruncation(disableTruncation, 1),
251
252
  children: valueText
252
253
  }), /*#__PURE__*/_jsx(View, {
253
254
  style: [styles.tip, {
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+
3
+ import React, { useMemo } from 'react';
4
+ import { View } from 'react-native';
5
+ import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
6
+ import { useTokens } from '../../design-tokens/JFSThemeProvider';
7
+ import { cloneChildrenWithModes, EMPTY_MODES, injectChildStyle } from '../../utils/react-utils';
8
+ import { jsx as _jsx } from "react/jsx-runtime";
9
+ /**
10
+ * Stack — a token-driven layout container for grouped content.
11
+ *
12
+ * Use `Stack` instead of a raw `View` when you need a vertical or horizontal
13
+ * stack with design-token gap spacing and automatic `modes` propagation to
14
+ * children. Typical usage is nesting a column of actions inside a
15
+ * direction-locked parent such as `ActionFooter`:
16
+ *
17
+ * @example
18
+ * ```tsx
19
+ * <ActionFooter modes={modes}>
20
+ * <Stack layoutDirection="vertical" modes={modes}>
21
+ * <Button label="Continue" modes={primaryModes} />
22
+ * <Disclaimer disclaimer="Terms apply." modes={modes} />
23
+ * </Stack>
24
+ * </ActionFooter>
25
+ * ```
26
+ *
27
+ * @remarks
28
+ * Previously named `Slot`. The `Slot` export is preserved as a deprecated alias
29
+ * for backward compatibility.
30
+ */
31
+ function Stack({
32
+ children,
33
+ layoutDirection = 'vertical',
34
+ alignCrossAxis,
35
+ justifyMainAxis,
36
+ equalHeight = false,
37
+ fillWidth = false,
38
+ modes: propModes = EMPTY_MODES,
39
+ style,
40
+ ...rest
41
+ }) {
42
+ const {
43
+ modes: globalModes
44
+ } = useTokens();
45
+ const modes = useMemo(() => ({
46
+ ...globalModes,
47
+ ...propModes
48
+ }), [globalModes, propModes]);
49
+ const {
50
+ containerStyle,
51
+ processedChildren
52
+ } = useMemo(() => {
53
+ const gap = getVariableByName('slot/gap', modes) ?? 8;
54
+ const isHorizontal = layoutDirection === 'horizontal';
55
+
56
+ // Cross-axis stretch maps to "equal height" for a row and "fill width" for a
57
+ // column. Honour whichever flag matches the active direction.
58
+ const stretchCrossAxis = isHorizontal ? equalHeight : fillWidth;
59
+ const container = {
60
+ flexDirection: isHorizontal ? 'row' : 'column',
61
+ alignItems: stretchCrossAxis ? 'stretch' : alignCrossAxis ?? (isHorizontal ? 'flex-start' : 'stretch'),
62
+ justifyContent: justifyMainAxis ?? (isHorizontal ? 'center' : undefined),
63
+ alignSelf: 'stretch',
64
+ gap
65
+ };
66
+ const moded = children ? cloneChildrenWithModes(children, modes) : null;
67
+ const processed = stretchCrossAxis && moded ? injectChildStyle(moded, {
68
+ alignSelf: 'stretch'
69
+ }) : moded;
70
+ return {
71
+ containerStyle: container,
72
+ processedChildren: processed
73
+ };
74
+ }, [children, modes, layoutDirection, alignCrossAxis, justifyMainAxis, equalHeight, fillWidth]);
75
+ return /*#__PURE__*/_jsx(View, {
76
+ style: [containerStyle, style],
77
+ ...rest,
78
+ children: processedChildren
79
+ });
80
+ }
81
+ export default /*#__PURE__*/React.memo(Stack);
@@ -48,28 +48,28 @@ export default function StatusHero({
48
48
  };
49
49
 
50
50
  // Container
51
- const gap = Number(getVariableByName('statusHero/gap', modes)) || 12;
52
- const padding = Number(getVariableByName('statusHero/padding', modes)) || 8;
51
+ const gap = Number(getVariableByName('statusHero/gap', modes));
52
+ const padding = Number(getVariableByName('statusHero/padding', modes));
53
53
 
54
54
  // Media slot wrap (gap between icon and money value in default slot)
55
- const slotWrapGap = Number(getVariableByName('statusHero/slotWrap/gap', modes)) || 46;
55
+ const slotWrapGap = Number(getVariableByName('statusHero/slotWrap/gap', modes));
56
56
 
57
57
  // Content wrap
58
- const contentWrapGap = Number(getVariableByName('statusHero/contentWrap/gap', modes)) || 12;
58
+ const contentWrapGap = Number(getVariableByName('statusHero/contentWrap/gap', modes));
59
59
 
60
60
  // Title
61
- const titleColor = getVariableByName('statusHero/title/foreground', modes) || '#0c0d10';
62
- const titleFontSize = Number(getVariableByName('statusHero/title/fontSize', modes)) || 20;
63
- const titleFontFamily = getVariableByName('statusHero/title/fontFamily', modes) || 'System';
64
- const titleLineHeight = Number(getVariableByName('statusHero/title/lineHeight', modes)) || 22;
65
- const titleFontWeight = getVariableByName('statusHero/title/fontWeight', modes) || '700';
61
+ const titleColor = getVariableByName('statusHero/title/foreground', modes);
62
+ const titleFontSize = Number(getVariableByName('statusHero/title/fontSize', modes));
63
+ const titleFontFamily = getVariableByName('statusHero/title/fontFamily', modes);
64
+ const titleLineHeight = Number(getVariableByName('statusHero/title/lineHeight', modes));
65
+ const titleFontWeight = getVariableByName('statusHero/title/fontWeight', modes);
66
66
 
67
67
  // Body
68
- const bodyColor = getVariableByName('statusHero/body/foreground', modes) || '#24262b';
69
- const bodyFontSize = Number(getVariableByName('statusHero/body/fontSize', modes)) || 14;
70
- const bodyFontFamily = getVariableByName('statusHero/body/fontFamily', modes) || 'System';
71
- const bodyLineHeight = Number(getVariableByName('statusHero/body/lineHeight', modes)) || 17;
72
- const bodyFontWeight = getVariableByName('statusHero/body/fontWeight', modes) || '500';
68
+ const bodyColor = getVariableByName('statusHero/body/foreground', modes);
69
+ const bodyFontSize = Number(getVariableByName('statusHero/body/fontSize', modes));
70
+ const bodyFontFamily = getVariableByName('statusHero/body/fontFamily', modes);
71
+ const bodyLineHeight = Number(getVariableByName('statusHero/body/lineHeight', modes));
72
+ const bodyFontWeight = getVariableByName('statusHero/body/fontWeight', modes);
73
73
  const containerStyle = {
74
74
  flexDirection: 'column',
75
75
  alignItems: 'center',
@@ -21,22 +21,22 @@ export function Step({
21
21
  meta = true,
22
22
  status = 'number'
23
23
  }) {
24
- const minHeight = Number(getVariableByName('steperItem/minHeight', modes)) || 52;
25
- const gap = Number(getVariableByName('steperItem/gap', modes)) || 16;
26
- const indicatorSize = Number(getVariableByName('stepIndicator/size', modes)) || 36;
27
- const indicatorRadius = Number(getVariableByName('stepIndicator/radius', modes)) || 9999;
28
- const indicatorBg = getVariableByName('stepIndicator/background', modes) || '#5d00b5';
29
- const indicatorBorderColor = getVariableByName('stepIndicator/border/color', modes) || '#5d00b5';
30
- const indicatorBorderSize = Number(getVariableByName('stepIndicator/border/size', modes)) || 1;
31
- const iconColor = getVariableByName('stepIndicator/icon/color', modes) || '#ffffff';
32
- const stepStatusSize = Number(getVariableByName('stepStatus/size', modes)) || 18;
33
- const labelFontSize = Number(getVariableByName('stepIndicator/label/fontSize', modes)) || 12;
34
- const labelFontFamily = getVariableByName('stepIndicator/label/fontFamily', modes) || undefined;
35
- const labelLineHeight = Number(getVariableByName('stepIndicator/label/lineHeight', modes)) || 14;
36
- const labelFontWeight = getVariableByName('stepIndicator/label/fontWeight', modes) || '500';
37
- const lineSize = Number(getVariableByName('steperItem/lineSize', modes)) || 2;
38
- const lineColor = getVariableByName('steperItem/line', modes) || '#5d00b5';
39
- const badgeWrapGap = Number(getVariableByName('steperItem/badgeWrap/gap', modes)) || 2;
24
+ const minHeight = Number(getVariableByName('steperItem/minHeight', modes));
25
+ const gap = Number(getVariableByName('steperItem/gap', modes));
26
+ const indicatorSize = Number(getVariableByName('stepIndicator/size', modes));
27
+ const indicatorRadius = Number(getVariableByName('stepIndicator/radius', modes));
28
+ const indicatorBg = getVariableByName('stepIndicator/background', modes);
29
+ const indicatorBorderColor = getVariableByName('stepIndicator/border/color', modes);
30
+ const indicatorBorderSize = Number(getVariableByName('stepIndicator/border/size', modes));
31
+ const iconColor = getVariableByName('stepIndicator/icon/color', modes);
32
+ const stepStatusSize = Number(getVariableByName('stepStatus/size', modes));
33
+ const labelFontSize = Number(getVariableByName('stepIndicator/label/fontSize', modes));
34
+ const labelFontFamily = getVariableByName('stepIndicator/label/fontFamily', modes);
35
+ const labelLineHeight = Number(getVariableByName('stepIndicator/label/lineHeight', modes));
36
+ const labelFontWeight = getVariableByName('stepIndicator/label/fontWeight', modes);
37
+ const lineSize = Number(getVariableByName('steperItem/lineSize', modes));
38
+ const lineColor = getVariableByName('steperItem/line', modes);
39
+ const badgeWrapGap = Number(getVariableByName('steperItem/badgeWrap/gap', modes));
40
40
  const containerStyle = {
41
41
  flexDirection: 'row',
42
42
  minHeight,