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
@@ -3,8 +3,9 @@
3
3
  import React from 'react';
4
4
  import { View, Text, Pressable, Platform } from 'react-native';
5
5
  import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
6
- import { EMPTY_MODES, cloneChildrenWithModes } from '../../utils/react-utils';
6
+ import { EMPTY_MODES, cloneChildrenWithModes, resolveTruncation } from '../../utils/react-utils';
7
7
  import Accordion from '../Accordion/Accordion';
8
+ import Table from '../Table/Table';
8
9
  import Image from '../Image/Image';
9
10
  import IconButton from '../IconButton/IconButton';
10
11
  import Icon from '../../icons/Icon';
@@ -104,7 +105,8 @@ function CompareTable({
104
105
  addColumnLabel = 'Add a card',
105
106
  maxColumns = 4,
106
107
  modes = EMPTY_MODES,
107
- style
108
+ style,
109
+ disableTruncation
108
110
  }) {
109
111
  // --- selection card tokens ------------------------------------------------
110
112
  const cardBg = getVariableByName('selectionCard/background/color', modes) ?? '#ffffff';
@@ -118,6 +120,11 @@ function CompareTable({
118
120
  const cardLabelFontFamily = getVariableByName('selectionCard/label/fontfamily', modes) ?? 'JioType Var';
119
121
  const cardLabelFontWeight = getVariableByName('selectionCard/label/fontweight', modes) ?? 700;
120
122
  const imageRadius = getVariableByName('image/radius', modes) ?? 8;
123
+ // `selectionCard/radius` (Figma node 5568:3487) rounds the card corners.
124
+ // The published token store is still out of sync (the variable resolves to
125
+ // `0` in the design), so the read falls back to `0` and will pick up a
126
+ // rounded value automatically once the store syncs.
127
+ const cardRadius = getVariableByName('selectionCard/radius', modes) ?? 0;
121
128
 
122
129
  // --- add-a-card icon button tokens ---------------------------------------
123
130
  // padding/size/border come from the shared iconButton tokens; the filled
@@ -127,30 +134,35 @@ function CompareTable({
127
134
  const addBorderSize = getVariableByName('iconButton/border/size', modes) ?? 1;
128
135
  const addPadding = getVariableByName('iconButton/padding', modes) ?? 11;
129
136
  const addIconSize = getVariableByName('iconButton/icon/size', modes) ?? 18;
137
+ // `iconButton/radius` is the design-token sentinel `9999` ("perfect
138
+ // circle"), mirroring IconButton's own resolution.
139
+ const addRadius = getVariableByName('iconButton/radius', modes) ?? 9999;
130
140
  const addBg = ADD_BUTTON_BG;
131
141
  const addIconColor = ADD_BUTTON_ICON_COLOR;
132
142
 
133
143
  // --- table header tokens --------------------------------------------------
134
- const headerBg = getVariableByName('comparetableHeader/background/color', modes) ?? '#f5f5f5';
135
- const headerLabelColor = getVariableByName('comparetableHeader/label/color', modes) ?? '#000000';
136
- const headerFontSize = getVariableByName('comparetableHeader/label/fontsize', modes) ?? 14;
137
- const headerFontFamily = getVariableByName('comparetableHeader/label/fontfamily', modes) ?? 'JioType Var';
138
- const headerFontWeight = getVariableByName('comparetableHeader/label/fontweight', modes) ?? 600;
139
- const headerPaddingH = getVariableByName('comparetableHeader/padding/horizontal', modes) ?? 12;
140
- const headerPaddingV = getVariableByName('comparetableHeader/padding/vertical', modes) ?? 12;
144
+ const headerBg = getVariableByName('tableHeader/background/color', modes) ?? '#f5f5f5';
145
+ const headerLabelColor = getVariableByName('tableHeader/label/color', modes) ?? '#000000';
146
+ const headerFontSize = getVariableByName('tableHeader/label/fontsize', modes) ?? 14;
147
+ const headerFontFamily = getVariableByName('tableHeader/label/fontfamily', modes) ?? 'JioType Var';
148
+ const headerFontWeight = getVariableByName('tableHeader/label/fontweight', modes) ?? 600;
149
+ const headerPaddingH = getVariableByName('tableHeader/padding/horizontal', modes) ?? 12;
150
+ const headerPaddingV = getVariableByName('tableHeader/padding/vertical', modes) ?? 12;
141
151
 
142
152
  // --- table cell tokens ----------------------------------------------------
143
- const cellBorderColor = getVariableByName('compareTableCell/border/color', modes) ?? '#eeeeee';
144
- const cellBorderSize = getVariableByName('compareTableCell/border/size', modes) ?? 1;
145
- const cellBg = getVariableByName('compareTableCell/background/color', modes) ?? '#ffffff';
146
- const cellLabelColor = getVariableByName('compareTableCell/label/color', modes) ?? '#000000';
147
- const cellFontSize = getVariableByName('compareTableCell/label/fontsize', modes) ?? 14;
148
- const cellFontFamily = getVariableByName('compareTableCell/label/fontfamily', modes) ?? 'JioType Var';
149
- const cellFontWeight = getVariableByName('compareTableCell/label/fontweight', modes) ?? 400;
150
- const cellPaddingH = getVariableByName('compareTableCell/padding/horizontal', modes) ?? 12;
151
- const cellPaddingV = getVariableByName('compareTableCell/padding/vertical', modes) ?? 12;
153
+ const cellBorderColor = getVariableByName('tableCell/border/color', modes) ?? '#eeeeee';
154
+ const cellBorderSize = getVariableByName('tableCell/border/size', modes) ?? 1;
155
+ const cellBg = getVariableByName('tableCell/background/color', modes) ?? '#ffffff';
156
+ const cellLabelColor = getVariableByName('tableCell/label/color', modes) ?? '#000000';
157
+ const cellFontSize = getVariableByName('tableCell/label/fontsize', modes) ?? 14;
158
+ const cellFontFamily = getVariableByName('tableCell/label/fontfamily', modes) ?? 'JioType Var';
159
+ const cellFontWeight = getVariableByName('tableCell/label/fontweight', modes) ?? 400;
160
+ const cellPaddingH = getVariableByName('tableCell/padding/horizontal', modes) ?? 12;
161
+ const cellPaddingV = getVariableByName('tableCell/padding/vertical', modes) ?? 12;
152
162
  const columnCount = columns.length;
153
163
  const showAddCard = onAddColumn != null && columnCount < maxColumns;
164
+ /** Grid columns shared by the selection-card row and every table row. */
165
+ const gridColumnCount = columnCount + (showAddCard ? 1 : 0);
154
166
  const cardLabelStyle = {
155
167
  ...NO_WRAP_TEXT,
156
168
  color: cardLabelColor,
@@ -185,6 +197,7 @@ function CompareTable({
185
197
  minWidth: 0,
186
198
  minHeight: 147,
187
199
  backgroundColor: cardBg,
200
+ borderRadius: cardRadius,
188
201
  alignItems: 'center',
189
202
  justifyContent: 'center',
190
203
  gap: cardGap,
@@ -209,7 +222,7 @@ function CompareTable({
209
222
  accessibilityLabel: column.label
210
223
  }), column.label != null && /*#__PURE__*/_jsx(Text, {
211
224
  style: cardLabelStyle,
212
- numberOfLines: 2,
225
+ ...resolveTruncation(disableTruncation, 2),
213
226
  children: column.label
214
227
  }), column.actionLabel != null && /*#__PURE__*/_jsx(Pressable, {
215
228
  onPress: column.onActionPress,
@@ -246,7 +259,7 @@ function CompareTable({
246
259
  style: {
247
260
  width: addPadding * 2 + addIconSize,
248
261
  height: addPadding * 2 + addIconSize,
249
- borderRadius: 9999,
262
+ borderRadius: addRadius,
250
263
  borderWidth: addBorderSize,
251
264
  borderColor: addBorderColor,
252
265
  backgroundColor: addBg,
@@ -262,7 +275,7 @@ function CompareTable({
262
275
  })
263
276
  }), /*#__PURE__*/_jsx(Text, {
264
277
  style: cardLabelStyle,
265
- numberOfLines: 1,
278
+ ...resolveTruncation(disableTruncation, 1),
266
279
  children: addColumnLabel
267
280
  })]
268
281
  }, "__add_card__");
@@ -285,53 +298,72 @@ function CompareTable({
285
298
  }
286
299
  return cloneChildrenWithModes(value, modes);
287
300
  };
288
- const renderTable = section => /*#__PURE__*/_jsxs(View, {
301
+
302
+ // Renders a section's comparison grid using the shared `Table` component.
303
+ // CompareTable keeps ownership of token resolution and passes the resolved
304
+ // values as style overrides so the appearance is byte-identical to the
305
+ // previous hand-rolled grid (full outer border + suppressed last-edge
306
+ // dividers), while reusing Table's structure and `modes` cascade.
307
+ //
308
+ // When the "Add a card" tile is visible, each table row appends an empty
309
+ // trailing cell with the same flex weight so data columns stay 1:1 beneath
310
+ // their selection card.
311
+ const renderTableCell = (content, colIndex, isLastRow, key) => {
312
+ const isLastCol = colIndex === gridColumnCount - 1;
313
+ return /*#__PURE__*/_jsx(Table.Cell, {
314
+ modes: modes,
315
+ flex: 1,
316
+ align: "left",
317
+ isLastColumn: isLastCol,
318
+ isLastRow: isLastRow,
319
+ style: {
320
+ backgroundColor: cellBg,
321
+ borderColor: cellBorderColor,
322
+ borderRightWidth: isLastCol ? 0 : cellBorderSize,
323
+ borderBottomWidth: isLastRow ? 0 : cellBorderSize,
324
+ paddingHorizontal: cellPaddingH,
325
+ paddingVertical: cellPaddingV
326
+ },
327
+ children: content
328
+ }, key);
329
+ };
330
+ const renderTable = section => /*#__PURE__*/_jsxs(Table, {
331
+ modes: modes,
289
332
  style: {
290
333
  width: '100%',
291
334
  borderWidth: cellBorderSize,
292
- borderColor: cellBorderColor,
293
- overflow: 'hidden'
335
+ borderColor: cellBorderColor
294
336
  },
295
- children: [section.header != null && /*#__PURE__*/_jsx(View, {
337
+ children: [section.header != null && /*#__PURE__*/_jsx(Table.Header, {
338
+ modes: modes,
296
339
  style: {
297
- backgroundColor: headerBg,
298
- paddingHorizontal: headerPaddingH,
299
- paddingVertical: headerPaddingV,
300
340
  borderBottomWidth: cellBorderSize,
301
341
  borderBottomColor: cellBorderColor
302
342
  },
303
- children: /*#__PURE__*/_jsx(Text, {
304
- style: headerTextStyle,
305
- children: section.header
306
- })
307
- }), section.rows.map((row, rowIndex) => {
308
- const isLastRow = rowIndex === section.rows.length - 1;
309
- return /*#__PURE__*/_jsx(View, {
343
+ children: /*#__PURE__*/_jsx(Table.HeaderCell, {
344
+ modes: modes,
345
+ flex: 1,
310
346
  style: {
311
- flexDirection: 'row',
312
- width: '100%'
347
+ backgroundColor: headerBg,
348
+ paddingHorizontal: headerPaddingH,
349
+ paddingVertical: headerPaddingV
313
350
  },
314
- children: Array.from({
315
- length: columnCount
316
- }).map((_, colIndex) => {
317
- const isLastCol = colIndex === columnCount - 1;
318
- return /*#__PURE__*/_jsx(View, {
319
- style: {
320
- flex: 1,
321
- minWidth: 0,
322
- backgroundColor: cellBg,
323
- justifyContent: 'center',
324
- paddingHorizontal: cellPaddingH,
325
- paddingVertical: cellPaddingV,
326
- borderRightWidth: isLastCol ? 0 : cellBorderSize,
327
- borderRightColor: cellBorderColor,
328
- borderBottomWidth: isLastRow ? 0 : cellBorderSize,
329
- borderBottomColor: cellBorderColor
330
- },
331
- children: renderCellContent(row.values?.[colIndex], `${rowIndex}-${colIndex}`)
332
- }, colIndex);
351
+ children: /*#__PURE__*/_jsx(Text, {
352
+ style: headerTextStyle,
353
+ children: section.header
333
354
  })
334
- }, row.key ?? rowIndex);
355
+ })
356
+ }), /*#__PURE__*/_jsx(Table.Body, {
357
+ modes: modes,
358
+ children: section.rows.map((row, rowIndex) => {
359
+ const isLastRow = rowIndex === section.rows.length - 1;
360
+ return /*#__PURE__*/_jsxs(Table.Row, {
361
+ modes: modes,
362
+ children: [Array.from({
363
+ length: columnCount
364
+ }).map((_, colIndex) => renderTableCell(renderCellContent(row.values?.[colIndex], `${rowIndex}-${colIndex}`), colIndex, isLastRow, colIndex)), showAddCard && renderTableCell(null, gridColumnCount - 1, isLastRow, '__add_spacer__')]
365
+ }, row.key ?? rowIndex);
366
+ })
335
367
  })]
336
368
  });
337
369
  return /*#__PURE__*/_jsxs(View, {
@@ -356,9 +388,6 @@ function CompareTable({
356
388
  title: section.title,
357
389
  defaultExpanded: section.defaultExpanded ?? index === 0,
358
390
  modes: modes,
359
- style: {
360
- paddingHorizontal: headerPaddingH
361
- },
362
391
  children: renderTable(section)
363
392
  }, section.key ?? section.title ?? index))
364
393
  })]
@@ -5,7 +5,7 @@ import { View, Text } from 'react-native';
5
5
  import Svg, { Rect } from 'react-native-svg';
6
6
  import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
7
7
  import { useTokens } from '../../design-tokens/JFSThemeProvider';
8
- import { EMPTY_MODES } from '../../utils/react-utils';
8
+ import { EMPTY_MODES, resolveTruncation } from '../../utils/react-utils';
9
9
  import MetricLegendItem from '../MetricLegendItem/MetricLegendItem';
10
10
 
11
11
  /**
@@ -136,7 +136,8 @@ function CoverageBarComparison({
136
136
  chartStyle,
137
137
  legendStyle,
138
138
  labelStyle,
139
- accessibilityLabel
139
+ accessibilityLabel,
140
+ disableTruncation
140
141
  }) {
141
142
  const {
142
143
  modes: globalModes
@@ -222,7 +223,7 @@ function CoverageBarComparison({
222
223
  minWidth: 1
223
224
  },
224
225
  children: [hasLabel ? /*#__PURE__*/_jsx(Text, {
225
- numberOfLines: 1,
226
+ ...resolveTruncation(disableTruncation, 1),
226
227
  style: [computedLabelStyle, labelStyle],
227
228
  children: original.label
228
229
  }) : null, /*#__PURE__*/_jsx(BarShape, {
@@ -26,24 +26,24 @@ function DebitCard({
26
26
  ...globalModes,
27
27
  ...propModes
28
28
  };
29
- const background = getVariableByName('debitCard/background', modes) || '#cea15a';
30
- const radius = getVariableByName('debitCard/radius', modes) || 16;
31
- const width = getVariableByName('debitCard/width', modes) || 328;
32
- const height = getVariableByName('debitCard/height', modes) || 224;
33
- const paddingBottom = getVariableByName('debitCard/padding/bottom', modes) || 24;
34
- const headerPaddingH = getVariableByName('debitCard/header/padding/horizontal', modes) || 20;
35
- const headerPaddingTop = getVariableByName('debitCard/header/padding/top', modes) || 16;
36
- const headerPaddingBottom = getVariableByName('debitCard/header/padding/bottom', modes) || 28;
37
- const cardArtHeight = getVariableByName('debitCard/cardArt/height', modes) || 50;
38
- const cardArtRadius = getVariableByName('debitCard/cardArt/radius', modes) || 4;
39
- const footerGap = getVariableByName('debitCard/footer/gap', modes) || 16;
40
- const footerPaddingH = getVariableByName('debitCard/footer/padding/horizontal', modes) || 20;
41
- const footerPaddingTop = getVariableByName('debitCard/footer/padding/top', modes) || 16;
42
- const foreground = getVariableByName('debitCard/foreground', modes) || '#141414';
43
- const fontSize = getVariableByName('debitCard/fontSize', modes) || 14;
44
- const fontFamily = getVariableByName('debitCard/fontFamily', modes) || 'JioType Var';
45
- const lineHeight = getVariableByName('debitCard/lineHeight', modes) || 17;
46
- const fontWeightRaw = getVariableByName('debitCard/fontWeight', modes) || 500;
29
+ const background = getVariableByName('debitCard/background', modes);
30
+ const radius = getVariableByName('debitCard/radius', modes);
31
+ const width = getVariableByName('debitCard/width', modes);
32
+ const height = getVariableByName('debitCard/height', modes);
33
+ const paddingBottom = getVariableByName('debitCard/padding/bottom', modes);
34
+ const headerPaddingH = getVariableByName('debitCard/header/padding/horizontal', modes);
35
+ const headerPaddingTop = getVariableByName('debitCard/header/padding/top', modes);
36
+ const headerPaddingBottom = getVariableByName('debitCard/header/padding/bottom', modes);
37
+ const cardArtHeight = getVariableByName('debitCard/cardArt/height', modes);
38
+ const cardArtRadius = getVariableByName('debitCard/cardArt/radius', modes);
39
+ const footerGap = getVariableByName('debitCard/footer/gap', modes);
40
+ const footerPaddingH = getVariableByName('debitCard/footer/padding/horizontal', modes);
41
+ const footerPaddingTop = getVariableByName('debitCard/footer/padding/top', modes);
42
+ const foreground = getVariableByName('debitCard/foreground', modes);
43
+ const fontSize = getVariableByName('debitCard/fontSize', modes);
44
+ const fontFamily = getVariableByName('debitCard/fontFamily', modes);
45
+ const lineHeight = getVariableByName('debitCard/lineHeight', modes);
46
+ const fontWeightRaw = getVariableByName('debitCard/fontWeight', modes);
47
47
  const fontWeight = typeof fontWeightRaw === 'number' ? fontWeightRaw.toString() : fontWeightRaw;
48
48
  const containerStyle = {
49
49
  backgroundColor: background,
@@ -44,11 +44,11 @@ function Disclaimer({
44
44
  ...propModes
45
45
  };
46
46
  // Resolve typography and color from Figma variables
47
- const color = getVariableByName('disclaimer/color', modes) || '#24262b';
48
- const fontSize = getVariableByName('disclaimer/label/fontSize', modes) || 10;
49
- const lineHeight = getVariableByName('disclaimer/label/lineHeight', modes) || 12;
50
- const fontFamily = getVariableByName('disclaimer/label/fontFamily', modes) || 'System';
51
- const fontWeightRaw = getVariableByName('disclaimer/label/fontWeight', modes) || 500;
47
+ const color = getVariableByName('disclaimer/color', modes);
48
+ const fontSize = getVariableByName('disclaimer/label/fontSize', modes);
49
+ const lineHeight = getVariableByName('disclaimer/label/lineHeight', modes);
50
+ const fontFamily = getVariableByName('disclaimer/label/fontFamily', modes);
51
+ const fontWeightRaw = getVariableByName('disclaimer/label/fontWeight', modes);
52
52
  const fontWeight = typeof fontWeightRaw === 'number' ? fontWeightRaw.toString() : fontWeightRaw;
53
53
  const baseTextStyle = {
54
54
  color,
@@ -5,7 +5,7 @@ import { StyleSheet, Text, View } from 'react-native';
5
5
  import Svg, { Circle } from 'react-native-svg';
6
6
  import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
7
7
  import { useTokens } from '../../design-tokens/JFSThemeProvider';
8
- import { EMPTY_MODES, flattenChildren } from '../../utils/react-utils';
8
+ import { EMPTY_MODES, flattenChildren, resolveTruncation } from '../../utils/react-utils';
9
9
 
10
10
  /**
11
11
  * Per-segment data definition for the data-driven `segments` prop.
@@ -126,7 +126,8 @@ function DonutChart({
126
126
  style,
127
127
  valueStyle,
128
128
  labelStyle,
129
- accessibilityLabel
129
+ accessibilityLabel,
130
+ disableTruncation
130
131
  }) {
131
132
  const {
132
133
  modes: globalModes
@@ -163,17 +164,17 @@ function DonutChart({
163
164
  const hasChildrenSlot = customCenterChildren.length > 0;
164
165
  const showValueLabel = !hasChildrenSlot && shouldRenderText(value);
165
166
  const showLabel = !hasChildrenSlot && shouldRenderText(label);
166
- const valueColor = getVariableByName('donutChart/value/color', modes) ?? getVariableByName('value/fg', modes) ?? '#000000';
167
- const valueFontFamily = getVariableByName('donutChart/value/fontFamily', modes) ?? getVariableByName('value/fontFamily', modes) ?? 'JioType Var';
168
- const valueFontSize = toNumber(getVariableByName('donutChart/value/fontSize', modes) ?? getVariableByName('value/fontSize', modes), 29);
169
- const valueLineHeight = toNumber(getVariableByName('donutChart/value/lineHeight', modes) ?? getVariableByName('value/lineHeight', modes), 29);
170
- const valueFontWeight = toFontWeight(getVariableByName('donutChart/value/fontWeight', modes) ?? getVariableByName('value/fontWeight', modes), '900');
171
- const labelColor = getVariableByName('donutChart/label/color', modes) ?? getVariableByName('label/fg', modes) ?? '#000000';
172
- const labelFontFamily = getVariableByName('donutChart/label/fontFamily', modes) ?? getVariableByName('label/fontFamily', modes) ?? 'JioType Var';
173
- const labelFontSize = toNumber(getVariableByName('donutChart/label/fontSize', modes) ?? getVariableByName('label/fontSize', modes), 12);
174
- const labelLineHeight = toNumber(getVariableByName('donutChart/label/lineHeight', modes) ?? getVariableByName('label/lineHeight', modes), 15.6);
175
- const labelFontWeight = toFontWeight(getVariableByName('donutChart/label/fontWeight', modes) ?? getVariableByName('label/fontWeight', modes), '400');
176
- const textWrapGap = toNumber(getVariableByName('donutChart/textWrap/gap', modes) ?? getVariableByName('textWrap/gap', modes), 7);
167
+ const valueColor = getVariableByName('value/fg', modes);
168
+ const valueFontFamily = getVariableByName('value/fontFamily', modes);
169
+ const valueFontSize = toNumber(getVariableByName('value/fontSize', modes), 29);
170
+ const valueLineHeight = toNumber(getVariableByName('value/lineHeight', modes), 29);
171
+ const valueFontWeight = toFontWeight(getVariableByName('value/fontWeight', modes), '900');
172
+ const labelColor = getVariableByName('label/fg', modes);
173
+ const labelFontFamily = getVariableByName('label/fontFamily', modes);
174
+ const labelFontSize = toNumber(getVariableByName('label/fontSize', modes), 12);
175
+ const labelLineHeight = toNumber(getVariableByName('label/lineHeight', modes), 15.6);
176
+ const labelFontWeight = toFontWeight(getVariableByName('label/fontWeight', modes), '400');
177
+ const textWrapGap = toNumber(getVariableByName('textWrap/gap', modes), 7);
177
178
  const containerStyle = {
178
179
  alignItems: 'center',
179
180
  height: size,
@@ -224,7 +225,7 @@ function DonutChart({
224
225
  fontWeight: valueFontWeight,
225
226
  textAlign: 'center'
226
227
  }, valueStyle],
227
- numberOfLines: 1,
228
+ ...resolveTruncation(disableTruncation, 1),
228
229
  children: value
229
230
  }) : null, showLabel ? /*#__PURE__*/_jsx(Text, {
230
231
  style: [{
@@ -235,7 +236,7 @@ function DonutChart({
235
236
  fontWeight: labelFontWeight,
236
237
  textAlign: 'center'
237
238
  }, labelStyle],
238
- numberOfLines: 1,
239
+ ...resolveTruncation(disableTruncation, 1),
239
240
  children: label
240
241
  }) : null]
241
242
  }) : null]
@@ -6,6 +6,7 @@ import { Gesture, GestureDetector, ScrollView } from 'react-native-gesture-handl
6
6
  import Animated, { runOnJS, useAnimatedProps, useAnimatedScrollHandler, useAnimatedStyle, useSharedValue, withSpring } from 'react-native-reanimated';
7
7
  import { getVariableByName } from '../../design-tokens/figma-variables-resolver';
8
8
  import { EMPTY_MODES } from '../../utils/react-utils';
9
+ import { boxShadow } from '../../utils/shadow';
9
10
  import Overlay from '../Overlay/Overlay';
10
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
12
  const AnimatedScrollView = Animated.createAnimatedComponent(ScrollView);
@@ -303,28 +304,29 @@ function DrawerInner({
303
304
  });
304
305
 
305
306
  // Design Tokens
306
- const backgroundColor = getVariableByName('drawer/background', modes) || '#f5f5f5';
307
- const radius = getVariableByName('drawer/radius/top', modes) || 12;
307
+ const backgroundColor = getVariableByName('drawer/background', modes);
308
+ const radius = getVariableByName('drawer/radius/top', modes);
308
309
 
309
310
  // Handle
310
- const handleColor = getVariableByName('drawer/handlebar/background', modes) || '#e0e0e3';
311
- const handleWidth = getVariableByName('drawer/handlebar/width', modes) || 42;
312
- const handleHeight = getVariableByName('drawer/handlebar/height', modes) || 6;
313
- const handleRadius = getVariableByName('drawer/handlebar/radius', modes) || 999;
311
+ const handleColor = getVariableByName('drawer/handlebar/background', modes);
312
+ const handleWidth = getVariableByName('drawer/handlebar/width', modes);
313
+ const handleHeight = getVariableByName('drawer/handlebar/height', modes);
314
+ const handleRadius = getVariableByName('drawer/handlebar/radius', modes);
314
315
 
315
316
  // Padding
316
- const paddingLeft = getVariableByName('drawer/padding/left', modes) || 8;
317
- const paddingRight = getVariableByName('drawer/padding/right', modes) || 8;
318
- const paddingBottom = getVariableByName('drawer/padding/bottom', modes) || 10;
319
- const drawerGap = getVariableByName('drawer/gap', modes) || 8;
320
- // Note: drawer/padding/top is 0 in tokens, but we keep the 8px visual spacing for the handle as requested.
317
+ const paddingLeft = getVariableByName('drawer/padding/left', modes);
318
+ const paddingRight = getVariableByName('drawer/padding/right', modes);
319
+ const paddingBottom = getVariableByName('drawer/padding/bottom', modes);
320
+ const drawerGap = getVariableByName('drawer/gap', modes);
321
321
 
322
322
  // Title
323
- const titleColor = getVariableByName('drawer/title/color', modes) || '#0d0d0f';
324
- const titleSize = getVariableByName('drawer/title/fontSize', modes) || 14;
325
- const titleWeight = getVariableByName('drawer/title/fontWeight', modes) || '700';
326
- const titleLineHeight = getVariableByName('drawer/title/lineHeight', modes) || 17;
327
- const titlePaddingBottom = getVariableByName('drawer/titleWrap/padding/bottom', modes) || 8;
323
+ const titleColor = getVariableByName('drawer/title/color', modes);
324
+ const titleSize = getVariableByName('drawer/title/fontSize', modes);
325
+ const titleWeight = getVariableByName('drawer/title/fontWeight', modes);
326
+ const titleLineHeight = getVariableByName('drawer/title/lineHeight', modes);
327
+ const titleWrapPaddingTop = getVariableByName('drawer/titleWrap/padding/top', modes);
328
+ const titleWrapPaddingBottom = getVariableByName('drawer/titleWrap/padding/bottom', modes);
329
+ const titleWrapPaddingHorizontal = getVariableByName('drawer/titleWrap/padding/horizontal', modes);
328
330
 
329
331
  // Drop shadow — Figma layers two shadows (primary + secondary) sharing
330
332
  // the same offsetY/blur but with their own offsetX and color.
@@ -335,26 +337,12 @@ function DrawerInner({
335
337
  const shadowSecondaryOffsetX = getVariableByName('drawer/shadow/secondary/offsetX', modes) ?? 0;
336
338
  const shadowSecondaryColor = getVariableByName('drawer/shadow/secondary/color', modes) ?? 'rgba(12, 13, 16, 0.12)';
337
339
 
338
- // Cross-platform shadow style. Web supports stacking two shadows via
339
- // boxShadow. iOS only supports a single native shadow per view, so we
340
- // apply the more prominent (primary) one. Android uses elevation.
341
- const shadowStyle = Platform.select({
342
- web: {
343
- boxShadow: `${shadowSecondaryOffsetX}px ${shadowPrimaryOffsetY}px ${shadowPrimaryBlur}px 0px ${shadowSecondaryColor}, ` + `${shadowPrimaryOffsetX}px ${shadowPrimaryOffsetY}px ${shadowPrimaryBlur}px 0px ${shadowPrimaryColor}`
344
- },
345
- ios: {
346
- shadowColor: shadowPrimaryColor,
347
- shadowOffset: {
348
- width: shadowPrimaryOffsetX,
349
- height: shadowPrimaryOffsetY
350
- },
351
- shadowOpacity: 1,
352
- shadowRadius: shadowPrimaryBlur / 2
353
- },
354
- android: {
355
- elevation: 16
356
- },
357
- default: {}
340
+ // Cross-platform shadow via the unified helper. Figma layers two shadows
341
+ // (secondary + primary) which stack natively as a single multi-layer
342
+ // boxShadow on web + RN 0.76+. On older RN the helper falls back to the most
343
+ // prominent layer (iOS shadow*) / a fixed elevation (Android).
344
+ const shadowStyle = boxShadow(`${shadowSecondaryOffsetX}px ${shadowPrimaryOffsetY}px ${shadowPrimaryBlur}px 0px ${shadowSecondaryColor}, ` + `${shadowPrimaryOffsetX}px ${shadowPrimaryOffsetY}px ${shadowPrimaryBlur}px 0px ${shadowPrimaryColor}`, {
345
+ elevation: 16
358
346
  });
359
347
  const defaultAccessibilityLabel = accessibilityLabel || title || 'Drawer';
360
348
  return (
@@ -399,30 +387,42 @@ function DrawerInner({
399
387
  borderTopRightRadius: radius,
400
388
  paddingLeft,
401
389
  paddingRight,
402
- paddingBottom,
403
- rowGap: drawerGap
390
+ paddingBottom
404
391
  }],
405
- children: [/*#__PURE__*/_jsx(View, {
406
- style: [styles.handleArea, !title && !header && {
407
- paddingBottom: 0
408
- }],
409
- children: /*#__PURE__*/_jsx(View, {
410
- style: [{
411
- backgroundColor: handleColor,
412
- width: handleWidth,
413
- height: handleHeight,
414
- borderRadius: handleRadius
415
- }]
416
- })
417
- }), header, title && /*#__PURE__*/_jsx(Text, {
418
- style: [{
419
- color: titleColor,
420
- fontSize: titleSize,
421
- fontWeight: titleWeight,
422
- lineHeight: titleLineHeight,
423
- marginBottom: titlePaddingBottom
424
- }],
425
- children: title
392
+ children: [/*#__PURE__*/_jsxs(View, {
393
+ style: {
394
+ marginBottom: drawerGap
395
+ },
396
+ children: [/*#__PURE__*/_jsx(View, {
397
+ style: [styles.handleArea, !title && !header && {
398
+ marginBottom: drawerGap
399
+ }],
400
+ children: /*#__PURE__*/_jsx(View, {
401
+ style: [{
402
+ backgroundColor: handleColor,
403
+ width: handleWidth,
404
+ height: handleHeight,
405
+ borderRadius: handleRadius
406
+ }]
407
+ })
408
+ }), header, title && /*#__PURE__*/_jsx(View, {
409
+ style: {
410
+ paddingTop: titleWrapPaddingTop,
411
+ paddingBottom: titleWrapPaddingBottom,
412
+ paddingHorizontal: titleWrapPaddingHorizontal,
413
+ alignItems: 'center'
414
+ },
415
+ children: /*#__PURE__*/_jsx(Text, {
416
+ style: [{
417
+ color: titleColor,
418
+ fontSize: titleSize,
419
+ fontWeight: titleWeight,
420
+ lineHeight: titleLineHeight,
421
+ textAlign: 'center'
422
+ }],
423
+ children: title
424
+ })
425
+ })]
426
426
  }), /*#__PURE__*/_jsx(AnimatedScrollView, {
427
427
  ref: scrollRef,
428
428
  style: [styles.content, contentStyle],
@@ -474,7 +474,7 @@ const styles = StyleSheet.create({
474
474
  },
475
475
  handleArea: {
476
476
  alignItems: 'center',
477
- paddingVertical: 8,
477
+ marginTop: 8,
478
478
  width: '100%'
479
479
  },
480
480
  content: {