jfs-components 0.1.12 → 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 (585) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/lib/commonjs/components/ActionFooter/ActionFooter.js +7 -24
  3. package/lib/commonjs/components/ActionTile/ActionTile.js +10 -10
  4. package/lib/commonjs/components/AmountInput/AmountInput.js +3 -3
  5. package/lib/commonjs/components/AreaLineChart/AreaLineChart.js +2 -2
  6. package/lib/commonjs/components/Attached/Attached.js +1 -1
  7. package/lib/commonjs/components/Avatar/Avatar.js +10 -10
  8. package/lib/commonjs/components/AvatarGroup/AvatarGroup.js +9 -9
  9. package/lib/commonjs/components/Badge/Badge.js +12 -12
  10. package/lib/commonjs/components/BenefitCard/BenefitCard.js +95 -21
  11. package/lib/commonjs/components/BottomNav/BottomNav.js +2 -2
  12. package/lib/commonjs/components/BottomNavItem/BottomNavItem.js +3 -3
  13. package/lib/commonjs/components/Button/Button.js +31 -19
  14. package/lib/commonjs/components/Card/Card.js +20 -20
  15. package/lib/commonjs/components/CardAdvisory/CardAdvisory.js +6 -6
  16. package/lib/commonjs/components/CardCTA/CardCTA.js +21 -21
  17. package/lib/commonjs/components/CardFeedback/CardFeedback.js +18 -18
  18. package/lib/commonjs/components/CardFinancialCondition/CardFinancialCondition.js +7 -7
  19. package/lib/commonjs/components/CardInsight/CardInsight.js +1 -2
  20. package/lib/commonjs/components/Carousel/Carousel.js +18 -12
  21. package/lib/commonjs/components/CarouselCardAccounts/CarouselCardAccounts.js +75 -0
  22. package/lib/commonjs/components/Checkbox/Checkbox.js +6 -13
  23. package/lib/commonjs/components/ChipGroup/ChipGroup.js +1 -1
  24. package/lib/commonjs/components/ChipSelect/ChipSelect.js +11 -11
  25. package/lib/commonjs/components/CircularProgressBar/CircularProgressBar.js +5 -5
  26. package/lib/commonjs/components/CircularProgressBarDoted/CircularProgressBarDoted.js +8 -8
  27. package/lib/commonjs/components/CircularRating/CircularRating.js +3 -3
  28. package/lib/commonjs/components/CompareTable/CompareTable.js +16 -16
  29. package/lib/commonjs/components/DebitCard/DebitCard.js +18 -18
  30. package/lib/commonjs/components/Disclaimer/Disclaimer.js +5 -5
  31. package/lib/commonjs/components/DonutChart/DonutChart.js +11 -11
  32. package/lib/commonjs/components/Drawer/Drawer.js +60 -60
  33. package/lib/commonjs/components/Dropdown/Dropdown.js +22 -23
  34. package/lib/commonjs/components/DropdownInput/DropdownInput.js +10 -10
  35. package/lib/commonjs/components/EmptyState/EmptyState.js +14 -14
  36. package/lib/commonjs/components/FilterBar/FilterBar.js +2 -2
  37. package/lib/commonjs/components/Form/Form.js +3 -3
  38. package/lib/commonjs/components/FormField/FormField.js +6 -6
  39. package/lib/commonjs/components/FullscreenModal/FullscreenModal.js +24 -24
  40. package/lib/commonjs/components/Gauge/Gauge.js +8 -8
  41. package/lib/commonjs/components/HoldingsCard/HoldingsCard.js +10 -10
  42. package/lib/commonjs/components/Icon/Icon.js +6 -6
  43. package/lib/commonjs/components/IconCapsule/IconCapsule.js +7 -7
  44. package/lib/commonjs/components/InputSearch/InputSearch.js +9 -9
  45. package/lib/commonjs/components/InstitutionBadge/InstitutionBadge.js +3 -3
  46. package/lib/commonjs/components/ListGroup/ListGroup.js +8 -8
  47. package/lib/commonjs/components/ListItem/ListItem.js +10 -10
  48. package/lib/commonjs/components/LottieIntroBlock/LottieIntroBlock.js +13 -13
  49. package/lib/commonjs/components/LottiePlayer/LottiePlayer.js +2 -2
  50. package/lib/commonjs/components/LottiePlayer/LottiePlayer.web.js +2 -2
  51. package/lib/commonjs/components/MediaCard/MediaCard.js +21 -21
  52. package/lib/commonjs/components/MessageField/MessageField.js +8 -8
  53. package/lib/commonjs/components/MoneyValue/MoneyValue.js +7 -7
  54. package/lib/commonjs/components/NavArrow/NavArrow.js +8 -8
  55. package/lib/commonjs/components/NoteInput/NoteInput.js +12 -12
  56. package/lib/commonjs/components/Nudge/Nudge.js +20 -20
  57. package/lib/commonjs/components/OTP/OTP.js +15 -15
  58. package/lib/commonjs/components/PageHero/PageHero.js +16 -16
  59. package/lib/commonjs/components/PaymentFeedback/PaymentFeedback.js +23 -23
  60. package/lib/commonjs/components/Popup/Popup.js +1 -1
  61. package/lib/commonjs/components/ProgressBadge/ProgressBadge.js +5 -5
  62. package/lib/commonjs/components/Radio/Radio.js +8 -8
  63. package/lib/commonjs/components/RechargeCard/RechargeCard.js +31 -31
  64. package/lib/commonjs/components/SavingsGoalSummary/SavingsGoalSummary.js +59 -12
  65. package/lib/commonjs/components/ScrollArea/ScrollArea.js +126 -0
  66. package/lib/commonjs/components/Section/Section.js +24 -24
  67. package/lib/commonjs/components/StatusHero/StatusHero.js +14 -14
  68. package/lib/commonjs/components/Stepper/Step.js +16 -16
  69. package/lib/commonjs/components/Stepper/StepLabel.js +16 -16
  70. package/lib/commonjs/components/Stepper/Stepper.js +3 -3
  71. package/lib/commonjs/components/SuggestiveSearch/SuggestiveSearch.js +10 -10
  72. package/lib/commonjs/components/SupportText/SupportText.js +6 -6
  73. package/lib/commonjs/components/SupportText/SupportTextIcon.js +2 -2
  74. package/lib/commonjs/components/Text/Text.js +14 -2
  75. package/lib/commonjs/components/TextInput/TextInput.js +14 -14
  76. package/lib/commonjs/components/TextSegment/TextSegment.js +14 -2
  77. package/lib/commonjs/components/ThreadHero/ThreadHero.js +17 -17
  78. package/lib/commonjs/components/Title/Title.js +38 -16
  79. package/lib/commonjs/components/Toast/Toast.js +15 -15
  80. package/lib/commonjs/components/Toggle/Toggle.js +3 -11
  81. package/lib/commonjs/components/Tooltip/Tooltip.js +12 -12
  82. package/lib/commonjs/components/TransactionBubble/TransactionBubble.js +13 -13
  83. package/lib/commonjs/components/TransactionDetails/TransactionDetails.js +10 -10
  84. package/lib/commonjs/components/TransactionStatus/TransactionStatus.js +9 -9
  85. package/lib/commonjs/components/UpiHandle/UpiHandle.js +15 -15
  86. package/lib/commonjs/components/index.js +14 -0
  87. package/lib/commonjs/design-tokens/Coin Variables-variables-full.json +1 -1
  88. package/lib/commonjs/design-tokens/figma-modes.generated.js +50 -42
  89. package/lib/commonjs/icons/components/Icon4g.js +19 -0
  90. package/lib/commonjs/icons/components/Icon4gltedata.js +19 -0
  91. package/lib/commonjs/icons/components/Icon5g.js +19 -0
  92. package/lib/commonjs/icons/components/Icon5gdoubleplus.js +19 -0
  93. package/lib/commonjs/icons/components/Icon5gplus.js +19 -0
  94. package/lib/commonjs/icons/components/IconAdblocker.js +19 -0
  95. package/lib/commonjs/icons/components/IconAdblockplus.js +19 -0
  96. package/lib/commonjs/icons/components/IconAnalytics.js +19 -0
  97. package/lib/commonjs/icons/components/IconAnalyticsdata.js +19 -0
  98. package/lib/commonjs/icons/components/IconAnalyticspiechart.js +19 -0
  99. package/lib/commonjs/icons/components/IconAnalyticspiecharttree.js +19 -0
  100. package/lib/commonjs/icons/components/IconAnalyticspiecharttwo.js +19 -0
  101. package/lib/commonjs/icons/components/IconCompoundinterest.js +19 -0
  102. package/lib/commonjs/icons/components/IconConsumptionaccounted.js +19 -0
  103. package/lib/commonjs/icons/components/IconConsumptionaverage.js +19 -0
  104. package/lib/commonjs/icons/components/IconConsumptionhigh.js +19 -0
  105. package/lib/commonjs/icons/components/IconConsumptionlow.js +19 -0
  106. package/lib/commonjs/icons/components/IconConsumptionunaccounted.js +19 -0
  107. package/lib/commonjs/icons/components/IconCsvdoc.js +19 -0
  108. package/lib/commonjs/icons/components/IconDatabase.js +19 -0
  109. package/lib/commonjs/icons/components/IconDigitalecosystem.js +19 -0
  110. package/lib/commonjs/icons/components/IconDigitalselfservice.js +19 -0
  111. package/lib/commonjs/icons/components/IconDistribution.js +19 -0
  112. package/lib/commonjs/icons/components/IconDocument.js +19 -0
  113. package/lib/commonjs/icons/components/IconDocumentdoc.js +19 -0
  114. package/lib/commonjs/icons/components/IconDocumentjpg.js +19 -0
  115. package/lib/commonjs/icons/components/IconDocumentodt.js +19 -0
  116. package/lib/commonjs/icons/components/IconDocumentpdf.js +19 -0
  117. package/lib/commonjs/icons/components/IconDocumentpng.js +19 -0
  118. package/lib/commonjs/icons/components/IconDocumentraw.js +19 -0
  119. package/lib/commonjs/icons/components/IconDocumentrtf.js +19 -0
  120. package/lib/commonjs/icons/components/IconDocumentsettings.js +19 -0
  121. package/lib/commonjs/icons/components/IconDocumenttif.js +19 -0
  122. package/lib/commonjs/icons/components/IconDocumenttxt.js +19 -0
  123. package/lib/commonjs/icons/components/IconDocumentunknown.js +19 -0
  124. package/lib/commonjs/icons/components/IconDocumentxls.js +19 -0
  125. package/lib/commonjs/icons/components/IconDocumentxlsx.js +19 -0
  126. package/lib/commonjs/icons/components/IconFilerequest.js +19 -0
  127. package/lib/commonjs/icons/components/IconFilesend.js +19 -0
  128. package/lib/commonjs/icons/components/IconFileshare.js +19 -0
  129. package/lib/commonjs/icons/components/IconFindinpage.js +19 -0
  130. package/lib/commonjs/icons/components/IconFolder.js +19 -0
  131. package/lib/commonjs/icons/components/IconFolderbookmarks.js +19 -0
  132. package/lib/commonjs/icons/components/IconFolderfavorites.js +19 -0
  133. package/lib/commonjs/icons/components/IconFolderlocked.js +19 -0
  134. package/lib/commonjs/icons/components/IconFoldermovefiles.js +19 -0
  135. package/lib/commonjs/icons/components/IconFolderpublic.js +19 -0
  136. package/lib/commonjs/icons/components/IconFolderrated.js +19 -0
  137. package/lib/commonjs/icons/components/IconFolderrequest.js +19 -0
  138. package/lib/commonjs/icons/components/IconForm.js +19 -0
  139. package/lib/commonjs/icons/components/IconFormadd.js +19 -0
  140. package/lib/commonjs/icons/components/IconForms.js +19 -0
  141. package/lib/commonjs/icons/components/IconGraphincreasing.js +19 -0
  142. package/lib/commonjs/icons/components/IconGraphlow.js +19 -0
  143. package/lib/commonjs/icons/components/IconGraphtable.js +19 -0
  144. package/lib/commonjs/icons/components/IconHealthreport.js +19 -0
  145. package/lib/commonjs/icons/components/IconHubmode.js +19 -0
  146. package/lib/commonjs/icons/components/IconInfrastructure.js +19 -0
  147. package/lib/commonjs/icons/components/IconInterestlow.js +19 -0
  148. package/lib/commonjs/icons/components/IconLte.js +19 -0
  149. package/lib/commonjs/icons/components/IconNetworkfuture.js +19 -0
  150. package/lib/commonjs/icons/components/IconPagesettings.js +19 -0
  151. package/lib/commonjs/icons/components/IconPptxdoc.js +19 -0
  152. package/lib/commonjs/icons/components/IconPreferrednumber.js +19 -0
  153. package/lib/commonjs/icons/components/IconPremiumnumber.js +19 -0
  154. package/lib/commonjs/icons/components/IconProjection.js +19 -0
  155. package/lib/commonjs/icons/components/IconRequest.js +19 -0
  156. package/lib/commonjs/icons/components/IconRoutestraffic.js +19 -0
  157. package/lib/commonjs/icons/components/IconTechnology.js +19 -0
  158. package/lib/commonjs/icons/components/IconVolte.js +19 -0
  159. package/lib/commonjs/icons/components/IconVonr.js +19 -0
  160. package/lib/commonjs/icons/components/IconVowifi.js +19 -0
  161. package/lib/commonjs/icons/components/IconVpndata.js +19 -0
  162. package/lib/commonjs/icons/components/index.js +803 -0
  163. package/lib/commonjs/icons/registry.js +2 -2
  164. package/lib/commonjs/utils/index.js +25 -0
  165. package/lib/commonjs/utils/react-utils.js +62 -0
  166. package/lib/commonjs/utils/shadow.js +200 -0
  167. package/lib/module/components/ActionFooter/ActionFooter.js +7 -24
  168. package/lib/module/components/ActionTile/ActionTile.js +10 -10
  169. package/lib/module/components/AmountInput/AmountInput.js +3 -3
  170. package/lib/module/components/AreaLineChart/AreaLineChart.js +2 -2
  171. package/lib/module/components/Attached/Attached.js +1 -1
  172. package/lib/module/components/Avatar/Avatar.js +10 -10
  173. package/lib/module/components/AvatarGroup/AvatarGroup.js +9 -9
  174. package/lib/module/components/Badge/Badge.js +12 -12
  175. package/lib/module/components/BenefitCard/BenefitCard.js +95 -21
  176. package/lib/module/components/BottomNav/BottomNav.js +2 -2
  177. package/lib/module/components/BottomNavItem/BottomNavItem.js +3 -3
  178. package/lib/module/components/Button/Button.js +32 -20
  179. package/lib/module/components/Card/Card.js +20 -20
  180. package/lib/module/components/CardAdvisory/CardAdvisory.js +6 -6
  181. package/lib/module/components/CardCTA/CardCTA.js +21 -21
  182. package/lib/module/components/CardFeedback/CardFeedback.js +18 -18
  183. package/lib/module/components/CardFinancialCondition/CardFinancialCondition.js +7 -7
  184. package/lib/module/components/CardInsight/CardInsight.js +1 -2
  185. package/lib/module/components/Carousel/Carousel.js +18 -12
  186. package/lib/module/components/CarouselCardAccounts/CarouselCardAccounts.js +71 -0
  187. package/lib/module/components/Checkbox/Checkbox.js +2 -9
  188. package/lib/module/components/ChipGroup/ChipGroup.js +1 -1
  189. package/lib/module/components/ChipSelect/ChipSelect.js +11 -11
  190. package/lib/module/components/CircularProgressBar/CircularProgressBar.js +5 -5
  191. package/lib/module/components/CircularProgressBarDoted/CircularProgressBarDoted.js +8 -8
  192. package/lib/module/components/CircularRating/CircularRating.js +3 -3
  193. package/lib/module/components/CompareTable/CompareTable.js +16 -16
  194. package/lib/module/components/DebitCard/DebitCard.js +18 -18
  195. package/lib/module/components/Disclaimer/Disclaimer.js +5 -5
  196. package/lib/module/components/DonutChart/DonutChart.js +11 -11
  197. package/lib/module/components/Drawer/Drawer.js +60 -60
  198. package/lib/module/components/Dropdown/Dropdown.js +22 -23
  199. package/lib/module/components/DropdownInput/DropdownInput.js +10 -10
  200. package/lib/module/components/EmptyState/EmptyState.js +14 -14
  201. package/lib/module/components/FilterBar/FilterBar.js +2 -2
  202. package/lib/module/components/Form/Form.js +3 -3
  203. package/lib/module/components/FormField/FormField.js +6 -6
  204. package/lib/module/components/FullscreenModal/FullscreenModal.js +24 -24
  205. package/lib/module/components/Gauge/Gauge.js +8 -8
  206. package/lib/module/components/HoldingsCard/HoldingsCard.js +10 -10
  207. package/lib/module/components/Icon/Icon.js +6 -6
  208. package/lib/module/components/IconCapsule/IconCapsule.js +7 -7
  209. package/lib/module/components/InputSearch/InputSearch.js +9 -9
  210. package/lib/module/components/InstitutionBadge/InstitutionBadge.js +3 -3
  211. package/lib/module/components/ListGroup/ListGroup.js +8 -8
  212. package/lib/module/components/ListItem/ListItem.js +10 -10
  213. package/lib/module/components/LottieIntroBlock/LottieIntroBlock.js +13 -13
  214. package/lib/module/components/LottiePlayer/LottiePlayer.js +2 -2
  215. package/lib/module/components/LottiePlayer/LottiePlayer.web.js +2 -2
  216. package/lib/module/components/MediaCard/MediaCard.js +21 -21
  217. package/lib/module/components/MessageField/MessageField.js +8 -8
  218. package/lib/module/components/MoneyValue/MoneyValue.js +7 -7
  219. package/lib/module/components/NavArrow/NavArrow.js +8 -8
  220. package/lib/module/components/NoteInput/NoteInput.js +12 -12
  221. package/lib/module/components/Nudge/Nudge.js +20 -20
  222. package/lib/module/components/OTP/OTP.js +15 -15
  223. package/lib/module/components/PageHero/PageHero.js +16 -16
  224. package/lib/module/components/PaymentFeedback/PaymentFeedback.js +23 -23
  225. package/lib/module/components/Popup/Popup.js +1 -1
  226. package/lib/module/components/ProgressBadge/ProgressBadge.js +5 -5
  227. package/lib/module/components/Radio/Radio.js +9 -9
  228. package/lib/module/components/RechargeCard/RechargeCard.js +31 -31
  229. package/lib/module/components/SavingsGoalSummary/SavingsGoalSummary.js +60 -13
  230. package/lib/module/components/ScrollArea/ScrollArea.js +121 -0
  231. package/lib/module/components/Section/Section.js +24 -24
  232. package/lib/module/components/StatusHero/StatusHero.js +14 -14
  233. package/lib/module/components/Stepper/Step.js +16 -16
  234. package/lib/module/components/Stepper/StepLabel.js +16 -16
  235. package/lib/module/components/Stepper/Stepper.js +3 -3
  236. package/lib/module/components/SuggestiveSearch/SuggestiveSearch.js +10 -10
  237. package/lib/module/components/SupportText/SupportText.js +6 -6
  238. package/lib/module/components/SupportText/SupportTextIcon.js +2 -2
  239. package/lib/module/components/Text/Text.js +15 -3
  240. package/lib/module/components/TextInput/TextInput.js +14 -14
  241. package/lib/module/components/TextSegment/TextSegment.js +15 -3
  242. package/lib/module/components/ThreadHero/ThreadHero.js +17 -17
  243. package/lib/module/components/Title/Title.js +39 -17
  244. package/lib/module/components/Toast/Toast.js +15 -15
  245. package/lib/module/components/Toggle/Toggle.js +4 -12
  246. package/lib/module/components/Tooltip/Tooltip.js +12 -12
  247. package/lib/module/components/TransactionBubble/TransactionBubble.js +13 -13
  248. package/lib/module/components/TransactionDetails/TransactionDetails.js +10 -10
  249. package/lib/module/components/TransactionStatus/TransactionStatus.js +9 -9
  250. package/lib/module/components/UpiHandle/UpiHandle.js +15 -15
  251. package/lib/module/components/index.js +2 -0
  252. package/lib/module/design-tokens/Coin Variables-variables-full.json +1 -1
  253. package/lib/module/design-tokens/figma-modes.generated.js +50 -42
  254. package/lib/module/icons/components/Icon4g.js +12 -0
  255. package/lib/module/icons/components/Icon4gltedata.js +12 -0
  256. package/lib/module/icons/components/Icon5g.js +12 -0
  257. package/lib/module/icons/components/Icon5gdoubleplus.js +12 -0
  258. package/lib/module/icons/components/Icon5gplus.js +12 -0
  259. package/lib/module/icons/components/IconAdblocker.js +12 -0
  260. package/lib/module/icons/components/IconAdblockplus.js +12 -0
  261. package/lib/module/icons/components/IconAnalytics.js +12 -0
  262. package/lib/module/icons/components/IconAnalyticsdata.js +12 -0
  263. package/lib/module/icons/components/IconAnalyticspiechart.js +12 -0
  264. package/lib/module/icons/components/IconAnalyticspiecharttree.js +12 -0
  265. package/lib/module/icons/components/IconAnalyticspiecharttwo.js +12 -0
  266. package/lib/module/icons/components/IconCompoundinterest.js +12 -0
  267. package/lib/module/icons/components/IconConsumptionaccounted.js +12 -0
  268. package/lib/module/icons/components/IconConsumptionaverage.js +12 -0
  269. package/lib/module/icons/components/IconConsumptionhigh.js +12 -0
  270. package/lib/module/icons/components/IconConsumptionlow.js +12 -0
  271. package/lib/module/icons/components/IconConsumptionunaccounted.js +12 -0
  272. package/lib/module/icons/components/IconCsvdoc.js +12 -0
  273. package/lib/module/icons/components/IconDatabase.js +12 -0
  274. package/lib/module/icons/components/IconDigitalecosystem.js +12 -0
  275. package/lib/module/icons/components/IconDigitalselfservice.js +12 -0
  276. package/lib/module/icons/components/IconDistribution.js +12 -0
  277. package/lib/module/icons/components/IconDocument.js +12 -0
  278. package/lib/module/icons/components/IconDocumentdoc.js +12 -0
  279. package/lib/module/icons/components/IconDocumentjpg.js +12 -0
  280. package/lib/module/icons/components/IconDocumentodt.js +12 -0
  281. package/lib/module/icons/components/IconDocumentpdf.js +12 -0
  282. package/lib/module/icons/components/IconDocumentpng.js +12 -0
  283. package/lib/module/icons/components/IconDocumentraw.js +12 -0
  284. package/lib/module/icons/components/IconDocumentrtf.js +12 -0
  285. package/lib/module/icons/components/IconDocumentsettings.js +12 -0
  286. package/lib/module/icons/components/IconDocumenttif.js +12 -0
  287. package/lib/module/icons/components/IconDocumenttxt.js +12 -0
  288. package/lib/module/icons/components/IconDocumentunknown.js +12 -0
  289. package/lib/module/icons/components/IconDocumentxls.js +12 -0
  290. package/lib/module/icons/components/IconDocumentxlsx.js +12 -0
  291. package/lib/module/icons/components/IconFilerequest.js +12 -0
  292. package/lib/module/icons/components/IconFilesend.js +12 -0
  293. package/lib/module/icons/components/IconFileshare.js +12 -0
  294. package/lib/module/icons/components/IconFindinpage.js +12 -0
  295. package/lib/module/icons/components/IconFolder.js +12 -0
  296. package/lib/module/icons/components/IconFolderbookmarks.js +12 -0
  297. package/lib/module/icons/components/IconFolderfavorites.js +12 -0
  298. package/lib/module/icons/components/IconFolderlocked.js +12 -0
  299. package/lib/module/icons/components/IconFoldermovefiles.js +12 -0
  300. package/lib/module/icons/components/IconFolderpublic.js +12 -0
  301. package/lib/module/icons/components/IconFolderrated.js +12 -0
  302. package/lib/module/icons/components/IconFolderrequest.js +12 -0
  303. package/lib/module/icons/components/IconForm.js +12 -0
  304. package/lib/module/icons/components/IconFormadd.js +12 -0
  305. package/lib/module/icons/components/IconForms.js +12 -0
  306. package/lib/module/icons/components/IconGraphincreasing.js +12 -0
  307. package/lib/module/icons/components/IconGraphlow.js +12 -0
  308. package/lib/module/icons/components/IconGraphtable.js +12 -0
  309. package/lib/module/icons/components/IconHealthreport.js +12 -0
  310. package/lib/module/icons/components/IconHubmode.js +12 -0
  311. package/lib/module/icons/components/IconInfrastructure.js +12 -0
  312. package/lib/module/icons/components/IconInterestlow.js +12 -0
  313. package/lib/module/icons/components/IconLte.js +12 -0
  314. package/lib/module/icons/components/IconNetworkfuture.js +12 -0
  315. package/lib/module/icons/components/IconPagesettings.js +12 -0
  316. package/lib/module/icons/components/IconPptxdoc.js +12 -0
  317. package/lib/module/icons/components/IconPreferrednumber.js +12 -0
  318. package/lib/module/icons/components/IconPremiumnumber.js +12 -0
  319. package/lib/module/icons/components/IconProjection.js +12 -0
  320. package/lib/module/icons/components/IconRequest.js +12 -0
  321. package/lib/module/icons/components/IconRoutestraffic.js +12 -0
  322. package/lib/module/icons/components/IconTechnology.js +12 -0
  323. package/lib/module/icons/components/IconVolte.js +12 -0
  324. package/lib/module/icons/components/IconVonr.js +12 -0
  325. package/lib/module/icons/components/IconVowifi.js +12 -0
  326. package/lib/module/icons/components/IconVpndata.js +12 -0
  327. package/lib/module/icons/components/index.js +73 -0
  328. package/lib/module/icons/registry.js +2 -2
  329. package/lib/module/utils/index.js +2 -1
  330. package/lib/module/utils/react-utils.js +61 -0
  331. package/lib/module/utils/shadow.js +194 -0
  332. package/lib/typescript/src/components/BenefitCard/BenefitCard.d.ts +33 -4
  333. package/lib/typescript/src/components/Carousel/Carousel.d.ts +11 -1
  334. package/lib/typescript/src/components/CarouselCardAccounts/CarouselCardAccounts.d.ts +57 -0
  335. package/lib/typescript/src/components/SavingsGoalSummary/SavingsGoalSummary.d.ts +11 -1
  336. package/lib/typescript/src/components/ScrollArea/ScrollArea.d.ts +77 -0
  337. package/lib/typescript/src/components/Text/Text.d.ts +12 -3
  338. package/lib/typescript/src/components/TextSegment/TextSegment.d.ts +12 -3
  339. package/lib/typescript/src/components/Title/Title.d.ts +12 -2
  340. package/lib/typescript/src/components/index.d.ts +2 -0
  341. package/lib/typescript/src/design-tokens/figma-modes.generated.d.ts +23 -15
  342. package/lib/typescript/src/icons/components/Icon4g.d.ts +3 -0
  343. package/lib/typescript/src/icons/components/Icon4gltedata.d.ts +3 -0
  344. package/lib/typescript/src/icons/components/Icon5g.d.ts +3 -0
  345. package/lib/typescript/src/icons/components/Icon5gdoubleplus.d.ts +3 -0
  346. package/lib/typescript/src/icons/components/Icon5gplus.d.ts +3 -0
  347. package/lib/typescript/src/icons/components/IconAdblocker.d.ts +3 -0
  348. package/lib/typescript/src/icons/components/IconAdblockplus.d.ts +3 -0
  349. package/lib/typescript/src/icons/components/IconAnalytics.d.ts +3 -0
  350. package/lib/typescript/src/icons/components/IconAnalyticsdata.d.ts +3 -0
  351. package/lib/typescript/src/icons/components/IconAnalyticspiechart.d.ts +3 -0
  352. package/lib/typescript/src/icons/components/IconAnalyticspiecharttree.d.ts +3 -0
  353. package/lib/typescript/src/icons/components/IconAnalyticspiecharttwo.d.ts +3 -0
  354. package/lib/typescript/src/icons/components/IconCompoundinterest.d.ts +3 -0
  355. package/lib/typescript/src/icons/components/IconConsumptionaccounted.d.ts +3 -0
  356. package/lib/typescript/src/icons/components/IconConsumptionaverage.d.ts +3 -0
  357. package/lib/typescript/src/icons/components/IconConsumptionhigh.d.ts +3 -0
  358. package/lib/typescript/src/icons/components/IconConsumptionlow.d.ts +3 -0
  359. package/lib/typescript/src/icons/components/IconConsumptionunaccounted.d.ts +3 -0
  360. package/lib/typescript/src/icons/components/IconCsvdoc.d.ts +3 -0
  361. package/lib/typescript/src/icons/components/IconDatabase.d.ts +3 -0
  362. package/lib/typescript/src/icons/components/IconDigitalecosystem.d.ts +3 -0
  363. package/lib/typescript/src/icons/components/IconDigitalselfservice.d.ts +3 -0
  364. package/lib/typescript/src/icons/components/IconDistribution.d.ts +3 -0
  365. package/lib/typescript/src/icons/components/IconDocument.d.ts +3 -0
  366. package/lib/typescript/src/icons/components/IconDocumentdoc.d.ts +3 -0
  367. package/lib/typescript/src/icons/components/IconDocumentjpg.d.ts +3 -0
  368. package/lib/typescript/src/icons/components/IconDocumentodt.d.ts +3 -0
  369. package/lib/typescript/src/icons/components/IconDocumentpdf.d.ts +3 -0
  370. package/lib/typescript/src/icons/components/IconDocumentpng.d.ts +3 -0
  371. package/lib/typescript/src/icons/components/IconDocumentraw.d.ts +3 -0
  372. package/lib/typescript/src/icons/components/IconDocumentrtf.d.ts +3 -0
  373. package/lib/typescript/src/icons/components/IconDocumentsettings.d.ts +3 -0
  374. package/lib/typescript/src/icons/components/IconDocumenttif.d.ts +3 -0
  375. package/lib/typescript/src/icons/components/IconDocumenttxt.d.ts +3 -0
  376. package/lib/typescript/src/icons/components/IconDocumentunknown.d.ts +3 -0
  377. package/lib/typescript/src/icons/components/IconDocumentxls.d.ts +3 -0
  378. package/lib/typescript/src/icons/components/IconDocumentxlsx.d.ts +3 -0
  379. package/lib/typescript/src/icons/components/IconFilerequest.d.ts +3 -0
  380. package/lib/typescript/src/icons/components/IconFilesend.d.ts +3 -0
  381. package/lib/typescript/src/icons/components/IconFileshare.d.ts +3 -0
  382. package/lib/typescript/src/icons/components/IconFindinpage.d.ts +3 -0
  383. package/lib/typescript/src/icons/components/IconFolder.d.ts +3 -0
  384. package/lib/typescript/src/icons/components/IconFolderbookmarks.d.ts +3 -0
  385. package/lib/typescript/src/icons/components/IconFolderfavorites.d.ts +3 -0
  386. package/lib/typescript/src/icons/components/IconFolderlocked.d.ts +3 -0
  387. package/lib/typescript/src/icons/components/IconFoldermovefiles.d.ts +3 -0
  388. package/lib/typescript/src/icons/components/IconFolderpublic.d.ts +3 -0
  389. package/lib/typescript/src/icons/components/IconFolderrated.d.ts +3 -0
  390. package/lib/typescript/src/icons/components/IconFolderrequest.d.ts +3 -0
  391. package/lib/typescript/src/icons/components/IconForm.d.ts +3 -0
  392. package/lib/typescript/src/icons/components/IconFormadd.d.ts +3 -0
  393. package/lib/typescript/src/icons/components/IconForms.d.ts +3 -0
  394. package/lib/typescript/src/icons/components/IconGraphincreasing.d.ts +3 -0
  395. package/lib/typescript/src/icons/components/IconGraphlow.d.ts +3 -0
  396. package/lib/typescript/src/icons/components/IconGraphtable.d.ts +3 -0
  397. package/lib/typescript/src/icons/components/IconHealthreport.d.ts +3 -0
  398. package/lib/typescript/src/icons/components/IconHubmode.d.ts +3 -0
  399. package/lib/typescript/src/icons/components/IconInfrastructure.d.ts +3 -0
  400. package/lib/typescript/src/icons/components/IconInterestlow.d.ts +3 -0
  401. package/lib/typescript/src/icons/components/IconLte.d.ts +3 -0
  402. package/lib/typescript/src/icons/components/IconNetworkfuture.d.ts +3 -0
  403. package/lib/typescript/src/icons/components/IconPagesettings.d.ts +3 -0
  404. package/lib/typescript/src/icons/components/IconPptxdoc.d.ts +3 -0
  405. package/lib/typescript/src/icons/components/IconPreferrednumber.d.ts +3 -0
  406. package/lib/typescript/src/icons/components/IconPremiumnumber.d.ts +3 -0
  407. package/lib/typescript/src/icons/components/IconProjection.d.ts +3 -0
  408. package/lib/typescript/src/icons/components/IconRequest.d.ts +3 -0
  409. package/lib/typescript/src/icons/components/IconRoutestraffic.d.ts +3 -0
  410. package/lib/typescript/src/icons/components/IconTechnology.d.ts +3 -0
  411. package/lib/typescript/src/icons/components/IconVolte.d.ts +3 -0
  412. package/lib/typescript/src/icons/components/IconVonr.d.ts +3 -0
  413. package/lib/typescript/src/icons/components/IconVowifi.d.ts +3 -0
  414. package/lib/typescript/src/icons/components/IconVpndata.d.ts +3 -0
  415. package/lib/typescript/src/icons/components/index.d.ts +73 -0
  416. package/lib/typescript/src/icons/registry.d.ts +1 -1
  417. package/lib/typescript/src/utils/index.d.ts +2 -0
  418. package/lib/typescript/src/utils/react-utils.d.ts +40 -1
  419. package/lib/typescript/src/utils/shadow.d.ts +72 -0
  420. package/package.json +2 -1
  421. package/src/components/ActionFooter/ActionFooter.tsx +8 -26
  422. package/src/components/ActionTile/ActionTile.tsx +10 -10
  423. package/src/components/AmountInput/AmountInput.tsx +3 -3
  424. package/src/components/AreaLineChart/AreaLineChart.tsx +2 -2
  425. package/src/components/Attached/Attached.tsx +1 -1
  426. package/src/components/Avatar/Avatar.tsx +10 -10
  427. package/src/components/AvatarGroup/AvatarGroup.tsx +9 -9
  428. package/src/components/Badge/Badge.tsx +12 -13
  429. package/src/components/BenefitCard/BenefitCard.tsx +120 -27
  430. package/src/components/BottomNav/BottomNav.tsx +2 -2
  431. package/src/components/BottomNavItem/BottomNavItem.tsx +3 -3
  432. package/src/components/Button/Button.tsx +30 -20
  433. package/src/components/Card/Card.tsx +20 -20
  434. package/src/components/CardAdvisory/CardAdvisory.tsx +6 -6
  435. package/src/components/CardCTA/CardCTA.tsx +21 -21
  436. package/src/components/CardFeedback/CardFeedback.tsx +18 -18
  437. package/src/components/CardFinancialCondition/CardFinancialCondition.tsx +7 -10
  438. package/src/components/CardInsight/CardInsight.tsx +1 -3
  439. package/src/components/Carousel/Carousel.tsx +29 -12
  440. package/src/components/CarouselCardAccounts/CarouselCardAccounts.tsx +113 -0
  441. package/src/components/Checkbox/Checkbox.tsx +2 -8
  442. package/src/components/ChipGroup/ChipGroup.tsx +1 -1
  443. package/src/components/ChipSelect/ChipSelect.tsx +11 -11
  444. package/src/components/CircularProgressBar/CircularProgressBar.tsx +5 -5
  445. package/src/components/CircularProgressBarDoted/CircularProgressBarDoted.tsx +8 -8
  446. package/src/components/CircularRating/CircularRating.tsx +3 -3
  447. package/src/components/CompareTable/CompareTable.tsx +16 -16
  448. package/src/components/DebitCard/DebitCard.tsx +22 -22
  449. package/src/components/Disclaimer/Disclaimer.tsx +5 -5
  450. package/src/components/DonutChart/DonutChart.tsx +11 -45
  451. package/src/components/Drawer/Drawer.tsx +80 -71
  452. package/src/components/Dropdown/Dropdown.tsx +23 -28
  453. package/src/components/DropdownInput/DropdownInput.tsx +10 -17
  454. package/src/components/EmptyState/EmptyState.tsx +14 -14
  455. package/src/components/FilterBar/FilterBar.tsx +2 -2
  456. package/src/components/Form/Form.tsx +3 -3
  457. package/src/components/FormField/FormField.tsx +6 -11
  458. package/src/components/FullscreenModal/FullscreenModal.tsx +24 -24
  459. package/src/components/Gauge/Gauge.tsx +8 -8
  460. package/src/components/HoldingsCard/HoldingsCard.tsx +10 -10
  461. package/src/components/Icon/Icon.tsx +6 -6
  462. package/src/components/IconCapsule/IconCapsule.tsx +7 -7
  463. package/src/components/InputSearch/InputSearch.tsx +9 -9
  464. package/src/components/InstitutionBadge/InstitutionBadge.tsx +3 -6
  465. package/src/components/ListGroup/ListGroup.tsx +8 -8
  466. package/src/components/ListItem/ListItem.tsx +10 -10
  467. package/src/components/LottieIntroBlock/LottieIntroBlock.tsx +13 -16
  468. package/src/components/LottiePlayer/LottiePlayer.tsx +2 -2
  469. package/src/components/LottiePlayer/LottiePlayer.web.tsx +2 -2
  470. package/src/components/MediaCard/MediaCard.tsx +21 -21
  471. package/src/components/MessageField/MessageField.tsx +8 -16
  472. package/src/components/MoneyValue/MoneyValue.tsx +7 -7
  473. package/src/components/NavArrow/NavArrow.tsx +8 -8
  474. package/src/components/NoteInput/NoteInput.tsx +12 -12
  475. package/src/components/Nudge/Nudge.tsx +20 -20
  476. package/src/components/OTP/OTP.tsx +16 -16
  477. package/src/components/PageHero/PageHero.tsx +16 -16
  478. package/src/components/PaymentFeedback/PaymentFeedback.tsx +27 -27
  479. package/src/components/Popup/Popup.tsx +1 -1
  480. package/src/components/ProgressBadge/ProgressBadge.tsx +5 -5
  481. package/src/components/Radio/Radio.tsx +8 -9
  482. package/src/components/RechargeCard/RechargeCard.tsx +31 -31
  483. package/src/components/SavingsGoalSummary/SavingsGoalSummary.tsx +105 -13
  484. package/src/components/ScrollArea/ScrollArea.tsx +200 -0
  485. package/src/components/Section/Section.tsx +26 -26
  486. package/src/components/StatusHero/StatusHero.tsx +14 -14
  487. package/src/components/Stepper/Step.tsx +16 -18
  488. package/src/components/Stepper/StepLabel.tsx +16 -27
  489. package/src/components/Stepper/Stepper.tsx +3 -4
  490. package/src/components/SuggestiveSearch/SuggestiveSearch.tsx +10 -20
  491. package/src/components/SupportText/SupportText.tsx +6 -6
  492. package/src/components/SupportText/SupportTextIcon.tsx +2 -2
  493. package/src/components/Text/Text.tsx +23 -5
  494. package/src/components/TextInput/TextInput.tsx +14 -14
  495. package/src/components/TextSegment/TextSegment.tsx +22 -4
  496. package/src/components/ThreadHero/ThreadHero.tsx +17 -17
  497. package/src/components/Title/Title.tsx +44 -18
  498. package/src/components/Toast/Toast.tsx +15 -15
  499. package/src/components/Toggle/Toggle.tsx +5 -10
  500. package/src/components/Tooltip/Tooltip.tsx +12 -12
  501. package/src/components/TransactionBubble/TransactionBubble.tsx +15 -15
  502. package/src/components/TransactionDetails/TransactionDetails.tsx +10 -10
  503. package/src/components/TransactionStatus/TransactionStatus.tsx +9 -9
  504. package/src/components/UpiHandle/UpiHandle.tsx +15 -15
  505. package/src/components/index.ts +2 -0
  506. package/src/design-tokens/Coin Variables-variables-full.json +1 -1
  507. package/src/design-tokens/figma-modes.generated.ts +50 -42
  508. package/src/icons/components/Icon4g.tsx +11 -0
  509. package/src/icons/components/Icon4gltedata.tsx +11 -0
  510. package/src/icons/components/Icon5g.tsx +11 -0
  511. package/src/icons/components/Icon5gdoubleplus.tsx +11 -0
  512. package/src/icons/components/Icon5gplus.tsx +11 -0
  513. package/src/icons/components/IconAdblocker.tsx +11 -0
  514. package/src/icons/components/IconAdblockplus.tsx +11 -0
  515. package/src/icons/components/IconAnalytics.tsx +11 -0
  516. package/src/icons/components/IconAnalyticsdata.tsx +11 -0
  517. package/src/icons/components/IconAnalyticspiechart.tsx +11 -0
  518. package/src/icons/components/IconAnalyticspiecharttree.tsx +11 -0
  519. package/src/icons/components/IconAnalyticspiecharttwo.tsx +11 -0
  520. package/src/icons/components/IconCompoundinterest.tsx +11 -0
  521. package/src/icons/components/IconConsumptionaccounted.tsx +11 -0
  522. package/src/icons/components/IconConsumptionaverage.tsx +11 -0
  523. package/src/icons/components/IconConsumptionhigh.tsx +11 -0
  524. package/src/icons/components/IconConsumptionlow.tsx +11 -0
  525. package/src/icons/components/IconConsumptionunaccounted.tsx +11 -0
  526. package/src/icons/components/IconCsvdoc.tsx +11 -0
  527. package/src/icons/components/IconDatabase.tsx +11 -0
  528. package/src/icons/components/IconDigitalecosystem.tsx +11 -0
  529. package/src/icons/components/IconDigitalselfservice.tsx +11 -0
  530. package/src/icons/components/IconDistribution.tsx +11 -0
  531. package/src/icons/components/IconDocument.tsx +11 -0
  532. package/src/icons/components/IconDocumentdoc.tsx +11 -0
  533. package/src/icons/components/IconDocumentjpg.tsx +11 -0
  534. package/src/icons/components/IconDocumentodt.tsx +11 -0
  535. package/src/icons/components/IconDocumentpdf.tsx +11 -0
  536. package/src/icons/components/IconDocumentpng.tsx +11 -0
  537. package/src/icons/components/IconDocumentraw.tsx +11 -0
  538. package/src/icons/components/IconDocumentrtf.tsx +11 -0
  539. package/src/icons/components/IconDocumentsettings.tsx +11 -0
  540. package/src/icons/components/IconDocumenttif.tsx +11 -0
  541. package/src/icons/components/IconDocumenttxt.tsx +11 -0
  542. package/src/icons/components/IconDocumentunknown.tsx +11 -0
  543. package/src/icons/components/IconDocumentxls.tsx +11 -0
  544. package/src/icons/components/IconDocumentxlsx.tsx +11 -0
  545. package/src/icons/components/IconFilerequest.tsx +11 -0
  546. package/src/icons/components/IconFilesend.tsx +11 -0
  547. package/src/icons/components/IconFileshare.tsx +11 -0
  548. package/src/icons/components/IconFindinpage.tsx +11 -0
  549. package/src/icons/components/IconFolder.tsx +11 -0
  550. package/src/icons/components/IconFolderbookmarks.tsx +11 -0
  551. package/src/icons/components/IconFolderfavorites.tsx +11 -0
  552. package/src/icons/components/IconFolderlocked.tsx +11 -0
  553. package/src/icons/components/IconFoldermovefiles.tsx +11 -0
  554. package/src/icons/components/IconFolderpublic.tsx +11 -0
  555. package/src/icons/components/IconFolderrated.tsx +11 -0
  556. package/src/icons/components/IconFolderrequest.tsx +11 -0
  557. package/src/icons/components/IconForm.tsx +11 -0
  558. package/src/icons/components/IconFormadd.tsx +11 -0
  559. package/src/icons/components/IconForms.tsx +11 -0
  560. package/src/icons/components/IconGraphincreasing.tsx +11 -0
  561. package/src/icons/components/IconGraphlow.tsx +11 -0
  562. package/src/icons/components/IconGraphtable.tsx +11 -0
  563. package/src/icons/components/IconHealthreport.tsx +11 -0
  564. package/src/icons/components/IconHubmode.tsx +11 -0
  565. package/src/icons/components/IconInfrastructure.tsx +11 -0
  566. package/src/icons/components/IconInterestlow.tsx +11 -0
  567. package/src/icons/components/IconLte.tsx +11 -0
  568. package/src/icons/components/IconNetworkfuture.tsx +11 -0
  569. package/src/icons/components/IconPagesettings.tsx +11 -0
  570. package/src/icons/components/IconPptxdoc.tsx +11 -0
  571. package/src/icons/components/IconPreferrednumber.tsx +11 -0
  572. package/src/icons/components/IconPremiumnumber.tsx +11 -0
  573. package/src/icons/components/IconProjection.tsx +11 -0
  574. package/src/icons/components/IconRequest.tsx +11 -0
  575. package/src/icons/components/IconRoutestraffic.tsx +11 -0
  576. package/src/icons/components/IconTechnology.tsx +11 -0
  577. package/src/icons/components/IconVolte.tsx +11 -0
  578. package/src/icons/components/IconVonr.tsx +11 -0
  579. package/src/icons/components/IconVowifi.tsx +11 -0
  580. package/src/icons/components/IconVpndata.tsx +11 -0
  581. package/src/icons/components/index.ts +73 -0
  582. package/src/icons/registry.ts +293 -1
  583. package/src/utils/index.ts +2 -0
  584. package/src/utils/react-utils.ts +72 -1
  585. package/src/utils/shadow.ts +219 -0
@@ -115,20 +115,20 @@ function MoneyValue({
115
115
  }, [value, negative, hidden])
116
116
 
117
117
  // Resolve typography and layout tokens from Figma
118
- const textColor = getVariableByName('moneyValue/text/color', modes) || '#0f0d0a'
118
+ const textColor = getVariableByName('moneyValue/text/color', modes)
119
119
 
120
- const currencyFontSize = getVariableByName('moneyValue/currency/fontSize', modes) || 14
121
- const currencyLineHeight = getVariableByName('moneyValue/currency/lineHeight', modes) || 18
120
+ const currencyFontSize = getVariableByName('moneyValue/currency/fontSize', modes)
121
+ const currencyLineHeight = getVariableByName('moneyValue/currency/lineHeight', modes)
122
122
 
123
- const valueFontSize = getVariableByName('moneyValue/value/fontSize', modes) || 14
124
- const valueLineHeight = getVariableByName('moneyValue/value/lineHeight', modes) || 18
123
+ const valueFontSize = getVariableByName('moneyValue/value/fontSize', modes)
124
+ const valueLineHeight = getVariableByName('moneyValue/value/lineHeight', modes)
125
125
 
126
- const fontWeightValue = getVariableByName('moneyValue/fontWeight', modes) || 500
126
+ const fontWeightValue = getVariableByName('moneyValue/fontWeight', modes)
127
127
  const fontWeight =
128
128
  typeof fontWeightValue === 'number'
129
129
  ? fontWeightValue.toString()
130
130
  : fontWeightValue
131
- const fontFamily = getVariableByName('moneyValue/fontFamily', modes) || 'System'
131
+ const fontFamily = getVariableByName('moneyValue/fontFamily', modes)
132
132
  const gap = getVariableByName('moneyValue/gap', modes) ?? 4
133
133
 
134
134
  // Resolve currency to a symbol, supporting both symbols and ISO codes
@@ -58,19 +58,19 @@ interface NavArrowTokens {
58
58
 
59
59
  function resolveNavArrowTokens(modes: Modes): NavArrowTokens {
60
60
  const iconColor =
61
- (getVariableByName('navArrow/icon/color', modes) as string) || '#24262b'
61
+ (getVariableByName('navArrow/icon/color', modes) as string)
62
62
 
63
- const widthToken = Number(getVariableByName('navArrow/width', modes)) || 6
64
- const heightToken = Number(getVariableByName('navArrow/height', modes)) || 10
63
+ const widthToken = Number(getVariableByName('navArrow/width', modes))
64
+ const heightToken = Number(getVariableByName('navArrow/height', modes))
65
65
  const borderRadius =
66
- Number(getVariableByName('navArrow/radius', modes)) || 0
66
+ Number(getVariableByName('navArrow/radius', modes))
67
67
  const backgroundColor =
68
- (getVariableByName('navArrow/background', modes) as string) || 'transparent'
68
+ (getVariableByName('navArrow/background', modes) as string)
69
69
 
70
- const iconWidth = Number(getVariableByName('navArrow/icon/width', modes)) || 4
71
- const iconHeight = Number(getVariableByName('navArrow/icon/height', modes)) || 8
70
+ const iconWidth = Number(getVariableByName('navArrow/icon/width', modes))
71
+ const iconHeight = Number(getVariableByName('navArrow/icon/height', modes))
72
72
  const strokeWeight =
73
- Number(getVariableByName('navArrow/icon/strokeWeight', modes)) || 2
73
+ Number(getVariableByName('navArrow/icon/strokeWeight', modes))
74
74
 
75
75
  return {
76
76
  iconColor,
@@ -51,20 +51,20 @@ const NoteInput = forwardRef<RNTextInput, NoteInputProps>(function NoteInput({
51
51
  const inputRef = useRef<RNTextInput>(null)
52
52
 
53
53
  // Resolve tokens from Figma Design
54
- const foreground = getVariableByName('noteInput/foreground', modes) || '#0d0d0f'
55
- const fontSize = getVariableByName('noteInput/fontSize', modes) || 14
56
- const fontFamily = getVariableByName('noteInput/fontFamily', modes) || 'JioType Var'
57
- const lineHeight = getVariableByName('noteInput/lineHeight', modes) || 16
58
- const fontWeightRaw = getVariableByName('noteInput/fontWeight', modes) || 700
54
+ const foreground = getVariableByName('noteInput/foreground', modes)
55
+ const fontSize = getVariableByName('noteInput/fontSize', modes)
56
+ const fontFamily = getVariableByName('noteInput/fontFamily', modes)
57
+ const lineHeight = getVariableByName('noteInput/lineHeight', modes)
58
+ const fontWeightRaw = getVariableByName('noteInput/fontWeight', modes)
59
59
  const fontWeight = typeof fontWeightRaw === 'number' ? fontWeightRaw.toString() as TextStyle['fontWeight'] : fontWeightRaw as TextStyle['fontWeight']
60
60
 
61
- const gap = getVariableByName('noteInput/gap', modes) || 0 // 4 in some files, 0 in context
62
- const paddingHorizontal = getVariableByName('noteInput/padding/horizontal', modes) || 17
63
- const paddingVertical = getVariableByName('noteInput/padding/vertical', modes) || 9
64
- const radius = getVariableByName('noteInput/radius', modes) || 999
65
- const borderSize = getVariableByName('noteInput/border/size', modes) || 1
66
- const background = getVariableByName('noteInput/background', modes) || '#ebebed'
67
- const borderColor = getVariableByName('noteInput/border/color', modes) || 'rgba(255,255,255,0)'
61
+ const gap = getVariableByName('noteInput/gap', modes) // 4 in some files, 0 in context
62
+ const paddingHorizontal = getVariableByName('noteInput/padding/horizontal', modes)
63
+ const paddingVertical = getVariableByName('noteInput/padding/vertical', modes)
64
+ const radius = getVariableByName('noteInput/radius', modes)
65
+ const borderSize = getVariableByName('noteInput/border/size', modes)
66
+ const background = getVariableByName('noteInput/background', modes)
67
+ const borderColor = getVariableByName('noteInput/border/color', modes)
68
68
 
69
69
  const containerStyle: ViewStyle = {
70
70
  flexDirection: 'row',
@@ -63,28 +63,28 @@ function toFontWeight(value: unknown, fallback: TextStyle['fontWeight']): TextSt
63
63
  }
64
64
 
65
65
  function resolveNudgeTokens(modes: Modes): NudgeTokens {
66
- const background = getVariableByName('nudge/background', modes) || '#f5f5f5'
67
- const radius = getVariableByName('nudge/radius', modes) || 12
68
- const paddingH = getVariableByName('nudge/padding/horizontal', modes) || 12
69
- const paddingV = getVariableByName('nudge/padding/vertical', modes) || 12
70
- const gap = getVariableByName('nudge/gap', modes) || 6
66
+ const background = getVariableByName('nudge/background', modes)
67
+ const radius = getVariableByName('nudge/radius', modes)
68
+ const paddingH = getVariableByName('nudge/padding/horizontal', modes)
69
+ const paddingV = getVariableByName('nudge/padding/vertical', modes)
70
+ const gap = getVariableByName('nudge/gap', modes)
71
71
 
72
- const titleColor = getVariableByName('nudge/title/color', modes) || '#0d0d0f'
73
- const titleFontSize = getVariableByName('nudge/title/fontSize', modes) || 14
74
- const titleFontFamily = getVariableByName('nudge/title/fontFamily', modes) || 'System'
75
- const titleLineHeight = getVariableByName('nudge/title/lineHeight', modes) || 15
72
+ const titleColor = getVariableByName('nudge/title/color', modes)
73
+ const titleFontSize = getVariableByName('nudge/title/fontSize', modes)
74
+ const titleFontFamily = getVariableByName('nudge/title/fontFamily', modes)
75
+ const titleLineHeight = getVariableByName('nudge/title/lineHeight', modes)
76
76
  const titleFontWeight = toFontWeight(getVariableByName('nudge/title/fontWeight', modes), '700')
77
77
 
78
- const bodyColor = getVariableByName('nudge/body/color', modes) || '#1a1c1f'
79
- const bodyFontSize = getVariableByName('nudge/body/fontSize', modes) || 12
80
- const bodyFontFamily = getVariableByName('nudge/body/fontFamily', modes) || 'System'
81
- const bodyLineHeight = getVariableByName('nudge/body/lineHeight', modes) || 16
78
+ const bodyColor = getVariableByName('nudge/body/color', modes)
79
+ const bodyFontSize = getVariableByName('nudge/body/fontSize', modes)
80
+ const bodyFontFamily = getVariableByName('nudge/body/fontFamily', modes)
81
+ const bodyLineHeight = getVariableByName('nudge/body/lineHeight', modes)
82
82
  const bodyFontWeight = toFontWeight(getVariableByName('nudge/body/fontWeight', modes), '500')
83
83
 
84
- const textGap = getVariableByName('nudge/text/gap', modes) || 4
85
- const contentGap = getVariableByName('nudge/content/gap', modes) || 8
86
- const contentMinHeight = getVariableByName('nudge/content/minHeight', modes) || 20
87
- const startSlotGap = getVariableByName('nudge/startSlot/gap', modes) || 4
84
+ const textGap = getVariableByName('nudge/text/gap', modes)
85
+ const contentGap = getVariableByName('nudge/content/gap', modes)
86
+ const contentMinHeight = getVariableByName('nudge/content/minHeight', modes)
87
+ const startSlotGap = getVariableByName('nudge/startSlot/gap', modes)
88
88
 
89
89
  return {
90
90
  containerBaseStyle: {
@@ -143,7 +143,7 @@ function resolveNudgeTokens(modes: Modes): NudgeTokens {
143
143
  width: '100%',
144
144
  },
145
145
  detailSlotStyle: {
146
- gap: getVariableByName('slot/gap', modes) || 8,
146
+ gap: getVariableByName('slot/gap', modes),
147
147
  width: '100%',
148
148
  },
149
149
  titleTextStyle: {
@@ -160,8 +160,8 @@ function resolveNudgeTokens(modes: Modes): NudgeTokens {
160
160
  lineHeight: bodyLineHeight as number,
161
161
  fontWeight: bodyFontWeight,
162
162
  },
163
- iconColor: (getVariableByName('appearance/nudge/icon/color', modes) || '#5d00b5') as string,
164
- iconSize: (getVariableByName('nudge/icon/size', modes) || 20) as number,
163
+ iconColor: (getVariableByName('appearance/nudge/icon/color', modes)) as string,
164
+ iconSize: (getVariableByName('nudge/icon/size', modes)) as number,
165
165
  startSlotGap: startSlotGap as number,
166
166
  }
167
167
  }
@@ -456,19 +456,19 @@ function OTP({
456
456
  }, [isDisabled])
457
457
 
458
458
  // --- Token resolution (state-independent tokens resolved once) ---
459
- const otpGap = Number(getVariableByName('otp/gap', modes)) || 36
460
- const otpPaddingH = Number(getVariableByName('otp/padding/horizontal', modes)) || 8
461
- const otpPaddingV = Number(getVariableByName('otp/padding/vertical', modes)) || 8
462
-
463
- const slotWidth = Number(getVariableByName('pinSlot/width', modes)) || 48
464
- const slotGap = Number(getVariableByName('pinSlot/gap', modes)) || 8
465
- const digitColor = (getVariableByName('pinSlot/digit/color', modes) as string) || '#000000'
466
- const digitFontSize = Number(getVariableByName('pinSlot/digit/fontSize', modes)) || 24
467
- const digitFontFamily = (getVariableByName('pinSlot/digit/fontFamily', modes) as string) || 'JioType Var'
468
- const digitLineHeight = Number(getVariableByName('pinSlot/digit/lineHeight', modes)) || 29
469
- const digitFontWeight = (getVariableByName('pinSlot/digit/fontWeight', modes) as string) || '500'
470
- const underlineHeight = Number(getVariableByName('pinSlot/underline/height', modes)) || 2
471
- const underlineRadius = Number(getVariableByName('pinSlot/underline/radius', modes)) || 1
459
+ const otpGap = Number(getVariableByName('otp/gap', modes))
460
+ const otpPaddingH = Number(getVariableByName('otp/padding/horizontal', modes))
461
+ const otpPaddingV = Number(getVariableByName('otp/padding/vertical', modes))
462
+
463
+ const slotWidth = Number(getVariableByName('pinSlot/width', modes))
464
+ const slotGap = Number(getVariableByName('pinSlot/gap', modes))
465
+ const digitColor = (getVariableByName('pinSlot/digit/color', modes) as string)
466
+ const digitFontSize = Number(getVariableByName('pinSlot/digit/fontSize', modes))
467
+ const digitFontFamily = (getVariableByName('pinSlot/digit/fontFamily', modes) as string)
468
+ const digitLineHeight = Number(getVariableByName('pinSlot/digit/lineHeight', modes))
469
+ const digitFontWeight = (getVariableByName('pinSlot/digit/fontWeight', modes) as string)
470
+ const underlineHeight = Number(getVariableByName('pinSlot/underline/height', modes))
471
+ const underlineRadius = Number(getVariableByName('pinSlot/underline/radius', modes))
472
472
 
473
473
  // --- Resolve the three underline colors ONCE per render. We then
474
474
  // animate between idle ↔ active per-slot using interpolation; the
@@ -478,7 +478,7 @@ function OTP({
478
478
  (getVariableByName('PinSlot/underline/color', {
479
479
  ...modes,
480
480
  'Input/PINSlot States': 'Idle',
481
- }) as string) || '#303338',
481
+ }) as string),
482
482
  [modes],
483
483
  )
484
484
  const activeUnderlineColor = useMemo(
@@ -486,7 +486,7 @@ function OTP({
486
486
  (getVariableByName('PinSlot/underline/color', {
487
487
  ...modes,
488
488
  'Input/PINSlot States': 'Active',
489
- }) as string) || '#5d00b5',
489
+ }) as string),
490
490
  [modes],
491
491
  )
492
492
  const errorUnderlineColor = useMemo(
@@ -494,7 +494,7 @@ function OTP({
494
494
  (getVariableByName('PinSlot/underline/color', {
495
495
  ...modes,
496
496
  'Input/PINSlot States': 'Error',
497
- }) as string) || '#d92d20',
497
+ }) as string),
498
498
  [modes],
499
499
  )
500
500
 
@@ -107,47 +107,47 @@ function PageHero({
107
107
  [globalModes, propModes]
108
108
  )
109
109
 
110
- const gap = Number(getVariableByName('PageHero/gap', modes)) || 16
110
+ const gap = Number(getVariableByName('PageHero/gap', modes))
111
111
  const paddingHorizontal =
112
- Number(getVariableByName('PageHero/padding/horizontal', modes)) || 0
112
+ Number(getVariableByName('PageHero/padding/horizontal', modes))
113
113
 
114
114
  const textWrapGap =
115
- Number(getVariableByName('PageHero/textWrap/gap', modes)) || 8
115
+ Number(getVariableByName('PageHero/textWrap/gap', modes))
116
116
 
117
117
  // Media slot box — matches the 117×117 frame in Figma (node 4540:7845).
118
118
  // Tokens fall back to 117 when not defined in the variables collection,
119
119
  // so the layout stays stable on consumers that haven't tokenized this yet.
120
- const mediaWidth = Number(getVariableByName('media/width', modes)) || 117
121
- const mediaHeight = Number(getVariableByName('media/height', modes)) || 117
120
+ const mediaWidth = Number(getVariableByName('media/width', modes))
121
+ const mediaHeight = Number(getVariableByName('media/height', modes))
122
122
 
123
123
  const eyebrowColor =
124
- getVariableByName('PageHero/eyebrow/color', modes) || '#ffffff'
124
+ getVariableByName('PageHero/eyebrow/color', modes)
125
125
  const eyebrowFontFamily =
126
- getVariableByName('PageHero/eyebrow/fontFamily', modes) || 'System'
126
+ getVariableByName('PageHero/eyebrow/fontFamily', modes)
127
127
  const eyebrowFontSize =
128
- Number(getVariableByName('PageHero/eyebrow/fontSize', modes)) || 18
128
+ Number(getVariableByName('PageHero/eyebrow/fontSize', modes))
129
129
  const eyebrowFontWeight =
130
- getVariableByName('PageHero/eyebrow/fontWeight', modes) || 700
130
+ getVariableByName('PageHero/eyebrow/fontWeight', modes)
131
131
  const eyebrowLineHeight =
132
- Number(getVariableByName('PageHero/eyebrow/lineHeight', modes)) || 20
132
+ Number(getVariableByName('PageHero/eyebrow/lineHeight', modes))
133
133
 
134
134
  const headlineColor =
135
- getVariableByName('PageHero/headline/color', modes) || '#ffffff'
135
+ getVariableByName('PageHero/headline/color', modes)
136
136
  const headlineFontFamily =
137
- getVariableByName('PageHero/headline/fontFamily', modes) || 'System'
137
+ getVariableByName('PageHero/headline/fontFamily', modes)
138
138
  const headlineFontSize =
139
- Number(getVariableByName('PageHero/headline/fontSize', modes)) || 29
139
+ Number(getVariableByName('PageHero/headline/fontSize', modes))
140
140
  const headlineFontWeight =
141
- getVariableByName('PageHero/headline/fontWeight', modes) || 900
141
+ getVariableByName('PageHero/headline/fontWeight', modes)
142
142
  const headlineLineHeight =
143
- Number(getVariableByName('PageHero/headline/lineHeight', modes)) || 29
143
+ Number(getVariableByName('PageHero/headline/lineHeight', modes))
144
144
 
145
145
  // Only `lineHeight` is tokenized for the supporting text in the Figma source.
146
146
  // Color, font size and weight are inline literals in the design (12px medium
147
147
  // white) — we mirror that here so the visual stays faithful when no token
148
148
  // exists.
149
149
  const supportingTextLineHeight =
150
- Number(getVariableByName('PageHero/supportingText/lineHeight', modes)) || 16
150
+ Number(getVariableByName('PageHero/supportingText/lineHeight', modes))
151
151
 
152
152
  const containerStyle: ViewStyle = {
153
153
  flexDirection: 'column',
@@ -44,33 +44,33 @@ export default function PaymentFeedback({
44
44
  const { modes: globalModes } = useTokens()
45
45
  const modes = { ...globalModes, ...propModes }
46
46
 
47
- const containerGap = Number(getVariableByName('paymnetFeedback/container/gap', modes)) || 46
48
- const messageGap = Number(getVariableByName('paymnetFeedback/message/gap', modes)) || 12
49
-
50
- const titleColor = getVariableByName('paymnetFeedback/title/color', modes) || '#0d0d0f'
51
- const titleFontSize = Number(getVariableByName('paymnetFeedback/title/fontSize', modes)) || 36
52
- const titleFontFamily = getVariableByName('paymnetFeedback/title/fontFamily', modes) || 'JioType Var'
53
- const titleLineHeight = Number(getVariableByName('paymnetFeedback/title/lineHeight', modes)) || 36
54
- const titleFontWeight = getVariableByName('paymnetFeedback/title/fontWeight', modes) || '900'
55
-
56
- const subtitleColor = getVariableByName('paymnetFeedback/subtitle/color', modes) || '#24262b'
57
- const subtitleFontSize = Number(getVariableByName('paymnetFeedback/subtitle/fontSize', modes)) || 16
58
- const subtitleFontFamily = getVariableByName('paymnetFeedback/subtitle/fontFamily', modes) || 'JioType Var'
59
- const subtitleLineHeight = Number(getVariableByName('paymnetFeedback/subtitle/lineHeight', modes)) || 19
60
- const subtitleFontWeight = getVariableByName('paymnetFeedback/subtitle/fontWeight', modes) || '500'
61
-
62
- const bodyColor = getVariableByName('paymnetFeedback/body/color', modes) || '#24262b'
63
- const bodyFontSize = Number(getVariableByName('paymnetFeedback/body/fontSize', modes)) || 14
64
- const bodyFontFamily = getVariableByName('paymnetFeedback/body/fontFamily', modes) || 'JioType Var'
65
- const bodyLineHeight = Number(getVariableByName('paymnetFeedback/body/lineHeight', modes)) || 17
66
- const bodyFontWeight = getVariableByName('paymnetFeedback/body/fontWeight', modes) || '500'
67
-
68
- const detailsColor = getVariableByName('paymnetFeedback/details/color', modes) || '#24262b'
69
- const detailsFontSize = Number(getVariableByName('paymnetFeedback/details/fontSize', modes)) || 14
70
- const detailsFontFamily = getVariableByName('paymnetFeedback/details/fontFamily', modes) || 'JioType Var'
71
- const detailsLineHeight = Number(getVariableByName('paymnetFeedback/details/lineHeight', modes)) || 17
72
- const detailsFontWeight = getVariableByName('paymnetFeedback/details/fontWeight', modes) || '500'
73
- const detailsParagraphSpacing = Number(getVariableByName('paymnetFeedback/details/paragraphSpacing', modes)) || 4
47
+ const containerGap = Number(getVariableByName('paymnetFeedback/container/gap', modes))
48
+ const messageGap = Number(getVariableByName('paymnetFeedback/message/gap', modes))
49
+
50
+ const titleColor = getVariableByName('paymnetFeedback/title/color', modes)
51
+ const titleFontSize = Number(getVariableByName('paymnetFeedback/title/fontSize', modes))
52
+ const titleFontFamily = getVariableByName('paymnetFeedback/title/fontFamily', modes)
53
+ const titleLineHeight = Number(getVariableByName('paymnetFeedback/title/lineHeight', modes))
54
+ const titleFontWeight = getVariableByName('paymnetFeedback/title/fontWeight', modes)
55
+
56
+ const subtitleColor = getVariableByName('paymnetFeedback/subtitle/color', modes)
57
+ const subtitleFontSize = Number(getVariableByName('paymnetFeedback/subtitle/fontSize', modes))
58
+ const subtitleFontFamily = getVariableByName('paymnetFeedback/subtitle/fontFamily', modes)
59
+ const subtitleLineHeight = Number(getVariableByName('paymnetFeedback/subtitle/lineHeight', modes))
60
+ const subtitleFontWeight = getVariableByName('paymnetFeedback/subtitle/fontWeight', modes)
61
+
62
+ const bodyColor = getVariableByName('paymnetFeedback/body/color', modes)
63
+ const bodyFontSize = Number(getVariableByName('paymnetFeedback/body/fontSize', modes))
64
+ const bodyFontFamily = getVariableByName('paymnetFeedback/body/fontFamily', modes)
65
+ const bodyLineHeight = Number(getVariableByName('paymnetFeedback/body/lineHeight', modes))
66
+ const bodyFontWeight = getVariableByName('paymnetFeedback/body/fontWeight', modes)
67
+
68
+ const detailsColor = getVariableByName('paymnetFeedback/details/color', modes)
69
+ const detailsFontSize = Number(getVariableByName('paymnetFeedback/details/fontSize', modes))
70
+ const detailsFontFamily = getVariableByName('paymnetFeedback/details/fontFamily', modes)
71
+ const detailsLineHeight = Number(getVariableByName('paymnetFeedback/details/lineHeight', modes))
72
+ const detailsFontWeight = getVariableByName('paymnetFeedback/details/fontWeight', modes)
73
+ const detailsParagraphSpacing = Number(getVariableByName('paymnetFeedback/details/paragraphSpacing', modes))
74
74
 
75
75
  const containerStyle: ViewStyle = {
76
76
  flexDirection: 'column',
@@ -133,7 +133,7 @@ const Popup = forwardRef<PopupRef, PopupProps>(function Popup(
133
133
  return () => anim.stop()
134
134
  }, [isOpen, modalVisible, slideY, backdropAnim, maxBackdropOpacity, animationDuration])
135
135
 
136
- const background = getVariableByName('popup/background', modes) || '#ffffff'
136
+ const background = getVariableByName('popup/background', modes)
137
137
  const paddingH = getVariableByName('popup/padding/horizontal', modes) ?? 0
138
138
  const paddingTopVal = getVariableByName('popup/padding/top', modes) ?? 0
139
139
  const paddingBottomVal = getVariableByName('popup/padding/bottom', modes) ?? 24
@@ -62,9 +62,9 @@ function ProgressBadge({
62
62
  }: ProgressBadgeProps) {
63
63
  // Resolve layout tokens
64
64
  const backgroundColor =
65
- getVariableByName('progressBadge/background', modes) || '#ffffff'
65
+ getVariableByName('progressBadge/background', modes)
66
66
  const progressColor =
67
- getVariableByName('progressBadge/progress/color', modes) || '#ebebed'
67
+ getVariableByName('progressBadge/progress/color', modes)
68
68
  const gap = getVariableByName('progressBadge/gap', modes) ?? 12
69
69
  const paddingHorizontal =
70
70
  getVariableByName('progressBadge/padding/horizontal', modes) ?? 16
@@ -76,7 +76,7 @@ function ProgressBadge({
76
76
 
77
77
  // Resolve typography tokens
78
78
  const fontFamily =
79
- getVariableByName('progressBadge/fontFamily', modes) || 'JioType_Var:Medium'
79
+ getVariableByName('progressBadge/fontFamily', modes)
80
80
  const fontWeightRaw = getVariableByName('progressBadge/fontWeight', modes) ?? 500
81
81
  const fontWeight =
82
82
  typeof fontWeightRaw === 'number'
@@ -85,11 +85,11 @@ function ProgressBadge({
85
85
  const fontSize = getVariableByName('progressBadge/fontSize', modes) ?? 14
86
86
  const lineHeight = getVariableByName('progressBadge/lineHeight', modes) ?? 17
87
87
  const textColor =
88
- getVariableByName('progressBadge/foreground', modes) || '#000000'
88
+ getVariableByName('progressBadge/foreground', modes)
89
89
 
90
90
  // Resolve icon tokens
91
91
  const iconColor =
92
- getVariableByName('progressBadge/icon/color', modes) || '#f50030'
92
+ getVariableByName('progressBadge/icon/color', modes)
93
93
  const iconSize = getVariableByName('progressBadge/icon/size', modes) ?? 18
94
94
 
95
95
  const containerStyle: ViewStyle = {
@@ -3,13 +3,13 @@ import {
3
3
  Pressable,
4
4
  View,
5
5
  StyleSheet,
6
- Platform,
7
6
  ViewStyle,
8
7
  DimensionValue,
9
8
  StyleProp,
10
9
  } from 'react-native'
11
10
  import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
12
11
  import { EMPTY_MODES } from '../../utils/react-utils'
12
+ import { boxShadow } from '../../utils/shadow'
13
13
  import type { Modes } from '../../design-tokens'
14
14
 
15
15
  // ---------------------------------------------------------------------------
@@ -61,9 +61,9 @@ export const Radio = forwardRef<View, RadioProps>(function Radio({
61
61
  const [pressed, setPressed] = useState(false)
62
62
 
63
63
  // ---- Dimensions ----
64
- const widthStr = getVariableByName('radio/width', modes) || '18'
65
- const heightStr = getVariableByName('radio/height', modes) || '18'
66
- const selectorSizeStr = getVariableByName('radio/selector/size', modes) || '10'
64
+ const widthStr = getVariableByName('radio/width', modes)
65
+ const heightStr = getVariableByName('radio/height', modes)
66
+ const selectorSizeStr = getVariableByName('radio/selector/size', modes)
67
67
 
68
68
  const width = parseFloat(widthStr?.toString() || '18')
69
69
  const height = parseFloat(heightStr?.toString() || '18')
@@ -101,7 +101,7 @@ export const Radio = forwardRef<View, RadioProps>(function Radio({
101
101
  // ---- Colors & Border ----
102
102
 
103
103
  const resolveColor = (path: string, fallback: string) => {
104
- return getVariableByName(path, modes) || fallback
104
+ return getVariableByName(path, modes)
105
105
  }
106
106
 
107
107
  // Background Color
@@ -155,10 +155,9 @@ export const Radio = forwardRef<View, RadioProps>(function Radio({
155
155
  backgroundColor,
156
156
  justifyContent: 'center',
157
157
  alignItems: 'center',
158
- // Web shadow (ring)
159
- ...(Platform.OS === 'web' && shadowSize > 0 ? {
160
- boxShadow: `0px 0px 0px ${shadowSize}px ${shadowColor}`,
161
- } : {}),
158
+ // Focus/selected glow ring. Rendered via the unified boxShadow helper
159
+ // so it works on web + RN 0.76+ and degrades gracefully on older RN.
160
+ ...(shadowSize > 0 ? boxShadow(`0px 0px 0px ${shadowSize}px ${shadowColor}`) : {}),
162
161
  }
163
162
 
164
163
  const selectorStyle: ViewStyle = {
@@ -83,47 +83,47 @@ export default function RechargeCard({
83
83
  style,
84
84
  }: RechargeCardProps) {
85
85
  // Container Tokens (defaults mirror Figma node 2235:937).
86
- const backgroundColor = getVariableByName('rechargeCard/background', modes) || '#ffffff';
87
- const paddingHorizontal = parseInt(getVariableByName('rechargeCard/padding/horizontal', modes) || 16, 10);
88
- const paddingVertical = parseInt(getVariableByName('rechargeCard/padding/vertical', modes) || 20, 10);
89
- const gap = parseInt(getVariableByName('rechargeCard/gap', modes) || 20, 10);
90
- const radius = parseInt(getVariableByName('rechargeCard/radius', modes) || 20, 10);
91
- const minWidth = parseInt(getVariableByName('rechargeCard/minWidth', modes) || 312, 10);
92
- const strokeWidth = parseInt(getVariableByName('rechargeCard/strokeWidth', modes) || 1, 10);
93
- const strokeColor = getVariableByName('rechargeCard/stroke/color', modes) || '#ebebed';
86
+ const backgroundColor = getVariableByName('rechargeCard/background', modes);
87
+ const paddingHorizontal = parseInt(getVariableByName('rechargeCard/padding/horizontal', modes), 10);
88
+ const paddingVertical = parseInt(getVariableByName('rechargeCard/padding/vertical', modes), 10);
89
+ const gap = parseInt(getVariableByName('rechargeCard/gap', modes), 10);
90
+ const radius = parseInt(getVariableByName('rechargeCard/radius', modes), 10);
91
+ const minWidth = parseInt(getVariableByName('rechargeCard/minWidth', modes), 10);
92
+ const strokeWidth = parseInt(getVariableByName('rechargeCard/strokeWidth', modes), 10);
93
+ const strokeColor = getVariableByName('rechargeCard/stroke/color', modes);
94
94
 
95
95
  // Header Tokens
96
- const headerGap = parseInt(getVariableByName('rechargeCard/header/gap', modes) || 4, 10);
97
- const titleColor = getVariableByName('rechargeCard/title/color', modes) || '#000000';
98
- const titleFontSize = parseInt(getVariableByName('rechargeCard/title/fontSize', modes) || 12, 10);
99
- const titleFontFamily = getVariableByName('rechargeCard/title/fontFamily', modes) || 'JioType Var';
100
- const titleLineHeight = parseInt(getVariableByName('rechargeCard/title/lineHeight', modes) || 14, 10);
101
- const titleFontWeight = getVariableByName('rechargeCard/title/fontWeight', modes) || '700';
96
+ const headerGap = parseInt(getVariableByName('rechargeCard/header/gap', modes), 10);
97
+ const titleColor = getVariableByName('rechargeCard/title/color', modes);
98
+ const titleFontSize = parseInt(getVariableByName('rechargeCard/title/fontSize', modes), 10);
99
+ const titleFontFamily = getVariableByName('rechargeCard/title/fontFamily', modes);
100
+ const titleLineHeight = parseInt(getVariableByName('rechargeCard/title/lineHeight', modes), 10);
101
+ const titleFontWeight = getVariableByName('rechargeCard/title/fontWeight', modes);
102
102
 
103
103
  // Specs Tokens
104
- const specsGap = parseInt(getVariableByName('rechargeCard/specs/gap', modes) || 0, 10);
105
- const specItemGap = parseInt(getVariableByName('rechargeCard/specItem/gap', modes) || 4, 10);
104
+ const specsGap = parseInt(getVariableByName('rechargeCard/specs/gap', modes), 10);
105
+ const specItemGap = parseInt(getVariableByName('rechargeCard/specItem/gap', modes), 10);
106
106
 
107
107
  // Spec Label Tokens
108
- const specLabelColor = getVariableByName('rechargeCard/specItem/label/color', modes) || '#000000';
109
- const specLabelFontSize = parseInt(getVariableByName('rechargeCard/specItem/label/fontSize', modes) || 12, 10);
110
- const specLabelFontFamily = getVariableByName('rechargeCard/specItem/label/fontFamily', modes) || 'JioType Var';
111
- const specLabelLineHeight = parseInt(getVariableByName('rechargeCard/specItem/label/lineHeight', modes) || 14, 10);
112
- const specLabelFontWeight = getVariableByName('rechargeCard/specItem/label/fontWeight', modes) || '500';
108
+ const specLabelColor = getVariableByName('rechargeCard/specItem/label/color', modes);
109
+ const specLabelFontSize = parseInt(getVariableByName('rechargeCard/specItem/label/fontSize', modes), 10);
110
+ const specLabelFontFamily = getVariableByName('rechargeCard/specItem/label/fontFamily', modes);
111
+ const specLabelLineHeight = parseInt(getVariableByName('rechargeCard/specItem/label/lineHeight', modes), 10);
112
+ const specLabelFontWeight = getVariableByName('rechargeCard/specItem/label/fontWeight', modes);
113
113
 
114
114
  // Spec Value Tokens
115
- const specValueColor = getVariableByName('rechargeCard/specItem/value/color', modes) || '#000000';
116
- const specValueFontSize = parseInt(getVariableByName('rechargeCard/specItem/value/fontSize', modes) || 14, 10);
117
- const specValueFontFamily = getVariableByName('rechargeCard/specItem/value/fontFamily', modes) || 'JioType Var';
118
- const specValueLineHeight = parseInt(getVariableByName('rechargeCard/specItem/value/lineHeight', modes) || 17, 10);
119
- const specValueFontWeight = getVariableByName('rechargeCard/specItem/value/fontWeight', modes) || '500';
115
+ const specValueColor = getVariableByName('rechargeCard/specItem/value/color', modes);
116
+ const specValueFontSize = parseInt(getVariableByName('rechargeCard/specItem/value/fontSize', modes), 10);
117
+ const specValueFontFamily = getVariableByName('rechargeCard/specItem/value/fontFamily', modes);
118
+ const specValueLineHeight = parseInt(getVariableByName('rechargeCard/specItem/value/lineHeight', modes), 10);
119
+ const specValueFontWeight = getVariableByName('rechargeCard/specItem/value/fontWeight', modes);
120
120
 
121
121
  // Disclaimer Tokens
122
- const disclaimerColor = getVariableByName('rechargeCard/disclaimer/color', modes) || '#000000';
123
- const disclaimerFontSize = parseInt(getVariableByName('rechargeCard/disclaimer/fontSize', modes) || 10, 10);
124
- const disclaimerFontFamily = getVariableByName('rechargeCard/disclaimer/fontFamily', modes) || 'JioType Var';
125
- const disclaimerLineHeight = parseInt(getVariableByName('rechargeCard/disclaimer/lineHeight', modes) || 13, 10);
126
- const disclaimerFontWeight = getVariableByName('rechargeCard/disclaimer/fontWeight', modes) || '400';
122
+ const disclaimerColor = getVariableByName('rechargeCard/disclaimer/color', modes);
123
+ const disclaimerFontSize = parseInt(getVariableByName('rechargeCard/disclaimer/fontSize', modes), 10);
124
+ const disclaimerFontFamily = getVariableByName('rechargeCard/disclaimer/fontFamily', modes);
125
+ const disclaimerLineHeight = parseInt(getVariableByName('rechargeCard/disclaimer/lineHeight', modes), 10);
126
+ const disclaimerFontWeight = getVariableByName('rechargeCard/disclaimer/fontWeight', modes);
127
127
 
128
128
  const resolveFontWeight = (weight: string | number) => typeof weight === 'number' ? weight.toString() : weight;
129
129