@magiclabs/ui-components 1.52.0 → 2.0.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 (1475) hide show
  1. package/dist/cjs/components/containers/button.js +1 -1
  2. package/dist/cjs/components/containers/button.js.map +1 -1
  3. package/dist/cjs/components/containers/card.js +1 -1
  4. package/dist/cjs/components/containers/card.js.map +1 -1
  5. package/dist/cjs/components/containers/content.js +1 -1
  6. package/dist/cjs/components/containers/content.js.map +1 -1
  7. package/dist/cjs/components/containers/drawer.js +1 -1
  8. package/dist/cjs/components/containers/drawer.js.map +1 -1
  9. package/dist/cjs/components/containers/footer.js +1 -1
  10. package/dist/cjs/components/containers/footer.js.map +1 -1
  11. package/dist/cjs/components/containers/header.js +1 -1
  12. package/dist/cjs/components/containers/header.js.map +1 -1
  13. package/dist/cjs/components/containers/menu.js +1 -1
  14. package/dist/cjs/components/containers/menu.js.map +1 -1
  15. package/dist/cjs/components/containers/modal.js +1 -1
  16. package/dist/cjs/components/containers/modal.js.map +1 -1
  17. package/dist/cjs/components/containers/overlay.js +1 -1
  18. package/dist/cjs/components/containers/overlay.js.map +1 -1
  19. package/dist/cjs/components/external/paypal-button.js +1 -1
  20. package/dist/cjs/components/external/paypal-button.js.map +1 -1
  21. package/dist/cjs/components/feedback/animated-checkmark.js +1 -1
  22. package/dist/cjs/components/feedback/animated-checkmark.js.map +1 -1
  23. package/dist/cjs/components/feedback/animated-dismiss.js +1 -1
  24. package/dist/cjs/components/feedback/animated-dismiss.js.map +1 -1
  25. package/dist/cjs/components/feedback/animated-spinner.js +1 -1
  26. package/dist/cjs/components/feedback/animated-spinner.js.map +1 -1
  27. package/dist/cjs/components/feedback/callout.js +1 -1
  28. package/dist/cjs/components/feedback/callout.js.map +1 -1
  29. package/dist/cjs/components/feedback/loading-spinner.js +1 -1
  30. package/dist/cjs/components/feedback/loading-spinner.js.map +1 -1
  31. package/dist/cjs/components/feedback/progress-bar.js +1 -1
  32. package/dist/cjs/components/feedback/progress-bar.js.map +1 -1
  33. package/dist/cjs/components/feedback/skeleton.js +1 -1
  34. package/dist/cjs/components/feedback/skeleton.js.map +1 -1
  35. package/dist/cjs/components/feedback/status-icon.js +1 -1
  36. package/dist/cjs/components/feedback/status-icon.js.map +1 -1
  37. package/dist/cjs/components/feedback/toast-provider.js +1 -1
  38. package/dist/cjs/components/feedback/toast-provider.js.map +1 -1
  39. package/dist/cjs/components/feedback/tooltip.js +1 -1
  40. package/dist/cjs/components/feedback/tooltip.js.map +1 -1
  41. package/dist/cjs/components/icons/ico-add.js +1 -1
  42. package/dist/cjs/components/icons/ico-add.js.map +1 -1
  43. package/dist/cjs/components/icons/ico-airdrop.js +1 -1
  44. package/dist/cjs/components/icons/ico-airdrop.js.map +1 -1
  45. package/dist/cjs/components/icons/ico-alert-circle-fill.js +1 -1
  46. package/dist/cjs/components/icons/ico-alert-circle-fill.js.map +1 -1
  47. package/dist/cjs/components/icons/ico-alert-circle.js +1 -1
  48. package/dist/cjs/components/icons/ico-alert-circle.js.map +1 -1
  49. package/dist/cjs/components/icons/ico-arrow-down.js +1 -1
  50. package/dist/cjs/components/icons/ico-arrow-down.js.map +1 -1
  51. package/dist/cjs/components/icons/ico-arrow-left.js +1 -1
  52. package/dist/cjs/components/icons/ico-arrow-left.js.map +1 -1
  53. package/dist/cjs/components/icons/ico-arrow-right.js +1 -1
  54. package/dist/cjs/components/icons/ico-arrow-right.js.map +1 -1
  55. package/dist/cjs/components/icons/ico-arrow-up.js +1 -1
  56. package/dist/cjs/components/icons/ico-arrow-up.js.map +1 -1
  57. package/dist/cjs/components/icons/ico-asterisk-with-shield.js +1 -1
  58. package/dist/cjs/components/icons/ico-asterisk-with-shield.js.map +1 -1
  59. package/dist/cjs/components/icons/ico-asterisk.js +1 -1
  60. package/dist/cjs/components/icons/ico-asterisk.js.map +1 -1
  61. package/dist/cjs/components/icons/ico-astronaut.js +1 -1
  62. package/dist/cjs/components/icons/ico-astronaut.js.map +1 -1
  63. package/dist/cjs/components/icons/ico-atom.js +1 -1
  64. package/dist/cjs/components/icons/ico-atom.js.map +1 -1
  65. package/dist/cjs/components/icons/ico-badge.js +1 -1
  66. package/dist/cjs/components/icons/ico-badge.js.map +1 -1
  67. package/dist/cjs/components/icons/ico-bank.js +1 -1
  68. package/dist/cjs/components/icons/ico-bank.js.map +1 -1
  69. package/dist/cjs/components/icons/ico-bell-notification.js +1 -1
  70. package/dist/cjs/components/icons/ico-bell-notification.js.map +1 -1
  71. package/dist/cjs/components/icons/ico-bell.js +1 -1
  72. package/dist/cjs/components/icons/ico-bell.js.map +1 -1
  73. package/dist/cjs/components/icons/ico-block.js +1 -1
  74. package/dist/cjs/components/icons/ico-block.js.map +1 -1
  75. package/dist/cjs/components/icons/ico-branding.js +1 -1
  76. package/dist/cjs/components/icons/ico-branding.js.map +1 -1
  77. package/dist/cjs/components/icons/ico-caret-down.js +1 -1
  78. package/dist/cjs/components/icons/ico-caret-down.js.map +1 -1
  79. package/dist/cjs/components/icons/ico-caret-left.js +1 -1
  80. package/dist/cjs/components/icons/ico-caret-left.js.map +1 -1
  81. package/dist/cjs/components/icons/ico-caret-right.js +1 -1
  82. package/dist/cjs/components/icons/ico-caret-right.js.map +1 -1
  83. package/dist/cjs/components/icons/ico-caret-up.js +1 -1
  84. package/dist/cjs/components/icons/ico-caret-up.js.map +1 -1
  85. package/dist/cjs/components/icons/ico-checkmark-circle-fill.js +1 -1
  86. package/dist/cjs/components/icons/ico-checkmark-circle-fill.js.map +1 -1
  87. package/dist/cjs/components/icons/ico-checkmark-circle.js +1 -1
  88. package/dist/cjs/components/icons/ico-checkmark-circle.js.map +1 -1
  89. package/dist/cjs/components/icons/ico-checkmark.js +1 -1
  90. package/dist/cjs/components/icons/ico-checkmark.js.map +1 -1
  91. package/dist/cjs/components/icons/ico-clock-fill.js +1 -1
  92. package/dist/cjs/components/icons/ico-clock-fill.js.map +1 -1
  93. package/dist/cjs/components/icons/ico-code-editor.js +1 -1
  94. package/dist/cjs/components/icons/ico-code-editor.js.map +1 -1
  95. package/dist/cjs/components/icons/ico-code-sandbox.js +1 -1
  96. package/dist/cjs/components/icons/ico-code-sandbox.js.map +1 -1
  97. package/dist/cjs/components/icons/ico-code.js +1 -1
  98. package/dist/cjs/components/icons/ico-code.js.map +1 -1
  99. package/dist/cjs/components/icons/ico-coins.js +1 -1
  100. package/dist/cjs/components/icons/ico-coins.js.map +1 -1
  101. package/dist/cjs/components/icons/ico-command-line.js +1 -1
  102. package/dist/cjs/components/icons/ico-command-line.js.map +1 -1
  103. package/dist/cjs/components/icons/ico-comment.js +1 -1
  104. package/dist/cjs/components/icons/ico-comment.js.map +1 -1
  105. package/dist/cjs/components/icons/ico-copy.js +1 -1
  106. package/dist/cjs/components/icons/ico-copy.js.map +1 -1
  107. package/dist/cjs/components/icons/ico-credit-card.js +1 -1
  108. package/dist/cjs/components/icons/ico-credit-card.js.map +1 -1
  109. package/dist/cjs/components/icons/ico-dedicated.js +1 -1
  110. package/dist/cjs/components/icons/ico-dedicated.js.map +1 -1
  111. package/dist/cjs/components/icons/ico-diamond.js +1 -1
  112. package/dist/cjs/components/icons/ico-diamond.js.map +1 -1
  113. package/dist/cjs/components/icons/ico-dismiss-circle-fill.js +1 -1
  114. package/dist/cjs/components/icons/ico-dismiss-circle-fill.js.map +1 -1
  115. package/dist/cjs/components/icons/ico-dismiss-circle.js +1 -1
  116. package/dist/cjs/components/icons/ico-dismiss-circle.js.map +1 -1
  117. package/dist/cjs/components/icons/ico-dismiss.js +1 -1
  118. package/dist/cjs/components/icons/ico-dismiss.js.map +1 -1
  119. package/dist/cjs/components/icons/ico-doc.js +1 -1
  120. package/dist/cjs/components/icons/ico-doc.js.map +1 -1
  121. package/dist/cjs/components/icons/ico-download.js +1 -1
  122. package/dist/cjs/components/icons/ico-download.js.map +1 -1
  123. package/dist/cjs/components/icons/ico-edit-email.js +1 -1
  124. package/dist/cjs/components/icons/ico-edit-email.js.map +1 -1
  125. package/dist/cjs/components/icons/ico-edit.js +1 -1
  126. package/dist/cjs/components/icons/ico-edit.js.map +1 -1
  127. package/dist/cjs/components/icons/ico-email-fill.js +1 -1
  128. package/dist/cjs/components/icons/ico-email-fill.js.map +1 -1
  129. package/dist/cjs/components/icons/ico-email-open.js +1 -1
  130. package/dist/cjs/components/icons/ico-email-open.js.map +1 -1
  131. package/dist/cjs/components/icons/ico-email.js +1 -1
  132. package/dist/cjs/components/icons/ico-email.js.map +1 -1
  133. package/dist/cjs/components/icons/ico-exit.js +1 -1
  134. package/dist/cjs/components/icons/ico-exit.js.map +1 -1
  135. package/dist/cjs/components/icons/ico-expand.js +1 -1
  136. package/dist/cjs/components/icons/ico-expand.js.map +1 -1
  137. package/dist/cjs/components/icons/ico-expiration.js +1 -1
  138. package/dist/cjs/components/icons/ico-expiration.js.map +1 -1
  139. package/dist/cjs/components/icons/ico-external-link.js +1 -1
  140. package/dist/cjs/components/icons/ico-external-link.js.map +1 -1
  141. package/dist/cjs/components/icons/ico-eye-closed.js +1 -1
  142. package/dist/cjs/components/icons/ico-eye-closed.js.map +1 -1
  143. package/dist/cjs/components/icons/ico-eye-opened.js +1 -1
  144. package/dist/cjs/components/icons/ico-eye-opened.js.map +1 -1
  145. package/dist/cjs/components/icons/ico-fingerprint-fill.js +1 -1
  146. package/dist/cjs/components/icons/ico-fingerprint-fill.js.map +1 -1
  147. package/dist/cjs/components/icons/ico-fingerprint.js +1 -1
  148. package/dist/cjs/components/icons/ico-fingerprint.js.map +1 -1
  149. package/dist/cjs/components/icons/ico-gas.js +1 -1
  150. package/dist/cjs/components/icons/ico-gas.js.map +1 -1
  151. package/dist/cjs/components/icons/ico-gift.js +1 -1
  152. package/dist/cjs/components/icons/ico-gift.js.map +1 -1
  153. package/dist/cjs/components/icons/ico-globe.js +1 -1
  154. package/dist/cjs/components/icons/ico-globe.js.map +1 -1
  155. package/dist/cjs/components/icons/ico-grid-fill.js +1 -1
  156. package/dist/cjs/components/icons/ico-grid-fill.js.map +1 -1
  157. package/dist/cjs/components/icons/ico-grid.js +1 -1
  158. package/dist/cjs/components/icons/ico-grid.js.map +1 -1
  159. package/dist/cjs/components/icons/ico-guide.js +1 -1
  160. package/dist/cjs/components/icons/ico-guide.js.map +1 -1
  161. package/dist/cjs/components/icons/ico-home-fill.js +1 -1
  162. package/dist/cjs/components/icons/ico-home-fill.js.map +1 -1
  163. package/dist/cjs/components/icons/ico-home.js +1 -1
  164. package/dist/cjs/components/icons/ico-home.js.map +1 -1
  165. package/dist/cjs/components/icons/ico-hourglass.js +1 -1
  166. package/dist/cjs/components/icons/ico-hourglass.js.map +1 -1
  167. package/dist/cjs/components/icons/ico-info-circle-fill.js +1 -1
  168. package/dist/cjs/components/icons/ico-info-circle-fill.js.map +1 -1
  169. package/dist/cjs/components/icons/ico-info-circle.js +1 -1
  170. package/dist/cjs/components/icons/ico-info-circle.js.map +1 -1
  171. package/dist/cjs/components/icons/ico-kebab.js +1 -1
  172. package/dist/cjs/components/icons/ico-kebab.js.map +1 -1
  173. package/dist/cjs/components/icons/ico-key.js +1 -1
  174. package/dist/cjs/components/icons/ico-key.js.map +1 -1
  175. package/dist/cjs/components/icons/ico-lightbulb-fill.js +1 -1
  176. package/dist/cjs/components/icons/ico-lightbulb-fill.js.map +1 -1
  177. package/dist/cjs/components/icons/ico-lightbulb.js +1 -1
  178. package/dist/cjs/components/icons/ico-lightbulb.js.map +1 -1
  179. package/dist/cjs/components/icons/ico-lightning-fill.js +1 -1
  180. package/dist/cjs/components/icons/ico-lightning-fill.js.map +1 -1
  181. package/dist/cjs/components/icons/ico-lightning.js +1 -1
  182. package/dist/cjs/components/icons/ico-lightning.js.map +1 -1
  183. package/dist/cjs/components/icons/ico-link.js +1 -1
  184. package/dist/cjs/components/icons/ico-link.js.map +1 -1
  185. package/dist/cjs/components/icons/ico-loading.js +1 -1
  186. package/dist/cjs/components/icons/ico-loading.js.map +1 -1
  187. package/dist/cjs/components/icons/ico-lock-locked-fill.js +1 -1
  188. package/dist/cjs/components/icons/ico-lock-locked-fill.js.map +1 -1
  189. package/dist/cjs/components/icons/ico-lock-locked.js +1 -1
  190. package/dist/cjs/components/icons/ico-lock-locked.js.map +1 -1
  191. package/dist/cjs/components/icons/ico-lock-password.js +1 -1
  192. package/dist/cjs/components/icons/ico-lock-password.js.map +1 -1
  193. package/dist/cjs/components/icons/ico-lock-unlocked-fill.js +1 -1
  194. package/dist/cjs/components/icons/ico-lock-unlocked-fill.js.map +1 -1
  195. package/dist/cjs/components/icons/ico-lock-unlocked.js +1 -1
  196. package/dist/cjs/components/icons/ico-lock-unlocked.js.map +1 -1
  197. package/dist/cjs/components/icons/ico-login-form.js +1 -1
  198. package/dist/cjs/components/icons/ico-login-form.js.map +1 -1
  199. package/dist/cjs/components/icons/ico-magic.js +1 -1
  200. package/dist/cjs/components/icons/ico-magic.js.map +1 -1
  201. package/dist/cjs/components/icons/ico-megaphone.js +1 -1
  202. package/dist/cjs/components/icons/ico-megaphone.js.map +1 -1
  203. package/dist/cjs/components/icons/ico-menu.js +1 -1
  204. package/dist/cjs/components/icons/ico-menu.js.map +1 -1
  205. package/dist/cjs/components/icons/ico-message-fill.js +1 -1
  206. package/dist/cjs/components/icons/ico-message-fill.js.map +1 -1
  207. package/dist/cjs/components/icons/ico-message.js +1 -1
  208. package/dist/cjs/components/icons/ico-message.js.map +1 -1
  209. package/dist/cjs/components/icons/ico-mfa.js +1 -1
  210. package/dist/cjs/components/icons/ico-mfa.js.map +1 -1
  211. package/dist/cjs/components/icons/ico-minimize.js +1 -1
  212. package/dist/cjs/components/icons/ico-minimize.js.map +1 -1
  213. package/dist/cjs/components/icons/ico-minus.js +1 -1
  214. package/dist/cjs/components/icons/ico-minus.js.map +1 -1
  215. package/dist/cjs/components/icons/ico-mobile2fa.js +1 -1
  216. package/dist/cjs/components/icons/ico-mobile2fa.js.map +1 -1
  217. package/dist/cjs/components/icons/ico-mobile2fafill.js +1 -1
  218. package/dist/cjs/components/icons/ico-mobile2fafill.js.map +1 -1
  219. package/dist/cjs/components/icons/ico-newton.js +1 -1
  220. package/dist/cjs/components/icons/ico-newton.js.map +1 -1
  221. package/dist/cjs/components/icons/ico-open-book.js +1 -1
  222. package/dist/cjs/components/icons/ico-open-book.js.map +1 -1
  223. package/dist/cjs/components/icons/ico-paper-plane.js +1 -1
  224. package/dist/cjs/components/icons/ico-paper-plane.js.map +1 -1
  225. package/dist/cjs/components/icons/ico-passport.js +1 -1
  226. package/dist/cjs/components/icons/ico-passport.js.map +1 -1
  227. package/dist/cjs/components/icons/ico-passwordless.js +1 -1
  228. package/dist/cjs/components/icons/ico-passwordless.js.map +1 -1
  229. package/dist/cjs/components/icons/ico-pending-connection.js +1 -1
  230. package/dist/cjs/components/icons/ico-pending-connection.js.map +1 -1
  231. package/dist/cjs/components/icons/ico-phone.js +1 -1
  232. package/dist/cjs/components/icons/ico-phone.js.map +1 -1
  233. package/dist/cjs/components/icons/ico-plus.js +1 -1
  234. package/dist/cjs/components/icons/ico-plus.js.map +1 -1
  235. package/dist/cjs/components/icons/ico-polygon-gas-testnet.js +1 -1
  236. package/dist/cjs/components/icons/ico-polygon-gas-testnet.js.map +1 -1
  237. package/dist/cjs/components/icons/ico-polygon-gas.js +1 -1
  238. package/dist/cjs/components/icons/ico-polygon-gas.js.map +1 -1
  239. package/dist/cjs/components/icons/ico-price.js +1 -1
  240. package/dist/cjs/components/icons/ico-price.js.map +1 -1
  241. package/dist/cjs/components/icons/ico-qrcode.js +1 -1
  242. package/dist/cjs/components/icons/ico-qrcode.js.map +1 -1
  243. package/dist/cjs/components/icons/ico-question-circle-fill.js +1 -1
  244. package/dist/cjs/components/icons/ico-question-circle-fill.js.map +1 -1
  245. package/dist/cjs/components/icons/ico-question-circle.js +1 -1
  246. package/dist/cjs/components/icons/ico-question-circle.js.map +1 -1
  247. package/dist/cjs/components/icons/ico-refresh-circle-fill.js +1 -1
  248. package/dist/cjs/components/icons/ico-refresh-circle-fill.js.map +1 -1
  249. package/dist/cjs/components/icons/ico-refresh.js +1 -1
  250. package/dist/cjs/components/icons/ico-refresh.js.map +1 -1
  251. package/dist/cjs/components/icons/ico-remove.js +1 -1
  252. package/dist/cjs/components/icons/ico-remove.js.map +1 -1
  253. package/dist/cjs/components/icons/ico-rocket-fill.js +1 -1
  254. package/dist/cjs/components/icons/ico-rocket-fill.js.map +1 -1
  255. package/dist/cjs/components/icons/ico-search.js +1 -1
  256. package/dist/cjs/components/icons/ico-search.js.map +1 -1
  257. package/dist/cjs/components/icons/ico-settings-fill.js +1 -1
  258. package/dist/cjs/components/icons/ico-settings-fill.js.map +1 -1
  259. package/dist/cjs/components/icons/ico-settings.js +1 -1
  260. package/dist/cjs/components/icons/ico-settings.js.map +1 -1
  261. package/dist/cjs/components/icons/ico-shapes.js +1 -1
  262. package/dist/cjs/components/icons/ico-shapes.js.map +1 -1
  263. package/dist/cjs/components/icons/ico-share.js +1 -1
  264. package/dist/cjs/components/icons/ico-share.js.map +1 -1
  265. package/dist/cjs/components/icons/ico-shield-approved.js +1 -1
  266. package/dist/cjs/components/icons/ico-shield-approved.js.map +1 -1
  267. package/dist/cjs/components/icons/ico-shield-rejected.js +1 -1
  268. package/dist/cjs/components/icons/ico-shield-rejected.js.map +1 -1
  269. package/dist/cjs/components/icons/ico-shield.js +1 -1
  270. package/dist/cjs/components/icons/ico-shield.js.map +1 -1
  271. package/dist/cjs/components/icons/ico-shuffle.js +1 -1
  272. package/dist/cjs/components/icons/ico-shuffle.js.map +1 -1
  273. package/dist/cjs/components/icons/ico-sidebar.js +1 -1
  274. package/dist/cjs/components/icons/ico-sidebar.js.map +1 -1
  275. package/dist/cjs/components/icons/ico-social.js +1 -1
  276. package/dist/cjs/components/icons/ico-social.js.map +1 -1
  277. package/dist/cjs/components/icons/ico-sold-out-tag.js +1 -1
  278. package/dist/cjs/components/icons/ico-sold-out-tag.js.map +1 -1
  279. package/dist/cjs/components/icons/ico-sparkles.js +1 -1
  280. package/dist/cjs/components/icons/ico-sparkles.js.map +1 -1
  281. package/dist/cjs/components/icons/ico-star.js +1 -1
  282. package/dist/cjs/components/icons/ico-star.js.map +1 -1
  283. package/dist/cjs/components/icons/ico-swap.js +1 -1
  284. package/dist/cjs/components/icons/ico-swap.js.map +1 -1
  285. package/dist/cjs/components/icons/ico-swatches.js +1 -1
  286. package/dist/cjs/components/icons/ico-swatches.js.map +1 -1
  287. package/dist/cjs/components/icons/ico-switch.js +1 -1
  288. package/dist/cjs/components/icons/ico-switch.js.map +1 -1
  289. package/dist/cjs/components/icons/ico-team.js +1 -1
  290. package/dist/cjs/components/icons/ico-team.js.map +1 -1
  291. package/dist/cjs/components/icons/ico-thumb-down.js +1 -1
  292. package/dist/cjs/components/icons/ico-thumb-down.js.map +1 -1
  293. package/dist/cjs/components/icons/ico-thumb-up.js +1 -1
  294. package/dist/cjs/components/icons/ico-thumb-up.js.map +1 -1
  295. package/dist/cjs/components/icons/ico-tradeup.js +1 -1
  296. package/dist/cjs/components/icons/ico-tradeup.js.map +1 -1
  297. package/dist/cjs/components/icons/ico-trash.js +1 -1
  298. package/dist/cjs/components/icons/ico-trash.js.map +1 -1
  299. package/dist/cjs/components/icons/ico-unlink.js +1 -1
  300. package/dist/cjs/components/icons/ico-unlink.js.map +1 -1
  301. package/dist/cjs/components/icons/ico-upload.js +1 -1
  302. package/dist/cjs/components/icons/ico-upload.js.map +1 -1
  303. package/dist/cjs/components/icons/ico-users.js +1 -1
  304. package/dist/cjs/components/icons/ico-users.js.map +1 -1
  305. package/dist/cjs/components/icons/ico-wallet-fill.js +1 -1
  306. package/dist/cjs/components/icons/ico-wallet-fill.js.map +1 -1
  307. package/dist/cjs/components/icons/ico-wallet.js +1 -1
  308. package/dist/cjs/components/icons/ico-wallet.js.map +1 -1
  309. package/dist/cjs/components/icons/ico-wand.js +1 -1
  310. package/dist/cjs/components/icons/ico-wand.js.map +1 -1
  311. package/dist/cjs/components/icons/ico-warning-fill.js +1 -1
  312. package/dist/cjs/components/icons/ico-warning-fill.js.map +1 -1
  313. package/dist/cjs/components/icons/ico-warning.js +1 -1
  314. package/dist/cjs/components/icons/ico-warning.js.map +1 -1
  315. package/dist/cjs/components/info/copy-button.js +1 -1
  316. package/dist/cjs/components/info/copy-button.js.map +1 -1
  317. package/dist/cjs/components/info/email-wbr.js +1 -1
  318. package/dist/cjs/components/info/email-wbr.js.map +1 -1
  319. package/dist/cjs/components/info/security-otp.js +1 -1
  320. package/dist/cjs/components/info/security-otp.js.map +1 -1
  321. package/dist/cjs/components/info/text-box.js +1 -1
  322. package/dist/cjs/components/info/text-box.js.map +1 -1
  323. package/dist/cjs/components/info/wallet-address.js +1 -1
  324. package/dist/cjs/components/info/wallet-address.js.map +1 -1
  325. package/dist/cjs/components/inputs/phone-input.js +1 -1
  326. package/dist/cjs/components/inputs/phone-input.js.map +1 -1
  327. package/dist/cjs/components/inputs/pincode-input.js +1 -1
  328. package/dist/cjs/components/inputs/pincode-input.js.map +1 -1
  329. package/dist/cjs/components/inputs/text-input.js +1 -1
  330. package/dist/cjs/components/inputs/text-input.js.map +1 -1
  331. package/dist/cjs/components/layouts/error.js +1 -1
  332. package/dist/cjs/components/layouts/error.js.map +1 -1
  333. package/dist/cjs/components/layouts/page.js +1 -1
  334. package/dist/cjs/components/layouts/page.js.map +1 -1
  335. package/dist/cjs/components/list-items/activity-list-item.js +1 -1
  336. package/dist/cjs/components/list-items/activity-list-item.js.map +1 -1
  337. package/dist/cjs/components/list-items/navigation-button.js +1 -1
  338. package/dist/cjs/components/list-items/navigation-button.js.map +1 -1
  339. package/dist/cjs/components/list-items/nft-tile.js +1 -1
  340. package/dist/cjs/components/list-items/nft-tile.js.map +1 -1
  341. package/dist/cjs/components/list-items/token-list-item.js +1 -1
  342. package/dist/cjs/components/list-items/token-list-item.js.map +1 -1
  343. package/dist/cjs/components/list-items/transaction-row.js +1 -1
  344. package/dist/cjs/components/list-items/transaction-row.js.map +1 -1
  345. package/dist/cjs/components/logos/logo-algorand-mono.js +1 -1
  346. package/dist/cjs/components/logos/logo-algorand-mono.js.map +1 -1
  347. package/dist/cjs/components/logos/logo-apple-mono.js +1 -1
  348. package/dist/cjs/components/logos/logo-apple-mono.js.map +1 -1
  349. package/dist/cjs/components/logos/logo-aptos-mono.js +1 -1
  350. package/dist/cjs/components/logos/logo-aptos-mono.js.map +1 -1
  351. package/dist/cjs/components/logos/logo-arbitrum-mono.js +1 -1
  352. package/dist/cjs/components/logos/logo-arbitrum-mono.js.map +1 -1
  353. package/dist/cjs/components/logos/logo-arbitrum-one-mono.js +1 -1
  354. package/dist/cjs/components/logos/logo-arbitrum-one-mono.js.map +1 -1
  355. package/dist/cjs/components/logos/logo-astar-mono.js +1 -1
  356. package/dist/cjs/components/logos/logo-astar-mono.js.map +1 -1
  357. package/dist/cjs/components/logos/logo-auth0-mono.js +1 -1
  358. package/dist/cjs/components/logos/logo-auth0-mono.js.map +1 -1
  359. package/dist/cjs/components/logos/logo-avalanche-mono.js +1 -1
  360. package/dist/cjs/components/logos/logo-avalanche-mono.js.map +1 -1
  361. package/dist/cjs/components/logos/logo-azure-mono.js +1 -1
  362. package/dist/cjs/components/logos/logo-azure-mono.js.map +1 -1
  363. package/dist/cjs/components/logos/logo-base-mono.js +1 -1
  364. package/dist/cjs/components/logos/logo-base-mono.js.map +1 -1
  365. package/dist/cjs/components/logos/logo-berachain-mono.js +1 -1
  366. package/dist/cjs/components/logos/logo-berachain-mono.js.map +1 -1
  367. package/dist/cjs/components/logos/logo-binance-mono.js +1 -1
  368. package/dist/cjs/components/logos/logo-binance-mono.js.map +1 -1
  369. package/dist/cjs/components/logos/logo-bit-bucket-mono.js +1 -1
  370. package/dist/cjs/components/logos/logo-bit-bucket-mono.js.map +1 -1
  371. package/dist/cjs/components/logos/logo-bitcoin-mono.js +1 -1
  372. package/dist/cjs/components/logos/logo-bitcoin-mono.js.map +1 -1
  373. package/dist/cjs/components/logos/logo-bnb-mono.js +1 -1
  374. package/dist/cjs/components/logos/logo-bnb-mono.js.map +1 -1
  375. package/dist/cjs/components/logos/logo-celo-mono.js +1 -1
  376. package/dist/cjs/components/logos/logo-celo-mono.js.map +1 -1
  377. package/dist/cjs/components/logos/logo-chiliz-mono.js +1 -1
  378. package/dist/cjs/components/logos/logo-chiliz-mono.js.map +1 -1
  379. package/dist/cjs/components/logos/logo-cognito-mono.js +1 -1
  380. package/dist/cjs/components/logos/logo-cognito-mono.js.map +1 -1
  381. package/dist/cjs/components/logos/logo-community-gaming-mono.js +1 -1
  382. package/dist/cjs/components/logos/logo-community-gaming-mono.js.map +1 -1
  383. package/dist/cjs/components/logos/logo-cosmos-mono.js +1 -1
  384. package/dist/cjs/components/logos/logo-cosmos-mono.js.map +1 -1
  385. package/dist/cjs/components/logos/logo-discord-mono.js +1 -1
  386. package/dist/cjs/components/logos/logo-discord-mono.js.map +1 -1
  387. package/dist/cjs/components/logos/logo-ethereum-circle-mono.js +1 -1
  388. package/dist/cjs/components/logos/logo-ethereum-circle-mono.js.map +1 -1
  389. package/dist/cjs/components/logos/logo-ethereum-mono.js +1 -1
  390. package/dist/cjs/components/logos/logo-ethereum-mono.js.map +1 -1
  391. package/dist/cjs/components/logos/logo-etherlink-mono.js +1 -1
  392. package/dist/cjs/components/logos/logo-etherlink-mono.js.map +1 -1
  393. package/dist/cjs/components/logos/logo-facebook-mono.js +1 -1
  394. package/dist/cjs/components/logos/logo-facebook-mono.js.map +1 -1
  395. package/dist/cjs/components/logos/logo-flare-mono.js +1 -1
  396. package/dist/cjs/components/logos/logo-flare-mono.js.map +1 -1
  397. package/dist/cjs/components/logos/logo-flow-mono.js +1 -1
  398. package/dist/cjs/components/logos/logo-flow-mono.js.map +1 -1
  399. package/dist/cjs/components/logos/logo-generic-token-mono.js +1 -1
  400. package/dist/cjs/components/logos/logo-generic-token-mono.js.map +1 -1
  401. package/dist/cjs/components/logos/logo-git-hub-mono.js +1 -1
  402. package/dist/cjs/components/logos/logo-git-hub-mono.js.map +1 -1
  403. package/dist/cjs/components/logos/logo-git-lab-mono.js +1 -1
  404. package/dist/cjs/components/logos/logo-git-lab-mono.js.map +1 -1
  405. package/dist/cjs/components/logos/logo-google-mono.js +1 -1
  406. package/dist/cjs/components/logos/logo-google-mono.js.map +1 -1
  407. package/dist/cjs/components/logos/logo-guild-mono.js +1 -1
  408. package/dist/cjs/components/logos/logo-guild-mono.js.map +1 -1
  409. package/dist/cjs/components/logos/logo-harmony-mono.js +1 -1
  410. package/dist/cjs/components/logos/logo-harmony-mono.js.map +1 -1
  411. package/dist/cjs/components/logos/logo-horizen-mono.js +1 -1
  412. package/dist/cjs/components/logos/logo-horizen-mono.js.map +1 -1
  413. package/dist/cjs/components/logos/logo-icon-mono.js +1 -1
  414. package/dist/cjs/components/logos/logo-icon-mono.js.map +1 -1
  415. package/dist/cjs/components/logos/logo-immutable-x-mono.js +1 -1
  416. package/dist/cjs/components/logos/logo-immutable-x-mono.js.map +1 -1
  417. package/dist/cjs/components/logos/logo-instagram-mono.js +1 -1
  418. package/dist/cjs/components/logos/logo-instagram-mono.js.map +1 -1
  419. package/dist/cjs/components/logos/logo-kadena-mono.js +1 -1
  420. package/dist/cjs/components/logos/logo-kadena-mono.js.map +1 -1
  421. package/dist/cjs/components/logos/logo-kaito-mono.js +1 -1
  422. package/dist/cjs/components/logos/logo-kaito-mono.js.map +1 -1
  423. package/dist/cjs/components/logos/logo-link-by-stripe-mono.js +1 -1
  424. package/dist/cjs/components/logos/logo-link-by-stripe-mono.js.map +1 -1
  425. package/dist/cjs/components/logos/logo-link-mono.js +1 -1
  426. package/dist/cjs/components/logos/logo-link-mono.js.map +1 -1
  427. package/dist/cjs/components/logos/logo-linked-in-mono.js +1 -1
  428. package/dist/cjs/components/logos/logo-linked-in-mono.js.map +1 -1
  429. package/dist/cjs/components/logos/logo-loopring-mono.js +1 -1
  430. package/dist/cjs/components/logos/logo-loopring-mono.js.map +1 -1
  431. package/dist/cjs/components/logos/logo-microsoft-mono.js +1 -1
  432. package/dist/cjs/components/logos/logo-microsoft-mono.js.map +1 -1
  433. package/dist/cjs/components/logos/logo-mode-mobile-mono.js +1 -1
  434. package/dist/cjs/components/logos/logo-mode-mobile-mono.js.map +1 -1
  435. package/dist/cjs/components/logos/logo-moonbeam-mono.js +1 -1
  436. package/dist/cjs/components/logos/logo-moonbeam-mono.js.map +1 -1
  437. package/dist/cjs/components/logos/logo-near-mono.js +1 -1
  438. package/dist/cjs/components/logos/logo-near-mono.js.map +1 -1
  439. package/dist/cjs/components/logos/logo-newton-mono.js +1 -1
  440. package/dist/cjs/components/logos/logo-newton-mono.js.map +1 -1
  441. package/dist/cjs/components/logos/logo-okx-mono.js +1 -1
  442. package/dist/cjs/components/logos/logo-okx-mono.js.map +1 -1
  443. package/dist/cjs/components/logos/logo-onramper-mono.js +1 -1
  444. package/dist/cjs/components/logos/logo-onramper-mono.js.map +1 -1
  445. package/dist/cjs/components/logos/logo-optimism-mono.js +1 -1
  446. package/dist/cjs/components/logos/logo-optimism-mono.js.map +1 -1
  447. package/dist/cjs/components/logos/logo-pay-pal-mono.js +1 -1
  448. package/dist/cjs/components/logos/logo-pay-pal-mono.js.map +1 -1
  449. package/dist/cjs/components/logos/logo-pay-pal-wordmark-mono.js +1 -1
  450. package/dist/cjs/components/logos/logo-pay-pal-wordmark-mono.js.map +1 -1
  451. package/dist/cjs/components/logos/logo-poa-mono.js +1 -1
  452. package/dist/cjs/components/logos/logo-poa-mono.js.map +1 -1
  453. package/dist/cjs/components/logos/logo-polkadot-mono.js +1 -1
  454. package/dist/cjs/components/logos/logo-polkadot-mono.js.map +1 -1
  455. package/dist/cjs/components/logos/logo-polygon-mono.js +1 -1
  456. package/dist/cjs/components/logos/logo-polygon-mono.js.map +1 -1
  457. package/dist/cjs/components/logos/logo-polymarket-mono.js +1 -1
  458. package/dist/cjs/components/logos/logo-polymarket-mono.js.map +1 -1
  459. package/dist/cjs/components/logos/logo-rarichain-mono.js +1 -1
  460. package/dist/cjs/components/logos/logo-rarichain-mono.js.map +1 -1
  461. package/dist/cjs/components/logos/logo-reown-mono.js +1 -1
  462. package/dist/cjs/components/logos/logo-reown-mono.js.map +1 -1
  463. package/dist/cjs/components/logos/logo-sardine-mono.js +1 -1
  464. package/dist/cjs/components/logos/logo-sardine-mono.js.map +1 -1
  465. package/dist/cjs/components/logos/logo-sei-mono.js +1 -1
  466. package/dist/cjs/components/logos/logo-sei-mono.js.map +1 -1
  467. package/dist/cjs/components/logos/logo-solana-mono.js +1 -1
  468. package/dist/cjs/components/logos/logo-solana-mono.js.map +1 -1
  469. package/dist/cjs/components/logos/logo-soneium-mono.js +1 -1
  470. package/dist/cjs/components/logos/logo-soneium-mono.js.map +1 -1
  471. package/dist/cjs/components/logos/logo-stability-mono.js +1 -1
  472. package/dist/cjs/components/logos/logo-stability-mono.js.map +1 -1
  473. package/dist/cjs/components/logos/logo-sui-mono.js +1 -1
  474. package/dist/cjs/components/logos/logo-sui-mono.js.map +1 -1
  475. package/dist/cjs/components/logos/logo-telegram-mono.js +1 -1
  476. package/dist/cjs/components/logos/logo-telegram-mono.js.map +1 -1
  477. package/dist/cjs/components/logos/logo-tezos-mono.js +1 -1
  478. package/dist/cjs/components/logos/logo-tezos-mono.js.map +1 -1
  479. package/dist/cjs/components/logos/logo-tik-tok-mono.js +1 -1
  480. package/dist/cjs/components/logos/logo-tik-tok-mono.js.map +1 -1
  481. package/dist/cjs/components/logos/logo-twitch-mono.js +1 -1
  482. package/dist/cjs/components/logos/logo-twitch-mono.js.map +1 -1
  483. package/dist/cjs/components/logos/logo-twitter-mono.js +1 -1
  484. package/dist/cjs/components/logos/logo-twitter-mono.js.map +1 -1
  485. package/dist/cjs/components/logos/logo-wallet-connect-mono.js +1 -1
  486. package/dist/cjs/components/logos/logo-wallet-connect-mono.js.map +1 -1
  487. package/dist/cjs/components/logos/logo-warpcast-mono.js +1 -1
  488. package/dist/cjs/components/logos/logo-warpcast-mono.js.map +1 -1
  489. package/dist/cjs/components/logos/logo-wax-mono.js +1 -1
  490. package/dist/cjs/components/logos/logo-wax-mono.js.map +1 -1
  491. package/dist/cjs/components/logos/logo-xdc-mono.js +1 -1
  492. package/dist/cjs/components/logos/logo-xdc-mono.js.map +1 -1
  493. package/dist/cjs/components/logos/logo-zetachain-mono.js +1 -1
  494. package/dist/cjs/components/logos/logo-zetachain-mono.js.map +1 -1
  495. package/dist/cjs/components/logos/logo-zilliqa-mono.js +1 -1
  496. package/dist/cjs/components/logos/logo-zilliqa-mono.js.map +1 -1
  497. package/dist/cjs/components/logos/logo-zksync-mono.js +1 -1
  498. package/dist/cjs/components/logos/logo-zksync-mono.js.map +1 -1
  499. package/dist/cjs/components/primitives/button.js +1 -1
  500. package/dist/cjs/components/primitives/button.js.map +1 -1
  501. package/dist/cjs/components/primitives/checkbox.js +1 -1
  502. package/dist/cjs/components/primitives/checkbox.js.map +1 -1
  503. package/dist/cjs/components/primitives/dropdown-selector.js +1 -1
  504. package/dist/cjs/components/primitives/dropdown-selector.js.map +1 -1
  505. package/dist/cjs/components/primitives/popover.js +1 -1
  506. package/dist/cjs/components/primitives/popover.js.map +1 -1
  507. package/dist/cjs/components/primitives/radio.js +1 -1
  508. package/dist/cjs/components/primitives/radio.js.map +1 -1
  509. package/dist/cjs/components/primitives/segmented-control.js +1 -1
  510. package/dist/cjs/components/primitives/segmented-control.js.map +1 -1
  511. package/dist/cjs/components/primitives/switch.js +1 -1
  512. package/dist/cjs/components/primitives/switch.js.map +1 -1
  513. package/dist/cjs/components/primitives/text.js +1 -1
  514. package/dist/cjs/components/primitives/text.js.map +1 -1
  515. package/dist/cjs/components/sections/verify-pincode.js +1 -1
  516. package/dist/cjs/components/sections/verify-pincode.js.map +1 -1
  517. package/dist/cjs/components/utils/client-asset-logo.js +1 -1
  518. package/dist/cjs/components/utils/client-asset-logo.js.map +1 -1
  519. package/dist/cjs/components/utils/qr-code.js +1 -1
  520. package/dist/cjs/components/utils/qr-code.js.map +1 -1
  521. package/dist/cjs/components/utils/secured-by-magic.js +1 -1
  522. package/dist/cjs/components/utils/secured-by-magic.js.map +1 -1
  523. package/dist/cjs/components/utils/shared-logo.js +1 -1
  524. package/dist/cjs/components/utils/shared-logo.js.map +1 -1
  525. package/dist/cjs/index.js +1 -1
  526. package/dist/cjs/lib/cn.js +2 -0
  527. package/dist/cjs/lib/cn.js.map +1 -0
  528. package/dist/cjs/lib/sva.js +2 -0
  529. package/dist/cjs/lib/sva.js.map +1 -0
  530. package/dist/cjs/presets.js +1 -1
  531. package/dist/cjs/presets.js.map +1 -1
  532. package/dist/cjs/recipes/button.js +1 -1
  533. package/dist/cjs/recipes/button.js.map +1 -1
  534. package/dist/cjs/recipes/callout.js +1 -1
  535. package/dist/cjs/recipes/callout.js.map +1 -1
  536. package/dist/cjs/recipes/card.js +1 -1
  537. package/dist/cjs/recipes/card.js.map +1 -1
  538. package/dist/cjs/recipes/modal.js +1 -1
  539. package/dist/cjs/recipes/modal.js.map +1 -1
  540. package/dist/cjs/recipes/overlay.js +1 -1
  541. package/dist/cjs/recipes/overlay.js.map +1 -1
  542. package/dist/cjs/recipes/text-input.js +1 -1
  543. package/dist/cjs/recipes/text-input.js.map +1 -1
  544. package/dist/cjs/recipes/text.js +1 -1
  545. package/dist/cjs/recipes/text.js.map +1 -1
  546. package/dist/cjs/recipes/toast.js +1 -1
  547. package/dist/cjs/recipes/toast.js.map +1 -1
  548. package/dist/cjs/recipes/tooltip.js +1 -1
  549. package/dist/cjs/recipes/tooltip.js.map +1 -1
  550. package/dist/cjs/styles/keyframes.js +1 -1
  551. package/dist/cjs/styles/keyframes.js.map +1 -1
  552. package/dist/cjs/styles/semantic-tokens.js +1 -1
  553. package/dist/cjs/styles/semantic-tokens.js.map +1 -1
  554. package/dist/cjs/styles/text-styles.js +1 -1
  555. package/dist/cjs/styles/text-styles.js.map +1 -1
  556. package/dist/cjs/styles/tokens.js +1 -1
  557. package/dist/cjs/styles/tokens.js.map +1 -1
  558. package/dist/es/components/containers/button.js +1 -1
  559. package/dist/es/components/containers/button.js.map +1 -1
  560. package/dist/es/components/containers/card.js +1 -1
  561. package/dist/es/components/containers/card.js.map +1 -1
  562. package/dist/es/components/containers/content.js +1 -1
  563. package/dist/es/components/containers/content.js.map +1 -1
  564. package/dist/es/components/containers/drawer.js +1 -1
  565. package/dist/es/components/containers/drawer.js.map +1 -1
  566. package/dist/es/components/containers/footer.js +1 -1
  567. package/dist/es/components/containers/footer.js.map +1 -1
  568. package/dist/es/components/containers/header.js +1 -1
  569. package/dist/es/components/containers/header.js.map +1 -1
  570. package/dist/es/components/containers/menu.js +1 -1
  571. package/dist/es/components/containers/menu.js.map +1 -1
  572. package/dist/es/components/containers/modal.js +1 -1
  573. package/dist/es/components/containers/modal.js.map +1 -1
  574. package/dist/es/components/containers/overlay.js +1 -1
  575. package/dist/es/components/containers/overlay.js.map +1 -1
  576. package/dist/es/components/external/paypal-button.js +1 -1
  577. package/dist/es/components/external/paypal-button.js.map +1 -1
  578. package/dist/es/components/feedback/animated-checkmark.js +1 -1
  579. package/dist/es/components/feedback/animated-checkmark.js.map +1 -1
  580. package/dist/es/components/feedback/animated-dismiss.js +1 -1
  581. package/dist/es/components/feedback/animated-dismiss.js.map +1 -1
  582. package/dist/es/components/feedback/animated-spinner.js +1 -1
  583. package/dist/es/components/feedback/animated-spinner.js.map +1 -1
  584. package/dist/es/components/feedback/callout.js +1 -1
  585. package/dist/es/components/feedback/callout.js.map +1 -1
  586. package/dist/es/components/feedback/loading-spinner.js +1 -1
  587. package/dist/es/components/feedback/loading-spinner.js.map +1 -1
  588. package/dist/es/components/feedback/progress-bar.js +1 -1
  589. package/dist/es/components/feedback/progress-bar.js.map +1 -1
  590. package/dist/es/components/feedback/skeleton.js +1 -1
  591. package/dist/es/components/feedback/skeleton.js.map +1 -1
  592. package/dist/es/components/feedback/status-icon.js +1 -1
  593. package/dist/es/components/feedback/status-icon.js.map +1 -1
  594. package/dist/es/components/feedback/toast-provider.js +1 -1
  595. package/dist/es/components/feedback/toast-provider.js.map +1 -1
  596. package/dist/es/components/feedback/tooltip.js +1 -1
  597. package/dist/es/components/feedback/tooltip.js.map +1 -1
  598. package/dist/es/components/icons/ico-add.js +1 -1
  599. package/dist/es/components/icons/ico-add.js.map +1 -1
  600. package/dist/es/components/icons/ico-airdrop.js +1 -1
  601. package/dist/es/components/icons/ico-airdrop.js.map +1 -1
  602. package/dist/es/components/icons/ico-alert-circle-fill.js +1 -1
  603. package/dist/es/components/icons/ico-alert-circle-fill.js.map +1 -1
  604. package/dist/es/components/icons/ico-alert-circle.js +1 -1
  605. package/dist/es/components/icons/ico-alert-circle.js.map +1 -1
  606. package/dist/es/components/icons/ico-arrow-down.js +1 -1
  607. package/dist/es/components/icons/ico-arrow-down.js.map +1 -1
  608. package/dist/es/components/icons/ico-arrow-left.js +1 -1
  609. package/dist/es/components/icons/ico-arrow-left.js.map +1 -1
  610. package/dist/es/components/icons/ico-arrow-right.js +1 -1
  611. package/dist/es/components/icons/ico-arrow-right.js.map +1 -1
  612. package/dist/es/components/icons/ico-arrow-up.js +1 -1
  613. package/dist/es/components/icons/ico-arrow-up.js.map +1 -1
  614. package/dist/es/components/icons/ico-asterisk-with-shield.js +1 -1
  615. package/dist/es/components/icons/ico-asterisk-with-shield.js.map +1 -1
  616. package/dist/es/components/icons/ico-asterisk.js +1 -1
  617. package/dist/es/components/icons/ico-asterisk.js.map +1 -1
  618. package/dist/es/components/icons/ico-astronaut.js +1 -1
  619. package/dist/es/components/icons/ico-astronaut.js.map +1 -1
  620. package/dist/es/components/icons/ico-atom.js +1 -1
  621. package/dist/es/components/icons/ico-atom.js.map +1 -1
  622. package/dist/es/components/icons/ico-badge.js +1 -1
  623. package/dist/es/components/icons/ico-badge.js.map +1 -1
  624. package/dist/es/components/icons/ico-bank.js +1 -1
  625. package/dist/es/components/icons/ico-bank.js.map +1 -1
  626. package/dist/es/components/icons/ico-bell-notification.js +1 -1
  627. package/dist/es/components/icons/ico-bell-notification.js.map +1 -1
  628. package/dist/es/components/icons/ico-bell.js +1 -1
  629. package/dist/es/components/icons/ico-bell.js.map +1 -1
  630. package/dist/es/components/icons/ico-block.js +1 -1
  631. package/dist/es/components/icons/ico-block.js.map +1 -1
  632. package/dist/es/components/icons/ico-branding.js +1 -1
  633. package/dist/es/components/icons/ico-branding.js.map +1 -1
  634. package/dist/es/components/icons/ico-caret-down.js +1 -1
  635. package/dist/es/components/icons/ico-caret-down.js.map +1 -1
  636. package/dist/es/components/icons/ico-caret-left.js +1 -1
  637. package/dist/es/components/icons/ico-caret-left.js.map +1 -1
  638. package/dist/es/components/icons/ico-caret-right.js +1 -1
  639. package/dist/es/components/icons/ico-caret-right.js.map +1 -1
  640. package/dist/es/components/icons/ico-caret-up.js +1 -1
  641. package/dist/es/components/icons/ico-caret-up.js.map +1 -1
  642. package/dist/es/components/icons/ico-checkmark-circle-fill.js +1 -1
  643. package/dist/es/components/icons/ico-checkmark-circle-fill.js.map +1 -1
  644. package/dist/es/components/icons/ico-checkmark-circle.js +1 -1
  645. package/dist/es/components/icons/ico-checkmark-circle.js.map +1 -1
  646. package/dist/es/components/icons/ico-checkmark.js +1 -1
  647. package/dist/es/components/icons/ico-checkmark.js.map +1 -1
  648. package/dist/es/components/icons/ico-clock-fill.js +1 -1
  649. package/dist/es/components/icons/ico-clock-fill.js.map +1 -1
  650. package/dist/es/components/icons/ico-code-editor.js +1 -1
  651. package/dist/es/components/icons/ico-code-editor.js.map +1 -1
  652. package/dist/es/components/icons/ico-code-sandbox.js +1 -1
  653. package/dist/es/components/icons/ico-code-sandbox.js.map +1 -1
  654. package/dist/es/components/icons/ico-code.js +1 -1
  655. package/dist/es/components/icons/ico-code.js.map +1 -1
  656. package/dist/es/components/icons/ico-coins.js +1 -1
  657. package/dist/es/components/icons/ico-coins.js.map +1 -1
  658. package/dist/es/components/icons/ico-command-line.js +1 -1
  659. package/dist/es/components/icons/ico-command-line.js.map +1 -1
  660. package/dist/es/components/icons/ico-comment.js +1 -1
  661. package/dist/es/components/icons/ico-comment.js.map +1 -1
  662. package/dist/es/components/icons/ico-copy.js +1 -1
  663. package/dist/es/components/icons/ico-copy.js.map +1 -1
  664. package/dist/es/components/icons/ico-credit-card.js +1 -1
  665. package/dist/es/components/icons/ico-credit-card.js.map +1 -1
  666. package/dist/es/components/icons/ico-dedicated.js +1 -1
  667. package/dist/es/components/icons/ico-dedicated.js.map +1 -1
  668. package/dist/es/components/icons/ico-diamond.js +1 -1
  669. package/dist/es/components/icons/ico-diamond.js.map +1 -1
  670. package/dist/es/components/icons/ico-dismiss-circle-fill.js +1 -1
  671. package/dist/es/components/icons/ico-dismiss-circle-fill.js.map +1 -1
  672. package/dist/es/components/icons/ico-dismiss-circle.js +1 -1
  673. package/dist/es/components/icons/ico-dismiss-circle.js.map +1 -1
  674. package/dist/es/components/icons/ico-dismiss.js +1 -1
  675. package/dist/es/components/icons/ico-dismiss.js.map +1 -1
  676. package/dist/es/components/icons/ico-doc.js +1 -1
  677. package/dist/es/components/icons/ico-doc.js.map +1 -1
  678. package/dist/es/components/icons/ico-download.js +1 -1
  679. package/dist/es/components/icons/ico-download.js.map +1 -1
  680. package/dist/es/components/icons/ico-edit-email.js +1 -1
  681. package/dist/es/components/icons/ico-edit-email.js.map +1 -1
  682. package/dist/es/components/icons/ico-edit.js +1 -1
  683. package/dist/es/components/icons/ico-edit.js.map +1 -1
  684. package/dist/es/components/icons/ico-email-fill.js +1 -1
  685. package/dist/es/components/icons/ico-email-fill.js.map +1 -1
  686. package/dist/es/components/icons/ico-email-open.js +1 -1
  687. package/dist/es/components/icons/ico-email-open.js.map +1 -1
  688. package/dist/es/components/icons/ico-email.js +1 -1
  689. package/dist/es/components/icons/ico-email.js.map +1 -1
  690. package/dist/es/components/icons/ico-exit.js +1 -1
  691. package/dist/es/components/icons/ico-exit.js.map +1 -1
  692. package/dist/es/components/icons/ico-expand.js +1 -1
  693. package/dist/es/components/icons/ico-expand.js.map +1 -1
  694. package/dist/es/components/icons/ico-expiration.js +1 -1
  695. package/dist/es/components/icons/ico-expiration.js.map +1 -1
  696. package/dist/es/components/icons/ico-external-link.js +1 -1
  697. package/dist/es/components/icons/ico-external-link.js.map +1 -1
  698. package/dist/es/components/icons/ico-eye-closed.js +1 -1
  699. package/dist/es/components/icons/ico-eye-closed.js.map +1 -1
  700. package/dist/es/components/icons/ico-eye-opened.js +1 -1
  701. package/dist/es/components/icons/ico-eye-opened.js.map +1 -1
  702. package/dist/es/components/icons/ico-fingerprint-fill.js +1 -1
  703. package/dist/es/components/icons/ico-fingerprint-fill.js.map +1 -1
  704. package/dist/es/components/icons/ico-fingerprint.js +1 -1
  705. package/dist/es/components/icons/ico-fingerprint.js.map +1 -1
  706. package/dist/es/components/icons/ico-gas.js +1 -1
  707. package/dist/es/components/icons/ico-gas.js.map +1 -1
  708. package/dist/es/components/icons/ico-gift.js +1 -1
  709. package/dist/es/components/icons/ico-gift.js.map +1 -1
  710. package/dist/es/components/icons/ico-globe.js +1 -1
  711. package/dist/es/components/icons/ico-globe.js.map +1 -1
  712. package/dist/es/components/icons/ico-grid-fill.js +1 -1
  713. package/dist/es/components/icons/ico-grid-fill.js.map +1 -1
  714. package/dist/es/components/icons/ico-grid.js +1 -1
  715. package/dist/es/components/icons/ico-grid.js.map +1 -1
  716. package/dist/es/components/icons/ico-guide.js +1 -1
  717. package/dist/es/components/icons/ico-guide.js.map +1 -1
  718. package/dist/es/components/icons/ico-home-fill.js +1 -1
  719. package/dist/es/components/icons/ico-home-fill.js.map +1 -1
  720. package/dist/es/components/icons/ico-home.js +1 -1
  721. package/dist/es/components/icons/ico-home.js.map +1 -1
  722. package/dist/es/components/icons/ico-hourglass.js +1 -1
  723. package/dist/es/components/icons/ico-hourglass.js.map +1 -1
  724. package/dist/es/components/icons/ico-info-circle-fill.js +1 -1
  725. package/dist/es/components/icons/ico-info-circle-fill.js.map +1 -1
  726. package/dist/es/components/icons/ico-info-circle.js +1 -1
  727. package/dist/es/components/icons/ico-info-circle.js.map +1 -1
  728. package/dist/es/components/icons/ico-kebab.js +1 -1
  729. package/dist/es/components/icons/ico-kebab.js.map +1 -1
  730. package/dist/es/components/icons/ico-key.js +1 -1
  731. package/dist/es/components/icons/ico-key.js.map +1 -1
  732. package/dist/es/components/icons/ico-lightbulb-fill.js +1 -1
  733. package/dist/es/components/icons/ico-lightbulb-fill.js.map +1 -1
  734. package/dist/es/components/icons/ico-lightbulb.js +1 -1
  735. package/dist/es/components/icons/ico-lightbulb.js.map +1 -1
  736. package/dist/es/components/icons/ico-lightning-fill.js +1 -1
  737. package/dist/es/components/icons/ico-lightning-fill.js.map +1 -1
  738. package/dist/es/components/icons/ico-lightning.js +1 -1
  739. package/dist/es/components/icons/ico-lightning.js.map +1 -1
  740. package/dist/es/components/icons/ico-link.js +1 -1
  741. package/dist/es/components/icons/ico-link.js.map +1 -1
  742. package/dist/es/components/icons/ico-loading.js +1 -1
  743. package/dist/es/components/icons/ico-loading.js.map +1 -1
  744. package/dist/es/components/icons/ico-lock-locked-fill.js +1 -1
  745. package/dist/es/components/icons/ico-lock-locked-fill.js.map +1 -1
  746. package/dist/es/components/icons/ico-lock-locked.js +1 -1
  747. package/dist/es/components/icons/ico-lock-locked.js.map +1 -1
  748. package/dist/es/components/icons/ico-lock-password.js +1 -1
  749. package/dist/es/components/icons/ico-lock-password.js.map +1 -1
  750. package/dist/es/components/icons/ico-lock-unlocked-fill.js +1 -1
  751. package/dist/es/components/icons/ico-lock-unlocked-fill.js.map +1 -1
  752. package/dist/es/components/icons/ico-lock-unlocked.js +1 -1
  753. package/dist/es/components/icons/ico-lock-unlocked.js.map +1 -1
  754. package/dist/es/components/icons/ico-login-form.js +1 -1
  755. package/dist/es/components/icons/ico-login-form.js.map +1 -1
  756. package/dist/es/components/icons/ico-magic.js +1 -1
  757. package/dist/es/components/icons/ico-magic.js.map +1 -1
  758. package/dist/es/components/icons/ico-megaphone.js +1 -1
  759. package/dist/es/components/icons/ico-megaphone.js.map +1 -1
  760. package/dist/es/components/icons/ico-menu.js +1 -1
  761. package/dist/es/components/icons/ico-menu.js.map +1 -1
  762. package/dist/es/components/icons/ico-message-fill.js +1 -1
  763. package/dist/es/components/icons/ico-message-fill.js.map +1 -1
  764. package/dist/es/components/icons/ico-message.js +1 -1
  765. package/dist/es/components/icons/ico-message.js.map +1 -1
  766. package/dist/es/components/icons/ico-mfa.js +1 -1
  767. package/dist/es/components/icons/ico-mfa.js.map +1 -1
  768. package/dist/es/components/icons/ico-minimize.js +1 -1
  769. package/dist/es/components/icons/ico-minimize.js.map +1 -1
  770. package/dist/es/components/icons/ico-minus.js +1 -1
  771. package/dist/es/components/icons/ico-minus.js.map +1 -1
  772. package/dist/es/components/icons/ico-mobile2fa.js +1 -1
  773. package/dist/es/components/icons/ico-mobile2fa.js.map +1 -1
  774. package/dist/es/components/icons/ico-mobile2fafill.js +1 -1
  775. package/dist/es/components/icons/ico-mobile2fafill.js.map +1 -1
  776. package/dist/es/components/icons/ico-newton.js +1 -1
  777. package/dist/es/components/icons/ico-newton.js.map +1 -1
  778. package/dist/es/components/icons/ico-open-book.js +1 -1
  779. package/dist/es/components/icons/ico-open-book.js.map +1 -1
  780. package/dist/es/components/icons/ico-paper-plane.js +1 -1
  781. package/dist/es/components/icons/ico-paper-plane.js.map +1 -1
  782. package/dist/es/components/icons/ico-passport.js +1 -1
  783. package/dist/es/components/icons/ico-passport.js.map +1 -1
  784. package/dist/es/components/icons/ico-passwordless.js +1 -1
  785. package/dist/es/components/icons/ico-passwordless.js.map +1 -1
  786. package/dist/es/components/icons/ico-pending-connection.js +1 -1
  787. package/dist/es/components/icons/ico-pending-connection.js.map +1 -1
  788. package/dist/es/components/icons/ico-phone.js +1 -1
  789. package/dist/es/components/icons/ico-phone.js.map +1 -1
  790. package/dist/es/components/icons/ico-plus.js +1 -1
  791. package/dist/es/components/icons/ico-plus.js.map +1 -1
  792. package/dist/es/components/icons/ico-polygon-gas-testnet.js +1 -1
  793. package/dist/es/components/icons/ico-polygon-gas-testnet.js.map +1 -1
  794. package/dist/es/components/icons/ico-polygon-gas.js +1 -1
  795. package/dist/es/components/icons/ico-polygon-gas.js.map +1 -1
  796. package/dist/es/components/icons/ico-price.js +1 -1
  797. package/dist/es/components/icons/ico-price.js.map +1 -1
  798. package/dist/es/components/icons/ico-qrcode.js +1 -1
  799. package/dist/es/components/icons/ico-qrcode.js.map +1 -1
  800. package/dist/es/components/icons/ico-question-circle-fill.js +1 -1
  801. package/dist/es/components/icons/ico-question-circle-fill.js.map +1 -1
  802. package/dist/es/components/icons/ico-question-circle.js +1 -1
  803. package/dist/es/components/icons/ico-question-circle.js.map +1 -1
  804. package/dist/es/components/icons/ico-refresh-circle-fill.js +1 -1
  805. package/dist/es/components/icons/ico-refresh-circle-fill.js.map +1 -1
  806. package/dist/es/components/icons/ico-refresh.js +1 -1
  807. package/dist/es/components/icons/ico-refresh.js.map +1 -1
  808. package/dist/es/components/icons/ico-remove.js +1 -1
  809. package/dist/es/components/icons/ico-remove.js.map +1 -1
  810. package/dist/es/components/icons/ico-rocket-fill.js +1 -1
  811. package/dist/es/components/icons/ico-rocket-fill.js.map +1 -1
  812. package/dist/es/components/icons/ico-search.js +1 -1
  813. package/dist/es/components/icons/ico-search.js.map +1 -1
  814. package/dist/es/components/icons/ico-settings-fill.js +1 -1
  815. package/dist/es/components/icons/ico-settings-fill.js.map +1 -1
  816. package/dist/es/components/icons/ico-settings.js +1 -1
  817. package/dist/es/components/icons/ico-settings.js.map +1 -1
  818. package/dist/es/components/icons/ico-shapes.js +1 -1
  819. package/dist/es/components/icons/ico-shapes.js.map +1 -1
  820. package/dist/es/components/icons/ico-share.js +1 -1
  821. package/dist/es/components/icons/ico-share.js.map +1 -1
  822. package/dist/es/components/icons/ico-shield-approved.js +1 -1
  823. package/dist/es/components/icons/ico-shield-approved.js.map +1 -1
  824. package/dist/es/components/icons/ico-shield-rejected.js +1 -1
  825. package/dist/es/components/icons/ico-shield-rejected.js.map +1 -1
  826. package/dist/es/components/icons/ico-shield.js +1 -1
  827. package/dist/es/components/icons/ico-shield.js.map +1 -1
  828. package/dist/es/components/icons/ico-shuffle.js +1 -1
  829. package/dist/es/components/icons/ico-shuffle.js.map +1 -1
  830. package/dist/es/components/icons/ico-sidebar.js +1 -1
  831. package/dist/es/components/icons/ico-sidebar.js.map +1 -1
  832. package/dist/es/components/icons/ico-social.js +1 -1
  833. package/dist/es/components/icons/ico-social.js.map +1 -1
  834. package/dist/es/components/icons/ico-sold-out-tag.js +1 -1
  835. package/dist/es/components/icons/ico-sold-out-tag.js.map +1 -1
  836. package/dist/es/components/icons/ico-sparkles.js +1 -1
  837. package/dist/es/components/icons/ico-sparkles.js.map +1 -1
  838. package/dist/es/components/icons/ico-star.js +1 -1
  839. package/dist/es/components/icons/ico-star.js.map +1 -1
  840. package/dist/es/components/icons/ico-swap.js +1 -1
  841. package/dist/es/components/icons/ico-swap.js.map +1 -1
  842. package/dist/es/components/icons/ico-swatches.js +1 -1
  843. package/dist/es/components/icons/ico-swatches.js.map +1 -1
  844. package/dist/es/components/icons/ico-switch.js +1 -1
  845. package/dist/es/components/icons/ico-switch.js.map +1 -1
  846. package/dist/es/components/icons/ico-team.js +1 -1
  847. package/dist/es/components/icons/ico-team.js.map +1 -1
  848. package/dist/es/components/icons/ico-thumb-down.js +1 -1
  849. package/dist/es/components/icons/ico-thumb-down.js.map +1 -1
  850. package/dist/es/components/icons/ico-thumb-up.js +1 -1
  851. package/dist/es/components/icons/ico-thumb-up.js.map +1 -1
  852. package/dist/es/components/icons/ico-tradeup.js +1 -1
  853. package/dist/es/components/icons/ico-tradeup.js.map +1 -1
  854. package/dist/es/components/icons/ico-trash.js +1 -1
  855. package/dist/es/components/icons/ico-trash.js.map +1 -1
  856. package/dist/es/components/icons/ico-unlink.js +1 -1
  857. package/dist/es/components/icons/ico-unlink.js.map +1 -1
  858. package/dist/es/components/icons/ico-upload.js +1 -1
  859. package/dist/es/components/icons/ico-upload.js.map +1 -1
  860. package/dist/es/components/icons/ico-users.js +1 -1
  861. package/dist/es/components/icons/ico-users.js.map +1 -1
  862. package/dist/es/components/icons/ico-wallet-fill.js +1 -1
  863. package/dist/es/components/icons/ico-wallet-fill.js.map +1 -1
  864. package/dist/es/components/icons/ico-wallet.js +1 -1
  865. package/dist/es/components/icons/ico-wallet.js.map +1 -1
  866. package/dist/es/components/icons/ico-wand.js +1 -1
  867. package/dist/es/components/icons/ico-wand.js.map +1 -1
  868. package/dist/es/components/icons/ico-warning-fill.js +1 -1
  869. package/dist/es/components/icons/ico-warning-fill.js.map +1 -1
  870. package/dist/es/components/icons/ico-warning.js +1 -1
  871. package/dist/es/components/icons/ico-warning.js.map +1 -1
  872. package/dist/es/components/info/copy-button.js +1 -1
  873. package/dist/es/components/info/copy-button.js.map +1 -1
  874. package/dist/es/components/info/email-wbr.js +1 -1
  875. package/dist/es/components/info/email-wbr.js.map +1 -1
  876. package/dist/es/components/info/security-otp.js +1 -1
  877. package/dist/es/components/info/security-otp.js.map +1 -1
  878. package/dist/es/components/info/text-box.js +1 -1
  879. package/dist/es/components/info/text-box.js.map +1 -1
  880. package/dist/es/components/info/wallet-address.js +1 -1
  881. package/dist/es/components/info/wallet-address.js.map +1 -1
  882. package/dist/es/components/inputs/phone-input.js +1 -1
  883. package/dist/es/components/inputs/phone-input.js.map +1 -1
  884. package/dist/es/components/inputs/pincode-input.js +1 -1
  885. package/dist/es/components/inputs/pincode-input.js.map +1 -1
  886. package/dist/es/components/inputs/text-input.js +1 -1
  887. package/dist/es/components/inputs/text-input.js.map +1 -1
  888. package/dist/es/components/layouts/error.js +1 -1
  889. package/dist/es/components/layouts/error.js.map +1 -1
  890. package/dist/es/components/layouts/page.js +1 -1
  891. package/dist/es/components/layouts/page.js.map +1 -1
  892. package/dist/es/components/list-items/activity-list-item.js +1 -1
  893. package/dist/es/components/list-items/activity-list-item.js.map +1 -1
  894. package/dist/es/components/list-items/navigation-button.js +1 -1
  895. package/dist/es/components/list-items/navigation-button.js.map +1 -1
  896. package/dist/es/components/list-items/nft-tile.js +1 -1
  897. package/dist/es/components/list-items/nft-tile.js.map +1 -1
  898. package/dist/es/components/list-items/token-list-item.js +1 -1
  899. package/dist/es/components/list-items/token-list-item.js.map +1 -1
  900. package/dist/es/components/list-items/transaction-row.js +1 -1
  901. package/dist/es/components/list-items/transaction-row.js.map +1 -1
  902. package/dist/es/components/logos/logo-algorand-mono.js +1 -1
  903. package/dist/es/components/logos/logo-algorand-mono.js.map +1 -1
  904. package/dist/es/components/logos/logo-apple-mono.js +1 -1
  905. package/dist/es/components/logos/logo-apple-mono.js.map +1 -1
  906. package/dist/es/components/logos/logo-aptos-mono.js +1 -1
  907. package/dist/es/components/logos/logo-aptos-mono.js.map +1 -1
  908. package/dist/es/components/logos/logo-arbitrum-mono.js +1 -1
  909. package/dist/es/components/logos/logo-arbitrum-mono.js.map +1 -1
  910. package/dist/es/components/logos/logo-arbitrum-one-mono.js +1 -1
  911. package/dist/es/components/logos/logo-arbitrum-one-mono.js.map +1 -1
  912. package/dist/es/components/logos/logo-astar-mono.js +1 -1
  913. package/dist/es/components/logos/logo-astar-mono.js.map +1 -1
  914. package/dist/es/components/logos/logo-auth0-mono.js +1 -1
  915. package/dist/es/components/logos/logo-auth0-mono.js.map +1 -1
  916. package/dist/es/components/logos/logo-avalanche-mono.js +1 -1
  917. package/dist/es/components/logos/logo-avalanche-mono.js.map +1 -1
  918. package/dist/es/components/logos/logo-azure-mono.js +1 -1
  919. package/dist/es/components/logos/logo-azure-mono.js.map +1 -1
  920. package/dist/es/components/logos/logo-base-mono.js +1 -1
  921. package/dist/es/components/logos/logo-base-mono.js.map +1 -1
  922. package/dist/es/components/logos/logo-berachain-mono.js +1 -1
  923. package/dist/es/components/logos/logo-berachain-mono.js.map +1 -1
  924. package/dist/es/components/logos/logo-binance-mono.js +1 -1
  925. package/dist/es/components/logos/logo-binance-mono.js.map +1 -1
  926. package/dist/es/components/logos/logo-bit-bucket-mono.js +1 -1
  927. package/dist/es/components/logos/logo-bit-bucket-mono.js.map +1 -1
  928. package/dist/es/components/logos/logo-bitcoin-mono.js +1 -1
  929. package/dist/es/components/logos/logo-bitcoin-mono.js.map +1 -1
  930. package/dist/es/components/logos/logo-bnb-mono.js +1 -1
  931. package/dist/es/components/logos/logo-bnb-mono.js.map +1 -1
  932. package/dist/es/components/logos/logo-celo-mono.js +1 -1
  933. package/dist/es/components/logos/logo-celo-mono.js.map +1 -1
  934. package/dist/es/components/logos/logo-chiliz-mono.js +1 -1
  935. package/dist/es/components/logos/logo-chiliz-mono.js.map +1 -1
  936. package/dist/es/components/logos/logo-cognito-mono.js +1 -1
  937. package/dist/es/components/logos/logo-cognito-mono.js.map +1 -1
  938. package/dist/es/components/logos/logo-community-gaming-mono.js +1 -1
  939. package/dist/es/components/logos/logo-community-gaming-mono.js.map +1 -1
  940. package/dist/es/components/logos/logo-cosmos-mono.js +1 -1
  941. package/dist/es/components/logos/logo-cosmos-mono.js.map +1 -1
  942. package/dist/es/components/logos/logo-discord-mono.js +1 -1
  943. package/dist/es/components/logos/logo-discord-mono.js.map +1 -1
  944. package/dist/es/components/logos/logo-ethereum-circle-mono.js +1 -1
  945. package/dist/es/components/logos/logo-ethereum-circle-mono.js.map +1 -1
  946. package/dist/es/components/logos/logo-ethereum-mono.js +1 -1
  947. package/dist/es/components/logos/logo-ethereum-mono.js.map +1 -1
  948. package/dist/es/components/logos/logo-etherlink-mono.js +1 -1
  949. package/dist/es/components/logos/logo-etherlink-mono.js.map +1 -1
  950. package/dist/es/components/logos/logo-facebook-mono.js +1 -1
  951. package/dist/es/components/logos/logo-facebook-mono.js.map +1 -1
  952. package/dist/es/components/logos/logo-flare-mono.js +1 -1
  953. package/dist/es/components/logos/logo-flare-mono.js.map +1 -1
  954. package/dist/es/components/logos/logo-flow-mono.js +1 -1
  955. package/dist/es/components/logos/logo-flow-mono.js.map +1 -1
  956. package/dist/es/components/logos/logo-generic-token-mono.js +1 -1
  957. package/dist/es/components/logos/logo-generic-token-mono.js.map +1 -1
  958. package/dist/es/components/logos/logo-git-hub-mono.js +1 -1
  959. package/dist/es/components/logos/logo-git-hub-mono.js.map +1 -1
  960. package/dist/es/components/logos/logo-git-lab-mono.js +1 -1
  961. package/dist/es/components/logos/logo-git-lab-mono.js.map +1 -1
  962. package/dist/es/components/logos/logo-google-mono.js +1 -1
  963. package/dist/es/components/logos/logo-google-mono.js.map +1 -1
  964. package/dist/es/components/logos/logo-guild-mono.js +1 -1
  965. package/dist/es/components/logos/logo-guild-mono.js.map +1 -1
  966. package/dist/es/components/logos/logo-harmony-mono.js +1 -1
  967. package/dist/es/components/logos/logo-harmony-mono.js.map +1 -1
  968. package/dist/es/components/logos/logo-horizen-mono.js +1 -1
  969. package/dist/es/components/logos/logo-horizen-mono.js.map +1 -1
  970. package/dist/es/components/logos/logo-icon-mono.js +1 -1
  971. package/dist/es/components/logos/logo-icon-mono.js.map +1 -1
  972. package/dist/es/components/logos/logo-immutable-x-mono.js +1 -1
  973. package/dist/es/components/logos/logo-immutable-x-mono.js.map +1 -1
  974. package/dist/es/components/logos/logo-instagram-mono.js +1 -1
  975. package/dist/es/components/logos/logo-instagram-mono.js.map +1 -1
  976. package/dist/es/components/logos/logo-kadena-mono.js +1 -1
  977. package/dist/es/components/logos/logo-kadena-mono.js.map +1 -1
  978. package/dist/es/components/logos/logo-kaito-mono.js +1 -1
  979. package/dist/es/components/logos/logo-kaito-mono.js.map +1 -1
  980. package/dist/es/components/logos/logo-link-by-stripe-mono.js +1 -1
  981. package/dist/es/components/logos/logo-link-by-stripe-mono.js.map +1 -1
  982. package/dist/es/components/logos/logo-link-mono.js +1 -1
  983. package/dist/es/components/logos/logo-link-mono.js.map +1 -1
  984. package/dist/es/components/logos/logo-linked-in-mono.js +1 -1
  985. package/dist/es/components/logos/logo-linked-in-mono.js.map +1 -1
  986. package/dist/es/components/logos/logo-loopring-mono.js +1 -1
  987. package/dist/es/components/logos/logo-loopring-mono.js.map +1 -1
  988. package/dist/es/components/logos/logo-microsoft-mono.js +1 -1
  989. package/dist/es/components/logos/logo-microsoft-mono.js.map +1 -1
  990. package/dist/es/components/logos/logo-mode-mobile-mono.js +1 -1
  991. package/dist/es/components/logos/logo-mode-mobile-mono.js.map +1 -1
  992. package/dist/es/components/logos/logo-moonbeam-mono.js +1 -1
  993. package/dist/es/components/logos/logo-moonbeam-mono.js.map +1 -1
  994. package/dist/es/components/logos/logo-near-mono.js +1 -1
  995. package/dist/es/components/logos/logo-near-mono.js.map +1 -1
  996. package/dist/es/components/logos/logo-newton-mono.js +1 -1
  997. package/dist/es/components/logos/logo-newton-mono.js.map +1 -1
  998. package/dist/es/components/logos/logo-okx-mono.js +1 -1
  999. package/dist/es/components/logos/logo-okx-mono.js.map +1 -1
  1000. package/dist/es/components/logos/logo-onramper-mono.js +1 -1
  1001. package/dist/es/components/logos/logo-onramper-mono.js.map +1 -1
  1002. package/dist/es/components/logos/logo-optimism-mono.js +1 -1
  1003. package/dist/es/components/logos/logo-optimism-mono.js.map +1 -1
  1004. package/dist/es/components/logos/logo-pay-pal-mono.js +1 -1
  1005. package/dist/es/components/logos/logo-pay-pal-mono.js.map +1 -1
  1006. package/dist/es/components/logos/logo-pay-pal-wordmark-mono.js +1 -1
  1007. package/dist/es/components/logos/logo-pay-pal-wordmark-mono.js.map +1 -1
  1008. package/dist/es/components/logos/logo-poa-mono.js +1 -1
  1009. package/dist/es/components/logos/logo-poa-mono.js.map +1 -1
  1010. package/dist/es/components/logos/logo-polkadot-mono.js +1 -1
  1011. package/dist/es/components/logos/logo-polkadot-mono.js.map +1 -1
  1012. package/dist/es/components/logos/logo-polygon-mono.js +1 -1
  1013. package/dist/es/components/logos/logo-polygon-mono.js.map +1 -1
  1014. package/dist/es/components/logos/logo-polymarket-mono.js +1 -1
  1015. package/dist/es/components/logos/logo-polymarket-mono.js.map +1 -1
  1016. package/dist/es/components/logos/logo-rarichain-mono.js +1 -1
  1017. package/dist/es/components/logos/logo-rarichain-mono.js.map +1 -1
  1018. package/dist/es/components/logos/logo-reown-mono.js +1 -1
  1019. package/dist/es/components/logos/logo-reown-mono.js.map +1 -1
  1020. package/dist/es/components/logos/logo-sardine-mono.js +1 -1
  1021. package/dist/es/components/logos/logo-sardine-mono.js.map +1 -1
  1022. package/dist/es/components/logos/logo-sei-mono.js +1 -1
  1023. package/dist/es/components/logos/logo-sei-mono.js.map +1 -1
  1024. package/dist/es/components/logos/logo-solana-mono.js +1 -1
  1025. package/dist/es/components/logos/logo-solana-mono.js.map +1 -1
  1026. package/dist/es/components/logos/logo-soneium-mono.js +1 -1
  1027. package/dist/es/components/logos/logo-soneium-mono.js.map +1 -1
  1028. package/dist/es/components/logos/logo-stability-mono.js +1 -1
  1029. package/dist/es/components/logos/logo-stability-mono.js.map +1 -1
  1030. package/dist/es/components/logos/logo-sui-mono.js +1 -1
  1031. package/dist/es/components/logos/logo-sui-mono.js.map +1 -1
  1032. package/dist/es/components/logos/logo-telegram-mono.js +1 -1
  1033. package/dist/es/components/logos/logo-telegram-mono.js.map +1 -1
  1034. package/dist/es/components/logos/logo-tezos-mono.js +1 -1
  1035. package/dist/es/components/logos/logo-tezos-mono.js.map +1 -1
  1036. package/dist/es/components/logos/logo-tik-tok-mono.js +1 -1
  1037. package/dist/es/components/logos/logo-tik-tok-mono.js.map +1 -1
  1038. package/dist/es/components/logos/logo-twitch-mono.js +1 -1
  1039. package/dist/es/components/logos/logo-twitch-mono.js.map +1 -1
  1040. package/dist/es/components/logos/logo-twitter-mono.js +1 -1
  1041. package/dist/es/components/logos/logo-twitter-mono.js.map +1 -1
  1042. package/dist/es/components/logos/logo-wallet-connect-mono.js +1 -1
  1043. package/dist/es/components/logos/logo-wallet-connect-mono.js.map +1 -1
  1044. package/dist/es/components/logos/logo-warpcast-mono.js +1 -1
  1045. package/dist/es/components/logos/logo-warpcast-mono.js.map +1 -1
  1046. package/dist/es/components/logos/logo-wax-mono.js +1 -1
  1047. package/dist/es/components/logos/logo-wax-mono.js.map +1 -1
  1048. package/dist/es/components/logos/logo-xdc-mono.js +1 -1
  1049. package/dist/es/components/logos/logo-xdc-mono.js.map +1 -1
  1050. package/dist/es/components/logos/logo-zetachain-mono.js +1 -1
  1051. package/dist/es/components/logos/logo-zetachain-mono.js.map +1 -1
  1052. package/dist/es/components/logos/logo-zilliqa-mono.js +1 -1
  1053. package/dist/es/components/logos/logo-zilliqa-mono.js.map +1 -1
  1054. package/dist/es/components/logos/logo-zksync-mono.js +1 -1
  1055. package/dist/es/components/logos/logo-zksync-mono.js.map +1 -1
  1056. package/dist/es/components/primitives/button.js +1 -1
  1057. package/dist/es/components/primitives/button.js.map +1 -1
  1058. package/dist/es/components/primitives/checkbox.js +1 -1
  1059. package/dist/es/components/primitives/checkbox.js.map +1 -1
  1060. package/dist/es/components/primitives/dropdown-selector.js +1 -1
  1061. package/dist/es/components/primitives/dropdown-selector.js.map +1 -1
  1062. package/dist/es/components/primitives/popover.js +1 -1
  1063. package/dist/es/components/primitives/popover.js.map +1 -1
  1064. package/dist/es/components/primitives/radio.js +1 -1
  1065. package/dist/es/components/primitives/radio.js.map +1 -1
  1066. package/dist/es/components/primitives/segmented-control.js +1 -1
  1067. package/dist/es/components/primitives/segmented-control.js.map +1 -1
  1068. package/dist/es/components/primitives/switch.js +1 -1
  1069. package/dist/es/components/primitives/switch.js.map +1 -1
  1070. package/dist/es/components/primitives/text.js +1 -1
  1071. package/dist/es/components/primitives/text.js.map +1 -1
  1072. package/dist/es/components/sections/verify-pincode.js +1 -1
  1073. package/dist/es/components/sections/verify-pincode.js.map +1 -1
  1074. package/dist/es/components/utils/client-asset-logo.js +1 -1
  1075. package/dist/es/components/utils/client-asset-logo.js.map +1 -1
  1076. package/dist/es/components/utils/qr-code.js +1 -1
  1077. package/dist/es/components/utils/qr-code.js.map +1 -1
  1078. package/dist/es/components/utils/secured-by-magic.js +1 -1
  1079. package/dist/es/components/utils/secured-by-magic.js.map +1 -1
  1080. package/dist/es/components/utils/shared-logo.js +1 -1
  1081. package/dist/es/components/utils/shared-logo.js.map +1 -1
  1082. package/dist/es/index.js +1 -1
  1083. package/dist/es/lib/cn.js +2 -0
  1084. package/dist/es/lib/cn.js.map +1 -0
  1085. package/dist/es/lib/sva.js +2 -0
  1086. package/dist/es/lib/sva.js.map +1 -0
  1087. package/dist/es/presets.js +1 -1
  1088. package/dist/es/presets.js.map +1 -1
  1089. package/dist/es/recipes/button.js +1 -1
  1090. package/dist/es/recipes/button.js.map +1 -1
  1091. package/dist/es/recipes/callout.js +1 -1
  1092. package/dist/es/recipes/callout.js.map +1 -1
  1093. package/dist/es/recipes/card.js +1 -1
  1094. package/dist/es/recipes/card.js.map +1 -1
  1095. package/dist/es/recipes/modal.js +1 -1
  1096. package/dist/es/recipes/modal.js.map +1 -1
  1097. package/dist/es/recipes/overlay.js +1 -1
  1098. package/dist/es/recipes/overlay.js.map +1 -1
  1099. package/dist/es/recipes/text-input.js +1 -1
  1100. package/dist/es/recipes/text-input.js.map +1 -1
  1101. package/dist/es/recipes/text.js +1 -1
  1102. package/dist/es/recipes/text.js.map +1 -1
  1103. package/dist/es/recipes/toast.js +1 -1
  1104. package/dist/es/recipes/toast.js.map +1 -1
  1105. package/dist/es/recipes/tooltip.js +1 -1
  1106. package/dist/es/recipes/tooltip.js.map +1 -1
  1107. package/dist/es/styles/keyframes.js +1 -1
  1108. package/dist/es/styles/keyframes.js.map +1 -1
  1109. package/dist/es/styles/semantic-tokens.js +1 -1
  1110. package/dist/es/styles/semantic-tokens.js.map +1 -1
  1111. package/dist/es/styles/text-styles.js +1 -1
  1112. package/dist/es/styles/text-styles.js.map +1 -1
  1113. package/dist/es/styles/tokens.js +1 -1
  1114. package/dist/es/styles/tokens.js.map +1 -1
  1115. package/dist/styles.css +1 -0
  1116. package/dist/types/components/containers/button.d.ts +2 -1
  1117. package/dist/types/components/containers/button.d.ts.map +1 -1
  1118. package/dist/types/components/containers/card.d.ts.map +1 -1
  1119. package/dist/types/components/containers/content.d.ts.map +1 -1
  1120. package/dist/types/components/containers/drawer.d.ts.map +1 -1
  1121. package/dist/types/components/containers/footer.d.ts.map +1 -1
  1122. package/dist/types/components/containers/header.d.ts +1 -2
  1123. package/dist/types/components/containers/header.d.ts.map +1 -1
  1124. package/dist/types/components/containers/menu.d.ts.map +1 -1
  1125. package/dist/types/components/containers/overlay.d.ts.map +1 -1
  1126. package/dist/types/components/external/paypal-button.d.ts.map +1 -1
  1127. package/dist/types/components/feedback/animated-checkmark.d.ts.map +1 -1
  1128. package/dist/types/components/feedback/animated-dismiss.d.ts.map +1 -1
  1129. package/dist/types/components/feedback/animated-spinner.d.ts.map +1 -1
  1130. package/dist/types/components/feedback/callout.d.ts.map +1 -1
  1131. package/dist/types/components/feedback/loading-spinner.d.ts.map +1 -1
  1132. package/dist/types/components/feedback/progress-bar.d.ts.map +1 -1
  1133. package/dist/types/components/feedback/skeleton.d.ts.map +1 -1
  1134. package/dist/types/components/feedback/status-icon.d.ts.map +1 -1
  1135. package/dist/types/components/feedback/tooltip.d.ts.map +1 -1
  1136. package/dist/types/components/icons/ico-add.d.ts.map +1 -1
  1137. package/dist/types/components/icons/ico-airdrop.d.ts.map +1 -1
  1138. package/dist/types/components/icons/ico-alert-circle-fill.d.ts.map +1 -1
  1139. package/dist/types/components/icons/ico-alert-circle.d.ts.map +1 -1
  1140. package/dist/types/components/icons/ico-arrow-down.d.ts.map +1 -1
  1141. package/dist/types/components/icons/ico-arrow-left.d.ts.map +1 -1
  1142. package/dist/types/components/icons/ico-arrow-right.d.ts.map +1 -1
  1143. package/dist/types/components/icons/ico-arrow-up.d.ts.map +1 -1
  1144. package/dist/types/components/icons/ico-asterisk-with-shield.d.ts.map +1 -1
  1145. package/dist/types/components/icons/ico-asterisk.d.ts.map +1 -1
  1146. package/dist/types/components/icons/ico-astronaut.d.ts.map +1 -1
  1147. package/dist/types/components/icons/ico-atom.d.ts.map +1 -1
  1148. package/dist/types/components/icons/ico-badge.d.ts.map +1 -1
  1149. package/dist/types/components/icons/ico-bank.d.ts.map +1 -1
  1150. package/dist/types/components/icons/ico-bell-notification.d.ts.map +1 -1
  1151. package/dist/types/components/icons/ico-bell.d.ts.map +1 -1
  1152. package/dist/types/components/icons/ico-block.d.ts.map +1 -1
  1153. package/dist/types/components/icons/ico-branding.d.ts.map +1 -1
  1154. package/dist/types/components/icons/ico-caret-down.d.ts.map +1 -1
  1155. package/dist/types/components/icons/ico-caret-left.d.ts.map +1 -1
  1156. package/dist/types/components/icons/ico-caret-right.d.ts.map +1 -1
  1157. package/dist/types/components/icons/ico-caret-up.d.ts.map +1 -1
  1158. package/dist/types/components/icons/ico-checkmark-circle-fill.d.ts.map +1 -1
  1159. package/dist/types/components/icons/ico-checkmark-circle.d.ts.map +1 -1
  1160. package/dist/types/components/icons/ico-checkmark.d.ts.map +1 -1
  1161. package/dist/types/components/icons/ico-clock-fill.d.ts.map +1 -1
  1162. package/dist/types/components/icons/ico-code-editor.d.ts.map +1 -1
  1163. package/dist/types/components/icons/ico-code-sandbox.d.ts.map +1 -1
  1164. package/dist/types/components/icons/ico-code.d.ts.map +1 -1
  1165. package/dist/types/components/icons/ico-coins.d.ts.map +1 -1
  1166. package/dist/types/components/icons/ico-command-line.d.ts.map +1 -1
  1167. package/dist/types/components/icons/ico-comment.d.ts.map +1 -1
  1168. package/dist/types/components/icons/ico-copy.d.ts.map +1 -1
  1169. package/dist/types/components/icons/ico-credit-card.d.ts.map +1 -1
  1170. package/dist/types/components/icons/ico-dedicated.d.ts.map +1 -1
  1171. package/dist/types/components/icons/ico-diamond.d.ts.map +1 -1
  1172. package/dist/types/components/icons/ico-dismiss-circle-fill.d.ts.map +1 -1
  1173. package/dist/types/components/icons/ico-dismiss-circle.d.ts.map +1 -1
  1174. package/dist/types/components/icons/ico-dismiss.d.ts.map +1 -1
  1175. package/dist/types/components/icons/ico-doc.d.ts.map +1 -1
  1176. package/dist/types/components/icons/ico-download.d.ts.map +1 -1
  1177. package/dist/types/components/icons/ico-edit-email.d.ts.map +1 -1
  1178. package/dist/types/components/icons/ico-edit.d.ts.map +1 -1
  1179. package/dist/types/components/icons/ico-email-fill.d.ts.map +1 -1
  1180. package/dist/types/components/icons/ico-email-open.d.ts.map +1 -1
  1181. package/dist/types/components/icons/ico-email.d.ts.map +1 -1
  1182. package/dist/types/components/icons/ico-exit.d.ts.map +1 -1
  1183. package/dist/types/components/icons/ico-expand.d.ts.map +1 -1
  1184. package/dist/types/components/icons/ico-expiration.d.ts.map +1 -1
  1185. package/dist/types/components/icons/ico-external-link.d.ts.map +1 -1
  1186. package/dist/types/components/icons/ico-eye-closed.d.ts.map +1 -1
  1187. package/dist/types/components/icons/ico-eye-opened.d.ts.map +1 -1
  1188. package/dist/types/components/icons/ico-fingerprint-fill.d.ts.map +1 -1
  1189. package/dist/types/components/icons/ico-fingerprint.d.ts.map +1 -1
  1190. package/dist/types/components/icons/ico-gas.d.ts.map +1 -1
  1191. package/dist/types/components/icons/ico-gift.d.ts.map +1 -1
  1192. package/dist/types/components/icons/ico-globe.d.ts.map +1 -1
  1193. package/dist/types/components/icons/ico-grid-fill.d.ts.map +1 -1
  1194. package/dist/types/components/icons/ico-grid.d.ts.map +1 -1
  1195. package/dist/types/components/icons/ico-guide.d.ts.map +1 -1
  1196. package/dist/types/components/icons/ico-home-fill.d.ts.map +1 -1
  1197. package/dist/types/components/icons/ico-home.d.ts.map +1 -1
  1198. package/dist/types/components/icons/ico-hourglass.d.ts.map +1 -1
  1199. package/dist/types/components/icons/ico-info-circle-fill.d.ts.map +1 -1
  1200. package/dist/types/components/icons/ico-info-circle.d.ts.map +1 -1
  1201. package/dist/types/components/icons/ico-kebab.d.ts.map +1 -1
  1202. package/dist/types/components/icons/ico-key.d.ts.map +1 -1
  1203. package/dist/types/components/icons/ico-lightbulb-fill.d.ts.map +1 -1
  1204. package/dist/types/components/icons/ico-lightbulb.d.ts.map +1 -1
  1205. package/dist/types/components/icons/ico-lightning-fill.d.ts.map +1 -1
  1206. package/dist/types/components/icons/ico-lightning.d.ts.map +1 -1
  1207. package/dist/types/components/icons/ico-link.d.ts.map +1 -1
  1208. package/dist/types/components/icons/ico-loading.d.ts.map +1 -1
  1209. package/dist/types/components/icons/ico-lock-locked-fill.d.ts.map +1 -1
  1210. package/dist/types/components/icons/ico-lock-locked.d.ts.map +1 -1
  1211. package/dist/types/components/icons/ico-lock-password.d.ts.map +1 -1
  1212. package/dist/types/components/icons/ico-lock-unlocked-fill.d.ts.map +1 -1
  1213. package/dist/types/components/icons/ico-lock-unlocked.d.ts.map +1 -1
  1214. package/dist/types/components/icons/ico-login-form.d.ts.map +1 -1
  1215. package/dist/types/components/icons/ico-magic.d.ts.map +1 -1
  1216. package/dist/types/components/icons/ico-megaphone.d.ts.map +1 -1
  1217. package/dist/types/components/icons/ico-menu.d.ts.map +1 -1
  1218. package/dist/types/components/icons/ico-message-fill.d.ts.map +1 -1
  1219. package/dist/types/components/icons/ico-message.d.ts.map +1 -1
  1220. package/dist/types/components/icons/ico-mfa.d.ts.map +1 -1
  1221. package/dist/types/components/icons/ico-minimize.d.ts.map +1 -1
  1222. package/dist/types/components/icons/ico-minus.d.ts.map +1 -1
  1223. package/dist/types/components/icons/ico-mobile2fa.d.ts.map +1 -1
  1224. package/dist/types/components/icons/ico-mobile2fafill.d.ts.map +1 -1
  1225. package/dist/types/components/icons/ico-newton.d.ts.map +1 -1
  1226. package/dist/types/components/icons/ico-open-book.d.ts.map +1 -1
  1227. package/dist/types/components/icons/ico-paper-plane.d.ts.map +1 -1
  1228. package/dist/types/components/icons/ico-passport.d.ts.map +1 -1
  1229. package/dist/types/components/icons/ico-passwordless.d.ts.map +1 -1
  1230. package/dist/types/components/icons/ico-pending-connection.d.ts.map +1 -1
  1231. package/dist/types/components/icons/ico-phone.d.ts.map +1 -1
  1232. package/dist/types/components/icons/ico-plus.d.ts.map +1 -1
  1233. package/dist/types/components/icons/ico-polygon-gas-testnet.d.ts.map +1 -1
  1234. package/dist/types/components/icons/ico-polygon-gas.d.ts.map +1 -1
  1235. package/dist/types/components/icons/ico-price.d.ts.map +1 -1
  1236. package/dist/types/components/icons/ico-qrcode.d.ts.map +1 -1
  1237. package/dist/types/components/icons/ico-question-circle-fill.d.ts.map +1 -1
  1238. package/dist/types/components/icons/ico-question-circle.d.ts.map +1 -1
  1239. package/dist/types/components/icons/ico-refresh-circle-fill.d.ts.map +1 -1
  1240. package/dist/types/components/icons/ico-refresh.d.ts.map +1 -1
  1241. package/dist/types/components/icons/ico-remove.d.ts.map +1 -1
  1242. package/dist/types/components/icons/ico-rocket-fill.d.ts.map +1 -1
  1243. package/dist/types/components/icons/ico-search.d.ts.map +1 -1
  1244. package/dist/types/components/icons/ico-settings-fill.d.ts.map +1 -1
  1245. package/dist/types/components/icons/ico-settings.d.ts.map +1 -1
  1246. package/dist/types/components/icons/ico-shapes.d.ts.map +1 -1
  1247. package/dist/types/components/icons/ico-share.d.ts.map +1 -1
  1248. package/dist/types/components/icons/ico-shield-approved.d.ts.map +1 -1
  1249. package/dist/types/components/icons/ico-shield-rejected.d.ts.map +1 -1
  1250. package/dist/types/components/icons/ico-shield.d.ts.map +1 -1
  1251. package/dist/types/components/icons/ico-shuffle.d.ts.map +1 -1
  1252. package/dist/types/components/icons/ico-sidebar.d.ts.map +1 -1
  1253. package/dist/types/components/icons/ico-social.d.ts.map +1 -1
  1254. package/dist/types/components/icons/ico-sold-out-tag.d.ts.map +1 -1
  1255. package/dist/types/components/icons/ico-sparkles.d.ts.map +1 -1
  1256. package/dist/types/components/icons/ico-star.d.ts.map +1 -1
  1257. package/dist/types/components/icons/ico-swap.d.ts.map +1 -1
  1258. package/dist/types/components/icons/ico-swatches.d.ts.map +1 -1
  1259. package/dist/types/components/icons/ico-switch.d.ts.map +1 -1
  1260. package/dist/types/components/icons/ico-team.d.ts.map +1 -1
  1261. package/dist/types/components/icons/ico-thumb-down.d.ts.map +1 -1
  1262. package/dist/types/components/icons/ico-thumb-up.d.ts.map +1 -1
  1263. package/dist/types/components/icons/ico-tradeup.d.ts.map +1 -1
  1264. package/dist/types/components/icons/ico-trash.d.ts.map +1 -1
  1265. package/dist/types/components/icons/ico-unlink.d.ts.map +1 -1
  1266. package/dist/types/components/icons/ico-upload.d.ts.map +1 -1
  1267. package/dist/types/components/icons/ico-users.d.ts.map +1 -1
  1268. package/dist/types/components/icons/ico-wallet-fill.d.ts.map +1 -1
  1269. package/dist/types/components/icons/ico-wallet.d.ts.map +1 -1
  1270. package/dist/types/components/icons/ico-wand.d.ts.map +1 -1
  1271. package/dist/types/components/icons/ico-warning-fill.d.ts.map +1 -1
  1272. package/dist/types/components/icons/ico-warning.d.ts.map +1 -1
  1273. package/dist/types/components/info/copy-button.d.ts.map +1 -1
  1274. package/dist/types/components/info/email-wbr.d.ts.map +1 -1
  1275. package/dist/types/components/info/security-otp.d.ts.map +1 -1
  1276. package/dist/types/components/info/text-box.d.ts.map +1 -1
  1277. package/dist/types/components/info/wallet-address.d.ts.map +1 -1
  1278. package/dist/types/components/inputs/phone-input.d.ts.map +1 -1
  1279. package/dist/types/components/inputs/pincode-input.d.ts.map +1 -1
  1280. package/dist/types/components/inputs/text-input.d.ts.map +1 -1
  1281. package/dist/types/components/layouts/error.d.ts.map +1 -1
  1282. package/dist/types/components/layouts/index.d.ts +0 -6
  1283. package/dist/types/components/layouts/index.d.ts.map +1 -1
  1284. package/dist/types/components/layouts/page.d.ts.map +1 -1
  1285. package/dist/types/components/list-items/activity-list-item.d.ts.map +1 -1
  1286. package/dist/types/components/list-items/navigation-button.d.ts.map +1 -1
  1287. package/dist/types/components/list-items/nft-tile.d.ts.map +1 -1
  1288. package/dist/types/components/list-items/token-list-item.d.ts.map +1 -1
  1289. package/dist/types/components/list-items/transaction-row.d.ts.map +1 -1
  1290. package/dist/types/components/logos/logo-algorand-mono.d.ts.map +1 -1
  1291. package/dist/types/components/logos/logo-apple-mono.d.ts.map +1 -1
  1292. package/dist/types/components/logos/logo-aptos-mono.d.ts.map +1 -1
  1293. package/dist/types/components/logos/logo-arbitrum-mono.d.ts.map +1 -1
  1294. package/dist/types/components/logos/logo-arbitrum-one-mono.d.ts.map +1 -1
  1295. package/dist/types/components/logos/logo-astar-mono.d.ts.map +1 -1
  1296. package/dist/types/components/logos/logo-auth0-mono.d.ts.map +1 -1
  1297. package/dist/types/components/logos/logo-avalanche-mono.d.ts.map +1 -1
  1298. package/dist/types/components/logos/logo-azure-mono.d.ts.map +1 -1
  1299. package/dist/types/components/logos/logo-base-mono.d.ts.map +1 -1
  1300. package/dist/types/components/logos/logo-berachain-mono.d.ts.map +1 -1
  1301. package/dist/types/components/logos/logo-binance-mono.d.ts.map +1 -1
  1302. package/dist/types/components/logos/logo-bit-bucket-mono.d.ts.map +1 -1
  1303. package/dist/types/components/logos/logo-bitcoin-mono.d.ts.map +1 -1
  1304. package/dist/types/components/logos/logo-bnb-mono.d.ts.map +1 -1
  1305. package/dist/types/components/logos/logo-celo-mono.d.ts.map +1 -1
  1306. package/dist/types/components/logos/logo-chiliz-mono.d.ts.map +1 -1
  1307. package/dist/types/components/logos/logo-cognito-mono.d.ts.map +1 -1
  1308. package/dist/types/components/logos/logo-community-gaming-mono.d.ts.map +1 -1
  1309. package/dist/types/components/logos/logo-cosmos-mono.d.ts.map +1 -1
  1310. package/dist/types/components/logos/logo-discord-mono.d.ts.map +1 -1
  1311. package/dist/types/components/logos/logo-ethereum-circle-mono.d.ts.map +1 -1
  1312. package/dist/types/components/logos/logo-ethereum-mono.d.ts.map +1 -1
  1313. package/dist/types/components/logos/logo-etherlink-mono.d.ts.map +1 -1
  1314. package/dist/types/components/logos/logo-facebook-mono.d.ts.map +1 -1
  1315. package/dist/types/components/logos/logo-flare-mono.d.ts.map +1 -1
  1316. package/dist/types/components/logos/logo-flow-mono.d.ts.map +1 -1
  1317. package/dist/types/components/logos/logo-generic-token-mono.d.ts.map +1 -1
  1318. package/dist/types/components/logos/logo-git-hub-mono.d.ts.map +1 -1
  1319. package/dist/types/components/logos/logo-git-lab-mono.d.ts.map +1 -1
  1320. package/dist/types/components/logos/logo-google-mono.d.ts.map +1 -1
  1321. package/dist/types/components/logos/logo-guild-mono.d.ts.map +1 -1
  1322. package/dist/types/components/logos/logo-harmony-mono.d.ts.map +1 -1
  1323. package/dist/types/components/logos/logo-horizen-mono.d.ts.map +1 -1
  1324. package/dist/types/components/logos/logo-icon-mono.d.ts.map +1 -1
  1325. package/dist/types/components/logos/logo-immutable-x-mono.d.ts.map +1 -1
  1326. package/dist/types/components/logos/logo-instagram-mono.d.ts.map +1 -1
  1327. package/dist/types/components/logos/logo-kadena-mono.d.ts.map +1 -1
  1328. package/dist/types/components/logos/logo-kaito-mono.d.ts.map +1 -1
  1329. package/dist/types/components/logos/logo-link-by-stripe-mono.d.ts.map +1 -1
  1330. package/dist/types/components/logos/logo-link-mono.d.ts.map +1 -1
  1331. package/dist/types/components/logos/logo-linked-in-mono.d.ts.map +1 -1
  1332. package/dist/types/components/logos/logo-loopring-mono.d.ts.map +1 -1
  1333. package/dist/types/components/logos/logo-microsoft-mono.d.ts.map +1 -1
  1334. package/dist/types/components/logos/logo-mode-mobile-mono.d.ts.map +1 -1
  1335. package/dist/types/components/logos/logo-moonbeam-mono.d.ts.map +1 -1
  1336. package/dist/types/components/logos/logo-near-mono.d.ts.map +1 -1
  1337. package/dist/types/components/logos/logo-newton-mono.d.ts.map +1 -1
  1338. package/dist/types/components/logos/logo-okx-mono.d.ts.map +1 -1
  1339. package/dist/types/components/logos/logo-onramper-mono.d.ts.map +1 -1
  1340. package/dist/types/components/logos/logo-optimism-mono.d.ts.map +1 -1
  1341. package/dist/types/components/logos/logo-pay-pal-mono.d.ts.map +1 -1
  1342. package/dist/types/components/logos/logo-pay-pal-wordmark-mono.d.ts.map +1 -1
  1343. package/dist/types/components/logos/logo-poa-mono.d.ts.map +1 -1
  1344. package/dist/types/components/logos/logo-polkadot-mono.d.ts.map +1 -1
  1345. package/dist/types/components/logos/logo-polygon-mono.d.ts.map +1 -1
  1346. package/dist/types/components/logos/logo-polymarket-mono.d.ts.map +1 -1
  1347. package/dist/types/components/logos/logo-rarichain-mono.d.ts.map +1 -1
  1348. package/dist/types/components/logos/logo-reown-mono.d.ts.map +1 -1
  1349. package/dist/types/components/logos/logo-sardine-mono.d.ts.map +1 -1
  1350. package/dist/types/components/logos/logo-sei-mono.d.ts.map +1 -1
  1351. package/dist/types/components/logos/logo-solana-mono.d.ts.map +1 -1
  1352. package/dist/types/components/logos/logo-soneium-mono.d.ts.map +1 -1
  1353. package/dist/types/components/logos/logo-stability-mono.d.ts.map +1 -1
  1354. package/dist/types/components/logos/logo-sui-mono.d.ts.map +1 -1
  1355. package/dist/types/components/logos/logo-telegram-mono.d.ts.map +1 -1
  1356. package/dist/types/components/logos/logo-tezos-mono.d.ts.map +1 -1
  1357. package/dist/types/components/logos/logo-tik-tok-mono.d.ts.map +1 -1
  1358. package/dist/types/components/logos/logo-twitch-mono.d.ts.map +1 -1
  1359. package/dist/types/components/logos/logo-twitter-mono.d.ts.map +1 -1
  1360. package/dist/types/components/logos/logo-wallet-connect-mono.d.ts.map +1 -1
  1361. package/dist/types/components/logos/logo-warpcast-mono.d.ts.map +1 -1
  1362. package/dist/types/components/logos/logo-wax-mono.d.ts.map +1 -1
  1363. package/dist/types/components/logos/logo-xdc-mono.d.ts.map +1 -1
  1364. package/dist/types/components/logos/logo-zetachain-mono.d.ts.map +1 -1
  1365. package/dist/types/components/logos/logo-zilliqa-mono.d.ts.map +1 -1
  1366. package/dist/types/components/logos/logo-zksync-mono.d.ts.map +1 -1
  1367. package/dist/types/components/primitives/button.d.ts.map +1 -1
  1368. package/dist/types/components/primitives/checkbox.d.ts.map +1 -1
  1369. package/dist/types/components/primitives/dropdown-selector.d.ts.map +1 -1
  1370. package/dist/types/components/primitives/popover.d.ts.map +1 -1
  1371. package/dist/types/components/primitives/radio.d.ts.map +1 -1
  1372. package/dist/types/components/primitives/segmented-control.d.ts.map +1 -1
  1373. package/dist/types/components/primitives/switch.d.ts.map +1 -1
  1374. package/dist/types/components/primitives/text.d.ts.map +1 -1
  1375. package/dist/types/components/sections/index.d.ts +0 -4
  1376. package/dist/types/components/sections/index.d.ts.map +1 -1
  1377. package/dist/types/components/sections/verify-pincode.d.ts.map +1 -1
  1378. package/dist/types/components/utils/client-asset-logo.d.ts.map +1 -1
  1379. package/dist/types/components/utils/qr-code.d.ts.map +1 -1
  1380. package/dist/types/components/utils/secured-by-magic.d.ts.map +1 -1
  1381. package/dist/types/components/utils/shared-logo.d.ts.map +1 -1
  1382. package/dist/types/lib/cn.d.ts +3 -0
  1383. package/dist/types/lib/cn.d.ts.map +1 -0
  1384. package/dist/types/lib/sva.d.ts +18 -0
  1385. package/dist/types/lib/sva.d.ts.map +1 -0
  1386. package/dist/types/presets.d.ts +4 -1
  1387. package/dist/types/presets.d.ts.map +1 -1
  1388. package/dist/types/recipes/button.d.ts +1 -224
  1389. package/dist/types/recipes/button.d.ts.map +1 -1
  1390. package/dist/types/recipes/callout.d.ts +1 -188
  1391. package/dist/types/recipes/callout.d.ts.map +1 -1
  1392. package/dist/types/recipes/card.d.ts +14 -102
  1393. package/dist/types/recipes/card.d.ts.map +1 -1
  1394. package/dist/types/recipes/modal.d.ts +2 -89
  1395. package/dist/types/recipes/modal.d.ts.map +1 -1
  1396. package/dist/types/recipes/overlay.d.ts +2 -36
  1397. package/dist/types/recipes/overlay.d.ts.map +1 -1
  1398. package/dist/types/recipes/text-input.d.ts +1 -92
  1399. package/dist/types/recipes/text-input.d.ts.map +1 -1
  1400. package/dist/types/recipes/text.d.ts +8 -43
  1401. package/dist/types/recipes/text.d.ts.map +1 -1
  1402. package/dist/types/recipes/toast.d.ts +2 -72
  1403. package/dist/types/recipes/toast.d.ts.map +1 -1
  1404. package/dist/types/recipes/tooltip.d.ts +1 -140
  1405. package/dist/types/recipes/tooltip.d.ts.map +1 -1
  1406. package/dist/types/styles/keyframes.d.ts +125 -1
  1407. package/dist/types/styles/keyframes.d.ts.map +1 -1
  1408. package/dist/types/styles/semantic-tokens.d.ts +148 -259
  1409. package/dist/types/styles/semantic-tokens.d.ts.map +1 -1
  1410. package/dist/types/styles/text-styles.d.ts +152 -1
  1411. package/dist/types/styles/text-styles.d.ts.map +1 -1
  1412. package/dist/types/styles/tokens.d.ts +84 -224
  1413. package/dist/types/styles/tokens.d.ts.map +1 -1
  1414. package/package.json +13 -11
  1415. package/dist/cjs/components/layouts/dialogue.js +0 -2
  1416. package/dist/cjs/components/layouts/dialogue.js.map +0 -1
  1417. package/dist/cjs/components/layouts/passport-page.js +0 -2
  1418. package/dist/cjs/components/layouts/passport-page.js.map +0 -1
  1419. package/dist/cjs/components/layouts/wallet-page/account-menu.js +0 -2
  1420. package/dist/cjs/components/layouts/wallet-page/account-menu.js.map +0 -1
  1421. package/dist/cjs/components/layouts/wallet-page/actions.js +0 -2
  1422. package/dist/cjs/components/layouts/wallet-page/actions.js.map +0 -1
  1423. package/dist/cjs/components/layouts/wallet-page/address.js +0 -2
  1424. package/dist/cjs/components/layouts/wallet-page/address.js.map +0 -1
  1425. package/dist/cjs/components/layouts/wallet-page/connection-menu.js +0 -2
  1426. package/dist/cjs/components/layouts/wallet-page/connection-menu.js.map +0 -1
  1427. package/dist/cjs/components/layouts/wallet-page/fiat.js +0 -2
  1428. package/dist/cjs/components/layouts/wallet-page/fiat.js.map +0 -1
  1429. package/dist/cjs/components/layouts/wallet-page/index.js +0 -2
  1430. package/dist/cjs/components/layouts/wallet-page/index.js.map +0 -1
  1431. package/dist/cjs/components/sections/wallet-actions.js +0 -2
  1432. package/dist/cjs/components/sections/wallet-actions.js.map +0 -1
  1433. package/dist/cjs/components/sections/wallet-navigation.js +0 -2
  1434. package/dist/cjs/components/sections/wallet-navigation.js.map +0 -1
  1435. package/dist/es/components/layouts/dialogue.js +0 -2
  1436. package/dist/es/components/layouts/dialogue.js.map +0 -1
  1437. package/dist/es/components/layouts/passport-page.js +0 -2
  1438. package/dist/es/components/layouts/passport-page.js.map +0 -1
  1439. package/dist/es/components/layouts/wallet-page/account-menu.js +0 -2
  1440. package/dist/es/components/layouts/wallet-page/account-menu.js.map +0 -1
  1441. package/dist/es/components/layouts/wallet-page/actions.js +0 -2
  1442. package/dist/es/components/layouts/wallet-page/actions.js.map +0 -1
  1443. package/dist/es/components/layouts/wallet-page/address.js +0 -2
  1444. package/dist/es/components/layouts/wallet-page/address.js.map +0 -1
  1445. package/dist/es/components/layouts/wallet-page/connection-menu.js +0 -2
  1446. package/dist/es/components/layouts/wallet-page/connection-menu.js.map +0 -1
  1447. package/dist/es/components/layouts/wallet-page/fiat.js +0 -2
  1448. package/dist/es/components/layouts/wallet-page/fiat.js.map +0 -1
  1449. package/dist/es/components/layouts/wallet-page/index.js +0 -2
  1450. package/dist/es/components/layouts/wallet-page/index.js.map +0 -1
  1451. package/dist/es/components/sections/wallet-actions.js +0 -2
  1452. package/dist/es/components/sections/wallet-actions.js.map +0 -1
  1453. package/dist/es/components/sections/wallet-navigation.js +0 -2
  1454. package/dist/es/components/sections/wallet-navigation.js.map +0 -1
  1455. package/dist/panda.buildinfo.json +0 -1
  1456. package/dist/types/components/layouts/dialogue.d.ts +0 -14
  1457. package/dist/types/components/layouts/dialogue.d.ts.map +0 -1
  1458. package/dist/types/components/layouts/passport-page.d.ts +0 -44
  1459. package/dist/types/components/layouts/passport-page.d.ts.map +0 -1
  1460. package/dist/types/components/layouts/wallet-page/account-menu.d.ts +0 -10
  1461. package/dist/types/components/layouts/wallet-page/account-menu.d.ts.map +0 -1
  1462. package/dist/types/components/layouts/wallet-page/actions.d.ts +0 -14
  1463. package/dist/types/components/layouts/wallet-page/actions.d.ts.map +0 -1
  1464. package/dist/types/components/layouts/wallet-page/address.d.ts +0 -6
  1465. package/dist/types/components/layouts/wallet-page/address.d.ts.map +0 -1
  1466. package/dist/types/components/layouts/wallet-page/connection-menu.d.ts +0 -12
  1467. package/dist/types/components/layouts/wallet-page/connection-menu.d.ts.map +0 -1
  1468. package/dist/types/components/layouts/wallet-page/fiat.d.ts +0 -6
  1469. package/dist/types/components/layouts/wallet-page/fiat.d.ts.map +0 -1
  1470. package/dist/types/components/layouts/wallet-page/index.d.ts +0 -13
  1471. package/dist/types/components/layouts/wallet-page/index.d.ts.map +0 -1
  1472. package/dist/types/components/sections/wallet-actions.d.ts +0 -16
  1473. package/dist/types/components/sections/wallet-actions.d.ts.map +0 -1
  1474. package/dist/types/components/sections/wallet-navigation.d.ts +0 -27
  1475. package/dist/types/components/sections/wallet-navigation.d.ts.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";var t=require("react/jsx-runtime"),j=require("@styled/tokens"),U=require("../icons/ico-caret-down.js"),V=require("../icons/ico-caret-up.js"),M=require("../icons/ico-checkmark.js"),T=require("../icons/ico-question-circle-fill.js"),r=require("react"),m=require("@styled/jsx"),z=require("@styled/css");require("../feedback/callout.js"),require("../feedback/progress-bar.js"),require("./button.js"),require("./checkbox.js"),require("./popover.js"),require("./radio.js"),require("./segmented-control.js"),require("./switch.js");var S=require("./text.js");require("./portal.js"),require("../../hooks/useToast.js"),require("../../recipes/toast.js");var Q=require("../feedback/tooltip.js"),y=require("react-aria");const H={sm:{caret:16,check:14,height:"2.625rem",top:48,width:"0.75rem",mult:2.25},md:{caret:17,check:15,height:"2.8125rem",top:52,width:"0.85rem",mult:2.25},lg:{caret:18,check:16,height:"3rem",top:55,width:"1rem",mult:2.5}},P=r.createContext({selectedOption:null,setSelectedOption:()=>{}}),A=({value:n,label:a,size:d="lg",isFocused:k,optionHoverColor:h})=>{const{selectedOption:v,setSelectedOption:p}=r.useContext(P),i=v?.value===n,s=H[d],C=r.useCallback(()=>{p({value:n,label:a})},[p,n,a]);return t.jsxs(m.HStack,{py:1.5,gap:2,bg:i?"brand.base":k?"brand.lightest":"",_hover:i?{}:{bg:h||"brand.lightest"},onClick:C,style:{paddingLeft:s.width,paddingRight:s.width},children:[t.jsx(m.Box,{style:{minWidth:s.width},children:i&&t.jsx(M.default,{width:s.check,height:s.check,color:j.token("colors.text.quaternary")})}),t.jsx(S.default,{size:d,fontWeight:"medium",fontColor:i?"text.quaternary":"text.primary",styles:{textAlign:"left"},children:a})]})},W=({children:n,onSelect:a,label:d,placeholder:k="Select one",selectedValue:h,size:v="lg",tooltipContent:p,disabled:i,viewMax:s=5,optionHoverColor:C,...F})=>{const[f,x]=r.useState(!1),[o,b]=r.useState(null),g=r.useRef(null),q=r.useRef(null),u=H[v],R=s*u.mult+1,B=r.useCallback(()=>{x(e=>!e),f||(b(null),setTimeout(()=>{var e;return(e=q.current)===null||e===void 0?void 0:e.focus()}))},[f]),L=r.useCallback(e=>{a(e.value),x(!1)},[a]),D=r.useMemo(()=>{const e=r.Children.toArray(n).find(l=>l.props.value===h);return e?e.props.label:k},[h,n]),{buttonProps:N}=y.useButton({...F,isDisabled:i,onPress:B},g),{focusProps:_,isFocusVisible:I}=y.useFocusRing(),{keyboardProps:K}=y.useKeyboard({onKeyDown:e=>{var l,c;if(!f)return;let w=o;const O=r.Children.toArray(n);switch(e.key){case"ArrowUp":e.preventDefault(),o===null?b(r.Children.count(n)-1):(w=o>0?o-1:r.Children.count(n)-1,b(w));break;case"ArrowDown":e.preventDefault(),o===null?b(0):(w=o<r.Children.count(n)-1?o+1:0,b(w));break;case"Enter":if(e.preventDefault(),(l=g.current)===null||l===void 0||l.focus(),o===null)return;if(o>=0&&o<O.length){const E=O[o];E&&a(E.props.value)}break;case"Escape":x(!1),(c=g.current)===null||c===void 0||c.focus();break}}});return r.useEffect(()=>{const e=l=>{var c;!((c=q.current)===null||c===void 0)&&c.contains(l.target)||x(!1)};return document.addEventListener("mousedown",e),()=>{document.removeEventListener("mousedown",e)}},[]),t.jsx(P.Provider,{value:{selectedOption:{value:h??"",label:D},setSelectedOption:L},children:t.jsxs(m.VStack,{gap:2,w:"full",alignItems:"flex-start",children:[(d||p)&&t.jsxs(m.HStack,{gap:2,pointerEvents:i?"none":"auto",opacity:i?.3:"",transition:"all linear 120ms",children:[d&&t.jsx(S.default,{size:"sm",fontWeight:"medium",children:d}),p&&t.jsx(Q.default,{content:p,children:t.jsx(T.default,{className:z.css({w:4,h:4,color:"neutral.primary"})})})]}),t.jsxs("button",{className:z.css({w:"full",h:"fit-content",bg:"surface.primary",borderWidth:"thin",borderColor:"neutral.secondary",rounded:"xl",transition:"all linear 120ms",position:"relative",cursor:"pointer",outlineColor:"brand.base",outlineStyle:I?"solid":"none",outlineWidth:"thick",outlineOffset:.5,_hover:{borderColor:"neutral.primary"},_disabled:{opacity:.3,pointerEvents:"none"}}),ref:g,...y.mergeProps(N,_,K),children:[t.jsxs(m.HStack,{w:"full",p:4,justifyContent:"space-between",style:{height:u.height},children:[t.jsx(S.default,{truncate:!0,size:v,fontColor:h?"text.primary":"text.tertiary",children:D}),f?t.jsx(V.default,{width:u.caret,height:u.caret,color:j.token("colors.brand.base")}):t.jsx(U.default,{width:u.caret,height:u.caret,color:j.token("colors.brand.base")})]}),f&&t.jsx(m.Box,{ref:q,tabIndex:-1,py:2,bg:"surface.primary",position:"absolute",w:"full",rounded:"input",boxShadow:"4px 8px 20px 0px rgba(0, 0, 0, 0.15)",style:{maxHeight:`${R}rem`,top:u.top},overflowY:"auto",outline:"none",zIndex:"max",children:r.Children.map(n,(e,l)=>r.cloneElement(e,{isFocused:l===o,size:v,optionHoverColor:C}))})]})]})})};A.displayName="DropdownOption",W.displayName="DropdownSelector",exports.DropdownOption=A,exports.DropdownSelector=W;
1
+ "use strict";var t=require("react/jsx-runtime"),I=require("../icons/ico-caret-down.js"),M=require("../icons/ico-caret-up.js"),T=require("../icons/ico-checkmark.js"),U=require("../icons/ico-question-circle-fill.js"),r=require("react"),j=require("../../lib/cn.js");require("../feedback/callout.js"),require("./button.js"),require("./checkbox.js"),require("./popover.js"),require("./radio.js"),require("./segmented-control.js"),require("./switch.js");var D=require("./text.js");require("./portal.js"),require("../../hooks/useToast.js");var V=require("../feedback/tooltip.js"),C=require("react-aria");const z={sm:{caret:16,check:14,height:"2.625rem",top:48,width:"0.75rem",mult:2.25},md:{caret:17,check:15,height:"2.8125rem",top:52,width:"0.85rem",mult:2.25},lg:{caret:18,check:16,height:"3rem",top:55,width:"1rem",mult:2.5}},E=r.createContext({selectedOption:null,setSelectedOption:()=>{}}),A=({value:n,label:a,size:d="lg",isFocused:q,optionHoverColor:p})=>{const{selectedOption:m,setSelectedOption:h}=r.useContext(E),i=m?.value===n,s=z[d],b=r.useCallback(()=>{h({value:n,label:a})},[h,n,a]);return t.jsxs("div",{className:j.cn("flex flex-row items-center py-1.5 gap-2",i?"bg-brand-base":q?"bg-brand-lightest":"",!i&&`hover:bg-${p||"brand-lightest"}`),role:"option",tabIndex:0,"aria-selected":i,onClick:b,onKeyDown:x=>{(x.key==="Enter"||x.key===" ")&&b()},style:{paddingLeft:s.width,paddingRight:s.width},children:[t.jsx("div",{style:{minWidth:s.width},children:i&&t.jsx(T.default,{width:s.check,height:s.check,color:"var(--color-text-quaternary)"})}),t.jsx(D.default,{size:d,fontWeight:"medium",fontColor:i?"text.quaternary":"text.primary",styles:{textAlign:"left"},children:a})]})},F=({children:n,onSelect:a,label:d,placeholder:q="Select one",selectedValue:p,size:m="lg",tooltipContent:h,disabled:i,viewMax:s=5,optionHoverColor:b,...x})=>{const[v,w]=r.useState(!1),[l,f]=r.useState(null),g=r.useRef(null),k=r.useRef(null),u=z[m],P=s*u.mult+1,R=r.useCallback(()=>{w(e=>!e),v||(f(null),setTimeout(()=>{var e;return(e=k.current)===null||e===void 0?void 0:e.focus()}))},[v]),_=r.useCallback(e=>{a(e.value),w(!1)},[a]),S=r.useMemo(()=>{const e=r.Children.toArray(n).find(o=>o.props.value===p);return e?e.props.label:q},[p,n]),{buttonProps:H}=C.useButton({...x,isDisabled:i,onPress:R},g),{focusProps:K,isFocusVisible:L}=C.useFocusRing(),{keyboardProps:W}=C.useKeyboard({onKeyDown:e=>{var o,c;if(!v)return;let y=l;const N=r.Children.toArray(n);switch(e.key){case"ArrowUp":e.preventDefault(),l===null?f(r.Children.count(n)-1):(y=l>0?l-1:r.Children.count(n)-1,f(y));break;case"ArrowDown":e.preventDefault(),l===null?f(0):(y=l<r.Children.count(n)-1?l+1:0,f(y));break;case"Enter":if(e.preventDefault(),(o=g.current)===null||o===void 0||o.focus(),l===null)return;if(l>=0&&l<N.length){const O=N[l];O&&a(O.props.value)}break;case"Escape":w(!1),(c=g.current)===null||c===void 0||c.focus();break}}});return r.useEffect(()=>{const e=o=>{var c;!((c=k.current)===null||c===void 0)&&c.contains(o.target)||w(!1)};return document.addEventListener("mousedown",e),()=>{document.removeEventListener("mousedown",e)}},[]),t.jsx(E.Provider,{value:{selectedOption:{value:p??"",label:S},setSelectedOption:_},children:t.jsxs("div",{className:"flex flex-col gap-2 w-full items-start",children:[(d||h)&&t.jsxs("div",{className:j.cn("flex flex-row items-center gap-2 transition-all duration-[120ms] linear",i?"pointer-events-none opacity-30":"pointer-events-auto"),children:[d&&t.jsx(D.default,{size:"sm",fontWeight:"medium",children:d}),h&&t.jsx(V.default,{content:h,children:t.jsx(U.default,{className:"w-4 h-4 text-neutral-primary"})})]}),t.jsxs("button",{className:j.cn("w-full h-fit bg-surface-primary border border-neutral-secondary rounded-xl transition-all duration-[120ms] linear relative cursor-pointer hover:border-neutral-primary disabled:opacity-30 disabled:pointer-events-none outline-offset-[0.125rem]",L?"outline outline-brand-base outline-thick":"outline-none"),ref:g,...C.mergeProps(H,K,W),children:[t.jsxs("div",{className:"flex flex-row items-center w-full p-4 justify-between",style:{height:u.height},children:[t.jsx(D.default,{truncate:!0,size:m,fontColor:p?"text.primary":"text.tertiary",children:S}),v?t.jsx(M.default,{width:u.caret,height:u.caret,color:"var(--color-brand-base)"}):t.jsx(I.default,{width:u.caret,height:u.caret,color:"var(--color-brand-base)"})]}),v&&t.jsx("div",{ref:k,tabIndex:-1,className:"py-2 bg-surface-primary absolute w-full rounded-input shadow-[4px_8px_20px_0px_rgba(0,0,0,0.15)] overflow-y-auto outline-none z-max",style:{maxHeight:`${P}rem`,top:u.top},children:r.Children.map(n,(e,o)=>r.cloneElement(e,{isFocused:o===l,size:m,optionHoverColor:b}))})]})]})})};A.displayName="DropdownOption",F.displayName="DropdownSelector",exports.DropdownOption=A,exports.DropdownSelector=F;
2
2
  //# sourceMappingURL=dropdown-selector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-selector.js","sources":["../../../../src/components/primitives/dropdown-selector.tsx"],"sourcesContent":["import { Tooltip } from '@components/feedback';\nimport { IcoCaretDown, IcoCaretUp, IcoCheckmark, IcoQuestionCircleFill } from '@components/icons';\nimport { Text } from '@components/primitives';\nimport { css } from '@styled/css';\nimport { Box, HStack, VStack } from '@styled/jsx';\nimport { token } from '@styled/tokens';\nimport {\n Children,\n cloneElement,\n createContext,\n ReactElement,\n ReactNode,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { AriaButtonProps, mergeProps, useButton, useFocusRing, useKeyboard } from 'react-aria';\n\nexport interface DropdownSelectorProps extends AriaButtonProps {\n children: ReactNode;\n onSelect: (value: string) => void;\n label?: string;\n placeholder?: string;\n selectedValue?: string;\n size?: 'sm' | 'md' | 'lg';\n tooltipContent?: string;\n disabled?: boolean;\n viewMax?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10;\n optionHoverColor?: string;\n}\n\nexport interface DropdownOptionProps {\n value: string;\n label: string;\n isFocused?: boolean;\n size?: DropdownSelectorProps['size'];\n optionHoverColor?: string;\n}\n\ninterface OptionData {\n value: string;\n label: string;\n}\n\nexport interface DropdownContextType {\n selectedOption: OptionData | null;\n setSelectedOption: (option: OptionData) => void;\n}\n\nconst SIZES = {\n sm: { caret: 16, check: 14, height: '2.625rem', top: 48, width: '0.75rem', mult: 2.25 },\n md: { caret: 17, check: 15, height: '2.8125rem', top: 52, width: '0.85rem', mult: 2.25 },\n lg: { caret: 18, check: 16, height: '3rem', top: 55, width: '1rem', mult: 2.5 },\n};\n\nconst DropdownContext = createContext<DropdownContextType>({\n selectedOption: null,\n setSelectedOption: () => {},\n});\n\nexport const DropdownOption = ({ value, label, size = 'lg', isFocused, optionHoverColor }: DropdownOptionProps) => {\n const { selectedOption, setSelectedOption } = useContext(DropdownContext);\n const isSelected = selectedOption?.value === value;\n const sizeProps = SIZES[size];\n\n const handleSelectOption = useCallback(() => {\n setSelectedOption({ value, label });\n }, [setSelectedOption, value, label]);\n\n return (\n <HStack\n py={1.5}\n gap={2}\n bg={isSelected ? 'brand.base' : isFocused ? 'brand.lightest' : ''}\n _hover={!isSelected ? { bg: optionHoverColor || 'brand.lightest' } : {}}\n onClick={handleSelectOption}\n style={{ paddingLeft: sizeProps.width, paddingRight: sizeProps.width }}\n >\n <Box style={{ minWidth: sizeProps.width }}>\n {isSelected && (\n <IcoCheckmark width={sizeProps.check} height={sizeProps.check} color={token('colors.text.quaternary')} />\n )}\n </Box>\n <Text\n size={size}\n fontWeight=\"medium\"\n fontColor={isSelected ? 'text.quaternary' : 'text.primary'}\n styles={{ textAlign: 'left' }}\n >\n {label}\n </Text>\n </HStack>\n );\n};\n\nexport const DropdownSelector = ({\n children,\n onSelect,\n label,\n placeholder = 'Select one',\n selectedValue,\n size = 'lg',\n tooltipContent,\n disabled,\n viewMax = 5,\n optionHoverColor,\n ...props\n}: DropdownSelectorProps) => {\n const [isOpen, setIsOpen] = useState(false);\n const [focusedIndex, setFocusedIndex] = useState<number | null>(null);\n const buttonRef = useRef<HTMLButtonElement>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n const sizeProps = SIZES[size];\n const maxHeight = viewMax * sizeProps.mult + 1;\n\n const toggleDropdown = useCallback(() => {\n setIsOpen(prev => !prev);\n if (!isOpen) {\n setFocusedIndex(null);\n setTimeout(() => dropdownRef.current?.focus());\n }\n }, [isOpen]);\n\n const handleSelect = useCallback(\n (option: OptionData) => {\n onSelect(option.value);\n setIsOpen(false);\n },\n [onSelect],\n );\n\n const selectedLabel = useMemo(() => {\n const childElements = Children.toArray(children) as ReactElement<DropdownOptionProps>[];\n const matchedChild = childElements.find(child => child.props.value === selectedValue);\n return matchedChild ? matchedChild.props.label : placeholder;\n }, [selectedValue, children]);\n\n const { buttonProps } = useButton(\n {\n ...props,\n isDisabled: disabled,\n onPress: toggleDropdown,\n },\n buttonRef,\n );\n\n const { focusProps, isFocusVisible } = useFocusRing();\n\n const { keyboardProps } = useKeyboard({\n onKeyDown: event => {\n if (!isOpen) return;\n\n let newFocusedIndex = focusedIndex;\n const childArray = Children.toArray(children);\n\n switch (event.key) {\n case 'ArrowUp':\n event.preventDefault();\n if (focusedIndex === null) {\n setFocusedIndex(Children.count(children) - 1);\n } else {\n newFocusedIndex = focusedIndex > 0 ? focusedIndex - 1 : Children.count(children) - 1;\n setFocusedIndex(newFocusedIndex);\n }\n break;\n case 'ArrowDown':\n event.preventDefault();\n if (focusedIndex === null) {\n setFocusedIndex(0);\n } else {\n newFocusedIndex = focusedIndex < Children.count(children) - 1 ? focusedIndex + 1 : 0;\n setFocusedIndex(newFocusedIndex);\n }\n break;\n case 'Enter':\n event.preventDefault();\n buttonRef.current?.focus();\n if (focusedIndex === null) return;\n if (focusedIndex >= 0 && focusedIndex < childArray.length) {\n const selectedChild = childArray[focusedIndex] as ReactElement<DropdownOptionProps>;\n if (selectedChild) {\n onSelect(selectedChild.props.value);\n }\n }\n break;\n case 'Escape':\n setIsOpen(false);\n buttonRef.current?.focus();\n break;\n default:\n break;\n }\n },\n });\n\n useEffect(() => {\n const handleClick = (event: MouseEvent) => {\n if (!dropdownRef.current?.contains(event.target as Node)) {\n setIsOpen(false);\n }\n };\n\n document.addEventListener('mousedown', handleClick);\n\n return () => {\n document.removeEventListener('mousedown', handleClick);\n };\n }, []);\n\n return (\n <DropdownContext.Provider\n value={{ selectedOption: { value: selectedValue ?? '', label: selectedLabel }, setSelectedOption: handleSelect }}\n >\n <VStack gap={2} w=\"full\" alignItems=\"flex-start\">\n {(label || tooltipContent) && (\n <HStack\n gap={2}\n pointerEvents={disabled ? 'none' : 'auto'}\n opacity={disabled ? 0.3 : ''}\n transition={'all linear 120ms'}\n >\n {label && (\n <Text size=\"sm\" fontWeight=\"medium\">\n {label}\n </Text>\n )}\n\n {tooltipContent && (\n <Tooltip content={tooltipContent}>\n <IcoQuestionCircleFill className={css({ w: 4, h: 4, color: 'neutral.primary' })} />\n </Tooltip>\n )}\n </HStack>\n )}\n\n <button\n className={css({\n w: 'full',\n h: 'fit-content',\n bg: 'surface.primary',\n borderWidth: 'thin',\n borderColor: 'neutral.secondary',\n rounded: 'xl',\n transition: 'all linear 120ms',\n position: 'relative',\n cursor: 'pointer',\n outlineColor: 'brand.base',\n outlineStyle: isFocusVisible ? 'solid' : 'none',\n outlineWidth: 'thick',\n outlineOffset: 0.5,\n _hover: { borderColor: 'neutral.primary' },\n _disabled: { opacity: 0.3, pointerEvents: 'none' },\n })}\n ref={buttonRef}\n {...mergeProps(buttonProps, focusProps, keyboardProps)}\n >\n <HStack w=\"full\" p={4} justifyContent=\"space-between\" style={{ height: sizeProps.height }}>\n <Text truncate size={size} fontColor={selectedValue ? 'text.primary' : 'text.tertiary'}>\n {selectedLabel}\n </Text>\n {isOpen ? (\n <IcoCaretUp width={sizeProps.caret} height={sizeProps.caret} color={token('colors.brand.base')} />\n ) : (\n <IcoCaretDown width={sizeProps.caret} height={sizeProps.caret} color={token('colors.brand.base')} />\n )}\n </HStack>\n\n {isOpen && (\n <Box\n ref={dropdownRef}\n tabIndex={-1}\n py={2}\n bg=\"surface.primary\"\n position=\"absolute\"\n w=\"full\"\n rounded=\"input\"\n boxShadow=\"4px 8px 20px 0px rgba(0, 0, 0, 0.15)\"\n style={{ maxHeight: `${maxHeight}rem`, top: sizeProps.top }}\n overflowY=\"auto\"\n outline=\"none\"\n zIndex=\"max\"\n >\n {Children.map(children, (child, index) =>\n cloneElement(child as ReactElement<DropdownOptionProps>, {\n isFocused: index === focusedIndex,\n size,\n optionHoverColor,\n }),\n )}\n </Box>\n )}\n </button>\n </VStack>\n </DropdownContext.Provider>\n );\n};\n\nDropdownOption.displayName = 'DropdownOption';\nDropdownSelector.displayName = 'DropdownSelector';\n"],"names":["SIZES","DropdownContext","createContext","DropdownOption","value","label","size","isFocused","optionHoverColor","selectedOption","setSelectedOption","useContext","isSelected","sizeProps","handleSelectOption","useCallback","_jsxs","HStack","_jsx","Box","IcoCheckmark","token","Text","DropdownSelector","children","onSelect","placeholder","selectedValue","tooltipContent","disabled","viewMax","props","isOpen","setIsOpen","useState","focusedIndex","setFocusedIndex","buttonRef","useRef","dropdownRef","maxHeight","toggleDropdown","prev","_a","handleSelect","option","selectedLabel","useMemo","matchedChild","Children","child","buttonProps","useButton","focusProps","isFocusVisible","useFocusRing","keyboardProps","useKeyboard","event","newFocusedIndex","childArray","selectedChild","_b","useEffect","handleClick","VStack","Tooltip","IcoQuestionCircleFill","css","mergeProps","IcoCaretUp","IcoCaretDown","index","cloneElement"],"mappings":"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"}
1
+ {"version":3,"file":"dropdown-selector.js","sources":["../../../../src/components/primitives/dropdown-selector.tsx"],"sourcesContent":["import { Tooltip } from '@components/feedback';\nimport { IcoCaretDown, IcoCaretUp, IcoCheckmark, IcoQuestionCircleFill } from '@components/icons';\nimport { Text } from '@components/primitives';\nimport { cn } from '@lib/cn';\nimport {\n Children,\n cloneElement,\n createContext,\n ReactElement,\n ReactNode,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { AriaButtonProps, mergeProps, useButton, useFocusRing, useKeyboard } from 'react-aria';\n\nexport interface DropdownSelectorProps extends AriaButtonProps {\n children: ReactNode;\n onSelect: (value: string) => void;\n label?: string;\n placeholder?: string;\n selectedValue?: string;\n size?: 'sm' | 'md' | 'lg';\n tooltipContent?: string;\n disabled?: boolean;\n viewMax?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10;\n optionHoverColor?: string;\n}\n\nexport interface DropdownOptionProps {\n value: string;\n label: string;\n isFocused?: boolean;\n size?: DropdownSelectorProps['size'];\n optionHoverColor?: string;\n}\n\ninterface OptionData {\n value: string;\n label: string;\n}\n\nexport interface DropdownContextType {\n selectedOption: OptionData | null;\n setSelectedOption: (option: OptionData) => void;\n}\n\nconst SIZES = {\n sm: { caret: 16, check: 14, height: '2.625rem', top: 48, width: '0.75rem', mult: 2.25 },\n md: { caret: 17, check: 15, height: '2.8125rem', top: 52, width: '0.85rem', mult: 2.25 },\n lg: { caret: 18, check: 16, height: '3rem', top: 55, width: '1rem', mult: 2.5 },\n};\n\nconst DropdownContext = createContext<DropdownContextType>({\n selectedOption: null,\n setSelectedOption: () => {},\n});\n\nexport const DropdownOption = ({ value, label, size = 'lg', isFocused, optionHoverColor }: DropdownOptionProps) => {\n const { selectedOption, setSelectedOption } = useContext(DropdownContext);\n const isSelected = selectedOption?.value === value;\n const sizeProps = SIZES[size];\n\n const handleSelectOption = useCallback(() => {\n setSelectedOption({ value, label });\n }, [setSelectedOption, value, label]);\n\n return (\n <div\n className={cn(\n 'flex flex-row items-center py-1.5 gap-2',\n isSelected ? 'bg-brand-base' : isFocused ? 'bg-brand-lightest' : '',\n !isSelected && `hover:bg-${optionHoverColor || 'brand-lightest'}`,\n )}\n role=\"option\"\n tabIndex={0}\n aria-selected={isSelected}\n onClick={handleSelectOption}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') handleSelectOption();\n }}\n style={{ paddingLeft: sizeProps.width, paddingRight: sizeProps.width }}\n >\n <div style={{ minWidth: sizeProps.width }}>\n {isSelected && (\n <IcoCheckmark width={sizeProps.check} height={sizeProps.check} color={'var(--color-text-quaternary)'} />\n )}\n </div>\n <Text\n size={size}\n fontWeight=\"medium\"\n fontColor={isSelected ? 'text.quaternary' : 'text.primary'}\n styles={{ textAlign: 'left' }}\n >\n {label}\n </Text>\n </div>\n );\n};\n\nexport const DropdownSelector = ({\n children,\n onSelect,\n label,\n placeholder = 'Select one',\n selectedValue,\n size = 'lg',\n tooltipContent,\n disabled,\n viewMax = 5,\n optionHoverColor,\n ...props\n}: DropdownSelectorProps) => {\n const [isOpen, setIsOpen] = useState(false);\n const [focusedIndex, setFocusedIndex] = useState<number | null>(null);\n const buttonRef = useRef<HTMLButtonElement>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n const sizeProps = SIZES[size];\n const maxHeight = viewMax * sizeProps.mult + 1;\n\n const toggleDropdown = useCallback(() => {\n setIsOpen(prev => !prev);\n if (!isOpen) {\n setFocusedIndex(null);\n setTimeout(() => dropdownRef.current?.focus());\n }\n }, [isOpen]);\n\n const handleSelect = useCallback(\n (option: OptionData) => {\n onSelect(option.value);\n setIsOpen(false);\n },\n [onSelect],\n );\n\n const selectedLabel = useMemo(() => {\n const childElements = Children.toArray(children) as ReactElement<DropdownOptionProps>[];\n const matchedChild = childElements.find(child => child.props.value === selectedValue);\n return matchedChild ? matchedChild.props.label : placeholder;\n }, [selectedValue, children]);\n\n const { buttonProps } = useButton(\n {\n ...props,\n isDisabled: disabled,\n onPress: toggleDropdown,\n },\n buttonRef,\n );\n\n const { focusProps, isFocusVisible } = useFocusRing();\n\n const { keyboardProps } = useKeyboard({\n onKeyDown: event => {\n if (!isOpen) return;\n\n let newFocusedIndex = focusedIndex;\n const childArray = Children.toArray(children);\n\n switch (event.key) {\n case 'ArrowUp':\n event.preventDefault();\n if (focusedIndex === null) {\n setFocusedIndex(Children.count(children) - 1);\n } else {\n newFocusedIndex = focusedIndex > 0 ? focusedIndex - 1 : Children.count(children) - 1;\n setFocusedIndex(newFocusedIndex);\n }\n break;\n case 'ArrowDown':\n event.preventDefault();\n if (focusedIndex === null) {\n setFocusedIndex(0);\n } else {\n newFocusedIndex = focusedIndex < Children.count(children) - 1 ? focusedIndex + 1 : 0;\n setFocusedIndex(newFocusedIndex);\n }\n break;\n case 'Enter':\n event.preventDefault();\n buttonRef.current?.focus();\n if (focusedIndex === null) return;\n if (focusedIndex >= 0 && focusedIndex < childArray.length) {\n const selectedChild = childArray[focusedIndex] as ReactElement<DropdownOptionProps>;\n if (selectedChild) {\n onSelect(selectedChild.props.value);\n }\n }\n break;\n case 'Escape':\n setIsOpen(false);\n buttonRef.current?.focus();\n break;\n default:\n break;\n }\n },\n });\n\n useEffect(() => {\n const handleClick = (event: MouseEvent) => {\n if (!dropdownRef.current?.contains(event.target as Node)) {\n setIsOpen(false);\n }\n };\n\n document.addEventListener('mousedown', handleClick);\n\n return () => {\n document.removeEventListener('mousedown', handleClick);\n };\n }, []);\n\n return (\n <DropdownContext.Provider\n value={{ selectedOption: { value: selectedValue ?? '', label: selectedLabel }, setSelectedOption: handleSelect }}\n >\n <div className=\"flex flex-col gap-2 w-full items-start\">\n {(label || tooltipContent) && (\n <div\n className={cn(\n 'flex flex-row items-center gap-2 transition-all duration-[120ms] linear',\n disabled ? 'pointer-events-none opacity-30' : 'pointer-events-auto',\n )}\n >\n {label && (\n <Text size=\"sm\" fontWeight=\"medium\">\n {label}\n </Text>\n )}\n\n {tooltipContent && (\n <Tooltip content={tooltipContent}>\n <IcoQuestionCircleFill className=\"w-4 h-4 text-neutral-primary\" />\n </Tooltip>\n )}\n </div>\n )}\n\n <button\n className={cn(\n 'w-full h-fit bg-surface-primary border border-neutral-secondary rounded-xl transition-all duration-[120ms] linear relative cursor-pointer hover:border-neutral-primary disabled:opacity-30 disabled:pointer-events-none outline-offset-[0.125rem]',\n isFocusVisible ? 'outline outline-brand-base outline-thick' : 'outline-none',\n )}\n ref={buttonRef}\n {...mergeProps(buttonProps, focusProps, keyboardProps)}\n >\n <div className=\"flex flex-row items-center w-full p-4 justify-between\" style={{ height: sizeProps.height }}>\n <Text truncate size={size} fontColor={selectedValue ? 'text.primary' : 'text.tertiary'}>\n {selectedLabel}\n </Text>\n {isOpen ? (\n <IcoCaretUp width={sizeProps.caret} height={sizeProps.caret} color={'var(--color-brand-base)'} />\n ) : (\n <IcoCaretDown width={sizeProps.caret} height={sizeProps.caret} color={'var(--color-brand-base)'} />\n )}\n </div>\n\n {isOpen && (\n <div\n ref={dropdownRef}\n tabIndex={-1}\n className=\"py-2 bg-surface-primary absolute w-full rounded-input shadow-[4px_8px_20px_0px_rgba(0,0,0,0.15)] overflow-y-auto outline-none z-max\"\n style={{ maxHeight: `${maxHeight}rem`, top: sizeProps.top }}\n >\n {Children.map(children, (child, index) =>\n cloneElement(child as ReactElement<DropdownOptionProps>, {\n isFocused: index === focusedIndex,\n size,\n optionHoverColor,\n }),\n )}\n </div>\n )}\n </button>\n </div>\n </DropdownContext.Provider>\n );\n};\n\nDropdownOption.displayName = 'DropdownOption';\nDropdownSelector.displayName = 'DropdownSelector';\n"],"names":["SIZES","DropdownContext","createContext","DropdownOption","value","label","size","isFocused","optionHoverColor","selectedOption","setSelectedOption","useContext","isSelected","sizeProps","handleSelectOption","useCallback","_jsxs","cn","e","_jsx","IcoCheckmark","Text","DropdownSelector","children","onSelect","placeholder","selectedValue","tooltipContent","disabled","viewMax","props","isOpen","setIsOpen","useState","focusedIndex","setFocusedIndex","buttonRef","useRef","dropdownRef","maxHeight","toggleDropdown","prev","_a","handleSelect","option","selectedLabel","useMemo","matchedChild","Children","child","buttonProps","useButton","focusProps","isFocusVisible","useFocusRing","keyboardProps","useKeyboard","event","newFocusedIndex","childArray","selectedChild","_b","useEffect","handleClick","Tooltip","IcoQuestionCircleFill","mergeProps","IcoCaretUp","IcoCaretDown","index","cloneElement"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("react/jsx-runtime"),v=require("./button.js");require("./checkbox.js"),require("./dropdown-selector.js"),require("./radio.js"),require("./segmented-control.js"),require("./switch.js"),require("./text.js");var ee=require("../../hooks/useToggleState.js"),re=require("@styled/css"),E=require("@styled/jsx"),te=require("@styled/patterns"),oe=require("@styled/tokens"),x=require("create-slots"),l=require("react"),f=require("react-aria");const _="bottom left",D=8,ne="hover",S=x.createSlot(({children:t})=>r.jsx(r.Fragment,{children:t})),N=x.createSlot(({children:t,...a})=>{const{onPress:s,...c}=a;return r.jsx(E.Center,{children:l.Children.map(t,i=>l.cloneElement(i,c))})}),B=x.createSlot(t=>r.jsx(v.default.LeadingIcon,{...t})),H=x.createSlot(t=>r.jsx(v.default.TrailingIcon,{...t})),M=({children:t,...a})=>x.createHost(t,s=>{var c;const{isOpen:i,defaultOpen:X,onOpenChange:Y,trigger:C=ne,iconSize:h,onPress:le,...O}=a,{isSelected:z,setSelected:P}=ee.useToggleState({isOpen:i,defaultSelected:X,onChange:Y,...a}),b=i!==void 0?i:z,o=24,n=l.useMemo(()=>({isOpen:b,open:()=>{P(!0)},close:()=>{P(!1)},setOpen(e){P(e)},toggle(){}}),[b]),L=s.getProps(S),u=l.useRef(null),{triggerProps:F,overlayProps:w}=f.useOverlayTrigger({type:"dialog"},n,u),d=l.useRef(null),{popoverProps:W,underlayProps:K}=f.usePopover({placement:a.placement||_,offset:D,popoverRef:d,triggerRef:u,...L},n),q=f.mergeProps(L,W);!((c=q?.style)===null||c===void 0)&&c.zIndex&&(q.style.zIndex=oe.token("zIndex.max"));const{className:G,...J}=q,k=l.useCallback(()=>{n.open()},[n]),y=l.useCallback(e=>{var j,T;const p=(j=u.current)===null||j===void 0?void 0:j.getBoundingClientRect(),g=(T=d.current)===null||T===void 0?void 0:T.getBoundingClientRect();if(p&&g){const Z=e.clientX>=p.left-o&&e.clientX<=p.right+o&&e.clientY>=p.top-o&&e.clientY<=p.bottom+o,$=e.clientX>=g.left-o&&e.clientX<=g.right+o&&e.clientY>=g.top-o&&e.clientY<=g.bottom+o;!Z&&!$&&n.close()}},[n]),Q=()=>{if(d.current){const e=d.current.querySelectorAll('a, button, input, select, textarea, [tabindex]:not([tabindex="-1"])');e.length>0&&e[0].focus()}},V=e=>{e.key==="Enter"&&(e.preventDefault(),i?n.close():(n.open(),setTimeout(Q,0)))};l.useEffect(()=>(document.addEventListener("mousemove",y),()=>{document.removeEventListener("mousemove",y)}),[y]);const m=s.get(N),I=s.getProps(B),R=s.getProps(H),A=h?{height:h,width:h}:{};return r.jsxs(r.Fragment,{children:[m?r.jsx(E.Box,{display:"inline-block",ref:u,...O,children:m&&{...m,props:{...m.props,...F}}}):r.jsx(E.Box,{display:"inline-block",ref:u,children:r.jsxs(v.default,{...f.mergeProps(F,O),onKeyDown:V,onHover:()=>C==="hover"&&k(),onPress:()=>C==="click"&&k(),children:[I&&r.jsx(v.default.LeadingIcon,{...I,...A}),R&&r.jsx(v.default.TrailingIcon,{...R,...A})]})}),b&&r.jsxs(f.Overlay,{...w,children:[r.jsx("div",{...K,className:"underlay"}),r.jsx("div",{ref:d,...J,className:re.cx(te.vstack({bg:"surface.secondary",p:3,gap:0,color:"text.secondary",borderWidth:1,borderColor:"neutral.secondary",borderRadius:"xl",boxShadow:"0px 4px 20px 0px rgba(0, 0, 0, 0.10)",maxW:52,alignItems:"start"}),G),children:s.get(S)})]})]})}),U=Object.assign(M,{Trigger:N,LeadingIcon:B,TrailingIcon:H,Content:S});exports.DEFAULT_OFFSET=D,exports.DEFAULT_PLACEMENT=_,exports.Popover=U,exports.PopoverHost=M,exports.default=U;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("react/jsx-runtime"),v=require("./button.js");require("./checkbox.js"),require("./dropdown-selector.js"),require("./radio.js"),require("./segmented-control.js"),require("./switch.js"),require("./text.js");var $=require("../../hooks/useToggleState.js"),ee=require("../../lib/cn.js"),f=require("create-slots"),l=require("react"),x=require("react-aria");const N="bottom left",R=8,re="hover",q=f.createSlot(({children:t})=>r.jsx(r.Fragment,{children:t})),k=f.createSlot(({children:t,...c})=>{const{onPress:s,...a}=c;return r.jsx("div",{className:"flex items-center justify-center",children:l.Children.map(t,i=>l.cloneElement(i,a))})}),D=f.createSlot(t=>r.jsx(v.default.LeadingIcon,{...t})),z=f.createSlot(t=>r.jsx(v.default.TrailingIcon,{...t})),H=({children:t,...c})=>f.createHost(t,s=>{var a;const{isOpen:i,defaultOpen:U,onOpenChange:X,trigger:S=re,iconSize:h,onPress:te,...O}=c,{isSelected:Y,setSelected:P}=$.useToggleState({isOpen:i,defaultSelected:U,onChange:X,...c}),b=i!==void 0?i:Y,n=24,o=l.useMemo(()=>({isOpen:b,open:()=>{P(!0)},close:()=>{P(!1)},setOpen(e){P(e)},toggle(){}}),[b]),L=s.getProps(q),u=l.useRef(null),{triggerProps:C,overlayProps:w}=x.useOverlayTrigger({type:"dialog"},o,u),d=l.useRef(null),{popoverProps:B,underlayProps:K}=x.usePopover({placement:c.placement||N,offset:R,popoverRef:d,triggerRef:u,...L},o),j=x.mergeProps(L,B);!((a=j?.style)===null||a===void 0)&&a.zIndex&&(j.style.zIndex="var(--zIndex-max)");const{className:G,...J}=j,F=l.useCallback(()=>{o.open()},[o]),y=l.useCallback(e=>{var T,E;const g=(T=u.current)===null||T===void 0?void 0:T.getBoundingClientRect(),p=(E=d.current)===null||E===void 0?void 0:E.getBoundingClientRect();if(g&&p){const Z=e.clientX>=g.left-n&&e.clientX<=g.right+n&&e.clientY>=g.top-n&&e.clientY<=g.bottom+n,W=e.clientX>=p.left-n&&e.clientX<=p.right+n&&e.clientY>=p.top-n&&e.clientY<=p.bottom+n;!Z&&!W&&o.close()}},[o]),Q=()=>{if(d.current){const e=d.current.querySelectorAll('a, button, input, select, textarea, [tabindex]:not([tabindex="-1"])');e.length>0&&e[0].focus()}},V=e=>{e.key==="Enter"&&(e.preventDefault(),i?o.close():(o.open(),setTimeout(Q,0)))};l.useEffect(()=>(document.addEventListener("mousemove",y),()=>{document.removeEventListener("mousemove",y)}),[y]);const m=s.get(k),_=s.getProps(D),A=s.getProps(z),I=h?{height:h,width:h}:{};return r.jsxs(r.Fragment,{children:[m?r.jsx("div",{className:"inline-block",ref:u,...O,children:m&&{...m,props:{...m.props,...C}}}):r.jsx("div",{className:"inline-block",ref:u,children:r.jsxs(v.default,{...x.mergeProps(C,O),onKeyDown:V,onHover:()=>S==="hover"&&F(),onPress:()=>S==="click"&&F(),children:[_&&r.jsx(v.default.LeadingIcon,{..._,...I}),A&&r.jsx(v.default.TrailingIcon,{...A,...I})]})}),b&&r.jsxs(x.Overlay,{...w,children:[r.jsx("div",{...K,className:"underlay"}),r.jsx("div",{ref:d,...J,className:ee.cn("flex flex-col bg-surface-secondary p-3 gap-0 text-text-secondary border border-neutral-secondary rounded-xl shadow-[0px_4px_20px_0px_rgba(0,0,0,0.10)] max-w-52 items-start",G),children:s.get(q)})]})]})}),M=Object.assign(H,{Trigger:k,LeadingIcon:D,TrailingIcon:z,Content:q});exports.DEFAULT_OFFSET=R,exports.DEFAULT_PLACEMENT=N,exports.Popover=M,exports.PopoverHost=H,exports.default=M;
2
2
  //# sourceMappingURL=popover.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"popover.js","sources":["../../../../src/components/primitives/popover.tsx"],"sourcesContent":["import { Button, ButtonProps } from '@components/primitives';\nimport { useToggleState } from '@hooks/useToggleState';\nimport { cx } from '@styled/css';\nimport { Box, Center } from '@styled/jsx';\nimport { vstack } from '@styled/patterns';\nimport { token } from '@styled/tokens';\nimport { createHost, createSlot } from 'create-slots';\nimport {\n Children,\n ComponentProps,\n PropsWithChildren,\n cloneElement,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n type ReactNode,\n} from 'react';\nimport type { AriaPopoverProps, Placement } from 'react-aria';\nimport { Overlay, mergeProps, useOverlayTrigger, usePopover } from 'react-aria';\n\ninterface OverlayTriggerProps extends ButtonProps {\n isOpen?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n placement?: Placement;\n trigger?: 'click' | 'hover';\n}\n\ninterface OverlayTriggerState {\n readonly isOpen: boolean;\n setOpen(isOpen: boolean): void;\n open(): void;\n close(): void;\n toggle(): void;\n}\n\ntype PopoverContentProps = Omit<AriaPopoverProps, 'popoverRef' | 'triggerRef'> & {\n children?: ReactNode;\n state?: OverlayTriggerState;\n} & ComponentProps<'div'>;\n\nexport const DEFAULT_PLACEMENT: Placement = 'bottom left';\nexport const DEFAULT_OFFSET = 8;\n\nconst DEFAULT_TRIGGER: string = 'hover';\n\nconst PopoverContent = createSlot(({ children }: PopoverContentProps) => <>{children}</>);\n\nconst Trigger = createSlot(({ children, ...props }) => {\n const { onPress, ...restProps } = props;\n return (\n <Center>\n {Children.map(children, child => {\n return cloneElement(child, restProps);\n })}\n </Center>\n );\n});\n\nconst LeadingIcon = createSlot(props => <Button.LeadingIcon {...props} />);\n\nconst TrailingIcon = createSlot(props => <Button.TrailingIcon {...props} />);\n\nexport type PopoverProps = PropsWithChildren<OverlayTriggerProps>;\n\nexport const PopoverHost = ({ children, ...props }: PopoverProps) => {\n return createHost(children, slots => {\n const { isOpen, defaultOpen, onOpenChange, trigger = DEFAULT_TRIGGER, iconSize, onPress, ...restProps } = props;\n const { isSelected, setSelected: setOpen } = useToggleState({\n isOpen: isOpen,\n defaultSelected: defaultOpen,\n onChange: onOpenChange,\n ...props,\n });\n\n const isPopoverOpen = isOpen !== undefined ? isOpen : isSelected;\n const safeZoneRadius = 24;\n\n const state = useMemo(\n () => ({\n isOpen: isPopoverOpen,\n open: () => {\n setOpen(true);\n },\n close: () => {\n setOpen(false);\n },\n setOpen(value: boolean) {\n setOpen(value);\n },\n toggle() {},\n }),\n [isPopoverOpen],\n );\n\n const popoverContentProps = slots.getProps(PopoverContent);\n\n const triggerRef = useRef<HTMLDivElement>(null);\n const { triggerProps, overlayProps } = useOverlayTrigger({ type: 'dialog' }, state, triggerRef);\n\n const contentRef = useRef<HTMLDivElement>(null);\n const { popoverProps, underlayProps } = usePopover(\n {\n placement: props.placement || DEFAULT_PLACEMENT,\n offset: DEFAULT_OFFSET,\n popoverRef: contentRef,\n triggerRef,\n ...popoverContentProps,\n },\n state,\n );\n\n const contentProps = mergeProps(popoverContentProps, popoverProps);\n\n // Need to override zIndex set by react-aria so popover displays over iframe\n if (contentProps?.style?.zIndex) {\n contentProps.style.zIndex = token('zIndex.max');\n }\n\n const { className: contentClassName, ...restContentProps } = contentProps;\n\n const handleTrigger = useCallback(() => {\n state.open();\n }, [state]);\n\n const handleMouseLeave = useCallback(\n (event: MouseEvent) => {\n const buttonRect = triggerRef.current?.getBoundingClientRect();\n const popoverRect = contentRef.current?.getBoundingClientRect();\n\n if (buttonRect && popoverRect) {\n const withinButtonSafeZone =\n event.clientX >= buttonRect.left - safeZoneRadius &&\n event.clientX <= buttonRect.right + safeZoneRadius &&\n event.clientY >= buttonRect.top - safeZoneRadius &&\n event.clientY <= buttonRect.bottom + safeZoneRadius;\n\n const withinPopoverSafeZone =\n event.clientX >= popoverRect.left - safeZoneRadius &&\n event.clientX <= popoverRect.right + safeZoneRadius &&\n event.clientY >= popoverRect.top - safeZoneRadius &&\n event.clientY <= popoverRect.bottom + safeZoneRadius;\n\n if (!withinButtonSafeZone && !withinPopoverSafeZone) {\n state.close();\n }\n }\n },\n [state],\n );\n\n const focusFirstInteractiveElement = () => {\n if (contentRef.current) {\n const interactiveElements = contentRef.current.querySelectorAll(\n 'a, button, input, select, textarea, [tabindex]:not([tabindex=\"-1\"])',\n );\n if (interactiveElements.length > 0) {\n (interactiveElements[0] as HTMLElement).focus();\n }\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent) => {\n if (event.key === 'Enter') {\n event.preventDefault();\n if (isOpen) {\n state.close();\n } else {\n state.open();\n setTimeout(focusFirstInteractiveElement, 0);\n }\n }\n };\n\n useEffect(() => {\n document.addEventListener('mousemove', handleMouseLeave);\n return () => {\n document.removeEventListener('mousemove', handleMouseLeave);\n };\n }, [handleMouseLeave]);\n\n const triggerEle = slots.get(Trigger);\n const leadingIconProps = slots.getProps(LeadingIcon);\n const trailingIconProps = slots.getProps(TrailingIcon);\n const customIconSize = iconSize ? { height: iconSize, width: iconSize } : {};\n\n return (\n <>\n {triggerEle ? (\n <Box display=\"inline-block\" ref={triggerRef} {...restProps}>\n {triggerEle && { ...triggerEle, props: { ...triggerEle.props, ...triggerProps } }}\n </Box>\n ) : (\n <Box display=\"inline-block\" ref={triggerRef}>\n <Button\n {...mergeProps(triggerProps, restProps)}\n onKeyDown={handleKeyDown}\n onHover={() => trigger === 'hover' && handleTrigger()}\n onPress={() => trigger === 'click' && handleTrigger()}\n >\n {leadingIconProps && <Button.LeadingIcon {...leadingIconProps} {...customIconSize} />}\n {trailingIconProps && <Button.TrailingIcon {...trailingIconProps} {...customIconSize} />}\n </Button>\n </Box>\n )}\n {isPopoverOpen && (\n <Overlay {...overlayProps}>\n <div {...underlayProps} className=\"underlay\" />\n <div\n ref={contentRef}\n {...restContentProps}\n className={cx(\n vstack({\n bg: 'surface.secondary',\n p: 3,\n gap: 0,\n color: 'text.secondary',\n borderWidth: 1,\n borderColor: 'neutral.secondary',\n borderRadius: 'xl',\n boxShadow: '0px 4px 20px 0px rgba(0, 0, 0, 0.10)',\n maxW: 52,\n alignItems: 'start',\n }),\n contentClassName,\n )}\n >\n {slots.get(PopoverContent)}\n </div>\n </Overlay>\n )}\n </>\n );\n });\n};\n\nexport const Popover = Object.assign(PopoverHost, {\n Trigger,\n LeadingIcon,\n TrailingIcon,\n Content: PopoverContent,\n});\n\nexport default Popover;\n"],"names":["DEFAULT_PLACEMENT","DEFAULT_OFFSET","DEFAULT_TRIGGER","PopoverContent","createSlot","children","_jsx","_Fragment","Trigger","props","onPress","restProps","Center","Children","child","cloneElement","LeadingIcon","Button","TrailingIcon","PopoverHost","createHost","slots","isOpen","defaultOpen","onOpenChange","trigger","iconSize","isSelected","setOpen","useToggleState","isPopoverOpen","safeZoneRadius","state","useMemo","value","popoverContentProps","triggerRef","useRef","triggerProps","overlayProps","useOverlayTrigger","contentRef","popoverProps","underlayProps","usePopover","contentProps","mergeProps","_a","token","contentClassName","restContentProps","handleTrigger","useCallback","handleMouseLeave","event","buttonRect","popoverRect","_b","withinButtonSafeZone","withinPopoverSafeZone","focusFirstInteractiveElement","interactiveElements","handleKeyDown","useEffect","triggerEle","leadingIconProps","trailingIconProps","customIconSize","_jsxs","Box","Overlay","cx","vstack","Popover"],"mappings":"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"}
1
+ {"version":3,"file":"popover.js","sources":["../../../../src/components/primitives/popover.tsx"],"sourcesContent":["import { Button, ButtonProps } from '@components/primitives';\nimport { useToggleState } from '@hooks/useToggleState';\nimport { cn } from '@lib/cn';\nimport { createHost, createSlot } from 'create-slots';\nimport {\n Children,\n ComponentProps,\n PropsWithChildren,\n cloneElement,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n type ReactNode,\n} from 'react';\nimport type { AriaPopoverProps, Placement } from 'react-aria';\nimport { Overlay, mergeProps, useOverlayTrigger, usePopover } from 'react-aria';\n\ninterface OverlayTriggerProps extends ButtonProps {\n isOpen?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n placement?: Placement;\n trigger?: 'click' | 'hover';\n}\n\ninterface OverlayTriggerState {\n readonly isOpen: boolean;\n setOpen(isOpen: boolean): void;\n open(): void;\n close(): void;\n toggle(): void;\n}\n\ntype PopoverContentProps = Omit<AriaPopoverProps, 'popoverRef' | 'triggerRef'> & {\n children?: ReactNode;\n state?: OverlayTriggerState;\n} & ComponentProps<'div'>;\n\nexport const DEFAULT_PLACEMENT: Placement = 'bottom left';\nexport const DEFAULT_OFFSET = 8;\n\nconst DEFAULT_TRIGGER: string = 'hover';\n\nconst PopoverContent = createSlot(({ children }: PopoverContentProps) => <>{children}</>);\n\nconst Trigger = createSlot(({ children, ...props }) => {\n const { onPress, ...restProps } = props;\n return (\n <div className=\"flex items-center justify-center\">\n {Children.map(children, child => {\n return cloneElement(child, restProps);\n })}\n </div>\n );\n});\n\nconst LeadingIcon = createSlot(props => <Button.LeadingIcon {...props} />);\n\nconst TrailingIcon = createSlot(props => <Button.TrailingIcon {...props} />);\n\nexport type PopoverProps = PropsWithChildren<OverlayTriggerProps>;\n\nexport const PopoverHost = ({ children, ...props }: PopoverProps) => {\n return createHost(children, slots => {\n const { isOpen, defaultOpen, onOpenChange, trigger = DEFAULT_TRIGGER, iconSize, onPress, ...restProps } = props;\n const { isSelected, setSelected: setOpen } = useToggleState({\n isOpen: isOpen,\n defaultSelected: defaultOpen,\n onChange: onOpenChange,\n ...props,\n });\n\n const isPopoverOpen = isOpen !== undefined ? isOpen : isSelected;\n const safeZoneRadius = 24;\n\n const state = useMemo(\n () => ({\n isOpen: isPopoverOpen,\n open: () => {\n setOpen(true);\n },\n close: () => {\n setOpen(false);\n },\n setOpen(value: boolean) {\n setOpen(value);\n },\n toggle() {},\n }),\n [isPopoverOpen],\n );\n\n const popoverContentProps = slots.getProps(PopoverContent);\n\n const triggerRef = useRef<HTMLDivElement>(null);\n const { triggerProps, overlayProps } = useOverlayTrigger({ type: 'dialog' }, state, triggerRef);\n\n const contentRef = useRef<HTMLDivElement>(null);\n const { popoverProps, underlayProps } = usePopover(\n {\n placement: props.placement || DEFAULT_PLACEMENT,\n offset: DEFAULT_OFFSET,\n popoverRef: contentRef,\n triggerRef,\n ...popoverContentProps,\n },\n state,\n );\n\n const contentProps = mergeProps(popoverContentProps, popoverProps);\n\n // Need to override zIndex set by react-aria so popover displays over iframe\n if (contentProps?.style?.zIndex) {\n contentProps.style.zIndex = 'var(--zIndex-max)';\n }\n\n const { className: contentClassName, ...restContentProps } = contentProps;\n\n const handleTrigger = useCallback(() => {\n state.open();\n }, [state]);\n\n const handleMouseLeave = useCallback(\n (event: MouseEvent) => {\n const buttonRect = triggerRef.current?.getBoundingClientRect();\n const popoverRect = contentRef.current?.getBoundingClientRect();\n\n if (buttonRect && popoverRect) {\n const withinButtonSafeZone =\n event.clientX >= buttonRect.left - safeZoneRadius &&\n event.clientX <= buttonRect.right + safeZoneRadius &&\n event.clientY >= buttonRect.top - safeZoneRadius &&\n event.clientY <= buttonRect.bottom + safeZoneRadius;\n\n const withinPopoverSafeZone =\n event.clientX >= popoverRect.left - safeZoneRadius &&\n event.clientX <= popoverRect.right + safeZoneRadius &&\n event.clientY >= popoverRect.top - safeZoneRadius &&\n event.clientY <= popoverRect.bottom + safeZoneRadius;\n\n if (!withinButtonSafeZone && !withinPopoverSafeZone) {\n state.close();\n }\n }\n },\n [state],\n );\n\n const focusFirstInteractiveElement = () => {\n if (contentRef.current) {\n const interactiveElements = contentRef.current.querySelectorAll(\n 'a, button, input, select, textarea, [tabindex]:not([tabindex=\"-1\"])',\n );\n if (interactiveElements.length > 0) {\n (interactiveElements[0] as HTMLElement).focus();\n }\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent) => {\n if (event.key === 'Enter') {\n event.preventDefault();\n if (isOpen) {\n state.close();\n } else {\n state.open();\n setTimeout(focusFirstInteractiveElement, 0);\n }\n }\n };\n\n useEffect(() => {\n document.addEventListener('mousemove', handleMouseLeave);\n return () => {\n document.removeEventListener('mousemove', handleMouseLeave);\n };\n }, [handleMouseLeave]);\n\n const triggerEle = slots.get(Trigger);\n const leadingIconProps = slots.getProps(LeadingIcon);\n const trailingIconProps = slots.getProps(TrailingIcon);\n const customIconSize = iconSize ? { height: iconSize, width: iconSize } : {};\n\n return (\n <>\n {triggerEle ? (\n <div className=\"inline-block\" ref={triggerRef} {...restProps}>\n {triggerEle && { ...triggerEle, props: { ...triggerEle.props, ...triggerProps } }}\n </div>\n ) : (\n <div className=\"inline-block\" ref={triggerRef}>\n <Button\n {...mergeProps(triggerProps, restProps)}\n onKeyDown={handleKeyDown}\n onHover={() => trigger === 'hover' && handleTrigger()}\n onPress={() => trigger === 'click' && handleTrigger()}\n >\n {leadingIconProps && <Button.LeadingIcon {...leadingIconProps} {...customIconSize} />}\n {trailingIconProps && <Button.TrailingIcon {...trailingIconProps} {...customIconSize} />}\n </Button>\n </div>\n )}\n {isPopoverOpen && (\n <Overlay {...overlayProps}>\n <div {...underlayProps} className=\"underlay\" />\n <div\n ref={contentRef}\n {...restContentProps}\n className={cn(\n 'flex flex-col bg-surface-secondary p-3 gap-0 text-text-secondary border border-neutral-secondary rounded-xl shadow-[0px_4px_20px_0px_rgba(0,0,0,0.10)] max-w-52 items-start',\n contentClassName,\n )}\n >\n {slots.get(PopoverContent)}\n </div>\n </Overlay>\n )}\n </>\n );\n });\n};\n\nexport const Popover = Object.assign(PopoverHost, {\n Trigger,\n LeadingIcon,\n TrailingIcon,\n Content: PopoverContent,\n});\n\nexport default Popover;\n"],"names":["DEFAULT_PLACEMENT","DEFAULT_OFFSET","DEFAULT_TRIGGER","PopoverContent","createSlot","children","_jsx","_Fragment","Trigger","props","onPress","restProps","Children","child","cloneElement","LeadingIcon","Button","TrailingIcon","PopoverHost","createHost","slots","isOpen","defaultOpen","onOpenChange","trigger","iconSize","isSelected","setOpen","useToggleState","isPopoverOpen","safeZoneRadius","state","useMemo","value","popoverContentProps","triggerRef","useRef","triggerProps","overlayProps","useOverlayTrigger","contentRef","popoverProps","underlayProps","usePopover","contentProps","mergeProps","_a","contentClassName","restContentProps","handleTrigger","useCallback","handleMouseLeave","event","buttonRect","popoverRect","_b","withinButtonSafeZone","withinPopoverSafeZone","focusFirstInteractiveElement","interactiveElements","handleKeyDown","useEffect","triggerEle","leadingIconProps","trailingIconProps","customIconSize","_jsxs","Overlay","cn","Popover"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("react/jsx-runtime"),C=require("./text.js"),o=require("@styled/jsx"),R=require("@styled/patterns"),s=require("react"),t=require("react-aria");const b=s.createContext({selectedValue:void 0,setSelectedValue:()=>{}}),h=d=>{const{children:n,onChange:a,selectedValue:l,vertical:r}=d,u=s.useCallback(c=>{a(c)},[a]);return e.jsx(o.Flex,{direction:r?"column":"row",gap:r?5:10,role:"radiogroup",children:e.jsx(b.Provider,{value:{selectedValue:l,setSelectedValue:u},children:n})})},p=s.forwardRef((d,n)=>{const{label:a,value:l}=d,r=s.useContext(b),u=s.useRef(null),c=n||u,v=s.useCallback(()=>{r.setSelectedValue(l)},[r,l]),{hoverProps:f}=t.useHover({}),{focusProps:j,isFocusVisible:x}=t.useFocusRing(),{pressProps:m}=t.usePress({onPress:v}),i=r.selectedValue===l,g=i?0:-1;return e.jsxs("label",{className:R.flex({alignItems:"center"}),children:[e.jsx(t.VisuallyHidden,{children:e.jsx("input",{...t.mergeProps(m,j,f),ref:c,type:"radio",checked:i,tabIndex:g,readOnly:!0})}),e.jsx(o.Flex,{justifyContent:"center",alignItems:"center",borderWidth:"thick",borderColor:x||i?"brand.base":"text.tertiary",transition:"border-color 0.2s ease",outlineColor:"brand.base",outlineStyle:x?"solid":"none",outlineWidth:"thick",outlineOffset:.5,_hover:{borderColor:"brand.base"},cursor:"pointer",w:6,h:6,rounded:"full","aria-hidden":"true",children:i&&e.jsx(o.Circle,{size:3,bg:"brand.base"})}),e.jsx(o.Box,{ml:3,children:e.jsx(C.default,{size:"lg",fontWeight:"medium",children:a})})]})});h.displayName="RadioGroup",p.displayName="Radio",exports.Radio=p,exports.RadioGroup=h;
1
+ "use strict";var e=require("react/jsx-runtime"),g=require("./text.js"),x=require("../../lib/cn.js"),r=require("react"),l=require("react-aria");const b=r.createContext({selectedValue:void 0,setSelectedValue:()=>{}}),h=o=>{const{children:d,onChange:i,selectedValue:s,vertical:a}=o,n=r.useCallback(u=>{i(u)},[i]);return e.jsx("div",{className:x.cn("flex",a?"flex-col gap-5":"flex-row gap-10"),role:"radiogroup",children:e.jsx(b.Provider,{value:{selectedValue:s,setSelectedValue:n},children:d})})},f=r.forwardRef((o,d)=>{const{label:i,value:s}=o,a=r.useContext(b),n=r.useRef(null),u=d||n,p=r.useCallback(()=>{a.setSelectedValue(s)},[a,s]),{hoverProps:v}=l.useHover({}),{focusProps:m,isFocusVisible:c}=l.useFocusRing(),{pressProps:j}=l.usePress({onPress:p}),t=a.selectedValue===s,R=t?0:-1;return e.jsxs("label",{className:"flex items-center",children:[e.jsx(l.VisuallyHidden,{children:e.jsx("input",{...l.mergeProps(j,m,v),ref:u,type:"radio",checked:t,tabIndex:R,readOnly:!0})}),e.jsx("div",{className:x.cn("flex justify-center items-center border-thick transition-colors duration-200 ease-in-out cursor-pointer w-6 h-6 rounded-full hover:border-brand-base",c||t?"border-brand-base":"border-text-tertiary",c?"outline outline-thick outline-brand-base outline-offset-[0.125rem]":"outline-none"),"aria-hidden":"true",children:t&&e.jsx("div",{className:"rounded-full w-3 h-3 bg-brand-base"})}),e.jsx("div",{className:"ml-3",children:e.jsx(g.default,{size:"lg",fontWeight:"medium",children:i})})]})});h.displayName="RadioGroup",f.displayName="Radio",exports.Radio=f,exports.RadioGroup=h;
2
2
  //# sourceMappingURL=radio.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio.js","sources":["../../../../src/components/primitives/radio.tsx"],"sourcesContent":["import Text from '@components/primitives/text';\nimport { Box, Circle, Flex } from '@styled/jsx';\nimport { flex } from '@styled/patterns';\nimport { PropsWithChildren, createContext, forwardRef, useCallback, useContext, useRef } from 'react';\nimport {\n AriaRadioGroupProps,\n AriaRadioProps,\n VisuallyHidden,\n mergeProps,\n useFocusRing,\n useHover,\n usePress,\n} from 'react-aria';\n\nexport interface RadioGroupProps extends AriaRadioGroupProps, PropsWithChildren {\n onChange: (value: string) => void;\n selectedValue?: string;\n vertical?: boolean;\n}\n\nexport interface RadioProps extends AriaRadioProps {\n label?: string;\n}\n\nconst RadioContext = createContext<{\n selectedValue: string | undefined;\n setSelectedValue: (value: string) => void;\n}>({\n selectedValue: undefined,\n setSelectedValue: () => {},\n});\n\nexport const RadioGroup = (props: RadioGroupProps) => {\n const { children, onChange, selectedValue, vertical } = props;\n\n const handleSelect = useCallback(\n (value: string) => {\n onChange(value);\n },\n [onChange],\n );\n\n return (\n <Flex direction={vertical ? 'column' : 'row'} gap={vertical ? 5 : 10} role=\"radiogroup\">\n <RadioContext.Provider value={{ selectedValue, setSelectedValue: handleSelect }}>\n {children}\n </RadioContext.Provider>\n </Flex>\n );\n};\n\nexport const Radio = forwardRef<HTMLInputElement, RadioProps>((props, forwardedRef) => {\n const { label, value } = props;\n const state = useContext(RadioContext);\n\n const internalRef = useRef<HTMLInputElement>(null);\n const ref = forwardedRef || internalRef;\n\n const handlePress = useCallback(() => {\n state.setSelectedValue(value);\n }, [state, value]);\n\n const { hoverProps } = useHover({});\n const { focusProps, isFocusVisible } = useFocusRing();\n const { pressProps } = usePress({\n onPress: handlePress,\n });\n\n const isSelected = state.selectedValue === value;\n\n const tabIndex = isSelected ? 0 : -1;\n\n return (\n <label className={flex({ alignItems: 'center' })}>\n <VisuallyHidden>\n <input\n {...mergeProps(pressProps, focusProps, hoverProps)}\n ref={ref}\n type=\"radio\"\n checked={isSelected}\n tabIndex={tabIndex}\n readOnly\n />\n </VisuallyHidden>\n <Flex\n justifyContent=\"center\"\n alignItems=\"center\"\n borderWidth=\"thick\"\n borderColor={isFocusVisible || isSelected ? 'brand.base' : 'text.tertiary'}\n transition=\"border-color 0.2s ease\"\n outlineColor=\"brand.base\"\n outlineStyle={isFocusVisible ? 'solid' : 'none'}\n outlineWidth=\"thick\"\n outlineOffset={0.5}\n _hover={{ borderColor: 'brand.base' }}\n cursor=\"pointer\"\n w={6}\n h={6}\n rounded=\"full\"\n aria-hidden=\"true\"\n >\n {isSelected && <Circle size={3} bg=\"brand.base\" />}\n </Flex>\n <Box ml={3}>\n <Text size=\"lg\" fontWeight=\"medium\">\n {label}\n </Text>\n </Box>\n </label>\n );\n});\n\nRadioGroup.displayName = 'RadioGroup';\nRadio.displayName = 'Radio';\n"],"names":["RadioContext","createContext","RadioGroup","props","children","onChange","selectedValue","vertical","handleSelect","useCallback","value","_jsx","Flex","Radio","forwardRef","forwardedRef","label","state","useContext","internalRef","useRef","ref","handlePress","hoverProps","useHover","focusProps","isFocusVisible","useFocusRing","pressProps","usePress","isSelected","tabIndex","_jsxs","flex","VisuallyHidden","mergeProps","Circle","Box","Text"],"mappings":"yKAwBA,MAAMA,EAAeC,EAAAA,cAGlB,CACD,cAAe,OACf,iBAAkB,IAAK,CACxB,CAAA,CAAA,EAEYC,EAAcC,GAA0B,CACnD,KAAM,CAAE,SAAAC,EAAU,SAAAC,EAAU,cAAAC,EAAe,SAAAC,CAAQ,EAAKJ,EAElDK,EAAeC,EAAAA,YAClBC,GAAiB,CAChBL,EAASK,CAAK,CAChB,EACA,CAACL,CAAQ,CAAC,EAGZ,OACEM,EAAAA,IAACC,EAAAA,KAAI,CAAC,UAAWL,EAAW,SAAW,MAAO,IAAKA,EAAW,EAAI,GAAI,KAAK,aAAY,SACrFI,EAACX,IAAAA,EAAa,SAAQ,CAAC,MAAO,CAAE,cAAAM,EAAe,iBAAkBE,CAAY,WAC1EJ,CAAQ,CAAA,CAEN,CAAA,CAEX,EAEaS,EAAQC,EAAAA,WAAyC,CAACX,EAAOY,IAAgB,CACpF,KAAM,CAAE,MAAAC,EAAO,MAAAN,CAAO,EAAGP,EACnBc,EAAQC,EAAAA,WAAWlB,CAAY,EAE/BmB,EAAcC,EAAAA,OAAyB,IAAI,EAC3CC,EAAMN,GAAgBI,EAEtBG,EAAcb,EAAAA,YAAY,IAAK,CACnCQ,EAAM,iBAAiBP,CAAK,CAC9B,EAAG,CAACO,EAAOP,CAAK,CAAC,EAEX,CAAE,WAAAa,CAAY,EAAGC,EAAAA,SAAS,CAAE,CAAA,EAC5B,CAAE,WAAAC,EAAY,eAAAC,GAAmBC,iBACjC,CAAE,WAAAC,CAAY,EAAGC,EAAAA,SAAS,CAC9B,QAASP,CACV,CAAA,EAEKQ,EAAab,EAAM,gBAAkBP,EAErCqB,EAAWD,EAAa,EAAI,GAElC,OACEE,OAAO,QAAA,CAAA,UAAWC,OAAK,CAAE,WAAY,SAAU,EAAC,SAAA,CAC9CtB,EAACuB,IAAAA,iBAAc,CAAA,SACbvB,kBACMwB,EAAAA,WAAWP,EAAYH,EAAYF,CAAU,EACjD,IAAKF,EACL,KAAK,QACL,QAASS,EACT,SAAUC,EACV,SACA,EAAA,CAAA,CAAA,CAAA,EAEJpB,EAAAA,IAACC,EAAAA,KACC,CAAA,eAAe,SACf,WAAW,SACX,YAAY,QACZ,YAAac,GAAkBI,EAAa,aAAe,gBAC3D,WAAW,yBACX,aAAa,aACb,aAAcJ,EAAiB,QAAU,OACzC,aAAa,QACb,cAAe,GACf,OAAQ,CAAE,YAAa,cACvB,OAAO,UACP,EAAG,EACH,EAAG,EACH,QAAQ,OACI,cAAA,gBAEXI,GAAcnB,EAAAA,IAACyB,UAAO,KAAM,EAAG,GAAG,cAC9B,CAAA,EACPzB,EAAAA,IAAC0B,EAAAA,IAAG,CAAC,GAAI,EACP,SAAA1B,EAAAA,IAAC2B,UAAK,CAAA,KAAK,KAAK,WAAW,SACxB,SAAAtB,GAEC,CAAA,CAAA,CAAA,CAAA,CAGZ,CAAC,EAEDd,EAAW,YAAc,aACzBW,EAAM,YAAc"}
1
+ {"version":3,"file":"radio.js","sources":["../../../../src/components/primitives/radio.tsx"],"sourcesContent":["import Text from '@components/primitives/text';\nimport { cn } from '@lib/cn';\nimport { PropsWithChildren, createContext, forwardRef, useCallback, useContext, useRef } from 'react';\nimport {\n AriaRadioGroupProps,\n AriaRadioProps,\n VisuallyHidden,\n mergeProps,\n useFocusRing,\n useHover,\n usePress,\n} from 'react-aria';\n\nexport interface RadioGroupProps extends AriaRadioGroupProps, PropsWithChildren {\n onChange: (value: string) => void;\n selectedValue?: string;\n vertical?: boolean;\n}\n\nexport interface RadioProps extends AriaRadioProps {\n label?: string;\n}\n\nconst RadioContext = createContext<{\n selectedValue: string | undefined;\n setSelectedValue: (value: string) => void;\n}>({\n selectedValue: undefined,\n setSelectedValue: () => {},\n});\n\nexport const RadioGroup = (props: RadioGroupProps) => {\n const { children, onChange, selectedValue, vertical } = props;\n\n const handleSelect = useCallback(\n (value: string) => {\n onChange(value);\n },\n [onChange],\n );\n\n return (\n <div className={cn('flex', vertical ? 'flex-col gap-5' : 'flex-row gap-10')} role=\"radiogroup\">\n <RadioContext.Provider value={{ selectedValue, setSelectedValue: handleSelect }}>\n {children}\n </RadioContext.Provider>\n </div>\n );\n};\n\nexport const Radio = forwardRef<HTMLInputElement, RadioProps>((props, forwardedRef) => {\n const { label, value } = props;\n const state = useContext(RadioContext);\n\n const internalRef = useRef<HTMLInputElement>(null);\n const ref = forwardedRef || internalRef;\n\n const handlePress = useCallback(() => {\n state.setSelectedValue(value);\n }, [state, value]);\n\n const { hoverProps } = useHover({});\n const { focusProps, isFocusVisible } = useFocusRing();\n const { pressProps } = usePress({\n onPress: handlePress,\n });\n\n const isSelected = state.selectedValue === value;\n\n const tabIndex = isSelected ? 0 : -1;\n\n return (\n <label className=\"flex items-center\">\n <VisuallyHidden>\n <input\n {...mergeProps(pressProps, focusProps, hoverProps)}\n ref={ref}\n type=\"radio\"\n checked={isSelected}\n tabIndex={tabIndex}\n readOnly\n />\n </VisuallyHidden>\n <div\n className={cn(\n 'flex justify-center items-center border-thick transition-colors duration-200 ease-in-out cursor-pointer w-6 h-6 rounded-full hover:border-brand-base',\n isFocusVisible || isSelected ? 'border-brand-base' : 'border-text-tertiary',\n isFocusVisible ? 'outline outline-thick outline-brand-base outline-offset-[0.125rem]' : 'outline-none',\n )}\n aria-hidden=\"true\"\n >\n {isSelected && <div className=\"rounded-full w-3 h-3 bg-brand-base\" />}\n </div>\n <div className=\"ml-3\">\n <Text size=\"lg\" fontWeight=\"medium\">\n {label}\n </Text>\n </div>\n </label>\n );\n});\n\nRadioGroup.displayName = 'RadioGroup';\nRadio.displayName = 'Radio';\n"],"names":["RadioContext","createContext","RadioGroup","props","children","onChange","selectedValue","vertical","handleSelect","useCallback","value","_jsx","cn","Radio","forwardRef","forwardedRef","label","state","useContext","internalRef","useRef","ref","handlePress","hoverProps","useHover","focusProps","isFocusVisible","useFocusRing","pressProps","usePress","isSelected","tabIndex","_jsxs","VisuallyHidden","mergeProps","Text"],"mappings":"+IAuBA,MAAMA,EAAeC,EAGlB,cAAA,CACD,cAAe,OACf,iBAAkB,IAAK,EACxB,CAAA,EAEYC,EAAcC,GAA0B,CACnD,KAAM,CAAE,SAAAC,EAAU,SAAAC,EAAU,cAAAC,EAAe,SAAAC,CAAQ,EAAKJ,EAElDK,EAAeC,EAAAA,YAClBC,GAAiB,CAChBL,EAASK,CAAK,CAChB,EACA,CAACL,CAAQ,CAAC,EAGZ,OACEM,EAAAA,IAAK,MAAA,CAAA,UAAWC,EAAAA,GAAG,OAAQL,EAAW,iBAAmB,iBAAiB,EAAG,KAAK,aAAY,SAC5FI,EAAAA,IAACX,EAAa,SAAS,CAAA,MAAO,CAAE,cAAAM,EAAe,iBAAkBE,CAAc,EAAA,SAC5EJ,CACqB,CAAA,CAAA,CAAA,CAG9B,EAEaS,EAAQC,aAAyC,CAACX,EAAOY,IAAgB,CACpF,KAAM,CAAE,MAAAC,EAAO,MAAAN,CAAO,EAAGP,EACnBc,EAAQC,EAAAA,WAAWlB,CAAY,EAE/BmB,EAAcC,EAAAA,OAAyB,IAAI,EAC3CC,EAAMN,GAAgBI,EAEtBG,EAAcb,cAAY,IAAK,CACnCQ,EAAM,iBAAiBP,CAAK,CAC9B,EAAG,CAACO,EAAOP,CAAK,CAAC,EAEX,CAAE,WAAAa,CAAY,EAAGC,EAAAA,SAAS,EAAE,EAC5B,CAAE,WAAAC,EAAY,eAAAC,GAAmBC,eACjC,EAAA,CAAE,WAAAC,CAAY,EAAGC,WAAS,CAC9B,QAASP,CACV,CAAA,EAEKQ,EAAab,EAAM,gBAAkBP,EAErCqB,EAAWD,EAAa,EAAI,GAElC,OACEE,gBAAO,UAAU,oBACf,SAAA,CAAArB,EAAAA,IAACsB,EAAc,eAAA,CAAA,SACbtB,MACM,QAAA,CAAA,GAAAuB,aAAWN,EAAYH,EAAYF,CAAU,EACjD,IAAKF,EACL,KAAK,QACL,QAASS,EACT,SAAUC,EACV,SAAQ,EAAA,CAAA,IAGZpB,MAAA,MAAA,CACE,UAAWC,EAAAA,GACT,uJACAc,GAAkBI,EAAa,oBAAsB,uBACrDJ,EAAiB,qEAAuE,cAAc,EACvG,cACW,OAEX,SAAAI,GAAcnB,EAAAA,IAAA,MAAA,CAAK,UAAU,oCAAuC,CAAA,CAAA,CAAA,EAEvEA,EAAAA,IAAK,MAAA,CAAA,UAAU,OAAM,SACnBA,MAACwB,EAAAA,QAAK,CAAA,KAAK,KAAK,WAAW,SAAQ,SAChCnB,CACI,CAAA,CAAA,CAAA,CACH,CACA,CAAA,CAEZ,CAAC,EAEDd,EAAW,YAAc,aACzBW,EAAM,YAAc"}
@@ -1,2 +1,2 @@
1
- "use strict";var l=require("react/jsx-runtime"),y=require("@styled/css"),x=require("@styled/jsx"),j=require("create-slots"),e=require("react"),g=require("react-aria");const k=e.createContext({currentTab:void 0,setCurrentTab:()=>{},tabRefs:{current:{}},disabled:!1}),S=j.createSlot(({children:i,...u})=>l.jsx(x.Flex,{alignItems:"center",justifyContent:"center",children:e.Children.map(i,c=>e.cloneElement(c,u))})),w=i=>{const{children:u,onChange:c,selectedTab:n,size:f="md",disabled:h=!1}=i,[t,o]=e.useState(n),a=e.useRef({}),r=e.useRef(),[m,d]=e.useState({transform:"translateX(4px)",width:"",height:""});e.useEffect(()=>{n!==void 0&&o(n)},[n]),e.useEffect(()=>(r.current||(r.current=new ResizeObserver(()=>{const{offsetLeft:s,clientWidth:b,clientHeight:p}=a.current[t];d({transform:`translateX(${s}px)`,width:`${b}px`,height:`${p}px`})})),r.current.observe(a.current[t]),()=>{r.current&&a.current[t]&&r.current.unobserve(a.current[t])}),[]),e.useEffect(()=>{if(t&&a.current[t]){const{offsetLeft:s,clientWidth:b,clientHeight:p}=a.current[t];d({transform:`translateX(${s}px)`,width:`${b}px`,height:`${p}px`})}},[t,f]);const v=e.useCallback(s=>{o(s),c(s)},[o,c]);return l.jsxs(x.Flex,{w:"full",role:"tablist",p:1,rounded:"full",bg:"ink.10",_dark:{bg:"slate.2"},"aria-label":"Segmented Control",position:"relative",children:[l.jsx(x.Box,{position:"absolute",bg:"paper",_dark:{bg:"slate.4"},boxShadow:"0px 4px 20px 0px {colors.ink.90/10}",transition:"transform 0.2s ease",rounded:"inherit",ml:-1,style:{...m}}),l.jsx(k.Provider,{value:{currentTab:t,setCurrentTab:v,size:f,tabRefs:a,disabled:h},children:u})]})},R=e.forwardRef((i,u)=>{const{label:c,id:n}=i,{currentTab:f,setCurrentTab:h,tabRefs:t,size:o,disabled:a}=e.useContext(k),r=f===n,m=o==="sm"?8:o==="md"?10:13,d=o==="sm"?16:20,v=e.useRef(null),s=u||v;e.useEffect(()=>{typeof s=="object"&&t.current&&(t.current[n]=s.current)},[n]);const b=e.useCallback(()=>{h(n)},[h,n]),{buttonProps:p,isPressed:T}=g.useButton({onPress:b,isDisabled:a},s),{hoverProps:P}=g.useHover({}),{isFocusVisible:z,focusProps:$}=g.useFocusRing();return j.createHost(i.children,q=>{const C=q.get(S);return l.jsx("button",{className:y.css({display:"flex",justifyContent:"center",alignItems:"center",h:m,w:"full",rounded:"button",zIndex:0,cursor:"pointer",color:r?"text.primary":"text.secondary",fontSize:o,fontWeight:"semibold",whiteSpace:"nowrap",bg:"transparent",outlineColor:z?"brand.base":"transparent",outlineStyle:"solid",outlineWidth:"thick",transition:r?"background 0s":"background 0.2s ease",_disabled:{opacity:"0.3",pointerEvents:"none"},_hover:{bg:r?"transparent":"ink.20",_dark:{bg:r?"transparent":"slate.1"}}}),ref:s,...g.mergeProps(p,P,$),disabled:a,children:l.jsxs(x.Flex,{opacity:T&&!r?.5:1,align:"center",justify:"center",children:[C&&{...C,props:{...C.props,className:y.css({mr:1,color:r?"text.primary":"text.secondary"}),width:d,height:d}},c]})})})}),E=Object.assign(R,{Icon:S});R.displayName="Tab",w.displayName="SegmentedControl",exports.SegmentedControl=w,exports.Tab=E;
1
+ "use strict";var l=require("react/jsx-runtime"),y=require("../../lib/cn.js"),j=require("create-slots"),e=require("react"),m=require("react-aria");const C=e.createContext({currentTab:void 0,setCurrentTab:()=>{},tabRefs:{current:{}},disabled:!1}),k=j.createSlot(({children:o,...u})=>l.jsx("div",{className:"flex items-center justify-center",children:e.Children.map(o,c=>e.cloneElement(c,u))})),w=o=>{const{children:u,onChange:c,selectedTab:n,size:h="md",disabled:p=!1}=o,[t,i]=e.useState(n),a=e.useRef({}),r=e.useRef(),[x,d]=e.useState({transform:"translateX(4px)",width:"",height:""});e.useEffect(()=>{n!==void 0&&i(n)},[n]),e.useEffect(()=>(r.current||(r.current=new ResizeObserver(()=>{const{offsetLeft:s,clientWidth:b,clientHeight:f}=a.current[t];d({transform:`translateX(${s}px)`,width:`${b}px`,height:`${f}px`})})),r.current.observe(a.current[t]),()=>{r.current&&a.current[t]&&r.current.unobserve(a.current[t])}),[]),e.useEffect(()=>{if(t&&a.current[t]){const{offsetLeft:s,clientWidth:b,clientHeight:f}=a.current[t];d({transform:`translateX(${s}px)`,width:`${b}px`,height:`${f}px`})}},[t,h]);const g=e.useCallback(s=>{i(s),c(s)},[i,c]);return l.jsxs("div",{className:"flex w-full p-1 rounded-full bg-ink-10 dark:bg-slate-2 relative",role:"tablist","aria-label":"Segmented Control",children:[l.jsx("div",{className:"absolute bg-paper dark:bg-slate-4 shadow-[0px_4px_20px_0px_rgba(24,23,26,0.1)] transition-transform duration-200 ease-in-out rounded-[inherit] -ml-1",style:{...x}}),l.jsx(C.Provider,{value:{currentTab:t,setCurrentTab:g,size:h,tabRefs:a,disabled:p},children:u})]})},R=e.forwardRef((o,u)=>{const{label:c,id:n}=o,{currentTab:h,setCurrentTab:p,tabRefs:t,size:i,disabled:a}=e.useContext(C),r=h===n,x=i==="sm"?"h-8":i==="md"?"h-10":"h-[3.25rem]",d=i==="sm"?16:20,g=e.useRef(null),s=u||g;e.useEffect(()=>{typeof s=="object"&&t.current&&(t.current[n]=s.current)},[n]);const b=e.useCallback(()=>{p(n)},[p,n]),{buttonProps:f,isPressed:T}=m.useButton({onPress:b,isDisabled:a},s),{hoverProps:N}=m.useHover({}),{isFocusVisible:P,focusProps:S}=m.useFocusRing();return j.createHost(o.children,$=>{const v=$.get(k);return l.jsx("button",{className:y.cn("flex justify-center items-center w-full rounded-button z-0 cursor-pointer font-semibold whitespace-nowrap bg-transparent outline disabled:opacity-30 disabled:pointer-events-none",x,i==="sm"?"text-sm":i==="md"?"text-md":"text-lg",r?"text-text-primary":"text-text-secondary",P?"outline-brand-base outline-thick":"outline-transparent outline-thick",r?"transition-none":"transition-colors duration-200 ease-in-out",r?"hover:bg-transparent dark:hover:bg-transparent":"hover:bg-ink-20 dark:hover:bg-slate-1"),ref:s,...m.mergeProps(f,N,S),disabled:a,children:l.jsxs("div",{className:"flex items-center justify-center",style:{opacity:T&&!r?.5:1},children:[v&&{...v,props:{...v.props,className:y.cn("mr-1",r?"text-text-primary":"text-text-secondary"),width:d,height:d}},c]})})})}),q=Object.assign(R,{Icon:k});R.displayName="Tab",w.displayName="SegmentedControl",exports.SegmentedControl=w,exports.Tab=q;
2
2
  //# sourceMappingURL=segmented-control.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"segmented-control.js","sources":["../../../../src/components/primitives/segmented-control.tsx"],"sourcesContent":["import { css } from '@styled/css';\nimport { Box, Flex } from '@styled/jsx';\nimport { createHost, createSlot } from 'create-slots';\nimport React, {\n Children,\n PropsWithChildren,\n RefObject,\n cloneElement,\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { AriaButtonProps, mergeProps, useButton, useFocusRing, useHover } from 'react-aria';\n\nexport interface SegmentedControlProps extends PropsWithChildren {\n onChange: (value: string) => void;\n selectedTab: string;\n size?: 'sm' | 'md' | 'lg';\n disabled?: boolean;\n}\n\nexport interface TabProps extends AriaButtonProps {\n label: string;\n id: string;\n}\n\ntype TabRefs = {\n [key: string]: HTMLButtonElement | null;\n};\n\nconst SegmentedControlContext = createContext<{\n currentTab: string | undefined;\n setCurrentTab: (id: string) => void;\n size?: 'sm' | 'md' | 'lg';\n tabRefs: RefObject<TabRefs>;\n disabled: boolean;\n}>({\n currentTab: undefined,\n setCurrentTab: () => {},\n tabRefs: { current: {} },\n disabled: false,\n});\n\nconst Icon = createSlot(({ children, ...props }) => {\n return (\n <Flex alignItems=\"center\" justifyContent=\"center\">\n {Children.map(children, child => {\n return cloneElement(child, props);\n })}\n </Flex>\n );\n});\n\nexport const SegmentedControl = (props: SegmentedControlProps) => {\n const { children, onChange, selectedTab, size = 'md', disabled = false } = props;\n const [currentTab, setCurrentTab] = useState(selectedTab);\n const tabRefs = useRef<{ [key: string]: HTMLButtonElement | null }>({});\n const observer = useRef<ResizeObserver>();\n const [indicatorStyle, setIndicatorStyle] = useState({ transform: 'translateX(4px)', width: '', height: '' });\n\n useEffect(() => {\n if (selectedTab !== undefined) {\n setCurrentTab(selectedTab);\n }\n }, [selectedTab]);\n\n useEffect(() => {\n if (!observer.current) {\n observer.current = new ResizeObserver(() => {\n const { offsetLeft, clientWidth, clientHeight } = tabRefs.current[currentTab]!;\n setIndicatorStyle({\n transform: `translateX(${offsetLeft}px)`,\n width: `${clientWidth}px`,\n height: `${clientHeight}px`,\n });\n });\n }\n\n observer.current.observe(tabRefs.current[currentTab]!);\n\n return () => {\n if (observer.current && tabRefs.current[currentTab]) {\n observer.current.unobserve(tabRefs.current[currentTab]!);\n }\n };\n }, []);\n\n useEffect(() => {\n if (currentTab && tabRefs.current[currentTab]) {\n const { offsetLeft, clientWidth, clientHeight } = tabRefs.current[currentTab]!;\n setIndicatorStyle({\n transform: `translateX(${offsetLeft}px)`,\n width: `${clientWidth}px`,\n height: `${clientHeight}px`,\n });\n }\n }, [currentTab, size]);\n\n const handleSelect = useCallback(\n (id: string) => {\n setCurrentTab(id);\n onChange(id);\n },\n [setCurrentTab, onChange],\n );\n\n return (\n <Flex\n w=\"full\"\n role=\"tablist\"\n p={1}\n rounded=\"full\"\n bg=\"ink.10\"\n _dark={{ bg: 'slate.2' }}\n aria-label=\"Segmented Control\"\n position=\"relative\"\n >\n <Box\n position=\"absolute\"\n bg=\"paper\"\n _dark={{ bg: 'slate.4' }}\n boxShadow=\"0px 4px 20px 0px {colors.ink.90/10}\"\n transition=\"transform 0.2s ease\"\n rounded=\"inherit\"\n ml={-1}\n style={{ ...indicatorStyle }}\n />\n <SegmentedControlContext.Provider value={{ currentTab, setCurrentTab: handleSelect, size, tabRefs, disabled }}>\n {children}\n </SegmentedControlContext.Provider>\n </Flex>\n );\n};\n\nconst TabComponent = forwardRef<HTMLButtonElement, TabProps>((props, forwardedRef) => {\n const { label, id } = props;\n const { currentTab, setCurrentTab, tabRefs, size, disabled } = useContext(SegmentedControlContext);\n\n const isSelected = currentTab === id;\n const height = size === 'sm' ? 8 : size === 'md' ? 10 : 13;\n const iconSize = size === 'sm' ? 16 : 20;\n\n const internalRef = useRef<HTMLButtonElement>(null);\n const ref = forwardedRef || internalRef;\n\n useEffect(() => {\n if (typeof ref === 'object' && tabRefs.current) {\n tabRefs.current[id] = ref.current;\n }\n }, [id]);\n\n const handlePress = useCallback(() => {\n setCurrentTab(id);\n }, [setCurrentTab, id]);\n\n const { buttonProps, isPressed } = useButton(\n { onPress: handlePress, isDisabled: disabled },\n ref as React.RefObject<HTMLButtonElement>,\n );\n const { hoverProps } = useHover({});\n const { isFocusVisible, focusProps } = useFocusRing();\n\n return createHost(props.children, slots => {\n const icon = slots.get(Icon);\n\n return (\n <button\n className={css({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n h: height,\n w: 'full',\n rounded: 'button',\n zIndex: 0,\n cursor: 'pointer',\n color: isSelected ? 'text.primary' : 'text.secondary',\n fontSize: size,\n fontWeight: 'semibold',\n whiteSpace: 'nowrap',\n bg: 'transparent',\n outlineColor: isFocusVisible ? 'brand.base' : 'transparent',\n outlineStyle: 'solid',\n outlineWidth: 'thick',\n transition: isSelected ? 'background 0s' : 'background 0.2s ease',\n _disabled: { opacity: '0.3', pointerEvents: 'none' },\n _hover: {\n bg: isSelected ? 'transparent' : 'ink.20',\n _dark: { bg: isSelected ? 'transparent' : 'slate.1' },\n },\n })}\n ref={ref}\n {...mergeProps(buttonProps, hoverProps, focusProps)}\n disabled={disabled}\n >\n <Flex opacity={isPressed && !isSelected ? 0.5 : 1} align=\"center\" justify=\"center\">\n {icon && {\n ...icon,\n props: {\n ...icon.props,\n className: css({ mr: 1, color: isSelected ? 'text.primary' : 'text.secondary' }),\n width: iconSize,\n height: iconSize,\n },\n }}\n {label}\n </Flex>\n </button>\n );\n });\n});\n\nexport const Tab = Object.assign(TabComponent, {\n Icon,\n});\n\nTabComponent.displayName = 'Tab';\nSegmentedControl.displayName = 'SegmentedControl';\n"],"names":["SegmentedControlContext","createContext","Icon","createSlot","children","props","_jsx","Flex","Children","child","cloneElement","SegmentedControl","onChange","selectedTab","size","disabled","currentTab","setCurrentTab","useState","tabRefs","useRef","observer","indicatorStyle","setIndicatorStyle","useEffect","offsetLeft","clientWidth","clientHeight","handleSelect","useCallback","id","_jsxs","Box","TabComponent","forwardRef","forwardedRef","label","useContext","isSelected","height","iconSize","internalRef","ref","handlePress","buttonProps","isPressed","useButton","hoverProps","useHover","isFocusVisible","focusProps","useFocusRing","createHost","slots","icon","css","mergeProps","Tab"],"mappings":"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"}
1
+ {"version":3,"file":"segmented-control.js","sources":["../../../../src/components/primitives/segmented-control.tsx"],"sourcesContent":["import { cn } from '@lib/cn';\nimport { createHost, createSlot } from 'create-slots';\nimport React, {\n Children,\n PropsWithChildren,\n RefObject,\n cloneElement,\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { AriaButtonProps, mergeProps, useButton, useFocusRing, useHover } from 'react-aria';\n\nexport interface SegmentedControlProps extends PropsWithChildren {\n onChange: (value: string) => void;\n selectedTab: string;\n size?: 'sm' | 'md' | 'lg';\n disabled?: boolean;\n}\n\nexport interface TabProps extends AriaButtonProps {\n label: string;\n id: string;\n}\n\ntype TabRefs = {\n [key: string]: HTMLButtonElement | null;\n};\n\nconst SegmentedControlContext = createContext<{\n currentTab: string | undefined;\n setCurrentTab: (id: string) => void;\n size?: 'sm' | 'md' | 'lg';\n tabRefs: RefObject<TabRefs>;\n disabled: boolean;\n}>({\n currentTab: undefined,\n setCurrentTab: () => {},\n tabRefs: { current: {} },\n disabled: false,\n});\n\nconst Icon = createSlot(({ children, ...props }) => {\n return (\n <div className=\"flex items-center justify-center\">\n {Children.map(children, child => {\n return cloneElement(child, props);\n })}\n </div>\n );\n});\n\nexport const SegmentedControl = (props: SegmentedControlProps) => {\n const { children, onChange, selectedTab, size = 'md', disabled = false } = props;\n const [currentTab, setCurrentTab] = useState(selectedTab);\n const tabRefs = useRef<{ [key: string]: HTMLButtonElement | null }>({});\n const observer = useRef<ResizeObserver>();\n const [indicatorStyle, setIndicatorStyle] = useState({ transform: 'translateX(4px)', width: '', height: '' });\n\n useEffect(() => {\n if (selectedTab !== undefined) {\n setCurrentTab(selectedTab);\n }\n }, [selectedTab]);\n\n useEffect(() => {\n if (!observer.current) {\n observer.current = new ResizeObserver(() => {\n const { offsetLeft, clientWidth, clientHeight } = tabRefs.current[currentTab]!;\n setIndicatorStyle({\n transform: `translateX(${offsetLeft}px)`,\n width: `${clientWidth}px`,\n height: `${clientHeight}px`,\n });\n });\n }\n\n observer.current.observe(tabRefs.current[currentTab]!);\n\n return () => {\n if (observer.current && tabRefs.current[currentTab]) {\n observer.current.unobserve(tabRefs.current[currentTab]!);\n }\n };\n }, []);\n\n useEffect(() => {\n if (currentTab && tabRefs.current[currentTab]) {\n const { offsetLeft, clientWidth, clientHeight } = tabRefs.current[currentTab]!;\n setIndicatorStyle({\n transform: `translateX(${offsetLeft}px)`,\n width: `${clientWidth}px`,\n height: `${clientHeight}px`,\n });\n }\n }, [currentTab, size]);\n\n const handleSelect = useCallback(\n (id: string) => {\n setCurrentTab(id);\n onChange(id);\n },\n [setCurrentTab, onChange],\n );\n\n return (\n <div\n className=\"flex w-full p-1 rounded-full bg-ink-10 dark:bg-slate-2 relative\"\n role=\"tablist\"\n aria-label=\"Segmented Control\"\n >\n <div\n className=\"absolute bg-paper dark:bg-slate-4 shadow-[0px_4px_20px_0px_rgba(24,23,26,0.1)] transition-transform duration-200 ease-in-out rounded-[inherit] -ml-1\"\n style={{ ...indicatorStyle }}\n />\n <SegmentedControlContext.Provider value={{ currentTab, setCurrentTab: handleSelect, size, tabRefs, disabled }}>\n {children}\n </SegmentedControlContext.Provider>\n </div>\n );\n};\n\nconst TabComponent = forwardRef<HTMLButtonElement, TabProps>((props, forwardedRef) => {\n const { label, id } = props;\n const { currentTab, setCurrentTab, tabRefs, size, disabled } = useContext(SegmentedControlContext);\n\n const isSelected = currentTab === id;\n const height = size === 'sm' ? 'h-8' : size === 'md' ? 'h-10' : 'h-[3.25rem]';\n const iconSize = size === 'sm' ? 16 : 20;\n\n const internalRef = useRef<HTMLButtonElement>(null);\n const ref = forwardedRef || internalRef;\n\n useEffect(() => {\n if (typeof ref === 'object' && tabRefs.current) {\n tabRefs.current[id] = ref.current;\n }\n }, [id]);\n\n const handlePress = useCallback(() => {\n setCurrentTab(id);\n }, [setCurrentTab, id]);\n\n const { buttonProps, isPressed } = useButton(\n { onPress: handlePress, isDisabled: disabled },\n ref as React.RefObject<HTMLButtonElement>,\n );\n const { hoverProps } = useHover({});\n const { isFocusVisible, focusProps } = useFocusRing();\n\n return createHost(props.children, slots => {\n const icon = slots.get(Icon);\n\n return (\n <button\n className={cn(\n 'flex justify-center items-center w-full rounded-button z-0 cursor-pointer font-semibold whitespace-nowrap bg-transparent outline disabled:opacity-30 disabled:pointer-events-none',\n height,\n size === 'sm' ? 'text-sm' : size === 'md' ? 'text-md' : 'text-lg',\n isSelected ? 'text-text-primary' : 'text-text-secondary',\n isFocusVisible ? 'outline-brand-base outline-thick' : 'outline-transparent outline-thick',\n isSelected ? 'transition-none' : 'transition-colors duration-200 ease-in-out',\n isSelected ? 'hover:bg-transparent dark:hover:bg-transparent' : 'hover:bg-ink-20 dark:hover:bg-slate-1',\n )}\n ref={ref}\n {...mergeProps(buttonProps, hoverProps, focusProps)}\n disabled={disabled}\n >\n <div className=\"flex items-center justify-center\" style={{ opacity: isPressed && !isSelected ? 0.5 : 1 }}>\n {icon && {\n ...icon,\n props: {\n ...icon.props,\n className: cn('mr-1', isSelected ? 'text-text-primary' : 'text-text-secondary'),\n width: iconSize,\n height: iconSize,\n },\n }}\n {label}\n </div>\n </button>\n );\n });\n});\n\nexport const Tab = Object.assign(TabComponent, {\n Icon,\n});\n\nTabComponent.displayName = 'Tab';\nSegmentedControl.displayName = 'SegmentedControl';\n"],"names":["SegmentedControlContext","createContext","Icon","createSlot","children","props","_jsx","Children","child","cloneElement","SegmentedControl","onChange","selectedTab","size","disabled","currentTab","setCurrentTab","useState","tabRefs","useRef","observer","indicatorStyle","setIndicatorStyle","useEffect","offsetLeft","clientWidth","clientHeight","handleSelect","useCallback","id","_jsxs","TabComponent","forwardRef","forwardedRef","label","useContext","isSelected","height","iconSize","internalRef","ref","handlePress","buttonProps","isPressed","useButton","hoverProps","useHover","isFocusVisible","focusProps","useFocusRing","createHost","slots","icon","cn","mergeProps","Tab"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("react/jsx-runtime"),x=require("./text.js"),m=require("../../hooks/useToggleState.js"),a=require("@styled/css"),q=require("@styled/jsx"),S=require("@styled/jsx/flex"),j=require("@styled/patterns"),l=require("react"),s=require("react-aria");const n=l.forwardRef((t,o)=>{const{checked:u,disabled:c=!1,label:i,className:d,...b}=t,p=l.useRef(null),g=o||p,e=m.useToggleState({...t,isSelected:u}),{buttonProps:f}=s.useToggleButton({...b,isDisabled:c},e,g),{isFocusVisible:h,focusProps:v}=s.useFocusRing();return r.jsxs(S.Flex,{alignItems:"center",children:[i&&r.jsx(q.Box,{mr:2,children:r.jsx(x.default,{fontWeight:"medium",styles:{lineHeight:1},children:i})}),r.jsx("button",{...s.mergeProps(f,v),className:a.cx(a.css({px:.5,h:5,width:11,_disabled:{opacity:.3,pointerEvents:"none"},bg:e.isSelected?"brand.base":"neutral.primary",_hover:{bg:e.isSelected?"brand.base":"ink.70",_dark:{bg:e.isSelected?"brand.base":"slate.4"}},transition:"background-color 0.2s ease",rounded:"full",outlineColor:h?"brand.base":"transparent",outlineStyle:"solid",outlineWidth:"thick",outlineOffset:.5,cursor:"pointer"}),d),children:r.jsx("span",{className:j.circle({h:4,w:4,bg:"paper",position:"relative",left:e.isSelected?6:0,transition:"left 0.2s ease"})})})]})});n.displayName="Switch",exports.default=n;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),v=require("./text.js"),x=require("../../hooks/useToggleState.js"),a=require("../../lib/cn.js"),l=require("react"),t=require("react-aria");const n=l.forwardRef((s,o)=>{const{checked:u,disabled:c=!1,label:i,className:d,...b}=s,f=l.useRef(null),g=o||f,r=x.useToggleState({...s,isSelected:u}),{buttonProps:h}=t.useToggleButton({...b,isDisabled:c},r,g),{isFocusVisible:m,focusProps:p}=t.useFocusRing();return e.jsxs("div",{className:"flex items-center",children:[i&&e.jsx("div",{className:"mr-2",children:e.jsx(v.default,{fontWeight:"medium",styles:{lineHeight:1},children:i})}),e.jsx("button",{...t.mergeProps(h,p),className:a.cn("px-0.5 h-5 w-11 disabled:opacity-30 disabled:pointer-events-none transition-colors duration-200 ease-in-out rounded-full cursor-pointer outline outline-offset-[0.125rem]",r.isSelected?"bg-brand-base hover:bg-brand-base":"bg-neutral-primary hover:bg-ink-70 dark:hover:bg-slate-4",m?"outline-brand-base outline-thick":"outline-transparent outline-thick",d),children:e.jsx("span",{className:a.cn("block rounded-full h-4 w-4 bg-paper relative transition-[left] duration-200 ease-in-out",r.isSelected?"left-6":"left-0")})})]})});n.displayName="Switch",exports.default=n;
2
2
  //# sourceMappingURL=switch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"switch.js","sources":["../../../../src/components/primitives/switch.tsx"],"sourcesContent":["import Text from '@components/primitives/text';\nimport { useToggleState } from '@hooks/useToggleState';\nimport { css, cx } from '@styled/css';\nimport { Box } from '@styled/jsx';\nimport { Flex } from '@styled/jsx/flex';\nimport { circle } from '@styled/patterns';\nimport { forwardRef, useRef } from 'react';\nimport { mergeProps, useFocusRing, useToggleButton, type AriaToggleButtonProps } from 'react-aria';\n\nexport type SwitchProps = AriaToggleButtonProps & {\n checked?: boolean;\n disabled?: boolean;\n label?: string;\n className?: string;\n};\n\nconst Switch = forwardRef<HTMLButtonElement, SwitchProps>((props, forwardedRef) => {\n const { checked, disabled = false, label, className, ...otherProps } = props;\n\n const internalRef = useRef(null);\n const ref = forwardedRef || internalRef;\n\n const state = useToggleState({ ...props, isSelected: checked });\n\n const { buttonProps } = useToggleButton(\n { ...otherProps, isDisabled: disabled },\n state,\n ref as React.RefObject<HTMLButtonElement>,\n );\n const { isFocusVisible, focusProps } = useFocusRing();\n\n return (\n <Flex alignItems=\"center\">\n {label && (\n <Box mr={2}>\n <Text fontWeight=\"medium\" styles={{ lineHeight: 1 }}>\n {label}\n </Text>\n </Box>\n )}\n <button\n {...mergeProps(buttonProps, focusProps)}\n className={cx(\n css({\n px: 0.5,\n h: 5,\n width: 11,\n _disabled: {\n opacity: 0.3,\n pointerEvents: 'none',\n },\n bg: state.isSelected ? 'brand.base' : 'neutral.primary',\n _hover: {\n bg: !state.isSelected ? 'ink.70' : 'brand.base',\n _dark: {\n bg: !state.isSelected ? 'slate.4' : 'brand.base',\n },\n },\n transition: 'background-color 0.2s ease',\n rounded: 'full',\n outlineColor: isFocusVisible ? 'brand.base' : 'transparent',\n outlineStyle: 'solid',\n outlineWidth: 'thick',\n outlineOffset: 0.5,\n cursor: 'pointer',\n }),\n className,\n )}\n >\n <span\n className={circle({\n h: 4,\n w: 4,\n bg: 'paper',\n position: 'relative',\n left: state.isSelected ? 6 : 0,\n transition: 'left 0.2s ease',\n })}\n />\n </button>\n </Flex>\n );\n});\n\nSwitch.displayName = 'Switch';\n\nexport default Switch;\n"],"names":["Switch","forwardRef","props","forwardedRef","checked","disabled","label","className","otherProps","internalRef","useRef","ref","state","useToggleState","buttonProps","useToggleButton","isFocusVisible","focusProps","useFocusRing","_jsxs","Flex","_jsx","Box","Text","mergeProps","cx","css","circle"],"mappings":"kUAgBMA,MAAAA,EAASC,EAAAA,WAA2C,CAACC,EAAOC,IAAgB,CAChF,KAAM,CAAE,QAAAC,EAAS,SAAAC,EAAW,GAAO,MAAAC,EAAO,UAAAC,EAAW,GAAGC,CAAY,EAAGN,EAEjEO,EAAcC,EAAO,OAAA,IAAI,EACzBC,EAAMR,GAAgBM,EAEtBG,EAAQC,EAAe,eAAA,CAAE,GAAGX,EAAO,WAAYE,CAAO,CAAE,EAExD,CAAE,YAAAU,CAAW,EAAKC,EAAAA,gBACtB,CAAE,GAAGP,EAAY,WAAYH,CAAU,EACvCO,EACAD,CAAyC,EAErC,CAAE,eAAAK,EAAgB,WAAAC,GAAeC,EAAAA,eAEvC,OACEC,EAAAA,KAACC,OAAI,CAAC,WAAW,SACd,SAAA,CAAAd,GACCe,EAAAA,IAACC,EAAG,IAAA,CAAC,GAAI,EAAC,SACRD,EAAAA,IAACE,EAAAA,QAAI,CAAC,WAAW,SAAS,OAAQ,CAAE,WAAY,CAAC,WAC9CjB,CAAK,CAAA,CAEJ,CAAA,EAERe,EAAAA,IAAA,SAAA,CAAA,GACMG,aAAWV,EAAaG,CAAU,EACtC,UAAWQ,EACTC,GAAAA,EAAAA,IAAI,CACF,GAAI,GACJ,EAAG,EACH,MAAO,GACP,UAAW,CACT,QAAS,GACT,cAAe,MAChB,EACD,GAAId,EAAM,WAAa,aAAe,kBACtC,OAAQ,CACN,GAAKA,EAAM,WAAwB,aAAX,SACxB,MAAO,CACL,GAAKA,EAAM,WAAyB,aAAZ,SACzB,CACF,EACD,WAAY,6BACZ,QAAS,OACT,aAAcI,EAAiB,aAAe,cAC9C,aAAc,QACd,aAAc,QACd,cAAe,GACf,OAAQ,UACT,EACDT,CAAS,EACV,SAEDc,cACE,UAAWM,EAAAA,OAAO,CAChB,EAAG,EACH,EAAG,EACH,GAAI,QACJ,SAAU,WACV,KAAMf,EAAM,WAAa,EAAI,EAC7B,WAAY,gBACb,CAAA,CACD,CAAA,CAAA,CAAA,CACK,CACJ,CAAA,CAEX,CAAC,EAEDZ,EAAO,YAAc"}
1
+ {"version":3,"file":"switch.js","sources":["../../../../src/components/primitives/switch.tsx"],"sourcesContent":["import Text from '@components/primitives/text';\nimport { useToggleState } from '@hooks/useToggleState';\nimport { cn } from '@lib/cn';\nimport { forwardRef, useRef } from 'react';\nimport { mergeProps, useFocusRing, useToggleButton, type AriaToggleButtonProps } from 'react-aria';\n\nexport type SwitchProps = AriaToggleButtonProps & {\n checked?: boolean;\n disabled?: boolean;\n label?: string;\n className?: string;\n};\n\nconst Switch = forwardRef<HTMLButtonElement, SwitchProps>((props, forwardedRef) => {\n const { checked, disabled = false, label, className, ...otherProps } = props;\n\n const internalRef = useRef(null);\n const ref = forwardedRef || internalRef;\n\n const state = useToggleState({ ...props, isSelected: checked });\n\n const { buttonProps } = useToggleButton(\n { ...otherProps, isDisabled: disabled },\n state,\n ref as React.RefObject<HTMLButtonElement>,\n );\n const { isFocusVisible, focusProps } = useFocusRing();\n\n return (\n <div className=\"flex items-center\">\n {label && (\n <div className=\"mr-2\">\n <Text fontWeight=\"medium\" styles={{ lineHeight: 1 }}>\n {label}\n </Text>\n </div>\n )}\n <button\n {...mergeProps(buttonProps, focusProps)}\n className={cn(\n 'px-0.5 h-5 w-11 disabled:opacity-30 disabled:pointer-events-none transition-colors duration-200 ease-in-out rounded-full cursor-pointer outline outline-offset-[0.125rem]',\n state.isSelected\n ? 'bg-brand-base hover:bg-brand-base'\n : 'bg-neutral-primary hover:bg-ink-70 dark:hover:bg-slate-4',\n isFocusVisible ? 'outline-brand-base outline-thick' : 'outline-transparent outline-thick',\n className,\n )}\n >\n <span\n className={cn(\n 'block rounded-full h-4 w-4 bg-paper relative transition-[left] duration-200 ease-in-out',\n state.isSelected ? 'left-6' : 'left-0',\n )}\n />\n </button>\n </div>\n );\n});\n\nSwitch.displayName = 'Switch';\n\nexport default Switch;\n"],"names":["Switch","forwardRef","props","forwardedRef","checked","disabled","label","className","otherProps","internalRef","useRef","ref","state","useToggleState","buttonProps","useToggleButton","isFocusVisible","focusProps","useFocusRing","_jsxs","_jsx","Text","mergeProps","cn"],"mappings":"iPAaA,MAAMA,EAASC,EAAAA,WAA2C,CAACC,EAAOC,IAAgB,CAChF,KAAM,CAAE,QAAAC,EAAS,SAAAC,EAAW,GAAO,MAAAC,EAAO,UAAAC,EAAW,GAAGC,CAAY,EAAGN,EAEjEO,EAAcC,EAAAA,OAAO,IAAI,EACzBC,EAAMR,GAAgBM,EAEtBG,EAAQC,EAAAA,eAAe,CAAE,GAAGX,EAAO,WAAYE,CAAO,CAAE,EAExD,CAAE,YAAAU,CAAW,EAAKC,EAAAA,gBACtB,CAAE,GAAGP,EAAY,WAAYH,CAAU,EACvCO,EACAD,CAAyC,EAErC,CAAE,eAAAK,EAAgB,WAAAC,GAAeC,iBAEvC,OACEC,EAAAA,YAAK,UAAU,oBACZ,SAAA,CAAAb,GACCc,EAAAA,IAAK,MAAA,CAAA,UAAU,OAAM,SACnBA,MAACC,EAAK,QAAA,CAAA,WAAW,SAAS,OAAQ,CAAE,WAAY,CAAC,WAC9Cf,CAAK,CAAA,IAIZc,MACM,SAAA,CAAA,GAAAE,EAAAA,WAAWR,EAAaG,CAAU,EACtC,UAAWM,EAAAA,GACT,4KACAX,EAAM,WACF,oCACA,2DACJI,EAAiB,mCAAqC,oCACtDT,CAAS,EACV,SAEDa,cACE,UAAWG,EAAAA,GACT,0FACAX,EAAM,WAAa,SAAW,QAAQ,GAGnC,CAAA,CAAA,CAAA,CAAA,CAGf,CAAC,EAEDZ,EAAO,YAAc"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var c=require("react/jsx-runtime"),S=require("../../recipes/text.js"),o=require("@styled/css"),n=require("react");const d="text.primary",h=n.forwardRef(({children:e,styles:s={},scale:t,fontColor:r=d,...a},l)=>c.jsx("h1",{ref:l,className:o.css({textStyle:t?"h1-scaled":"h1",color:r,...a}),style:s,children:e})),x=n.forwardRef(({children:e,styles:s={},scale:t,fontColor:r=d,...a},l)=>c.jsx("h2",{ref:l,className:o.css({textStyle:t?"h2-scaled":"h2",color:r,...a}),style:s,children:e})),y=n.forwardRef(({children:e,styles:s={},scale:t,fontColor:r=d,...a},l)=>c.jsx("h3",{ref:l,className:o.css({textStyle:t?"h3-scaled":"h3",color:r,...a}),style:s,children:e})),m=n.forwardRef(({children:e,styles:s={},scale:t,fontColor:r=d,...a},l)=>c.jsx("h4",{ref:l,className:o.css({textStyle:t?"h4-scaled":"h4",color:r,...a}),style:s,children:e})),N=n.forwardRef(({children:e,styles:s={},scale:t,fontColor:r=d,...a},l)=>c.jsx("h5",{ref:l,className:o.css({textStyle:t?"h5-scaled":"h5",color:r,...a}),style:s,children:e})),u=n.forwardRef(({children:e,styles:s={},scale:t,fontColor:r="text.secondary",...a},l)=>c.jsx("h6",{ref:l,className:o.css({textStyle:t?"h6-scaled":"h6",color:r,...a}),style:s,children:e})),i=n.forwardRef(({children:e,styles:s={},scale:t,inline:r=!1,mono:a=!1,variant:l="text",size:H="md",truncate:j=!1,fontWeight:R,fontColor:T,...w},v)=>{const C=S.text({mono:a,variant:l,size:H,scale:t}),f={ref:v,className:o.cx(C,o.css({truncate:j,fontWeight:R??(l!=="text"?"medium":"normal"),color:T,...w})),style:s};return r?c.jsx("span",{...f,children:e}):c.jsx("p",{...f,children:e})}),p=n.forwardRef((e,s)=>c.jsx(i,{ref:s,mono:!0,...e})),q=Object.assign(i,{H1:h,H2:x,H3:y,H4:m,H5:N,H6:u,Mono:p});i.displayName="Text",h.displayName="Text.H1",x.displayName="Text.H2",y.displayName="Text.H3",m.displayName="Text.H4",N.displayName="Text.H5",u.displayName="Text.H6",p.displayName="Text.Mono",exports.default=q;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var a=require("react/jsx-runtime"),q=require("../../recipes/text.js"),o=require("../../lib/cn.js"),n=require("react");const x={"text.primary":"text-text-primary","text.secondary":"text-text-secondary","text.tertiary":"text-text-tertiary","text.quaternary":"text-text-quaternary"},v={normal:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold",extrabold:"font-extrabold"},f=n.forwardRef(({children:e,styles:t={},scale:r,fontColor:s="text.primary"},l)=>a.jsx("h1",{ref:l,className:o.cn(r?"text-style-h1-scaled":"text-style-h1",x[s]),style:t,children:e})),m=n.forwardRef(({children:e,styles:t={},scale:r,fontColor:s="text.primary"},l)=>a.jsx("h2",{ref:l,className:o.cn(r?"text-style-h2-scaled":"text-style-h2",x[s]),style:t,children:e})),h=n.forwardRef(({children:e,styles:t={},scale:r,fontColor:s="text.primary"},l)=>a.jsx("h3",{ref:l,className:o.cn(r?"text-style-h3-scaled":"text-style-h3",x[s]),style:t,children:e})),p=n.forwardRef(({children:e,styles:t={},scale:r,fontColor:s="text.primary"},l)=>a.jsx("h4",{ref:l,className:o.cn(r?"text-style-h4-scaled":"text-style-h4",x[s]),style:t,children:e})),u=n.forwardRef(({children:e,styles:t={},scale:r,fontColor:s="text.primary"},l)=>a.jsx("h5",{ref:l,className:o.cn(r?"text-style-h5-scaled":"text-style-h5",x[s]),style:t,children:e})),N=n.forwardRef(({children:e,styles:t={},scale:r,fontColor:s="text.secondary"},l)=>a.jsx("h6",{ref:l,className:o.cn(r?"text-style-h6-scaled":"text-style-h6",x[s]),style:t,children:e})),c=n.forwardRef(({children:e,styles:t={},scale:r,inline:s=!1,mono:l=!1,variant:i="text",size:H="md",truncate:R=!1,fontWeight:T,fontColor:d},b)=>{const w=q.text({mono:l,variant:i,size:H,scale:r}),y={ref:b,className:o.cn(w,v[T??(i!=="text"?"medium":"normal")],d&&x[d],R&&"truncate"),style:t};return s?a.jsx("span",{...y,children:e}):a.jsx("p",{...y,children:e})}),j=n.forwardRef((e,t)=>a.jsx(c,{ref:t,mono:!0,...e})),C=Object.assign(c,{H1:f,H2:m,H3:h,H4:p,H5:u,H6:N,Mono:j});c.displayName="Text",f.displayName="Text.H1",m.displayName="Text.H2",h.displayName="Text.H3",p.displayName="Text.H4",u.displayName="Text.H5",N.displayName="Text.H6",j.displayName="Text.Mono",exports.default=C;
2
2
  //# sourceMappingURL=text.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"text.js","sources":["../../../../src/components/primitives/text.tsx"],"sourcesContent":["import { text } from '@recipes/text';\nimport { css, cx } from '@styled/css';\nimport { CSSProperties, PropsWithChildren, forwardRef } from 'react';\n\nexport type TextStyles = {\n color?: CSSProperties['color'];\n fontWeight?: CSSProperties['fontWeight'];\n fontSize?: CSSProperties['fontSize'];\n lineHeight?: CSSProperties['lineHeight'];\n letterSpacing?: CSSProperties['letterSpacing'];\n textAlign?: CSSProperties['textAlign'];\n textDecoration?: CSSProperties['textDecoration'];\n textTransform?: CSSProperties['textTransform'];\n textWrap?: CSSProperties['textWrap'];\n maxWidth?: CSSProperties['maxWidth'];\n};\n\nexport interface TextProps extends PropsWithChildren {\n styles?: TextStyles;\n scale?: boolean;\n fontWeight?: 'normal' | 'medium' | 'semibold' | 'bold' | 'extrabold';\n fontColor?: 'text.primary' | 'text.secondary' | 'text.tertiary' | 'text.quaternary';\n}\n\nexport interface BodyProps extends TextProps {\n inline?: boolean;\n mono?: boolean;\n variant?: 'text' | 'error' | 'info' | 'success' | 'warning';\n size?: 'xs' | 'sm' | 'md' | 'lg';\n truncate?: boolean;\n}\n\nconst defaultColor = 'text.primary';\n\nconst TextH1 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = defaultColor, ...props }, ref) => (\n <h1 ref={ref} className={css({ textStyle: scale ? 'h1-scaled' : 'h1', color, ...props })} style={styles}>\n {children}\n </h1>\n ),\n);\n\nconst TextH2 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = defaultColor, ...props }, ref) => (\n <h2 ref={ref} className={css({ textStyle: scale ? 'h2-scaled' : 'h2', color, ...props })} style={styles}>\n {children}\n </h2>\n ),\n);\n\nconst TextH3 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = defaultColor, ...props }, ref) => (\n <h3 ref={ref} className={css({ textStyle: scale ? 'h3-scaled' : 'h3', color, ...props })} style={styles}>\n {children}\n </h3>\n ),\n);\n\nconst TextH4 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = defaultColor, ...props }, ref) => (\n <h4 ref={ref} className={css({ textStyle: scale ? 'h4-scaled' : 'h4', color, ...props })} style={styles}>\n {children}\n </h4>\n ),\n);\n\nconst TextH5 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = defaultColor, ...props }, ref) => (\n <h5 ref={ref} className={css({ textStyle: scale ? 'h5-scaled' : 'h5', color, ...props })} style={styles}>\n {children}\n </h5>\n ),\n);\n\nconst TextH6 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = 'text.secondary', ...props }, ref) => (\n <h6 ref={ref} className={css({ textStyle: scale ? 'h6-scaled' : 'h6', color, ...props })} style={styles}>\n {children}\n </h6>\n ),\n);\n\nconst Body = forwardRef<HTMLParagraphElement, BodyProps>(\n (\n {\n children,\n styles = {},\n scale,\n inline = false,\n mono = false,\n variant = 'text',\n size = 'md',\n truncate = false,\n fontWeight,\n fontColor: color,\n ...props\n },\n ref,\n ) => {\n const classStyles = text({ mono, variant, size, scale });\n const fontWeightStyle = fontWeight ?? (variant !== 'text' ? 'medium' : 'normal');\n const bodyProps = {\n ref,\n className: cx(classStyles, css({ truncate, fontWeight: fontWeightStyle, color, ...props })),\n style: styles,\n };\n\n if (inline) {\n return <span {...bodyProps}>{children}</span>;\n }\n\n return <p {...bodyProps}>{children}</p>;\n },\n);\n\nconst TextMono = forwardRef<HTMLParagraphElement, BodyProps>((props, ref) => {\n return <Body ref={ref} mono {...props} />;\n});\n\nconst Text = Object.assign(Body, {\n H1: TextH1,\n H2: TextH2,\n H3: TextH3,\n H4: TextH4,\n H5: TextH5,\n H6: TextH6,\n Mono: TextMono,\n});\n\nBody.displayName = 'Text';\nTextH1.displayName = 'Text.H1';\nTextH2.displayName = 'Text.H2';\nTextH3.displayName = 'Text.H3';\nTextH4.displayName = 'Text.H4';\nTextH5.displayName = 'Text.H5';\nTextH6.displayName = 'Text.H6';\nTextMono.displayName = 'Text.Mono';\n\nexport default Text;\n"],"names":["defaultColor","TextH1","forwardRef","children","styles","scale","color","props","ref","_jsx","css","TextH2","TextH3","TextH4","TextH5","TextH6","Body","inline","mono","variant","size","truncate","fontWeight","classStyles","text","bodyProps","cx","TextMono","Text"],"mappings":"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"}
1
+ {"version":3,"file":"text.js","sources":["../../../../src/components/primitives/text.tsx"],"sourcesContent":["import { text } from '@recipes/text';\nimport { cn } from '@lib/cn';\nimport { CSSProperties, PropsWithChildren, forwardRef } from 'react';\n\nexport type TextStyles = {\n color?: CSSProperties['color'];\n fontWeight?: CSSProperties['fontWeight'];\n fontSize?: CSSProperties['fontSize'];\n lineHeight?: CSSProperties['lineHeight'];\n letterSpacing?: CSSProperties['letterSpacing'];\n textAlign?: CSSProperties['textAlign'];\n textDecoration?: CSSProperties['textDecoration'];\n textTransform?: CSSProperties['textTransform'];\n textWrap?: CSSProperties['textWrap'];\n maxWidth?: CSSProperties['maxWidth'];\n};\n\nexport interface TextProps extends PropsWithChildren {\n styles?: TextStyles;\n scale?: boolean;\n fontWeight?: 'normal' | 'medium' | 'semibold' | 'bold' | 'extrabold';\n fontColor?: 'text.primary' | 'text.secondary' | 'text.tertiary' | 'text.quaternary';\n}\n\nexport interface BodyProps extends TextProps {\n inline?: boolean;\n mono?: boolean;\n variant?: 'text' | 'error' | 'info' | 'success' | 'warning';\n size?: 'xs' | 'sm' | 'md' | 'lg';\n truncate?: boolean;\n}\n\nconst fontColorMap: Record<string, string> = {\n 'text.primary': 'text-text-primary',\n 'text.secondary': 'text-text-secondary',\n 'text.tertiary': 'text-text-tertiary',\n 'text.quaternary': 'text-text-quaternary',\n};\n\nconst fontWeightMap: Record<string, string> = {\n normal: 'font-normal',\n medium: 'font-medium',\n semibold: 'font-semibold',\n bold: 'font-bold',\n extrabold: 'font-extrabold',\n};\n\nconst TextH1 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = 'text.primary' }, ref) => (\n <h1 ref={ref} className={cn(scale ? 'text-style-h1-scaled' : 'text-style-h1', fontColorMap[color])} style={styles}>\n {children}\n </h1>\n ),\n);\n\nconst TextH2 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = 'text.primary' }, ref) => (\n <h2 ref={ref} className={cn(scale ? 'text-style-h2-scaled' : 'text-style-h2', fontColorMap[color])} style={styles}>\n {children}\n </h2>\n ),\n);\n\nconst TextH3 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = 'text.primary' }, ref) => (\n <h3 ref={ref} className={cn(scale ? 'text-style-h3-scaled' : 'text-style-h3', fontColorMap[color])} style={styles}>\n {children}\n </h3>\n ),\n);\n\nconst TextH4 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = 'text.primary' }, ref) => (\n <h4 ref={ref} className={cn(scale ? 'text-style-h4-scaled' : 'text-style-h4', fontColorMap[color])} style={styles}>\n {children}\n </h4>\n ),\n);\n\nconst TextH5 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = 'text.primary' }, ref) => (\n <h5 ref={ref} className={cn(scale ? 'text-style-h5-scaled' : 'text-style-h5', fontColorMap[color])} style={styles}>\n {children}\n </h5>\n ),\n);\n\nconst TextH6 = forwardRef<HTMLHeadingElement, TextProps>(\n ({ children, styles = {}, scale, fontColor: color = 'text.secondary' }, ref) => (\n <h6 ref={ref} className={cn(scale ? 'text-style-h6-scaled' : 'text-style-h6', fontColorMap[color])} style={styles}>\n {children}\n </h6>\n ),\n);\n\nconst Body = forwardRef<HTMLParagraphElement, BodyProps>(\n (\n {\n children,\n styles = {},\n scale,\n inline = false,\n mono = false,\n variant = 'text',\n size = 'md',\n truncate = false,\n fontWeight,\n fontColor: color,\n },\n ref,\n ) => {\n const classStyles = text({ mono, variant, size, scale });\n const fontWeightStyle = fontWeight ?? (variant !== 'text' ? 'medium' : 'normal');\n const bodyProps = {\n ref,\n className: cn(classStyles, fontWeightMap[fontWeightStyle], color && fontColorMap[color], truncate && 'truncate'),\n style: styles,\n };\n\n if (inline) {\n return <span {...bodyProps}>{children}</span>;\n }\n\n return <p {...bodyProps}>{children}</p>;\n },\n);\n\nconst TextMono = forwardRef<HTMLParagraphElement, BodyProps>((props, ref) => {\n return <Body ref={ref} mono {...props} />;\n});\n\nconst Text = Object.assign(Body, {\n H1: TextH1,\n H2: TextH2,\n H3: TextH3,\n H4: TextH4,\n H5: TextH5,\n H6: TextH6,\n Mono: TextMono,\n});\n\nBody.displayName = 'Text';\nTextH1.displayName = 'Text.H1';\nTextH2.displayName = 'Text.H2';\nTextH3.displayName = 'Text.H3';\nTextH4.displayName = 'Text.H4';\nTextH5.displayName = 'Text.H5';\nTextH6.displayName = 'Text.H6';\nTextMono.displayName = 'Text.Mono';\n\nexport default Text;\n"],"names":["fontColorMap","fontWeightMap","TextH1","forwardRef","children","styles","scale","color","ref","_jsx","cn","TextH2","TextH3","TextH4","TextH5","TextH6","Body","inline","mono","variant","size","truncate","fontWeight","classStyles","text","bodyProps","TextMono","props","Text"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("react/jsx-runtime"),j=require("@styled/tokens"),m=require("../icons/ico-checkmark-circle-fill.js");require("react");var n=require("@styled/jsx");require("@styled/css"),require("../feedback/callout.js");var v=require("../feedback/loading-spinner.js");require("../feedback/progress-bar.js"),require("../primitives/button.js"),require("../primitives/checkbox.js"),require("../primitives/dropdown-selector.js"),require("../primitives/popover.js"),require("../primitives/radio.js"),require("../primitives/segmented-control.js"),require("../primitives/switch.js");var C=require("../primitives/text.js");require("../primitives/portal.js"),require("../../hooks/useToast.js"),require("../../recipes/toast.js"),require("../feedback/tooltip.js"),require("../inputs/phone-input.js");var k=require("../inputs/pincode-input.js");require("../inputs/text-input.js");var t=require("create-slots");const u=t.createSlot(({children:r})=>r),S=r=>{const{isPending:o,isSuccess:s,onChange:a,onComplete:c,originName:q,pinLength:d,id:l,autoFocus:g,errorMessage:i,children:h}=r,p=()=>o?e.jsx(v.LoadingSpinner,{size:36,strokeWidth:4}):s?e.jsx(m.default,{color:j.token("colors.brand.base"),width:36,height:36}):e.jsx(k.PinCodeInput,{originName:q,onChange:a,pinLength:d,onComplete:c,id:l,autoFocus:g});return t.createHost(h,x=>e.jsxs(n.VStack,{gap:3,my:3,children:[e.jsx(n.Center,{height:12,children:p()}),i&&e.jsx(C.default,{variant:"error",size:"sm",styles:{textAlign:"center"},children:i}),x.get(u)]}))},y=Object.assign(S,{RetryContent:u});exports.VerifyPincode=y;
1
+ "use strict";var e=require("react/jsx-runtime"),x=require("../icons/ico-checkmark-circle-fill.js");require("react"),require("../../lib/cn.js"),require("../feedback/callout.js");var v=require("../feedback/loading-spinner.js");require("../primitives/button.js"),require("../primitives/checkbox.js"),require("../primitives/dropdown-selector.js"),require("../primitives/popover.js"),require("../primitives/radio.js"),require("../primitives/segmented-control.js"),require("../primitives/switch.js");var p=require("../primitives/text.js");require("../primitives/portal.js"),require("../../hooks/useToast.js"),require("../feedback/tooltip.js"),require("../inputs/phone-input.js");var f=require("../inputs/pincode-input.js");require("../inputs/text-input.js");var n=require("create-slots");const t=n.createSlot(({children:r})=>r),j=r=>{const{isPending:s,isSuccess:o,onChange:u,onComplete:a,originName:c,pinLength:l,id:d,autoFocus:q,errorMessage:i,children:g}=r,h=()=>s?e.jsx(v.LoadingSpinner,{size:36,strokeWidth:4}):o?e.jsx(x.default,{color:"var(--color-brand-base)",width:36,height:36}):e.jsx(f.PinCodeInput,{originName:c,onChange:u,pinLength:l,onComplete:a,id:d,autoFocus:q});return n.createHost(g,m=>e.jsxs("div",{className:"flex flex-col gap-3 my-3",children:[e.jsx("div",{className:"flex items-center justify-center h-12",children:h()}),i&&e.jsx(p.default,{variant:"error",size:"sm",styles:{textAlign:"center"},children:i}),m.get(t)]}))},C=Object.assign(j,{RetryContent:t});exports.VerifyPincode=C;
2
2
  //# sourceMappingURL=verify-pincode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verify-pincode.js","sources":["../../../../src/components/sections/verify-pincode.tsx"],"sourcesContent":["import { LoadingSpinner } from '@components/feedback';\nimport { IcoCheckmarkCircleFill } from '@components/icons';\nimport { PinCodeInput, PinCodeInputProps } from '@components/inputs';\nimport { Text } from '@components/primitives';\nimport { Center, VStack } from '@styled/jsx';\nimport { token } from '@styled/tokens';\nimport { createHost, createSlot } from 'create-slots';\n\nexport interface VerifyPincodeProps extends PinCodeInputProps {\n isPending: boolean;\n isSuccess: boolean;\n errorMessage?: string;\n children?: React.ReactNode;\n}\n\nconst RetryContent = createSlot(({ children }) => {\n return children;\n});\n\nconst VerifyPincodeHost = (props: VerifyPincodeProps) => {\n const { isPending, isSuccess, onChange, onComplete, originName, pinLength, id, autoFocus, errorMessage, children } =\n props;\n\n const renderPincodeOrStatus = () => {\n if (isPending) return <LoadingSpinner size={36} strokeWidth={4} />;\n\n if (isSuccess) return <IcoCheckmarkCircleFill color={token('colors.brand.base')} width={36} height={36} />;\n\n return (\n <PinCodeInput\n originName={originName}\n onChange={onChange}\n pinLength={pinLength}\n onComplete={onComplete}\n id={id}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n />\n );\n };\n\n return createHost(children, slots => {\n return (\n <VStack gap={3} my={3}>\n <Center height={12}>{renderPincodeOrStatus()}</Center>\n {errorMessage && (\n <Text variant=\"error\" size=\"sm\" styles={{ textAlign: 'center' }}>\n {errorMessage}\n </Text>\n )}\n {slots.get(RetryContent)}\n </VStack>\n );\n });\n};\n\nexport const VerifyPincode = Object.assign(VerifyPincodeHost, { RetryContent });\n"],"names":["RetryContent","createSlot","children","VerifyPincodeHost","props","isPending","isSuccess","onChange","onComplete","originName","pinLength","id","autoFocus","errorMessage","renderPincodeOrStatus","_jsx","LoadingSpinner","IcoCheckmarkCircleFill","token","PinCodeInput","createHost","slots","_jsxs","VStack","Center","Text","VerifyPincode"],"mappings":"44BAeA,MAAMA,EAAeC,EAAAA,WAAW,CAAC,CAAE,SAAAC,CAAU,IACpCA,CACR,EAEKC,EAAqBC,GAA6B,CACtD,KAAM,CAAE,UAAAC,EAAW,UAAAC,EAAW,SAAAC,EAAU,WAAAC,EAAY,WAAAC,EAAY,UAAAC,EAAW,GAAAC,EAAI,UAAAC,EAAW,aAAAC,EAAc,SAAAX,CAAQ,EAC9GE,EAEIU,EAAwB,IACxBT,EAAkBU,EAAAA,IAACC,iBAAc,CAAC,KAAM,GAAI,YAAa,CAAC,CAAA,EAE1DV,EAAkBS,MAACE,EAAAA,QAAsB,CAAC,MAAOC,EAAAA,MAAM,mBAAmB,EAAG,MAAO,GAAI,OAAQ,KAGlGH,MAACI,EAAY,aAAA,CACX,WAAYV,EACZ,SAAUF,EACV,UAAWG,EACX,WAAYF,EACZ,GAAIG,EAEJ,UAAWC,CACX,CAAA,EAIN,OAAOQ,EAAAA,WAAWlB,EAAUmB,GAExBC,EAAAA,KAACC,SAAO,CAAA,IAAK,EAAG,GAAI,EAClB,SAAA,CAAAR,EAAAA,IAACS,EAAAA,OAAO,CAAA,OAAQ,GAAK,SAAAV,GAAuB,CAAA,EAC3CD,GACCE,EAAAA,IAACU,WAAK,QAAQ,QAAQ,KAAK,KAAK,OAAQ,CAAE,UAAW,QAAU,EAAA,SAC5DZ,CAAY,CAAA,EAGhBQ,EAAM,IAAIrB,CAAY,CAAC,CACjB,CAAA,CAEZ,CACH,EAEa0B,EAAgB,OAAO,OAAOvB,EAAmB,CAAE,aAAAH,CAAY,CAAE"}
1
+ {"version":3,"file":"verify-pincode.js","sources":["../../../../src/components/sections/verify-pincode.tsx"],"sourcesContent":["import { LoadingSpinner } from '@components/feedback';\nimport { IcoCheckmarkCircleFill } from '@components/icons';\nimport { PinCodeInput, PinCodeInputProps } from '@components/inputs';\nimport { Text } from '@components/primitives';\nimport { createHost, createSlot } from 'create-slots';\n\nexport interface VerifyPincodeProps extends PinCodeInputProps {\n isPending: boolean;\n isSuccess: boolean;\n errorMessage?: string;\n children?: React.ReactNode;\n}\n\nconst RetryContent = createSlot(({ children }) => {\n return children;\n});\n\nconst VerifyPincodeHost = (props: VerifyPincodeProps) => {\n const { isPending, isSuccess, onChange, onComplete, originName, pinLength, id, autoFocus, errorMessage, children } =\n props;\n\n const renderPincodeOrStatus = () => {\n if (isPending) return <LoadingSpinner size={36} strokeWidth={4} />;\n\n if (isSuccess) return <IcoCheckmarkCircleFill color=\"var(--color-brand-base)\" width={36} height={36} />;\n\n return (\n <PinCodeInput\n originName={originName}\n onChange={onChange}\n pinLength={pinLength}\n onComplete={onComplete}\n id={id}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n />\n );\n };\n\n return createHost(children, slots => {\n return (\n <div className=\"flex flex-col gap-3 my-3\">\n <div className=\"flex items-center justify-center h-12\">{renderPincodeOrStatus()}</div>\n {errorMessage && (\n <Text variant=\"error\" size=\"sm\" styles={{ textAlign: 'center' }}>\n {errorMessage}\n </Text>\n )}\n {slots.get(RetryContent)}\n </div>\n );\n });\n};\n\nexport const VerifyPincode = Object.assign(VerifyPincodeHost, { RetryContent });\n"],"names":["RetryContent","createSlot","children","VerifyPincodeHost","props","isPending","isSuccess","onChange","onComplete","originName","pinLength","id","autoFocus","errorMessage","renderPincodeOrStatus","_jsx","LoadingSpinner","IcoCheckmarkCircleFill","PinCodeInput","createHost","slots","_jsxs","Text","VerifyPincode"],"mappings":"8wBAaA,MAAMA,EAAeC,EAAAA,WAAW,CAAC,CAAE,SAAAC,CAAU,IACpCA,CACR,EAEKC,EAAqBC,GAA6B,CACtD,KAAM,CAAE,UAAAC,EAAW,UAAAC,EAAW,SAAAC,EAAU,WAAAC,EAAY,WAAAC,EAAY,UAAAC,EAAW,GAAAC,EAAI,UAAAC,EAAW,aAAAC,EAAc,SAAAX,CAAQ,EAC9GE,EAEIU,EAAwB,IACxBT,EAAkBU,MAACC,EAAAA,eAAc,CAAC,KAAM,GAAI,YAAa,CAAC,CAAA,EAE1DV,EAAkBS,MAACE,EAAuB,QAAA,CAAA,MAAM,0BAA0B,MAAO,GAAI,OAAQ,KAG/FF,EAAAA,IAACG,EAAAA,aAAY,CACX,WAAYT,EACZ,SAAUF,EACV,UAAWG,EACX,WAAYF,EACZ,GAAIG,EAEJ,UAAWC,CACX,CAAA,EAIN,OAAOO,EAAAA,WAAWjB,EAAUkB,GAExBC,EAAAA,YAAK,UAAU,2BACb,SAAA,CAAAN,EAAA,IAAA,MAAA,CAAK,UAAU,wCAAuC,SAAED,EAAuB,CAAA,CAAA,EAC9ED,GACCE,EAAAA,IAACO,EAAAA,QAAK,CAAA,QAAQ,QAAQ,KAAK,KAAK,OAAQ,CAAE,UAAW,QAAU,EAAA,SAC5DT,CACI,CAAA,EAERO,EAAM,IAAIpB,CAAY,CAAC,CACpB,CAAA,CAET,CACH,EAEauB,EAAgB,OAAO,OAAOpB,EAAmB,CAAE,aAAAH,CAAY,CAAE"}
@@ -1,2 +1,2 @@
1
- "use strict";var t=require("react/jsx-runtime"),l=require("@styled/tokens"),h=require("../icons/ico-rocket-fill.js"),g=require("@styled/css"),d=require("@styled/jsx"),c=require("create-slots"),n=require("react");const u="https://assets.fortmatic.com/MagicLogos/blank.png",e="2.625rem",a=c.createSlot(({children:s,...r})=>t.jsx(d.Center,{children:n.Children.map(s,o=>n.cloneElement(o,r))})),m=s=>{const{assetUri:r}=s;return c.createHost(s.children,o=>{const i=o.get(a);return t.jsx(t.Fragment,{children:!r||r===u?i?{...i,props:{...i.props,width:e,height:e}}:t.jsx(h.default,{height:e,width:e,color:l.token("colors.brand.lighter")}):t.jsx("img",{className:g.css({height:e,width:e,overflow:"hidden"}),alt:"logo",src:r})})})},v=Object.assign(m,{PlaceholderIcon:a});exports.ClientAssetLogo=v;
1
+ "use strict";var r=require("react/jsx-runtime"),n=require("../icons/ico-rocket-fill.js"),i=require("create-slots"),l=require("react");const h="https://assets.fortmatic.com/MagicLogos/blank.png",s="2.625rem",a=i.createSlot(({children:t,...e})=>r.jsx("div",{className:"flex items-center justify-center",children:l.Children.map(t,c=>l.cloneElement(c,e))})),g=t=>{const{assetUri:e}=t;return i.createHost(t.children,c=>{const o=c.get(a);return r.jsx(r.Fragment,{children:!e||e===h?o?{...o,props:{...o.props,width:s,height:s}}:r.jsx(n.default,{height:s,width:s,color:"var(--color-brand-lighter)"}):r.jsx("img",{className:"h-[2.625rem] w-[2.625rem] overflow-hidden",alt:"logo",src:e})})})},d=Object.assign(g,{PlaceholderIcon:a});exports.ClientAssetLogo=d;
2
2
  //# sourceMappingURL=client-asset-logo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client-asset-logo.js","sources":["../../../../src/components/utils/client-asset-logo.tsx"],"sourcesContent":["import { IcoRocketFill } from '@components/icons';\nimport { css } from '@styled/css';\nimport { Center } from '@styled/jsx';\nimport { token } from '@styled/tokens';\nimport { createHost, createSlot } from 'create-slots';\nimport { Children, cloneElement } from 'react';\n\nconst blankLogoUrl = 'https://assets.fortmatic.com/MagicLogos/blank.png';\n\nexport interface ClientAssetLogoProps {\n assetUri: string | null;\n children?: React.ReactNode;\n}\n\nconst iconSize = '2.625rem';\n\nconst PlaceholderIcon = createSlot(({ children, ...props }) => {\n return (\n <Center>\n {Children.map(children, child => {\n return cloneElement(child, props);\n })}\n </Center>\n );\n});\n\nconst Component = (props: ClientAssetLogoProps) => {\n const { assetUri } = props;\n\n return createHost(props.children, slots => {\n const placeholderIcon = slots.get(PlaceholderIcon);\n\n const renderPlaceholder = () => {\n if (placeholderIcon) {\n return { ...placeholderIcon, props: { ...placeholderIcon.props, width: iconSize, height: iconSize } };\n }\n\n return <IcoRocketFill height={iconSize} width={iconSize} color={token('colors.brand.lighter')} />;\n };\n\n return (\n <>\n {!assetUri || assetUri === blankLogoUrl ? (\n renderPlaceholder()\n ) : (\n <img className={css({ height: iconSize, width: iconSize, overflow: 'hidden' })} alt=\"logo\" src={assetUri} />\n )}\n </>\n );\n });\n};\n\nexport const ClientAssetLogo = Object.assign(Component, { PlaceholderIcon });\n"],"names":["blankLogoUrl","iconSize","PlaceholderIcon","createSlot","children","props","_jsx","Center","Children","child","cloneElement","Component","assetUri","createHost","slots","placeholderIcon","IcoRocketFill","token","css","ClientAssetLogo"],"mappings":"oNAOA,MAAMA,EAAe,oDAOfC,EAAW,WAEXC,EAAkBC,aAAW,CAAC,CAAE,SAAAC,EAAU,GAAGC,CAAO,IAEtDC,MAACC,EAAAA,OAAM,CAAA,SACJC,EAAAA,SAAS,IAAIJ,EAAUK,GACfC,eAAaD,EAAOJ,CAAK,CACjC,CACM,CAAA,CAEZ,EAEKM,EAAaN,GAA+B,CAChD,KAAM,CAAE,SAAAO,CAAU,EAAGP,EAErB,OAAOQ,EAAAA,WAAWR,EAAM,SAAUS,GAAQ,CACxC,MAAMC,EAAkBD,EAAM,IAAIZ,CAAe,EAUjD,OACEI,EAAAA,yBACG,CAACM,GAAYA,IAAaZ,EATzBe,EACK,CAAE,GAAGA,EAAiB,MAAO,CAAE,GAAGA,EAAgB,MAAO,MAAOd,EAAU,OAAQA,CAAU,CAAA,EAG9FK,EAAAA,IAACU,EAAa,QAAA,CAAC,OAAQf,EAAU,MAAOA,EAAU,MAAOgB,EAAAA,MAAM,sBAAsB,IAQxFX,EAAK,IAAA,MAAA,CAAA,UAAWY,MAAI,CAAE,OAAQjB,EAAU,MAAOA,EAAU,SAAU,QAAU,CAAA,EAAG,IAAI,OAAO,IAAKW,CAAY,CAAA,CAE7G,CAAA,CAEP,CAAC,CACH,EAEaO,EAAkB,OAAO,OAAOR,EAAW,CAAE,gBAAAT,CAAe,CAAE"}
1
+ {"version":3,"file":"client-asset-logo.js","sources":["../../../../src/components/utils/client-asset-logo.tsx"],"sourcesContent":["import { IcoRocketFill } from '@components/icons';\nimport { createHost, createSlot } from 'create-slots';\nimport { Children, cloneElement } from 'react';\n\nconst blankLogoUrl = 'https://assets.fortmatic.com/MagicLogos/blank.png';\n\nexport interface ClientAssetLogoProps {\n assetUri: string | null;\n children?: React.ReactNode;\n}\n\nconst iconSize = '2.625rem';\n\nconst PlaceholderIcon = createSlot(({ children, ...props }) => {\n return (\n <div className=\"flex items-center justify-center\">\n {Children.map(children, child => {\n return cloneElement(child, props);\n })}\n </div>\n );\n});\n\nconst Component = (props: ClientAssetLogoProps) => {\n const { assetUri } = props;\n\n return createHost(props.children, slots => {\n const placeholderIcon = slots.get(PlaceholderIcon);\n\n const renderPlaceholder = () => {\n if (placeholderIcon) {\n return { ...placeholderIcon, props: { ...placeholderIcon.props, width: iconSize, height: iconSize } };\n }\n\n return <IcoRocketFill height={iconSize} width={iconSize} color={'var(--color-brand-lighter)'} />;\n };\n\n return (\n <>\n {!assetUri || assetUri === blankLogoUrl ? (\n renderPlaceholder()\n ) : (\n <img className=\"h-[2.625rem] w-[2.625rem] overflow-hidden\" alt=\"logo\" src={assetUri} />\n )}\n </>\n );\n });\n};\n\nexport const ClientAssetLogo = Object.assign(Component, { PlaceholderIcon });\n"],"names":["blankLogoUrl","iconSize","PlaceholderIcon","createSlot","children","props","_jsx","Children","child","cloneElement","Component","assetUri","createHost","slots","placeholderIcon","_Fragment","IcoRocketFill","ClientAssetLogo"],"mappings":"sIAIA,MAAMA,EAAe,oDAOfC,EAAW,WAEXC,EAAkBC,EAAW,WAAA,CAAC,CAAE,SAAAC,EAAU,GAAGC,CAAO,IAEtDC,EAAAA,IAAA,MAAA,CAAK,UAAU,mCACZ,SAAAC,EAAAA,SAAS,IAAIH,EAAUI,GACfC,eAAaD,EAAOH,CAAK,CACjC,CACG,CAAA,CAET,EAEKK,EAAaL,GAA+B,CAChD,KAAM,CAAE,SAAAM,CAAU,EAAGN,EAErB,OAAOO,aAAWP,EAAM,SAAUQ,GAAQ,CACxC,MAAMC,EAAkBD,EAAM,IAAIX,CAAe,EAUjD,OACEI,MAAAS,EAAAA,SAAA,CAAA,SACG,CAACJ,GAAYA,IAAaX,EATzBc,EACK,CAAE,GAAGA,EAAiB,MAAO,CAAE,GAAGA,EAAgB,MAAO,MAAOb,EAAU,OAAQA,CAAU,CAAA,EAG9FK,EAACU,IAAAA,UAAc,CAAA,OAAQf,EAAU,MAAOA,EAAU,MAAO,+BAQ5DK,aAAK,UAAU,4CAA4C,IAAI,OAAO,IAAKK,CAAQ,CAAA,CACpF,CAAA,CAGP,CAAC,CACH,EAEaM,EAAkB,OAAO,OAAOP,EAAW,CAAE,gBAAAR,CAAe,CAAE"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("react/jsx-runtime"),O=require("@styled/css"),R=require("@styled/jsx"),e=require("@styled/tokens"),b=require("react-qrcode-logo");function j({value:l,ecLevel:i="H",qrStyle:d="dots",eyeRadius:t=0,eyeColor:a=e.token("colors.ink.90"),size:n=160,logoImage:g=void 0,logoHeight:s=32,logoWidth:u=32,logoOpacity:c=1,logoPadding:v=0,logoPaddingStyle:y="square",logoOnLoad:C=void 0,removeQrCodeBehindLogo:m=!1,enableCORS:q=!1,quietZone:h=5,bgColor:k=e.token("colors.chalk"),fgColor:f=e.token("colors.ink.90"),style:L=void 0,id:o="qr-code"}){return r.jsx(R.Flex,{alignItems:"center",justifyContent:"center",className:O.css({shadow:"0.125rem 0.125rem 1.5rem {colors.ink.70/15}",overflow:"hidden",padding:1,borderRadius:"1rem"}),children:r.jsx(b.QRCode,{value:l,ecLevel:i,qrStyle:d,eyeRadius:t,eyeColor:a,size:n,logoImage:g,logoHeight:s,logoWidth:u,logoOpacity:c,logoPadding:v,logoPaddingStyle:y,logoOnLoad:C,removeQrCodeBehindLogo:m,enableCORS:q,quietZone:h,bgColor:k,fgColor:f,style:L,id:o,"data-testid":o})})}exports.default=j;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var o=require("react/jsx-runtime"),O=require("react-qrcode-logo");function b({value:d,ecLevel:l="H",qrStyle:r="dots",eyeRadius:i=0,eyeColor:t="#18171A",size:g=160,logoImage:a=void 0,logoHeight:n=32,logoWidth:s=32,logoOpacity:u=1,logoPadding:c=0,logoPaddingStyle:v="square",logoOnLoad:y=void 0,removeQrCodeBehindLogo:m=!1,enableCORS:C=!1,quietZone:h=5,bgColor:q="#FFFFFF",fgColor:f="#18171A",style:L=void 0,id:e="qr-code"}){return o.jsx("div",{className:"flex items-center justify-center shadow-[0.125rem_0.125rem_1.5rem_rgba(119,118,122,0.15)] overflow-hidden p-1 rounded-[1rem]",children:o.jsx(O.QRCode,{value:d,ecLevel:l,qrStyle:r,eyeRadius:i,eyeColor:t,size:g,logoImage:a,logoHeight:n,logoWidth:s,logoOpacity:u,logoPadding:c,logoPaddingStyle:v,logoOnLoad:y,removeQrCodeBehindLogo:m,enableCORS:C,quietZone:h,bgColor:q,fgColor:f,style:L,id:e,"data-testid":e})})}exports.default=b;
2
2
  //# sourceMappingURL=qr-code.js.map