@reown/appkit-ui-react-native 1.0.2 → 1.1.0

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 (475) hide show
  1. package/lib/commonjs/assets/svg/ArrowBottomCircle.js +21 -0
  2. package/lib/commonjs/assets/svg/ArrowBottomCircle.js.map +1 -0
  3. package/lib/commonjs/assets/svg/Farcaster.js +28 -0
  4. package/lib/commonjs/assets/svg/Farcaster.js.map +1 -0
  5. package/lib/commonjs/assets/svg/FarcasterSquare.js +28 -0
  6. package/lib/commonjs/assets/svg/FarcasterSquare.js.map +1 -0
  7. package/lib/commonjs/assets/svg/{TwitterIcon.js → More.js} +16 -5
  8. package/lib/commonjs/assets/svg/More.js.map +1 -0
  9. package/lib/commonjs/assets/svg/Paperplane.js +21 -0
  10. package/lib/commonjs/assets/svg/Paperplane.js.map +1 -0
  11. package/lib/commonjs/assets/svg/WalletConnect.js +19 -1
  12. package/lib/commonjs/assets/svg/WalletConnect.js.map +1 -1
  13. package/lib/commonjs/assets/svg/{Twitter.js → X.js} +18 -28
  14. package/lib/commonjs/assets/svg/X.js.map +1 -0
  15. package/lib/commonjs/assets/visual/Google.js +59 -0
  16. package/lib/commonjs/assets/visual/Google.js.map +1 -0
  17. package/lib/commonjs/assets/visual/Lightbulb.js +58 -0
  18. package/lib/commonjs/assets/visual/Lightbulb.js.map +1 -0
  19. package/lib/commonjs/assets/visual/Pencil.js +81 -0
  20. package/lib/commonjs/assets/visual/Pencil.js.map +1 -0
  21. package/lib/commonjs/assets/visual/Profile.js +2 -2
  22. package/lib/commonjs/assets/visual/Profile.js.map +1 -1
  23. package/lib/commonjs/components/wui-card/index.js +1 -1
  24. package/lib/commonjs/components/wui-card/styles.js +1 -1
  25. package/lib/commonjs/components/wui-card/styles.js.map +1 -1
  26. package/lib/commonjs/components/wui-icon/index.js +18 -7
  27. package/lib/commonjs/components/wui-icon/index.js.map +1 -1
  28. package/lib/commonjs/components/wui-visual/index.js +6 -0
  29. package/lib/commonjs/components/wui-visual/index.js.map +1 -1
  30. package/lib/commonjs/composites/wui-account-button/index.js +13 -7
  31. package/lib/commonjs/composites/wui-account-button/index.js.map +1 -1
  32. package/lib/commonjs/composites/wui-account-button/styles.js +5 -5
  33. package/lib/commonjs/composites/wui-account-button/styles.js.map +1 -1
  34. package/lib/commonjs/composites/wui-account-pill/index.js +67 -0
  35. package/lib/commonjs/composites/wui-account-pill/index.js.map +1 -0
  36. package/lib/commonjs/composites/wui-account-pill/styles.js +29 -0
  37. package/lib/commonjs/composites/wui-account-pill/styles.js.map +1 -0
  38. package/lib/commonjs/composites/wui-avatar/styles.js +2 -1
  39. package/lib/commonjs/composites/wui-avatar/styles.js.map +1 -1
  40. package/lib/commonjs/composites/wui-balance/index.js +27 -0
  41. package/lib/commonjs/composites/wui-balance/index.js.map +1 -0
  42. package/lib/commonjs/composites/wui-banner/index.js +36 -0
  43. package/lib/commonjs/composites/wui-banner/index.js.map +1 -0
  44. package/lib/commonjs/composites/wui-banner/styles.js +21 -0
  45. package/lib/commonjs/composites/wui-banner/styles.js.map +1 -0
  46. package/lib/commonjs/composites/wui-button/index.js +3 -3
  47. package/lib/commonjs/composites/wui-button/index.js.map +1 -1
  48. package/lib/commonjs/composites/wui-button/styles.js +3 -3
  49. package/lib/commonjs/composites/wui-button/styles.js.map +1 -1
  50. package/lib/commonjs/composites/wui-card-select/index.js +4 -2
  51. package/lib/commonjs/composites/wui-card-select/index.js.map +1 -1
  52. package/lib/commonjs/composites/wui-chip/index.js +11 -9
  53. package/lib/commonjs/composites/wui-chip/index.js.map +1 -1
  54. package/lib/commonjs/composites/wui-chip/styles.js +3 -3
  55. package/lib/commonjs/composites/wui-chip/styles.js.map +1 -1
  56. package/lib/commonjs/composites/wui-compatible-network/index.js +58 -0
  57. package/lib/commonjs/composites/wui-compatible-network/index.js.map +1 -0
  58. package/lib/commonjs/composites/wui-connect-button/styles.js +1 -1
  59. package/lib/commonjs/composites/wui-connect-button/styles.js.map +1 -1
  60. package/lib/commonjs/composites/wui-icon-box/index.js +17 -1
  61. package/lib/commonjs/composites/wui-icon-box/index.js.map +1 -1
  62. package/lib/commonjs/composites/wui-input-text/index.js +3 -3
  63. package/lib/commonjs/composites/wui-input-text/index.js.map +1 -1
  64. package/lib/commonjs/composites/wui-input-text/styles.js +1 -1
  65. package/lib/commonjs/composites/wui-input-text/styles.js.map +1 -1
  66. package/lib/commonjs/composites/wui-list-item/index.js +10 -10
  67. package/lib/commonjs/composites/wui-list-item/index.js.map +1 -1
  68. package/lib/commonjs/composites/wui-list-item/styles.js +4 -3
  69. package/lib/commonjs/composites/wui-list-item/styles.js.map +1 -1
  70. package/lib/commonjs/composites/wui-list-item-loader/index.js +34 -0
  71. package/lib/commonjs/composites/wui-list-item-loader/index.js.map +1 -0
  72. package/lib/commonjs/composites/wui-list-item-loader/styles.js +18 -0
  73. package/lib/commonjs/composites/wui-list-item-loader/styles.js.map +1 -0
  74. package/lib/commonjs/composites/wui-list-social/index.js +54 -0
  75. package/lib/commonjs/composites/wui-list-social/index.js.map +1 -0
  76. package/lib/commonjs/composites/wui-list-social/styles.js +34 -0
  77. package/lib/commonjs/composites/wui-list-social/styles.js.map +1 -0
  78. package/lib/commonjs/composites/wui-list-token/index.js +78 -0
  79. package/lib/commonjs/composites/wui-list-token/index.js.map +1 -0
  80. package/lib/commonjs/composites/wui-list-token/styles.js +30 -0
  81. package/lib/commonjs/composites/wui-list-token/styles.js.map +1 -0
  82. package/lib/commonjs/composites/wui-list-transaction/index.js +64 -0
  83. package/lib/commonjs/composites/wui-list-transaction/index.js.map +1 -0
  84. package/lib/commonjs/composites/wui-list-transaction/styles.js +16 -0
  85. package/lib/commonjs/composites/wui-list-transaction/styles.js.map +1 -0
  86. package/lib/commonjs/composites/wui-list-transaction/utils.js +88 -0
  87. package/lib/commonjs/composites/wui-list-transaction/utils.js.map +1 -0
  88. package/lib/commonjs/composites/wui-list-wallet/index.js +1 -1
  89. package/lib/commonjs/composites/wui-list-wallet/index.js.map +1 -1
  90. package/lib/commonjs/composites/wui-logo/index.js +4 -2
  91. package/lib/commonjs/composites/wui-logo/index.js.map +1 -1
  92. package/lib/commonjs/composites/wui-logo-select/index.js +6 -3
  93. package/lib/commonjs/composites/wui-logo-select/index.js.map +1 -1
  94. package/lib/commonjs/composites/wui-logo-select/styles.js +3 -3
  95. package/lib/commonjs/composites/wui-logo-select/styles.js.map +1 -1
  96. package/lib/commonjs/composites/wui-network-button/index.js +17 -11
  97. package/lib/commonjs/composites/wui-network-button/index.js.map +1 -1
  98. package/lib/commonjs/composites/wui-network-button/styles.js +4 -4
  99. package/lib/commonjs/composites/wui-network-button/styles.js.map +1 -1
  100. package/lib/commonjs/composites/wui-network-image/index.js +48 -21
  101. package/lib/commonjs/composites/wui-network-image/index.js.map +1 -1
  102. package/lib/commonjs/composites/wui-network-image/styles.js +3 -1
  103. package/lib/commonjs/composites/wui-network-image/styles.js.map +1 -1
  104. package/lib/commonjs/composites/wui-otp/index.js +1 -2
  105. package/lib/commonjs/composites/wui-otp/index.js.map +1 -1
  106. package/lib/commonjs/composites/wui-promo/index.js +48 -0
  107. package/lib/commonjs/composites/wui-promo/index.js.map +1 -0
  108. package/lib/commonjs/composites/wui-qr-code/index.js +20 -13
  109. package/lib/commonjs/composites/wui-qr-code/index.js.map +1 -1
  110. package/lib/commonjs/composites/wui-search-bar/index.js +2 -4
  111. package/lib/commonjs/composites/wui-search-bar/index.js.map +1 -1
  112. package/lib/commonjs/composites/wui-snackbar/index.js +3 -1
  113. package/lib/commonjs/composites/wui-snackbar/index.js.map +1 -1
  114. package/lib/commonjs/composites/wui-snackbar/styles.js +3 -2
  115. package/lib/commonjs/composites/wui-snackbar/styles.js.map +1 -1
  116. package/lib/commonjs/composites/wui-tabs/index.js +22 -8
  117. package/lib/commonjs/composites/wui-tabs/index.js.map +1 -1
  118. package/lib/commonjs/composites/wui-tabs/styles.js +2 -3
  119. package/lib/commonjs/composites/wui-tabs/styles.js.map +1 -1
  120. package/lib/commonjs/composites/wui-token-button/index.js +37 -0
  121. package/lib/commonjs/composites/wui-token-button/index.js.map +1 -0
  122. package/lib/commonjs/composites/wui-token-button/styles.js +24 -0
  123. package/lib/commonjs/composites/wui-token-button/styles.js.map +1 -0
  124. package/lib/commonjs/composites/wui-transaction-visual/index.js +73 -0
  125. package/lib/commonjs/composites/wui-transaction-visual/index.js.map +1 -0
  126. package/lib/commonjs/composites/wui-transaction-visual/styles.js +42 -0
  127. package/lib/commonjs/composites/wui-transaction-visual/styles.js.map +1 -0
  128. package/lib/commonjs/composites/wui-wallet-image/styles.js +1 -1
  129. package/lib/commonjs/composites/wui-wallet-image/styles.js.map +1 -1
  130. package/lib/commonjs/index.js +77 -0
  131. package/lib/commonjs/index.js.map +1 -1
  132. package/lib/commonjs/layout/wui-flex/index.js.map +1 -1
  133. package/lib/commonjs/utils/ThemeUtil.js +4 -2
  134. package/lib/commonjs/utils/ThemeUtil.js.map +1 -1
  135. package/lib/commonjs/utils/TransactionUtil.js +139 -0
  136. package/lib/commonjs/utils/TransactionUtil.js.map +1 -0
  137. package/lib/commonjs/utils/UiUtil.js +15 -0
  138. package/lib/commonjs/utils/UiUtil.js.map +1 -1
  139. package/lib/module/assets/svg/ArrowBottomCircle.js +13 -0
  140. package/lib/module/assets/svg/ArrowBottomCircle.js.map +1 -0
  141. package/lib/module/assets/svg/Farcaster.js +20 -0
  142. package/lib/module/assets/svg/Farcaster.js.map +1 -0
  143. package/lib/module/assets/svg/FarcasterSquare.js +20 -0
  144. package/lib/module/assets/svg/FarcasterSquare.js.map +1 -0
  145. package/lib/module/assets/svg/More.js +22 -0
  146. package/lib/module/assets/svg/More.js.map +1 -0
  147. package/lib/module/assets/svg/Paperplane.js +13 -0
  148. package/lib/module/assets/svg/Paperplane.js.map +1 -0
  149. package/lib/module/assets/svg/WalletConnect.js +18 -1
  150. package/lib/module/assets/svg/WalletConnect.js.map +1 -1
  151. package/lib/module/assets/svg/X.js +27 -0
  152. package/lib/module/assets/svg/X.js.map +1 -0
  153. package/lib/module/assets/visual/Google.js +51 -0
  154. package/lib/module/assets/visual/Google.js.map +1 -0
  155. package/lib/module/assets/visual/Lightbulb.js +50 -0
  156. package/lib/module/assets/visual/Lightbulb.js.map +1 -0
  157. package/lib/module/assets/visual/Pencil.js +73 -0
  158. package/lib/module/assets/visual/Pencil.js.map +1 -0
  159. package/lib/module/assets/visual/Profile.js +2 -2
  160. package/lib/module/assets/visual/Profile.js.map +1 -1
  161. package/lib/module/components/wui-card/index.js +1 -1
  162. package/lib/module/components/wui-card/styles.js +1 -1
  163. package/lib/module/components/wui-card/styles.js.map +1 -1
  164. package/lib/module/components/wui-icon/index.js +16 -7
  165. package/lib/module/components/wui-icon/index.js.map +1 -1
  166. package/lib/module/components/wui-visual/index.js +6 -0
  167. package/lib/module/components/wui-visual/index.js.map +1 -1
  168. package/lib/module/composites/wui-account-button/index.js +13 -7
  169. package/lib/module/composites/wui-account-button/index.js.map +1 -1
  170. package/lib/module/composites/wui-account-button/styles.js +6 -6
  171. package/lib/module/composites/wui-account-button/styles.js.map +1 -1
  172. package/lib/module/composites/wui-account-pill/index.js +60 -0
  173. package/lib/module/composites/wui-account-pill/index.js.map +1 -0
  174. package/lib/module/composites/wui-account-pill/styles.js +23 -0
  175. package/lib/module/composites/wui-account-pill/styles.js.map +1 -0
  176. package/lib/module/composites/wui-avatar/styles.js +2 -1
  177. package/lib/module/composites/wui-avatar/styles.js.map +1 -1
  178. package/lib/module/composites/wui-balance/index.js +21 -0
  179. package/lib/module/composites/wui-balance/index.js.map +1 -0
  180. package/lib/module/composites/wui-banner/index.js +29 -0
  181. package/lib/module/composites/wui-banner/index.js.map +1 -0
  182. package/lib/module/composites/wui-banner/styles.js +15 -0
  183. package/lib/module/composites/wui-banner/styles.js.map +1 -0
  184. package/lib/module/composites/wui-button/index.js +3 -3
  185. package/lib/module/composites/wui-button/index.js.map +1 -1
  186. package/lib/module/composites/wui-button/styles.js +3 -3
  187. package/lib/module/composites/wui-button/styles.js.map +1 -1
  188. package/lib/module/composites/wui-card-select/index.js +4 -2
  189. package/lib/module/composites/wui-card-select/index.js.map +1 -1
  190. package/lib/module/composites/wui-chip/index.js +12 -10
  191. package/lib/module/composites/wui-chip/index.js.map +1 -1
  192. package/lib/module/composites/wui-chip/styles.js +3 -3
  193. package/lib/module/composites/wui-chip/styles.js.map +1 -1
  194. package/lib/module/composites/wui-compatible-network/index.js +52 -0
  195. package/lib/module/composites/wui-compatible-network/index.js.map +1 -0
  196. package/lib/module/composites/wui-connect-button/styles.js +1 -1
  197. package/lib/module/composites/wui-connect-button/styles.js.map +1 -1
  198. package/lib/module/composites/wui-icon-box/index.js +17 -1
  199. package/lib/module/composites/wui-icon-box/index.js.map +1 -1
  200. package/lib/module/composites/wui-input-text/index.js +3 -3
  201. package/lib/module/composites/wui-input-text/index.js.map +1 -1
  202. package/lib/module/composites/wui-input-text/styles.js +1 -1
  203. package/lib/module/composites/wui-input-text/styles.js.map +1 -1
  204. package/lib/module/composites/wui-list-item/index.js +10 -10
  205. package/lib/module/composites/wui-list-item/index.js.map +1 -1
  206. package/lib/module/composites/wui-list-item/styles.js +4 -3
  207. package/lib/module/composites/wui-list-item/styles.js.map +1 -1
  208. package/lib/module/composites/wui-list-item-loader/index.js +27 -0
  209. package/lib/module/composites/wui-list-item-loader/index.js.map +1 -0
  210. package/lib/module/composites/wui-list-item-loader/styles.js +12 -0
  211. package/lib/module/composites/wui-list-item-loader/styles.js.map +1 -0
  212. package/lib/module/composites/wui-list-social/index.js +47 -0
  213. package/lib/module/composites/wui-list-social/index.js.map +1 -0
  214. package/lib/module/composites/wui-list-social/styles.js +28 -0
  215. package/lib/module/composites/wui-list-social/styles.js.map +1 -0
  216. package/lib/module/composites/wui-list-token/index.js +71 -0
  217. package/lib/module/composites/wui-list-token/index.js.map +1 -0
  218. package/lib/module/composites/wui-list-token/styles.js +24 -0
  219. package/lib/module/composites/wui-list-token/styles.js.map +1 -0
  220. package/lib/module/composites/wui-list-transaction/index.js +57 -0
  221. package/lib/module/composites/wui-list-transaction/index.js.map +1 -0
  222. package/lib/module/composites/wui-list-transaction/styles.js +10 -0
  223. package/lib/module/composites/wui-list-transaction/styles.js.map +1 -0
  224. package/lib/module/composites/wui-list-transaction/utils.js +79 -0
  225. package/lib/module/composites/wui-list-transaction/utils.js.map +1 -0
  226. package/lib/module/composites/wui-list-wallet/index.js +1 -1
  227. package/lib/module/composites/wui-list-wallet/index.js.map +1 -1
  228. package/lib/module/composites/wui-logo/index.js +4 -2
  229. package/lib/module/composites/wui-logo/index.js.map +1 -1
  230. package/lib/module/composites/wui-logo-select/index.js +6 -3
  231. package/lib/module/composites/wui-logo-select/index.js.map +1 -1
  232. package/lib/module/composites/wui-logo-select/styles.js +3 -3
  233. package/lib/module/composites/wui-logo-select/styles.js.map +1 -1
  234. package/lib/module/composites/wui-network-button/index.js +18 -12
  235. package/lib/module/composites/wui-network-button/index.js.map +1 -1
  236. package/lib/module/composites/wui-network-button/styles.js +5 -5
  237. package/lib/module/composites/wui-network-button/styles.js.map +1 -1
  238. package/lib/module/composites/wui-network-image/index.js +49 -22
  239. package/lib/module/composites/wui-network-image/index.js.map +1 -1
  240. package/lib/module/composites/wui-network-image/styles.js +2 -0
  241. package/lib/module/composites/wui-network-image/styles.js.map +1 -1
  242. package/lib/module/composites/wui-otp/index.js +2 -3
  243. package/lib/module/composites/wui-otp/index.js.map +1 -1
  244. package/lib/module/composites/wui-promo/index.js +42 -0
  245. package/lib/module/composites/wui-promo/index.js.map +1 -0
  246. package/lib/module/composites/wui-qr-code/index.js +20 -13
  247. package/lib/module/composites/wui-qr-code/index.js.map +1 -1
  248. package/lib/module/composites/wui-search-bar/index.js +2 -4
  249. package/lib/module/composites/wui-search-bar/index.js.map +1 -1
  250. package/lib/module/composites/wui-snackbar/index.js +3 -1
  251. package/lib/module/composites/wui-snackbar/index.js.map +1 -1
  252. package/lib/module/composites/wui-snackbar/styles.js +3 -2
  253. package/lib/module/composites/wui-snackbar/styles.js.map +1 -1
  254. package/lib/module/composites/wui-tabs/index.js +22 -8
  255. package/lib/module/composites/wui-tabs/index.js.map +1 -1
  256. package/lib/module/composites/wui-tabs/styles.js +2 -3
  257. package/lib/module/composites/wui-tabs/styles.js.map +1 -1
  258. package/lib/module/composites/wui-token-button/index.js +30 -0
  259. package/lib/module/composites/wui-token-button/index.js.map +1 -0
  260. package/lib/module/composites/wui-token-button/styles.js +18 -0
  261. package/lib/module/composites/wui-token-button/styles.js.map +1 -0
  262. package/lib/module/composites/wui-transaction-visual/index.js +66 -0
  263. package/lib/module/composites/wui-transaction-visual/index.js.map +1 -0
  264. package/lib/module/composites/wui-transaction-visual/styles.js +36 -0
  265. package/lib/module/composites/wui-transaction-visual/styles.js.map +1 -0
  266. package/lib/module/composites/wui-wallet-image/styles.js +1 -1
  267. package/lib/module/composites/wui-wallet-image/styles.js.map +1 -1
  268. package/lib/module/index.js +11 -0
  269. package/lib/module/index.js.map +1 -1
  270. package/lib/module/layout/wui-flex/index.js.map +1 -1
  271. package/lib/module/layout/wui-separator/index.js.map +1 -1
  272. package/lib/module/utils/ThemeUtil.js +4 -2
  273. package/lib/module/utils/ThemeUtil.js.map +1 -1
  274. package/lib/module/utils/TransactionUtil.js +134 -0
  275. package/lib/module/utils/TransactionUtil.js.map +1 -0
  276. package/lib/module/utils/UiUtil.js +15 -0
  277. package/lib/module/utils/UiUtil.js.map +1 -1
  278. package/lib/typescript/assets/svg/ArrowBottomCircle.d.ts +4 -0
  279. package/lib/typescript/assets/svg/ArrowBottomCircle.d.ts.map +1 -0
  280. package/lib/typescript/assets/svg/Farcaster.d.ts +4 -0
  281. package/lib/typescript/assets/svg/Farcaster.d.ts.map +1 -0
  282. package/lib/typescript/assets/svg/FarcasterSquare.d.ts +4 -0
  283. package/lib/typescript/assets/svg/FarcasterSquare.d.ts.map +1 -0
  284. package/lib/typescript/assets/svg/More.d.ts +4 -0
  285. package/lib/typescript/assets/svg/More.d.ts.map +1 -0
  286. package/lib/typescript/assets/svg/Paperplane.d.ts +4 -0
  287. package/lib/typescript/assets/svg/Paperplane.d.ts.map +1 -0
  288. package/lib/typescript/assets/svg/WalletConnect.d.ts +1 -0
  289. package/lib/typescript/assets/svg/WalletConnect.d.ts.map +1 -1
  290. package/lib/typescript/assets/svg/X.d.ts +4 -0
  291. package/lib/typescript/assets/svg/X.d.ts.map +1 -0
  292. package/lib/typescript/assets/visual/Google.d.ts +4 -0
  293. package/lib/typescript/assets/visual/Google.d.ts.map +1 -0
  294. package/lib/typescript/assets/visual/Lightbulb.d.ts +4 -0
  295. package/lib/typescript/assets/visual/Lightbulb.d.ts.map +1 -0
  296. package/lib/typescript/assets/visual/Pencil.d.ts +4 -0
  297. package/lib/typescript/assets/visual/Pencil.d.ts.map +1 -0
  298. package/lib/typescript/components/wui-icon/index.d.ts +1 -1
  299. package/lib/typescript/components/wui-icon/index.d.ts.map +1 -1
  300. package/lib/typescript/components/wui-visual/index.d.ts.map +1 -1
  301. package/lib/typescript/composites/wui-account-button/index.d.ts +2 -2
  302. package/lib/typescript/composites/wui-account-button/index.d.ts.map +1 -1
  303. package/lib/typescript/composites/wui-account-pill/index.d.ts +10 -0
  304. package/lib/typescript/composites/wui-account-pill/index.d.ts.map +1 -0
  305. package/lib/typescript/composites/wui-account-pill/styles.d.ts +22 -0
  306. package/lib/typescript/composites/wui-account-pill/styles.d.ts.map +1 -0
  307. package/lib/typescript/composites/wui-avatar/styles.d.ts.map +1 -1
  308. package/lib/typescript/composites/wui-balance/index.d.ts +6 -0
  309. package/lib/typescript/composites/wui-balance/index.d.ts.map +1 -0
  310. package/lib/typescript/composites/wui-banner/index.d.ts +7 -0
  311. package/lib/typescript/composites/wui-banner/index.d.ts.map +1 -0
  312. package/lib/typescript/composites/wui-banner/styles.d.ts +14 -0
  313. package/lib/typescript/composites/wui-banner/styles.d.ts.map +1 -0
  314. package/lib/typescript/composites/wui-button/index.d.ts.map +1 -1
  315. package/lib/typescript/composites/wui-card-select/index.d.ts +2 -1
  316. package/lib/typescript/composites/wui-card-select/index.d.ts.map +1 -1
  317. package/lib/typescript/composites/wui-chip/index.d.ts +4 -3
  318. package/lib/typescript/composites/wui-chip/index.d.ts.map +1 -1
  319. package/lib/typescript/composites/wui-compatible-network/index.d.ts +10 -0
  320. package/lib/typescript/composites/wui-compatible-network/index.d.ts.map +1 -0
  321. package/lib/typescript/composites/wui-icon-box/index.d.ts +1 -1
  322. package/lib/typescript/composites/wui-icon-box/index.d.ts.map +1 -1
  323. package/lib/typescript/composites/wui-list-item/index.d.ts +6 -4
  324. package/lib/typescript/composites/wui-list-item/index.d.ts.map +1 -1
  325. package/lib/typescript/composites/wui-list-item/styles.d.ts +1 -0
  326. package/lib/typescript/composites/wui-list-item/styles.d.ts.map +1 -1
  327. package/lib/typescript/composites/wui-list-item-loader/index.d.ts +6 -0
  328. package/lib/typescript/composites/wui-list-item-loader/index.d.ts.map +1 -0
  329. package/lib/typescript/composites/wui-list-item-loader/styles.d.ts +11 -0
  330. package/lib/typescript/composites/wui-list-item-loader/styles.d.ts.map +1 -0
  331. package/lib/typescript/composites/wui-list-social/index.d.ts +15 -0
  332. package/lib/typescript/composites/wui-list-social/index.d.ts.map +1 -0
  333. package/lib/typescript/composites/wui-list-social/styles.d.ts +27 -0
  334. package/lib/typescript/composites/wui-list-social/styles.d.ts.map +1 -0
  335. package/lib/typescript/composites/wui-list-token/index.d.ts +11 -0
  336. package/lib/typescript/composites/wui-list-token/index.d.ts.map +1 -0
  337. package/lib/typescript/composites/wui-list-token/styles.d.ts +23 -0
  338. package/lib/typescript/composites/wui-list-token/styles.d.ts.map +1 -0
  339. package/lib/typescript/composites/wui-list-transaction/index.d.ts +15 -0
  340. package/lib/typescript/composites/wui-list-transaction/index.d.ts.map +1 -0
  341. package/lib/typescript/composites/wui-list-transaction/styles.d.ts +10 -0
  342. package/lib/typescript/composites/wui-list-transaction/styles.d.ts.map +1 -0
  343. package/lib/typescript/composites/wui-list-transaction/utils.d.ts +6 -0
  344. package/lib/typescript/composites/wui-list-transaction/utils.d.ts.map +1 -0
  345. package/lib/typescript/composites/wui-list-wallet/index.d.ts.map +1 -1
  346. package/lib/typescript/composites/wui-logo/index.d.ts +3 -1
  347. package/lib/typescript/composites/wui-logo/index.d.ts.map +1 -1
  348. package/lib/typescript/composites/wui-logo-select/index.d.ts +4 -1
  349. package/lib/typescript/composites/wui-logo-select/index.d.ts.map +1 -1
  350. package/lib/typescript/composites/wui-network-button/index.d.ts +7 -4
  351. package/lib/typescript/composites/wui-network-button/index.d.ts.map +1 -1
  352. package/lib/typescript/composites/wui-network-button/styles.d.ts +1 -1
  353. package/lib/typescript/composites/wui-network-image/index.d.ts +6 -2
  354. package/lib/typescript/composites/wui-network-image/index.d.ts.map +1 -1
  355. package/lib/typescript/composites/wui-network-image/styles.d.ts +2 -0
  356. package/lib/typescript/composites/wui-network-image/styles.d.ts.map +1 -1
  357. package/lib/typescript/composites/wui-otp/index.d.ts.map +1 -1
  358. package/lib/typescript/composites/wui-promo/index.d.ts +8 -0
  359. package/lib/typescript/composites/wui-promo/index.d.ts.map +1 -0
  360. package/lib/typescript/composites/wui-qr-code/index.d.ts +6 -1
  361. package/lib/typescript/composites/wui-qr-code/index.d.ts.map +1 -1
  362. package/lib/typescript/composites/wui-search-bar/index.d.ts +1 -2
  363. package/lib/typescript/composites/wui-search-bar/index.d.ts.map +1 -1
  364. package/lib/typescript/composites/wui-snackbar/index.d.ts.map +1 -1
  365. package/lib/typescript/composites/wui-snackbar/styles.d.ts.map +1 -1
  366. package/lib/typescript/composites/wui-tabs/index.d.ts +4 -2
  367. package/lib/typescript/composites/wui-tabs/index.d.ts.map +1 -1
  368. package/lib/typescript/composites/wui-tabs/styles.d.ts +1 -2
  369. package/lib/typescript/composites/wui-tabs/styles.d.ts.map +1 -1
  370. package/lib/typescript/composites/wui-token-button/index.d.ts +7 -0
  371. package/lib/typescript/composites/wui-token-button/index.d.ts.map +1 -0
  372. package/lib/typescript/composites/wui-token-button/styles.d.ts +17 -0
  373. package/lib/typescript/composites/wui-token-button/styles.d.ts.map +1 -0
  374. package/lib/typescript/composites/wui-transaction-visual/index.d.ts +8 -0
  375. package/lib/typescript/composites/wui-transaction-visual/index.d.ts.map +1 -0
  376. package/lib/typescript/composites/wui-transaction-visual/styles.d.ts +35 -0
  377. package/lib/typescript/composites/wui-transaction-visual/styles.d.ts.map +1 -0
  378. package/lib/typescript/index.d.ts +11 -0
  379. package/lib/typescript/index.d.ts.map +1 -1
  380. package/lib/typescript/layout/wui-flex/index.d.ts.map +1 -1
  381. package/lib/typescript/layout/wui-separator/index.d.ts.map +1 -1
  382. package/lib/typescript/utils/ThemeUtil.d.ts +2 -0
  383. package/lib/typescript/utils/ThemeUtil.d.ts.map +1 -1
  384. package/lib/typescript/utils/TransactionUtil.d.ts +13 -0
  385. package/lib/typescript/utils/TransactionUtil.d.ts.map +1 -0
  386. package/lib/typescript/utils/TypesUtil.d.ts +6 -5
  387. package/lib/typescript/utils/TypesUtil.d.ts.map +1 -1
  388. package/lib/typescript/utils/UiUtil.d.ts +1 -0
  389. package/lib/typescript/utils/UiUtil.d.ts.map +1 -1
  390. package/package.json +4 -4
  391. package/readme.md +1 -1
  392. package/src/assets/svg/ArrowBottomCircle.tsx +12 -0
  393. package/src/assets/svg/Farcaster.tsx +15 -0
  394. package/src/assets/svg/FarcasterSquare.tsx +15 -0
  395. package/src/assets/svg/More.tsx +16 -0
  396. package/src/assets/svg/Paperplane.tsx +12 -0
  397. package/src/assets/svg/WalletConnect.tsx +24 -1
  398. package/src/assets/svg/X.tsx +26 -0
  399. package/src/assets/visual/Google.tsx +43 -0
  400. package/src/assets/visual/Lightbulb.tsx +54 -0
  401. package/src/assets/visual/Pencil.tsx +80 -0
  402. package/src/assets/visual/Profile.tsx +2 -2
  403. package/src/components/wui-card/index.tsx +1 -1
  404. package/src/components/wui-card/styles.ts +1 -1
  405. package/src/components/wui-icon/index.tsx +17 -8
  406. package/src/components/wui-visual/index.tsx +6 -0
  407. package/src/composites/wui-account-button/index.tsx +17 -8
  408. package/src/composites/wui-account-button/styles.ts +6 -6
  409. package/src/composites/wui-account-pill/index.tsx +64 -0
  410. package/src/composites/wui-account-pill/styles.ts +23 -0
  411. package/src/composites/wui-avatar/styles.ts +2 -1
  412. package/src/composites/wui-balance/index.tsx +25 -0
  413. package/src/composites/wui-banner/index.tsx +28 -0
  414. package/src/composites/wui-banner/styles.ts +15 -0
  415. package/src/composites/wui-button/index.tsx +12 -10
  416. package/src/composites/wui-button/styles.ts +3 -3
  417. package/src/composites/wui-card-select/index.tsx +4 -1
  418. package/src/composites/wui-chip/index.tsx +14 -13
  419. package/src/composites/wui-chip/styles.ts +3 -3
  420. package/src/composites/wui-compatible-network/index.tsx +64 -0
  421. package/src/composites/wui-connect-button/styles.ts +1 -1
  422. package/src/composites/wui-icon-box/index.tsx +18 -2
  423. package/src/composites/wui-input-text/index.tsx +1 -1
  424. package/src/composites/wui-input-text/styles.ts +1 -1
  425. package/src/composites/wui-list-item/index.tsx +15 -14
  426. package/src/composites/wui-list-item/styles.ts +4 -3
  427. package/src/composites/wui-list-item-loader/index.tsx +29 -0
  428. package/src/composites/wui-list-item-loader/styles.ts +12 -0
  429. package/src/composites/wui-list-social/index.tsx +65 -0
  430. package/src/composites/wui-list-social/styles.ts +28 -0
  431. package/src/composites/wui-list-token/index.tsx +83 -0
  432. package/src/composites/wui-list-token/styles.ts +24 -0
  433. package/src/composites/wui-list-transaction/index.tsx +65 -0
  434. package/src/composites/wui-list-transaction/styles.ts +10 -0
  435. package/src/composites/wui-list-transaction/utils.ts +83 -0
  436. package/src/composites/wui-list-wallet/index.tsx +2 -2
  437. package/src/composites/wui-logo/index.tsx +4 -2
  438. package/src/composites/wui-logo-select/index.tsx +7 -4
  439. package/src/composites/wui-logo-select/styles.ts +3 -3
  440. package/src/composites/wui-network-button/index.tsx +25 -15
  441. package/src/composites/wui-network-button/styles.ts +5 -5
  442. package/src/composites/wui-network-image/index.tsx +57 -21
  443. package/src/composites/wui-network-image/styles.ts +6 -0
  444. package/src/composites/wui-otp/index.tsx +2 -4
  445. package/src/composites/wui-promo/index.tsx +42 -0
  446. package/src/composites/wui-qr-code/index.tsx +21 -12
  447. package/src/composites/wui-search-bar/index.tsx +1 -4
  448. package/src/composites/wui-snackbar/index.tsx +7 -1
  449. package/src/composites/wui-snackbar/styles.ts +3 -2
  450. package/src/composites/wui-tabs/index.tsx +33 -9
  451. package/src/composites/wui-tabs/styles.ts +2 -3
  452. package/src/composites/wui-token-button/index.tsx +29 -0
  453. package/src/composites/wui-token-button/styles.ts +18 -0
  454. package/src/composites/wui-transaction-visual/index.tsx +78 -0
  455. package/src/composites/wui-transaction-visual/styles.ts +36 -0
  456. package/src/composites/wui-wallet-image/styles.ts +1 -1
  457. package/src/index.ts +14 -0
  458. package/src/layout/wui-flex/index.tsx +1 -2
  459. package/src/layout/wui-separator/index.tsx +1 -1
  460. package/src/utils/ThemeUtil.ts +4 -2
  461. package/src/utils/TransactionUtil.ts +173 -0
  462. package/src/utils/TypesUtil.ts +58 -6
  463. package/src/utils/UiUtil.ts +18 -0
  464. package/lib/commonjs/assets/svg/Twitter.js.map +0 -1
  465. package/lib/commonjs/assets/svg/TwitterIcon.js.map +0 -1
  466. package/lib/module/assets/svg/Twitter.js +0 -37
  467. package/lib/module/assets/svg/Twitter.js.map +0 -1
  468. package/lib/module/assets/svg/TwitterIcon.js +0 -11
  469. package/lib/module/assets/svg/TwitterIcon.js.map +0 -1
  470. package/lib/typescript/assets/svg/Twitter.d.ts +0 -4
  471. package/lib/typescript/assets/svg/Twitter.d.ts.map +0 -1
  472. package/lib/typescript/assets/svg/TwitterIcon.d.ts +0 -4
  473. package/lib/typescript/assets/svg/TwitterIcon.d.ts.map +0 -1
  474. package/src/assets/svg/Twitter.tsx +0 -27
  475. package/src/assets/svg/TwitterIcon.tsx +0 -10
@@ -15,7 +15,7 @@ export interface AccountButtonProps {
15
15
  imageHeaders?: Record<string, string>;
16
16
  avatarSrc?: string;
17
17
  address?: string;
18
- isProfileName?: boolean;
18
+ profileName?: string;
19
19
  balance?: string;
20
20
  onPress?: () => void;
21
21
  disabled?: boolean;
@@ -28,7 +28,7 @@ export function AccountButton({
28
28
  imageHeaders,
29
29
  avatarSrc,
30
30
  address,
31
- isProfileName,
31
+ profileName,
32
32
  balance,
33
33
  onPress,
34
34
  disabled,
@@ -73,6 +73,20 @@ export function AccountButton({
73
73
  return null;
74
74
  }
75
75
 
76
+ const formattedAddress = profileName
77
+ ? UiUtil.getTruncateString({
78
+ string: profileName,
79
+ charsStart: 18,
80
+ charsEnd: 0,
81
+ truncate: 'end'
82
+ })
83
+ : UiUtil.getTruncateString({
84
+ string: address || '',
85
+ charsStart: 4,
86
+ charsEnd: 6,
87
+ truncate: 'middle'
88
+ });
89
+
76
90
  return (
77
91
  <AnimatedPressable
78
92
  onPress={onPress}
@@ -102,12 +116,7 @@ export function AccountButton({
102
116
  />
103
117
  {address && (
104
118
  <Text variant="paragraph-500" color="fg-200" style={styles.address}>
105
- {UiUtil.getTruncateString({
106
- string: address,
107
- charsStart: isProfileName ? 18 : 4,
108
- charsEnd: isProfileName ? 0 : 6,
109
- truncate: isProfileName ? 'end' : 'middle'
110
- })}
119
+ {formattedAddress}
111
120
  </Text>
112
121
  )}
113
122
  </View>
@@ -1,12 +1,12 @@
1
1
  import { StyleSheet } from 'react-native';
2
- import { Spacing } from '../../utils/ThemeUtil';
2
+ import { BorderRadius, Spacing } from '../../utils/ThemeUtil';
3
3
 
4
4
  export default StyleSheet.create({
5
5
  container: {
6
6
  flexDirection: 'row',
7
7
  height: 40,
8
- borderRadius: 100,
9
- borderWidth: 1,
8
+ borderRadius: BorderRadius.full,
9
+ borderWidth: StyleSheet.hairlineWidth,
10
10
  justifyContent: 'center',
11
11
  alignItems: 'center',
12
12
  paddingHorizontal: Spacing['3xs']
@@ -14,7 +14,7 @@ export default StyleSheet.create({
14
14
  image: {
15
15
  height: 24,
16
16
  width: 24,
17
- borderRadius: 100,
17
+ borderRadius: BorderRadius.full,
18
18
  borderWidth: 2
19
19
  },
20
20
  avatarPlaceholder: {
@@ -35,8 +35,8 @@ export default StyleSheet.create({
35
35
  alignItems: 'center',
36
36
  paddingLeft: Spacing['3xs'],
37
37
  paddingRight: Spacing.xs,
38
- borderRadius: 100,
39
- borderWidth: 1
38
+ borderRadius: BorderRadius.full,
39
+ borderWidth: StyleSheet.hairlineWidth
40
40
  },
41
41
  address: {
42
42
  marginLeft: Spacing['3xs']
@@ -0,0 +1,64 @@
1
+ import { Animated, Pressable, type StyleProp, type ViewStyle } from 'react-native';
2
+ import { Avatar } from '../wui-avatar';
3
+ import { UiUtil } from '../../utils/UiUtil';
4
+ import { Text } from '../../components/wui-text';
5
+ import useAnimatedValue from '../../hooks/useAnimatedValue';
6
+ import { useTheme } from '../../hooks/useTheme';
7
+ import styles from './styles';
8
+ import { Icon } from '../../components/wui-icon';
9
+
10
+ export interface AccountPillProps {
11
+ onPress: () => void;
12
+ address?: string;
13
+ profileName?: string;
14
+ profileImage?: string;
15
+ style?: StyleProp<ViewStyle>;
16
+ }
17
+
18
+ const AnimatedPressable = Animated.createAnimatedComponent(Pressable);
19
+
20
+ export function AccountPill({
21
+ onPress,
22
+ address,
23
+ profileName,
24
+ profileImage,
25
+ style
26
+ }: AccountPillProps) {
27
+ const Theme = useTheme();
28
+
29
+ const { animatedValue, setStartValue, setEndValue } = useAnimatedValue(
30
+ Theme['gray-glass-005'],
31
+ Theme['gray-glass-010']
32
+ );
33
+
34
+ const backgroundColor = animatedValue;
35
+ const borderColor = Theme['gray-glass-005'];
36
+
37
+ return (
38
+ <AnimatedPressable
39
+ style={[styles.container, { backgroundColor, borderColor }, style]}
40
+ onPressIn={setEndValue}
41
+ onPressOut={setStartValue}
42
+ onPress={onPress}
43
+ hitSlop={10}
44
+ >
45
+ <Avatar imageSrc={profileImage} address={address} size={28} borderWidth={0} />
46
+ <Text variant="large-500" color="fg-100" style={styles.text}>
47
+ {profileName
48
+ ? UiUtil.getTruncateString({
49
+ string: profileName,
50
+ charsStart: 17,
51
+ charsEnd: 0,
52
+ truncate: 'end'
53
+ })
54
+ : UiUtil.getTruncateString({
55
+ string: address ?? '',
56
+ charsStart: 4,
57
+ charsEnd: 4,
58
+ truncate: 'middle'
59
+ })}
60
+ </Text>
61
+ <Icon name="chevronBottom" size="sm" color="fg-200" style={styles.copyButton} />
62
+ </AnimatedPressable>
63
+ );
64
+ }
@@ -0,0 +1,23 @@
1
+ import { StyleSheet } from 'react-native';
2
+ import { BorderRadius, Spacing } from '../../utils/ThemeUtil';
3
+
4
+ export default StyleSheet.create({
5
+ container: {
6
+ height: 44,
7
+ minWidth: 160,
8
+ maxWidth: 260,
9
+ paddingLeft: Spacing.xs,
10
+ flexDirection: 'row',
11
+ alignItems: 'center',
12
+ justifyContent: 'center',
13
+ borderRadius: BorderRadius.full,
14
+ borderWidth: StyleSheet.hairlineWidth
15
+ },
16
+ text: {
17
+ marginLeft: Spacing['2xs']
18
+ },
19
+ copyButton: {
20
+ marginLeft: Spacing.xs,
21
+ marginRight: Spacing.s
22
+ }
23
+ });
@@ -1,7 +1,8 @@
1
1
  import { StyleSheet } from 'react-native';
2
+ import { BorderRadius } from '../../utils/ThemeUtil';
2
3
 
3
4
  export default StyleSheet.create({
4
5
  image: {
5
- borderRadius: 100
6
+ borderRadius: BorderRadius.full
6
7
  }
7
8
  });
@@ -0,0 +1,25 @@
1
+ import { StyleSheet } from 'react-native';
2
+ import { Text } from '../../components/wui-text';
3
+
4
+ export interface BalanceProps {
5
+ integer?: string;
6
+ decimal?: string;
7
+ }
8
+
9
+ export function Balance({ integer = '0', decimal = '00' }: BalanceProps) {
10
+ return (
11
+ <Text color="fg-100" style={styles.text}>
12
+ {`$${integer}`}
13
+ <Text color="fg-200" style={styles.text}>
14
+ {`.${decimal}`}
15
+ </Text>
16
+ </Text>
17
+ );
18
+ }
19
+
20
+ const styles = StyleSheet.create({
21
+ text: {
22
+ fontSize: 40,
23
+ fontWeight: '500'
24
+ }
25
+ });
@@ -0,0 +1,28 @@
1
+ import type { IconType } from '../../utils/TypesUtil';
2
+ import { FlexView } from '../../layout/wui-flex';
3
+ import { IconBox } from '../wui-icon-box';
4
+ import { Text } from '../../components/wui-text';
5
+ import { useTheme } from '../../hooks/useTheme';
6
+ import styles from './styles';
7
+
8
+ export interface BannerProps {
9
+ icon: IconType;
10
+ text: string;
11
+ }
12
+
13
+ export function Banner({ icon, text }: BannerProps) {
14
+ const Theme = useTheme();
15
+
16
+ return (
17
+ <FlexView
18
+ flexDirection="row"
19
+ alignItems="center"
20
+ style={[styles.container, { backgroundColor: Theme['accent-glass-010'] }]}
21
+ >
22
+ <IconBox icon={icon} size="sm" iconColor="fg-200" background style={styles.icon} />
23
+ <Text variant="small-400" color="fg-200" style={styles.text}>
24
+ {text}
25
+ </Text>
26
+ </FlexView>
27
+ );
28
+ }
@@ -0,0 +1,15 @@
1
+ import { StyleSheet } from 'react-native';
2
+ import { BorderRadius, Spacing } from '../../utils/ThemeUtil';
3
+
4
+ export default StyleSheet.create({
5
+ container: {
6
+ padding: Spacing.s,
7
+ borderRadius: BorderRadius.s
8
+ },
9
+ icon: {
10
+ marginRight: Spacing.xs
11
+ },
12
+ text: {
13
+ flex: 1
14
+ }
15
+ });
@@ -95,16 +95,18 @@ export function Button({
95
95
  style={[styles.iconLeft, iconStyle]}
96
96
  />
97
97
  )}
98
- {loading ? (
99
- <LoadingSpinner color={iconColor} />
100
- ) : (
101
- <Text
102
- variant={size === 'md' ? 'paragraph-600' : 'small-600'}
103
- style={[styles.text, themedTextStyle]}
104
- >
105
- {children}
106
- </Text>
107
- )}
98
+ {loading && <LoadingSpinner color={iconColor} />}
99
+ {!loading &&
100
+ (typeof children === 'string' ? (
101
+ <Text
102
+ variant={size === 'md' ? 'paragraph-600' : 'small-600'}
103
+ style={[styles.text, themedTextStyle]}
104
+ >
105
+ {children}
106
+ </Text>
107
+ ) : (
108
+ children
109
+ ))}
108
110
  {iconRight && (
109
111
  <Icon
110
112
  color={iconColor}
@@ -14,7 +14,7 @@ export const getThemedButtonStyle = (
14
14
 
15
15
  if (disabled) {
16
16
  return {
17
- backgroundColor: variant === 'fill' ? theme['gray-glass-002'] : theme['gray-glass-010'],
17
+ backgroundColor: variant === 'fill' ? theme['gray-glass-005'] : theme['gray-glass-010'],
18
18
  borderColor: theme['gray-glass-002']
19
19
  };
20
20
  }
@@ -28,7 +28,7 @@ export const getThemedButtonStyle = (
28
28
 
29
29
  return {
30
30
  ...buttonBaseStyle,
31
- backgroundColor: variant === 'fill' ? theme['accent-100'] : 'transparent'
31
+ backgroundColor: variant === 'fill' ? theme['accent-100'] : theme['gray-glass-002']
32
32
  };
33
33
  };
34
34
 
@@ -62,7 +62,7 @@ export default StyleSheet.create({
62
62
  alignItems: 'center',
63
63
  justifyContent: 'center',
64
64
  borderRadius: BorderRadius.xs,
65
- borderWidth: 1
65
+ borderWidth: StyleSheet.hairlineWidth
66
66
  },
67
67
  smButton: {
68
68
  height: 32,
@@ -25,6 +25,7 @@ export interface CardSelectProps {
25
25
  type?: CardSelectType;
26
26
  onPress?: () => void;
27
27
  style?: StyleProp<ViewStyle>;
28
+ testID?: string;
28
29
  }
29
30
 
30
31
  function _CardSelect({
@@ -36,7 +37,8 @@ function _CardSelect({
36
37
  disabled,
37
38
  installed,
38
39
  selected,
39
- style
40
+ style,
41
+ testID
40
42
  }: CardSelectProps) {
41
43
  const Theme = useTheme();
42
44
  const normalbackgroundColor = getBackgroundColor({ selected, disabled, pressed: false });
@@ -77,6 +79,7 @@ function _CardSelect({
77
79
  onPressOut={setStartValue}
78
80
  disabled={disabled}
79
81
  style={[styles.container, { backgroundColor: animatedValue }, style]}
82
+ testID={testID}
80
83
  >
81
84
  <View>
82
85
  <Image
@@ -1,5 +1,5 @@
1
1
  import { useRef, useState } from 'react';
2
- import { Animated, Linking, Pressable, type StyleProp, type ViewStyle } from 'react-native';
2
+ import { Animated, Pressable, type StyleProp, type ViewStyle } from 'react-native';
3
3
  import type { ChipType, ColorType, IconType, SizeType } from '../../utils/TypesUtil';
4
4
  import { useTheme } from '../../hooks/useTheme';
5
5
  import { Text } from '../../components/wui-text';
@@ -10,20 +10,22 @@ import styles, { getThemedChipStyle, getThemedTextColor } from './styles';
10
10
  const AnimatedPressable = Animated.createAnimatedComponent(Pressable);
11
11
 
12
12
  export interface ChipProps {
13
- link: string;
14
13
  label?: string;
15
14
  imageSrc?: string;
16
- icon?: IconType;
15
+ leftIcon?: IconType;
16
+ rightIcon?: IconType;
17
17
  variant?: ChipType;
18
18
  size?: Exclude<SizeType, 'xl' | 'lg' | 'xs' | 'xxs'>;
19
19
  disabled?: boolean;
20
20
  style?: StyleProp<ViewStyle>;
21
+ onPress?: () => void;
21
22
  }
22
23
 
23
24
  export function Chip({
24
- link,
25
+ onPress,
25
26
  imageSrc,
26
- icon,
27
+ leftIcon,
28
+ rightIcon,
27
29
  variant = 'fill',
28
30
  size = 'md',
29
31
  disabled,
@@ -38,10 +40,8 @@ export function Chip({
38
40
  const themedTextColor = getThemedTextColor(variant, disabled, pressed);
39
41
  const iconSize = size === 'md' ? 'sm' : 'xs';
40
42
 
41
- const onPress = () => {
42
- Linking.canOpenURL(link).then(supported => {
43
- if (supported) Linking.openURL(link);
44
- });
43
+ const handlePress = () => {
44
+ onPress?.();
45
45
  };
46
46
 
47
47
  const onPressIn = () => {
@@ -78,7 +78,7 @@ export function Chip({
78
78
  style={[styles.container, styles[`${size}Chip`], { borderColor, backgroundColor }, style]}
79
79
  onPressIn={onPressIn}
80
80
  onPressOut={onPressOut}
81
- onPress={onPress}
81
+ onPress={handlePress}
82
82
  >
83
83
  {imageSrc && (
84
84
  <Image
@@ -91,15 +91,16 @@ export function Chip({
91
91
  source={imageSrc}
92
92
  />
93
93
  )}
94
+ {leftIcon && <Icon name={leftIcon} color={themedTextColor as ColorType} />}
94
95
  <Text
95
96
  variant={size === 'md' ? 'paragraph-600' : 'small-600'}
96
97
  style={[styles.link, { color: Theme[themedTextColor] }]}
97
98
  >
98
- {label || link}
99
+ {label}
99
100
  </Text>
100
- {icon && (
101
+ {rightIcon && (
101
102
  <Icon
102
- name={icon}
103
+ name={rightIcon}
103
104
  size={iconSize}
104
105
  color={themedTextColor as ColorType}
105
106
  style={styles.icon}
@@ -65,11 +65,11 @@ export default StyleSheet.create({
65
65
  paddingHorizontal: Spacing.xs,
66
66
  alignItems: 'center',
67
67
  borderRadius: BorderRadius.s,
68
- borderWidth: 1
68
+ borderWidth: StyleSheet.hairlineWidth
69
69
  },
70
70
  image: {
71
- borderRadius: 100,
72
- borderWidth: 1
71
+ borderRadius: BorderRadius.full,
72
+ borderWidth: StyleSheet.hairlineWidth
73
73
  },
74
74
  smImage: {
75
75
  width: 16,
@@ -0,0 +1,64 @@
1
+ import { Text } from '../../components/wui-text';
2
+ import { NetworkImage } from '../wui-network-image';
3
+ import { FlexView } from '../../layout/wui-flex';
4
+ import { ListItem } from '../wui-list-item';
5
+ import { StyleSheet, type StyleProp, type ViewStyle } from 'react-native';
6
+ import { useTheme } from '../../hooks/useTheme';
7
+
8
+ export interface CompatibleNetworkProps {
9
+ text: string;
10
+ onPress: () => void;
11
+ networkImages: string[];
12
+ imageHeaders: Record<string, string>;
13
+ style?: StyleProp<ViewStyle>;
14
+ }
15
+
16
+ export function CompatibleNetwork({
17
+ text,
18
+ onPress,
19
+ networkImages,
20
+ imageHeaders,
21
+ style
22
+ }: CompatibleNetworkProps) {
23
+ const Theme = useTheme();
24
+
25
+ return (
26
+ <ListItem
27
+ onPress={onPress}
28
+ style={[styles.container, style]}
29
+ contentStyle={styles.contentContainer}
30
+ chevron
31
+ >
32
+ <Text color="fg-200" variant="small-400">
33
+ {text}
34
+ </Text>
35
+ <FlexView flexDirection="row" justifyContent="center" alignItems="center">
36
+ {networkImages?.map((image, index) => (
37
+ <NetworkImage
38
+ size="xs"
39
+ key={image}
40
+ imageSrc={image}
41
+ imageHeaders={imageHeaders}
42
+ borderColor={Theme['bg-200']}
43
+ borderWidth={2}
44
+ style={[styles.item, { zIndex: networkImages.length - index }]}
45
+ />
46
+ ))}
47
+ </FlexView>
48
+ </ListItem>
49
+ );
50
+ }
51
+
52
+ const styles = StyleSheet.create({
53
+ container: {
54
+ height: 48
55
+ },
56
+ contentContainer: {
57
+ flexDirection: 'row',
58
+ justifyContent: 'space-between',
59
+ paddingRight: 0
60
+ },
61
+ item: {
62
+ marginLeft: -5
63
+ }
64
+ });
@@ -51,7 +51,7 @@ export default StyleSheet.create({
51
51
  alignItems: 'center',
52
52
  justifyContent: 'center',
53
53
  borderRadius: BorderRadius.s,
54
- borderWidth: 1
54
+ borderWidth: StyleSheet.hairlineWidth
55
55
  },
56
56
  smButton: {
57
57
  height: 32
@@ -7,7 +7,7 @@ import styles from './styles';
7
7
 
8
8
  export interface IconBoxProps {
9
9
  icon: IconType;
10
- size?: Exclude<SizeType, 'xl' | 'xs' | 'xxs'>;
10
+ size?: Exclude<SizeType, 'xs' | 'xxs'>;
11
11
  iconColor?: ColorType;
12
12
  iconSize?: Exclude<SizeType, 'xl'>;
13
13
  background?: boolean;
@@ -33,6 +33,9 @@ export function IconBox({
33
33
  const Theme = useTheme();
34
34
  let _iconSize: SizeType;
35
35
  switch (size) {
36
+ case 'xl':
37
+ _iconSize = 'xl';
38
+ break;
36
39
  case 'lg':
37
40
  _iconSize = 'lg';
38
41
  break;
@@ -48,6 +51,9 @@ export function IconBox({
48
51
 
49
52
  let boxSize: number;
50
53
  switch (size) {
54
+ case 'xl':
55
+ boxSize = 56;
56
+ break;
51
57
  case 'lg':
52
58
  boxSize = 40;
53
59
  break;
@@ -58,7 +64,17 @@ export function IconBox({
58
64
  boxSize = 24;
59
65
  }
60
66
 
61
- const borderRadius = size === 'lg' ? 'xxs' : '3xl';
67
+ let borderRadius: keyof typeof BorderRadius;
68
+ switch (size) {
69
+ case 'xl':
70
+ borderRadius = 's';
71
+ break;
72
+ case 'lg':
73
+ borderRadius = 'xxs';
74
+ break;
75
+ default:
76
+ borderRadius = '3xl';
77
+ }
62
78
 
63
79
  const backgroundStyle = {
64
80
  backgroundColor:
@@ -97,7 +97,6 @@ export const InputText = forwardRef<InputRef, InputTextProps>(
97
97
  style={[styles.outerBorder, { borderColor: outerBorder, borderRadius: outerRadius }]}
98
98
  disabled={disabled}
99
99
  onPress={() => inputRef.current?.focus()}
100
- testID={rest.testID}
101
100
  >
102
101
  <Animated.View
103
102
  style={[
@@ -123,6 +122,7 @@ export const InputText = forwardRef<InputRef, InputTextProps>(
123
122
  underlineColorAndroid="transparent"
124
123
  selectTextOnFocus={false}
125
124
  editable={!disabled}
125
+ testID="wui-input-text"
126
126
  {...rest}
127
127
  />
128
128
  {children}
@@ -7,7 +7,7 @@ const baseStyle = {
7
7
  borderRadius: BorderRadius.xxs,
8
8
  alignItems: 'center',
9
9
  paddingHorizontal: Spacing.xs,
10
- borderWidth: 1
10
+ borderWidth: StyleSheet.hairlineWidth
11
11
  } as ViewStyle;
12
12
 
13
13
  export const outerBorderRadius = {
@@ -5,7 +5,7 @@ import { Image } from '../../components/wui-image';
5
5
  import { LoadingSpinner } from '../../components/wui-loading-spinner';
6
6
  import useAnimatedValue from '../../hooks/useAnimatedValue';
7
7
  import { useTheme } from '../../hooks/useTheme';
8
- import type { IconType } from '../../utils/TypesUtil';
8
+ import type { ColorType, IconType } from '../../utils/TypesUtil';
9
9
  import { IconBox } from '../wui-icon-box';
10
10
  import styles from './styles';
11
11
 
@@ -13,8 +13,9 @@ const AnimatedPressable = Animated.createAnimatedComponent(Pressable);
13
13
 
14
14
  export interface ListItemProps {
15
15
  icon?: IconType;
16
- iconVariant?: 'blue' | 'overlay';
17
- variant?: 'image' | 'icon';
16
+ iconColor?: ColorType;
17
+ iconBackgroundColor?: ColorType;
18
+ iconBorderColor?: ColorType;
18
19
  imageSrc?: string;
19
20
  imageHeaders?: Record<string, string>;
20
21
  chevron?: boolean;
@@ -23,21 +24,24 @@ export interface ListItemProps {
23
24
  onPress?: () => void;
24
25
  children?: ReactNode;
25
26
  style?: StyleProp<ViewStyle>;
27
+ contentStyle?: StyleProp<ViewStyle>;
26
28
  testID?: string;
27
29
  }
28
30
 
29
31
  export function ListItem({
30
32
  children,
31
33
  icon,
32
- variant,
33
34
  imageSrc,
34
35
  imageHeaders,
35
- iconVariant = 'blue',
36
+ iconColor = 'fg-200',
37
+ iconBackgroundColor,
38
+ iconBorderColor = 'gray-glass-005',
36
39
  chevron,
37
40
  loading,
38
41
  disabled,
39
42
  onPress,
40
43
  style,
44
+ contentStyle,
41
45
  testID
42
46
  }: ListItemProps) {
43
47
  const Theme = useTheme();
@@ -47,7 +51,7 @@ export function ListItem({
47
51
  );
48
52
 
49
53
  function visualTemplate() {
50
- if (variant === 'image' && imageSrc) {
54
+ if (imageSrc) {
51
55
  return (
52
56
  <View style={[styles.imageContainer, { borderColor: Theme['gray-glass-005'] }]}>
53
57
  <Image
@@ -57,18 +61,15 @@ export function ListItem({
57
61
  />
58
62
  </View>
59
63
  );
60
- } else if (variant === 'icon' && icon) {
61
- const iconColor = iconVariant === 'blue' ? 'accent-100' : 'fg-200';
62
- const borderColor = iconVariant === 'blue' ? 'accent-glass-005' : 'gray-glass-005';
63
-
64
+ } else if (icon) {
64
65
  return (
65
- <View style={[styles.imageContainer, { borderColor: Theme[borderColor] }]}>
66
+ <View style={[styles.imageContainer, { borderColor: Theme[iconBorderColor] }]}>
66
67
  <IconBox
67
68
  icon={icon}
68
69
  iconColor={iconColor}
69
70
  size="md"
70
71
  background
71
- backgroundColor="gray-glass-010"
72
+ backgroundColor={iconBackgroundColor}
72
73
  />
73
74
  </View>
74
75
  );
@@ -81,7 +82,7 @@ export function ListItem({
81
82
  if (loading) {
82
83
  return <LoadingSpinner color="fg-200" size="lg" style={styles.rightIcon} />;
83
84
  } else if (chevron) {
84
- return <Icon name="chevronRight" size="md" color="fg-150" style={styles.rightIcon} />;
85
+ return <Icon name="chevronRight" size="md" color="fg-200" style={styles.rightIcon} />;
85
86
  }
86
87
 
87
88
  return null;
@@ -101,7 +102,7 @@ export function ListItem({
101
102
  testID={testID}
102
103
  >
103
104
  {visualTemplate()}
104
- <View style={styles.content}>{children}</View>
105
+ <View style={[styles.content, contentStyle]}>{children}</View>
105
106
  {rightTemplate()}
106
107
  </AnimatedPressable>
107
108
  );