@metamask/design-system-react 0.24.0 → 0.26.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 (296) hide show
  1. package/CHANGELOG.md +35 -1
  2. package/dist/components/AvatarBase/AvatarBase.cjs +1 -1
  3. package/dist/components/AvatarBase/AvatarBase.cjs.map +1 -1
  4. package/dist/components/AvatarBase/AvatarBase.mjs +1 -1
  5. package/dist/components/AvatarBase/AvatarBase.mjs.map +1 -1
  6. package/dist/components/AvatarFavicon/AvatarFavicon.cjs +1 -1
  7. package/dist/components/AvatarFavicon/AvatarFavicon.cjs.map +1 -1
  8. package/dist/components/AvatarFavicon/AvatarFavicon.mjs +1 -1
  9. package/dist/components/AvatarFavicon/AvatarFavicon.mjs.map +1 -1
  10. package/dist/components/AvatarIcon/AvatarIcon.constants.cjs +2 -2
  11. package/dist/components/AvatarIcon/AvatarIcon.constants.cjs.map +1 -1
  12. package/dist/components/AvatarIcon/AvatarIcon.constants.mjs +2 -2
  13. package/dist/components/AvatarIcon/AvatarIcon.constants.mjs.map +1 -1
  14. package/dist/components/AvatarNetwork/AvatarNetwork.cjs +2 -3
  15. package/dist/components/AvatarNetwork/AvatarNetwork.cjs.map +1 -1
  16. package/dist/components/AvatarNetwork/AvatarNetwork.d.cts.map +1 -1
  17. package/dist/components/AvatarNetwork/AvatarNetwork.d.mts.map +1 -1
  18. package/dist/components/AvatarNetwork/AvatarNetwork.mjs +2 -3
  19. package/dist/components/AvatarNetwork/AvatarNetwork.mjs.map +1 -1
  20. package/dist/components/AvatarNetwork/index.cjs +2 -2
  21. package/dist/components/AvatarNetwork/index.cjs.map +1 -1
  22. package/dist/components/AvatarNetwork/index.d.cts +1 -1
  23. package/dist/components/AvatarNetwork/index.d.cts.map +1 -1
  24. package/dist/components/AvatarNetwork/index.d.mts +1 -1
  25. package/dist/components/AvatarNetwork/index.d.mts.map +1 -1
  26. package/dist/components/AvatarNetwork/index.mjs +1 -1
  27. package/dist/components/AvatarNetwork/index.mjs.map +1 -1
  28. package/dist/components/AvatarToken/AvatarToken.cjs +2 -2
  29. package/dist/components/AvatarToken/AvatarToken.cjs.map +1 -1
  30. package/dist/components/AvatarToken/AvatarToken.mjs +2 -2
  31. package/dist/components/AvatarToken/AvatarToken.mjs.map +1 -1
  32. package/dist/components/BannerAlert/BannerAlert.cjs +1 -2
  33. package/dist/components/BannerAlert/BannerAlert.cjs.map +1 -1
  34. package/dist/components/BannerAlert/BannerAlert.constants.cjs +8 -9
  35. package/dist/components/BannerAlert/BannerAlert.constants.cjs.map +1 -1
  36. package/dist/components/BannerAlert/BannerAlert.constants.d.cts +1 -2
  37. package/dist/components/BannerAlert/BannerAlert.constants.d.cts.map +1 -1
  38. package/dist/components/BannerAlert/BannerAlert.constants.d.mts +1 -2
  39. package/dist/components/BannerAlert/BannerAlert.constants.d.mts.map +1 -1
  40. package/dist/components/BannerAlert/BannerAlert.constants.mjs +1 -2
  41. package/dist/components/BannerAlert/BannerAlert.constants.mjs.map +1 -1
  42. package/dist/components/BannerAlert/BannerAlert.d.cts.map +1 -1
  43. package/dist/components/BannerAlert/BannerAlert.d.mts.map +1 -1
  44. package/dist/components/BannerAlert/BannerAlert.mjs +1 -2
  45. package/dist/components/BannerAlert/BannerAlert.mjs.map +1 -1
  46. package/dist/components/FormTextField/FormTextField.cjs +38 -0
  47. package/dist/components/FormTextField/FormTextField.cjs.map +1 -0
  48. package/dist/components/FormTextField/FormTextField.d.cts +4 -0
  49. package/dist/components/FormTextField/FormTextField.d.cts.map +1 -0
  50. package/dist/components/FormTextField/FormTextField.d.mts +4 -0
  51. package/dist/components/FormTextField/FormTextField.d.mts.map +1 -0
  52. package/dist/components/FormTextField/FormTextField.mjs +19 -0
  53. package/dist/components/FormTextField/FormTextField.mjs.map +1 -0
  54. package/dist/components/FormTextField/FormTextField.types.cjs +3 -0
  55. package/dist/components/FormTextField/FormTextField.types.cjs.map +1 -0
  56. package/dist/components/FormTextField/FormTextField.types.d.cts +50 -0
  57. package/dist/components/FormTextField/FormTextField.types.d.cts.map +1 -0
  58. package/dist/components/FormTextField/FormTextField.types.d.mts +50 -0
  59. package/dist/components/FormTextField/FormTextField.types.d.mts.map +1 -0
  60. package/dist/components/FormTextField/FormTextField.types.mjs +2 -0
  61. package/dist/components/FormTextField/FormTextField.types.mjs.map +1 -0
  62. package/dist/components/FormTextField/index.cjs +6 -0
  63. package/dist/components/FormTextField/index.cjs.map +1 -0
  64. package/dist/components/FormTextField/index.d.cts +3 -0
  65. package/dist/components/FormTextField/index.d.cts.map +1 -0
  66. package/dist/components/FormTextField/index.d.mts +3 -0
  67. package/dist/components/FormTextField/index.d.mts.map +1 -0
  68. package/dist/components/FormTextField/index.mjs +2 -0
  69. package/dist/components/FormTextField/index.mjs.map +1 -0
  70. package/dist/components/Icon/Icon.cjs +2 -2
  71. package/dist/components/Icon/Icon.cjs.map +1 -1
  72. package/dist/components/Icon/Icon.constants.cjs +6 -6
  73. package/dist/components/Icon/Icon.constants.cjs.map +1 -1
  74. package/dist/components/Icon/Icon.constants.d.cts +1 -1
  75. package/dist/components/Icon/Icon.constants.d.cts.map +1 -1
  76. package/dist/components/Icon/Icon.constants.d.mts +1 -1
  77. package/dist/components/Icon/Icon.constants.d.mts.map +1 -1
  78. package/dist/components/Icon/Icon.constants.mjs +1 -1
  79. package/dist/components/Icon/Icon.constants.mjs.map +1 -1
  80. package/dist/components/Icon/Icon.d.cts.map +1 -1
  81. package/dist/components/Icon/Icon.d.mts.map +1 -1
  82. package/dist/components/Icon/Icon.mjs +1 -1
  83. package/dist/components/Icon/Icon.mjs.map +1 -1
  84. package/dist/components/Icon/index.cjs +4 -4
  85. package/dist/components/Icon/index.cjs.map +1 -1
  86. package/dist/components/Icon/index.d.cts +1 -1
  87. package/dist/components/Icon/index.d.cts.map +1 -1
  88. package/dist/components/Icon/index.d.mts +1 -1
  89. package/dist/components/Icon/index.d.mts.map +1 -1
  90. package/dist/components/Icon/index.mjs +1 -1
  91. package/dist/components/Icon/index.mjs.map +1 -1
  92. package/dist/components/Popover/Popover.cjs +129 -0
  93. package/dist/components/Popover/Popover.cjs.map +1 -0
  94. package/dist/components/Popover/Popover.constants.cjs +28 -0
  95. package/dist/components/Popover/Popover.constants.cjs.map +1 -0
  96. package/dist/components/Popover/Popover.constants.d.cts +12 -0
  97. package/dist/components/Popover/Popover.constants.d.cts.map +1 -0
  98. package/dist/components/Popover/Popover.constants.d.mts +12 -0
  99. package/dist/components/Popover/Popover.constants.d.mts.map +1 -0
  100. package/dist/components/Popover/Popover.constants.mjs +25 -0
  101. package/dist/components/Popover/Popover.constants.mjs.map +1 -0
  102. package/dist/components/Popover/Popover.d.cts +4 -0
  103. package/dist/components/Popover/Popover.d.cts.map +1 -0
  104. package/dist/components/Popover/Popover.d.mts +4 -0
  105. package/dist/components/Popover/Popover.d.mts.map +1 -0
  106. package/dist/components/Popover/Popover.mjs +110 -0
  107. package/dist/components/Popover/Popover.mjs.map +1 -0
  108. package/dist/components/Popover/Popover.types.cjs +33 -0
  109. package/dist/components/Popover/Popover.types.cjs.map +1 -0
  110. package/dist/components/Popover/Popover.types.d.cts +128 -0
  111. package/dist/components/Popover/Popover.types.d.cts.map +1 -0
  112. package/dist/components/Popover/Popover.types.d.mts +128 -0
  113. package/dist/components/Popover/Popover.types.d.mts.map +1 -0
  114. package/dist/components/Popover/Popover.types.mjs +30 -0
  115. package/dist/components/Popover/Popover.types.mjs.map +1 -0
  116. package/dist/components/Popover/index.cjs +9 -0
  117. package/dist/components/Popover/index.cjs.map +1 -0
  118. package/dist/components/Popover/index.d.cts +4 -0
  119. package/dist/components/Popover/index.d.cts.map +1 -0
  120. package/dist/components/Popover/index.d.mts +4 -0
  121. package/dist/components/Popover/index.d.mts.map +1 -0
  122. package/dist/components/Popover/index.mjs +3 -0
  123. package/dist/components/Popover/index.mjs.map +1 -0
  124. package/dist/components/Tag/Tag.cjs +51 -0
  125. package/dist/components/Tag/Tag.cjs.map +1 -0
  126. package/dist/components/Tag/Tag.constants.cjs +26 -0
  127. package/dist/components/Tag/Tag.constants.cjs.map +1 -0
  128. package/dist/components/Tag/Tag.constants.d.cts +5 -0
  129. package/dist/components/Tag/Tag.constants.d.cts.map +1 -0
  130. package/dist/components/Tag/Tag.constants.d.mts +5 -0
  131. package/dist/components/Tag/Tag.constants.d.mts.map +1 -0
  132. package/dist/components/Tag/Tag.constants.mjs +23 -0
  133. package/dist/components/Tag/Tag.constants.mjs.map +1 -0
  134. package/dist/components/Tag/Tag.d.cts +4 -0
  135. package/dist/components/Tag/Tag.d.cts.map +1 -0
  136. package/dist/components/Tag/Tag.d.mts +4 -0
  137. package/dist/components/Tag/Tag.d.mts.map +1 -0
  138. package/dist/components/Tag/Tag.mjs +32 -0
  139. package/dist/components/Tag/Tag.mjs.map +1 -0
  140. package/dist/components/Tag/Tag.types.cjs +3 -0
  141. package/dist/components/Tag/Tag.types.cjs.map +1 -0
  142. package/dist/components/Tag/Tag.types.d.cts +31 -0
  143. package/dist/components/Tag/Tag.types.d.cts.map +1 -0
  144. package/dist/components/Tag/Tag.types.d.mts +31 -0
  145. package/dist/components/Tag/Tag.types.d.mts.map +1 -0
  146. package/dist/components/Tag/Tag.types.mjs +2 -0
  147. package/dist/components/Tag/Tag.types.mjs.map +1 -0
  148. package/dist/components/Tag/index.cjs +8 -0
  149. package/dist/components/Tag/index.cjs.map +1 -0
  150. package/dist/components/Tag/index.d.cts +4 -0
  151. package/dist/components/Tag/index.d.cts.map +1 -0
  152. package/dist/components/Tag/index.d.mts +4 -0
  153. package/dist/components/Tag/index.d.mts.map +1 -0
  154. package/dist/components/Tag/index.mjs +3 -0
  155. package/dist/components/Tag/index.mjs.map +1 -0
  156. package/dist/components/TextArea/TextArea.cjs +37 -0
  157. package/dist/components/TextArea/TextArea.cjs.map +1 -0
  158. package/dist/components/TextArea/TextArea.constants.cjs +35 -0
  159. package/dist/components/TextArea/TextArea.constants.cjs.map +1 -0
  160. package/dist/components/TextArea/TextArea.constants.d.cts +28 -0
  161. package/dist/components/TextArea/TextArea.constants.d.cts.map +1 -0
  162. package/dist/components/TextArea/TextArea.constants.d.mts +28 -0
  163. package/dist/components/TextArea/TextArea.constants.d.mts.map +1 -0
  164. package/dist/components/TextArea/TextArea.constants.mjs +32 -0
  165. package/dist/components/TextArea/TextArea.constants.mjs.map +1 -0
  166. package/dist/components/TextArea/TextArea.d.cts +9 -0
  167. package/dist/components/TextArea/TextArea.d.cts.map +1 -0
  168. package/dist/components/TextArea/TextArea.d.mts +9 -0
  169. package/dist/components/TextArea/TextArea.d.mts.map +1 -0
  170. package/dist/components/TextArea/TextArea.mjs +18 -0
  171. package/dist/components/TextArea/TextArea.mjs.map +1 -0
  172. package/dist/components/TextArea/TextArea.types.cjs +3 -0
  173. package/dist/components/TextArea/TextArea.types.cjs.map +1 -0
  174. package/dist/components/TextArea/TextArea.types.d.cts +33 -0
  175. package/dist/components/TextArea/TextArea.types.d.cts.map +1 -0
  176. package/dist/components/TextArea/TextArea.types.d.mts +33 -0
  177. package/dist/components/TextArea/TextArea.types.d.mts.map +1 -0
  178. package/dist/components/TextArea/TextArea.types.mjs +2 -0
  179. package/dist/components/TextArea/TextArea.types.mjs.map +1 -0
  180. package/dist/components/TextArea/index.cjs +8 -0
  181. package/dist/components/TextArea/index.cjs.map +1 -0
  182. package/dist/components/TextArea/index.d.cts +4 -0
  183. package/dist/components/TextArea/index.d.cts.map +1 -0
  184. package/dist/components/TextArea/index.d.mts +4 -0
  185. package/dist/components/TextArea/index.d.mts.map +1 -0
  186. package/dist/components/TextArea/index.mjs +3 -0
  187. package/dist/components/TextArea/index.mjs.map +1 -0
  188. package/dist/components/TextButton/TextButton.cjs +7 -28
  189. package/dist/components/TextButton/TextButton.cjs.map +1 -1
  190. package/dist/components/TextButton/TextButton.d.cts.map +1 -1
  191. package/dist/components/TextButton/TextButton.d.mts.map +1 -1
  192. package/dist/components/TextButton/TextButton.mjs +7 -28
  193. package/dist/components/TextButton/TextButton.mjs.map +1 -1
  194. package/dist/components/TextButton/TextButton.types.cjs.map +1 -1
  195. package/dist/components/TextButton/TextButton.types.d.cts +9 -25
  196. package/dist/components/TextButton/TextButton.types.d.cts.map +1 -1
  197. package/dist/components/TextButton/TextButton.types.d.mts +9 -25
  198. package/dist/components/TextButton/TextButton.types.d.mts.map +1 -1
  199. package/dist/components/TextButton/TextButton.types.mjs.map +1 -1
  200. package/dist/components/TextButton/index.cjs +1 -3
  201. package/dist/components/TextButton/index.cjs.map +1 -1
  202. package/dist/components/TextButton/index.d.cts +0 -1
  203. package/dist/components/TextButton/index.d.cts.map +1 -1
  204. package/dist/components/TextButton/index.d.mts +0 -1
  205. package/dist/components/TextButton/index.d.mts.map +1 -1
  206. package/dist/components/TextButton/index.mjs +0 -1
  207. package/dist/components/TextButton/index.mjs.map +1 -1
  208. package/dist/components/TextFieldSearch/TextFieldSearch.cjs +40 -0
  209. package/dist/components/TextFieldSearch/TextFieldSearch.cjs.map +1 -0
  210. package/dist/components/TextFieldSearch/TextFieldSearch.d.cts +6 -0
  211. package/dist/components/TextFieldSearch/TextFieldSearch.d.cts.map +1 -0
  212. package/dist/components/TextFieldSearch/TextFieldSearch.d.mts +6 -0
  213. package/dist/components/TextFieldSearch/TextFieldSearch.d.mts.map +1 -0
  214. package/dist/components/TextFieldSearch/TextFieldSearch.mjs +21 -0
  215. package/dist/components/TextFieldSearch/TextFieldSearch.mjs.map +1 -0
  216. package/dist/components/TextFieldSearch/TextFieldSearch.types.cjs +3 -0
  217. package/dist/components/TextFieldSearch/TextFieldSearch.types.cjs.map +1 -0
  218. package/dist/components/TextFieldSearch/TextFieldSearch.types.d.cts +17 -0
  219. package/dist/components/TextFieldSearch/TextFieldSearch.types.d.cts.map +1 -0
  220. package/dist/components/TextFieldSearch/TextFieldSearch.types.d.mts +17 -0
  221. package/dist/components/TextFieldSearch/TextFieldSearch.types.d.mts.map +1 -0
  222. package/dist/components/TextFieldSearch/TextFieldSearch.types.mjs +2 -0
  223. package/dist/components/TextFieldSearch/TextFieldSearch.types.mjs.map +1 -0
  224. package/dist/components/TextFieldSearch/index.cjs +6 -0
  225. package/dist/components/TextFieldSearch/index.cjs.map +1 -0
  226. package/dist/components/TextFieldSearch/index.d.cts +3 -0
  227. package/dist/components/TextFieldSearch/index.d.cts.map +1 -0
  228. package/dist/components/TextFieldSearch/index.d.mts +3 -0
  229. package/dist/components/TextFieldSearch/index.d.mts.map +1 -0
  230. package/dist/components/TextFieldSearch/index.mjs +2 -0
  231. package/dist/components/TextFieldSearch/index.mjs.map +1 -0
  232. package/dist/components/Toast/Toast.cjs +73 -0
  233. package/dist/components/Toast/Toast.cjs.map +1 -0
  234. package/dist/components/Toast/Toast.constants.cjs +24 -0
  235. package/dist/components/Toast/Toast.constants.cjs.map +1 -0
  236. package/dist/components/Toast/Toast.constants.d.cts +16 -0
  237. package/dist/components/Toast/Toast.constants.d.cts.map +1 -0
  238. package/dist/components/Toast/Toast.constants.d.mts +16 -0
  239. package/dist/components/Toast/Toast.constants.d.mts.map +1 -0
  240. package/dist/components/Toast/Toast.constants.mjs +19 -0
  241. package/dist/components/Toast/Toast.constants.mjs.map +1 -0
  242. package/dist/components/Toast/Toast.d.cts +4 -0
  243. package/dist/components/Toast/Toast.d.cts.map +1 -0
  244. package/dist/components/Toast/Toast.d.mts +4 -0
  245. package/dist/components/Toast/Toast.d.mts.map +1 -0
  246. package/dist/components/Toast/Toast.mjs +54 -0
  247. package/dist/components/Toast/Toast.mjs.map +1 -0
  248. package/dist/components/Toast/Toast.types.cjs +3 -0
  249. package/dist/components/Toast/Toast.types.cjs.map +1 -0
  250. package/dist/components/Toast/Toast.types.d.cts +60 -0
  251. package/dist/components/Toast/Toast.types.d.cts.map +1 -0
  252. package/dist/components/Toast/Toast.types.d.mts +60 -0
  253. package/dist/components/Toast/Toast.types.d.mts.map +1 -0
  254. package/dist/components/Toast/Toast.types.mjs +2 -0
  255. package/dist/components/Toast/Toast.types.mjs.map +1 -0
  256. package/dist/components/Toast/Toaster.cjs +210 -0
  257. package/dist/components/Toast/Toaster.cjs.map +1 -0
  258. package/dist/components/Toast/Toaster.d.cts +11 -0
  259. package/dist/components/Toast/Toaster.d.cts.map +1 -0
  260. package/dist/components/Toast/Toaster.d.mts +11 -0
  261. package/dist/components/Toast/Toaster.d.mts.map +1 -0
  262. package/dist/components/Toast/Toaster.mjs +191 -0
  263. package/dist/components/Toast/Toaster.mjs.map +1 -0
  264. package/dist/components/Toast/index.cjs +11 -0
  265. package/dist/components/Toast/index.cjs.map +1 -0
  266. package/dist/components/Toast/index.d.cts +5 -0
  267. package/dist/components/Toast/index.d.cts.map +1 -0
  268. package/dist/components/Toast/index.d.mts +5 -0
  269. package/dist/components/Toast/index.d.mts.map +1 -0
  270. package/dist/components/Toast/index.mjs +4 -0
  271. package/dist/components/Toast/index.mjs.map +1 -0
  272. package/dist/components/index.cjs +21 -2
  273. package/dist/components/index.cjs.map +1 -1
  274. package/dist/components/index.d.cts +13 -1
  275. package/dist/components/index.d.cts.map +1 -1
  276. package/dist/components/index.d.mts +13 -1
  277. package/dist/components/index.d.mts.map +1 -1
  278. package/dist/components/index.mjs +7 -1
  279. package/dist/components/index.mjs.map +1 -1
  280. package/dist/types/index.cjs +2 -23
  281. package/dist/types/index.cjs.map +1 -1
  282. package/dist/types/index.d.cts +1 -14
  283. package/dist/types/index.d.cts.map +1 -1
  284. package/dist/types/index.d.mts +1 -14
  285. package/dist/types/index.d.mts.map +1 -1
  286. package/dist/types/index.mjs +1 -15
  287. package/dist/types/index.mjs.map +1 -1
  288. package/package.json +7 -5
  289. package/dist/components/TextButton/TextButton.constants.cjs +0 -12
  290. package/dist/components/TextButton/TextButton.constants.cjs.map +0 -1
  291. package/dist/components/TextButton/TextButton.constants.d.cts +0 -4
  292. package/dist/components/TextButton/TextButton.constants.d.cts.map +0 -1
  293. package/dist/components/TextButton/TextButton.constants.d.mts +0 -4
  294. package/dist/components/TextButton/TextButton.constants.d.mts.map +0 -1
  295. package/dist/components/TextButton/TextButton.constants.mjs +0 -9
  296. package/dist/components/TextButton/TextButton.constants.mjs.map +0 -1
@@ -0,0 +1,128 @@
1
+ import type { ComponentProps, CSSProperties, ReactNode } from "react";
2
+ /**
3
+ * Popover - placement of the floating element relative to the reference element.
4
+ * Mirrors the placements supported by `react-popper` (`Auto` enables both
5
+ * `flip` and `preventOverflow` automatically).
6
+ */
7
+ export declare const PopoverPosition: {
8
+ readonly Auto: "auto";
9
+ readonly Top: "top";
10
+ readonly TopStart: "top-start";
11
+ readonly TopEnd: "top-end";
12
+ readonly Right: "right";
13
+ readonly RightStart: "right-start";
14
+ readonly RightEnd: "right-end";
15
+ readonly Bottom: "bottom";
16
+ readonly BottomStart: "bottom-start";
17
+ readonly BottomEnd: "bottom-end";
18
+ readonly Left: "left";
19
+ readonly LeftStart: "left-start";
20
+ readonly LeftEnd: "left-end";
21
+ };
22
+ export type PopoverPosition = (typeof PopoverPosition)[keyof typeof PopoverPosition];
23
+ /**
24
+ * Popover - ARIA role for the floating element.
25
+ * Use `Dialog` when the contents are interactive, `Tooltip` for purely
26
+ * informational content.
27
+ */
28
+ export declare const PopoverRole: {
29
+ readonly Tooltip: "tooltip";
30
+ readonly Dialog: "dialog";
31
+ };
32
+ export type PopoverRole = (typeof PopoverRole)[keyof typeof PopoverRole];
33
+ export type PopoverProps = Omit<ComponentProps<'div'>, 'role'> & {
34
+ /**
35
+ * The contents of the Popover.
36
+ */
37
+ children?: ReactNode;
38
+ /**
39
+ * Additional class names to merge onto the Popover root.
40
+ */
41
+ className?: string;
42
+ /**
43
+ * Inline styles applied to the Popover root. Merged after the styles
44
+ * computed by `react-popper`.
45
+ */
46
+ style?: CSSProperties;
47
+ /**
48
+ * Placement relative to `referenceElement`. When `PopoverPosition.Auto`,
49
+ * `flip` and `preventOverflow` are forced on regardless of their props.
50
+ *
51
+ * @default PopoverPosition.Auto
52
+ */
53
+ position?: PopoverPosition;
54
+ /**
55
+ * ARIA role applied to the Popover root.
56
+ *
57
+ * @default PopoverRole.Tooltip
58
+ */
59
+ role?: PopoverRole;
60
+ /**
61
+ * Render an arrow pointing at the reference element.
62
+ *
63
+ * @default false
64
+ */
65
+ hasArrow?: boolean;
66
+ /**
67
+ * Props forwarded to the arrow element. `ref`, `style`, and `children` are
68
+ * reserved for internal use (popper positioning, rotation styles, and the
69
+ * arrow visual) and cannot be overridden.
70
+ */
71
+ arrowProps?: Omit<ComponentProps<'div'>, 'ref' | 'style' | 'children'>;
72
+ /**
73
+ * Match the popover width to the reference element's `clientWidth`.
74
+ *
75
+ * @default false
76
+ */
77
+ matchWidth?: boolean;
78
+ /**
79
+ * Keep the Popover within the viewport. Forced on when
80
+ * `position === PopoverPosition.Auto`.
81
+ *
82
+ * @default false
83
+ */
84
+ preventOverflow?: boolean;
85
+ /**
86
+ * Allow flipping to the opposite side when there is not enough space.
87
+ * Forced on when `position === PopoverPosition.Auto`.
88
+ *
89
+ * @default false
90
+ */
91
+ flip?: boolean;
92
+ /**
93
+ * Hide the Popover when the reference element is scrolled out of view.
94
+ *
95
+ * @default true
96
+ */
97
+ referenceHidden?: boolean;
98
+ /**
99
+ * The element the Popover is positioned against.
100
+ */
101
+ referenceElement?: HTMLElement | null;
102
+ /**
103
+ * Whether the Popover is open. Nothing is rendered when `false`.
104
+ */
105
+ isOpen?: boolean;
106
+ /**
107
+ * `[skidding, distance]` offset (in px) applied to the Popover.
108
+ *
109
+ * @default [0, 8]
110
+ */
111
+ offset?: [number, number];
112
+ /**
113
+ * Render the Popover into `document.body` via `createPortal`.
114
+ *
115
+ * @default false
116
+ */
117
+ isPortal?: boolean;
118
+ /**
119
+ * Called when the user presses the Escape key while the Popover is open.
120
+ */
121
+ onPressEscKey?: () => void;
122
+ /**
123
+ * Called when the user clicks outside the Popover and the reference element
124
+ * while the Popover is open.
125
+ */
126
+ onClickOutside?: () => void;
127
+ };
128
+ //# sourceMappingURL=Popover.types.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popover.types.d.mts","sourceRoot":"","sources":["../../../src/components/Popover/Popover.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,cAAc;AAEtE;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;CAclB,CAAC;AACX,MAAM,MAAM,eAAe,GACzB,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,WAAW;;;CAGd,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEzE,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,GAAG;IAC/D;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,UAAU,CAAC,CAAC;IACvE;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;OAEG;IACH,gBAAgB,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IACtC;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B,CAAC"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Popover - placement of the floating element relative to the reference element.
3
+ * Mirrors the placements supported by `react-popper` (`Auto` enables both
4
+ * `flip` and `preventOverflow` automatically).
5
+ */
6
+ export const PopoverPosition = {
7
+ Auto: 'auto',
8
+ Top: 'top',
9
+ TopStart: 'top-start',
10
+ TopEnd: 'top-end',
11
+ Right: 'right',
12
+ RightStart: 'right-start',
13
+ RightEnd: 'right-end',
14
+ Bottom: 'bottom',
15
+ BottomStart: 'bottom-start',
16
+ BottomEnd: 'bottom-end',
17
+ Left: 'left',
18
+ LeftStart: 'left-start',
19
+ LeftEnd: 'left-end',
20
+ };
21
+ /**
22
+ * Popover - ARIA role for the floating element.
23
+ * Use `Dialog` when the contents are interactive, `Tooltip` for purely
24
+ * informational content.
25
+ */
26
+ export const PopoverRole = {
27
+ Tooltip: 'tooltip',
28
+ Dialog: 'dialog',
29
+ };
30
+ //# sourceMappingURL=Popover.types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popover.types.mjs","sourceRoot":"","sources":["../../../src/components/Popover/Popover.types.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,aAAa;IACzB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,cAAc;IAC3B,SAAS,EAAE,YAAY;IACvB,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,UAAU;CACX,CAAC;AAIX;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;CACR,CAAC","sourcesContent":["import type { ComponentProps, CSSProperties, ReactNode } from 'react';\n\n/**\n * Popover - placement of the floating element relative to the reference element.\n * Mirrors the placements supported by `react-popper` (`Auto` enables both\n * `flip` and `preventOverflow` automatically).\n */\nexport const PopoverPosition = {\n Auto: 'auto',\n Top: 'top',\n TopStart: 'top-start',\n TopEnd: 'top-end',\n Right: 'right',\n RightStart: 'right-start',\n RightEnd: 'right-end',\n Bottom: 'bottom',\n BottomStart: 'bottom-start',\n BottomEnd: 'bottom-end',\n Left: 'left',\n LeftStart: 'left-start',\n LeftEnd: 'left-end',\n} as const;\nexport type PopoverPosition =\n (typeof PopoverPosition)[keyof typeof PopoverPosition];\n\n/**\n * Popover - ARIA role for the floating element.\n * Use `Dialog` when the contents are interactive, `Tooltip` for purely\n * informational content.\n */\nexport const PopoverRole = {\n Tooltip: 'tooltip',\n Dialog: 'dialog',\n} as const;\nexport type PopoverRole = (typeof PopoverRole)[keyof typeof PopoverRole];\n\nexport type PopoverProps = Omit<ComponentProps<'div'>, 'role'> & {\n /**\n * The contents of the Popover.\n */\n children?: ReactNode;\n /**\n * Additional class names to merge onto the Popover root.\n */\n className?: string;\n /**\n * Inline styles applied to the Popover root. Merged after the styles\n * computed by `react-popper`.\n */\n style?: CSSProperties;\n /**\n * Placement relative to `referenceElement`. When `PopoverPosition.Auto`,\n * `flip` and `preventOverflow` are forced on regardless of their props.\n *\n * @default PopoverPosition.Auto\n */\n position?: PopoverPosition;\n /**\n * ARIA role applied to the Popover root.\n *\n * @default PopoverRole.Tooltip\n */\n role?: PopoverRole;\n /**\n * Render an arrow pointing at the reference element.\n *\n * @default false\n */\n hasArrow?: boolean;\n /**\n * Props forwarded to the arrow element. `ref`, `style`, and `children` are\n * reserved for internal use (popper positioning, rotation styles, and the\n * arrow visual) and cannot be overridden.\n */\n arrowProps?: Omit<ComponentProps<'div'>, 'ref' | 'style' | 'children'>;\n /**\n * Match the popover width to the reference element's `clientWidth`.\n *\n * @default false\n */\n matchWidth?: boolean;\n /**\n * Keep the Popover within the viewport. Forced on when\n * `position === PopoverPosition.Auto`.\n *\n * @default false\n */\n preventOverflow?: boolean;\n /**\n * Allow flipping to the opposite side when there is not enough space.\n * Forced on when `position === PopoverPosition.Auto`.\n *\n * @default false\n */\n flip?: boolean;\n /**\n * Hide the Popover when the reference element is scrolled out of view.\n *\n * @default true\n */\n referenceHidden?: boolean;\n /**\n * The element the Popover is positioned against.\n */\n referenceElement?: HTMLElement | null;\n /**\n * Whether the Popover is open. Nothing is rendered when `false`.\n */\n isOpen?: boolean;\n /**\n * `[skidding, distance]` offset (in px) applied to the Popover.\n *\n * @default [0, 8]\n */\n offset?: [number, number];\n /**\n * Render the Popover into `document.body` via `createPortal`.\n *\n * @default false\n */\n isPortal?: boolean;\n /**\n * Called when the user presses the Escape key while the Popover is open.\n */\n onPressEscKey?: () => void;\n /**\n * Called when the user clicks outside the Popover and the reference element\n * while the Popover is open.\n */\n onClickOutside?: () => void;\n};\n"]}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PopoverRole = exports.PopoverPosition = exports.Popover = void 0;
4
+ var Popover_1 = require("./Popover.cjs");
5
+ Object.defineProperty(exports, "Popover", { enumerable: true, get: function () { return Popover_1.Popover; } });
6
+ var Popover_types_1 = require("./Popover.types.cjs");
7
+ Object.defineProperty(exports, "PopoverPosition", { enumerable: true, get: function () { return Popover_types_1.PopoverPosition; } });
8
+ Object.defineProperty(exports, "PopoverRole", { enumerable: true, get: function () { return Popover_types_1.PopoverRole; } });
9
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../src/components/Popover/index.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,qDAA+D;AAAtD,gHAAA,eAAe,OAAA;AAAE,4GAAA,WAAW,OAAA","sourcesContent":["export { Popover } from './Popover';\nexport { PopoverPosition, PopoverRole } from './Popover.types';\nexport type { PopoverProps } from './Popover.types';\n"]}
@@ -0,0 +1,4 @@
1
+ export { Popover } from "./Popover.cjs";
2
+ export { PopoverPosition, PopoverRole } from "./Popover.types.cjs";
3
+ export type { PopoverProps } from "./Popover.types.cjs";
4
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/components/Popover/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,sBAAkB;AACpC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,4BAAwB;AAC/D,YAAY,EAAE,YAAY,EAAE,4BAAwB"}
@@ -0,0 +1,4 @@
1
+ export { Popover } from "./Popover.mjs";
2
+ export { PopoverPosition, PopoverRole } from "./Popover.types.mjs";
3
+ export type { PopoverProps } from "./Popover.types.mjs";
4
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/components/Popover/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,sBAAkB;AACpC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,4BAAwB;AAC/D,YAAY,EAAE,YAAY,EAAE,4BAAwB"}
@@ -0,0 +1,3 @@
1
+ export { Popover } from "./Popover.mjs";
2
+ export { PopoverPosition, PopoverRole } from "./Popover.types.mjs";
3
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/components/Popover/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,sBAAkB;AACpC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,4BAAwB","sourcesContent":["export { Popover } from './Popover';\nexport { PopoverPosition, PopoverRole } from './Popover.types';\nexport type { PopoverProps } from './Popover.types';\n"]}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.Tag = void 0;
27
+ const design_system_shared_1 = require("@metamask/design-system-shared");
28
+ const react_1 = __importStar(require("react"));
29
+ const tw_merge_1 = require("../../utils/tw-merge.cjs");
30
+ const Box_1 = require("../Box/index.cjs");
31
+ const Icon_1 = require("../Icon/index.cjs");
32
+ const Text_1 = require("../Text/index.cjs");
33
+ const Tag_constants_1 = require("./Tag.constants.cjs");
34
+ const isTextContent = (content) => typeof content === 'string' || typeof content === 'number';
35
+ exports.Tag = (0, react_1.forwardRef)(({ children, severity = design_system_shared_1.TagSeverity.Neutral, startIconName, startIconProps, startAccessory, endIconName, endIconProps, endAccessory, className, style, ...props }, ref) => {
36
+ const backgroundColor = Tag_constants_1.MAP_TAG_SEVERITY_BACKGROUND[severity];
37
+ const textColor = Tag_constants_1.MAP_TAG_SEVERITY_TEXT_COLOR[severity];
38
+ const iconColor = Tag_constants_1.MAP_TAG_SEVERITY_ICON_COLOR[severity];
39
+ const finalStartIconName = startIconName ?? startIconProps?.name;
40
+ const finalEndIconName = endIconName ?? endIconProps?.name;
41
+ const resolvedStartAccessory = finalStartIconName ? (react_1.default.createElement(Icon_1.Icon, { name: finalStartIconName, color: iconColor, size: design_system_shared_1.IconSize.Xs, className: "shrink-0", ...startIconProps })) : ((startAccessory ?? null));
42
+ const resolvedEndAccessory = finalEndIconName ? (react_1.default.createElement(Icon_1.Icon, { name: finalEndIconName, color: iconColor, size: design_system_shared_1.IconSize.Xs, className: "shrink-0", ...endIconProps })) : ((endAccessory ?? null));
43
+ const content = isTextContent(children) ? (react_1.default.createElement(Text_1.Text, { variant: design_system_shared_1.TextVariant.BodyXs, color: textColor, fontWeight: design_system_shared_1.FontWeight.Medium }, children)) : (children);
44
+ const mergedClassName = (0, tw_merge_1.twMerge)('inline-flex self-start rounded-md', finalStartIconName ? 'pl-1' : 'pl-1.5', finalEndIconName ? 'pr-1' : 'pr-1.5', className);
45
+ return (react_1.default.createElement(Box_1.Box, { ref: ref, flexDirection: design_system_shared_1.BoxFlexDirection.Row, alignItems: design_system_shared_1.BoxAlignItems.Center, gap: 1, backgroundColor: backgroundColor, className: mergedClassName, style: style, ...props },
46
+ resolvedStartAccessory,
47
+ content,
48
+ resolvedEndAccessory));
49
+ });
50
+ exports.Tag.displayName = 'Tag';
51
+ //# sourceMappingURL=Tag.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.cjs","sourceRoot":"","sources":["../../../src/components/Tag/Tag.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yEAOwC;AACxC,+CAA0C;AAE1C,uDAA+C;AAC/C,0CAA6B;AAC7B,4CAA+B;AAC/B,4CAA+B;AAE/B,uDAIyB;AAGzB,MAAM,aAAa,GAAG,CAAC,OAAwB,EAA8B,EAAE,CAC7E,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,KAAK,QAAQ,CAAC;AAEhD,QAAA,GAAG,GAAG,IAAA,kBAAU,EAC3B,CACE,EACE,QAAQ,EACR,QAAQ,GAAG,kCAAW,CAAC,OAAO,EAC9B,aAAa,EACb,cAAc,EACd,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,eAAe,GAAG,2CAA2B,CAAC,QAAQ,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,2CAA2B,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,2CAA2B,CAAC,QAAQ,CAAC,CAAC;IAExD,MAAM,kBAAkB,GAAG,aAAa,IAAI,cAAc,EAAE,IAAI,CAAC;IACjE,MAAM,gBAAgB,GAAG,WAAW,IAAI,YAAY,EAAE,IAAI,CAAC;IAE3D,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAClD,8BAAC,WAAI,IACH,IAAI,EAAE,kBAAkB,EACxB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,+BAAQ,CAAC,EAAE,EACjB,SAAS,EAAC,UAAU,KAChB,cAAc,GAClB,CACH,CAAC,CAAC,CAAC,CACF,CAAC,cAAc,IAAI,IAAI,CAAC,CACzB,CAAC;IAEF,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAC9C,8BAAC,WAAI,IACH,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,+BAAQ,CAAC,EAAE,EACjB,SAAS,EAAC,UAAU,KAChB,YAAY,GAChB,CACH,CAAC,CAAC,CAAC,CACF,CAAC,YAAY,IAAI,IAAI,CAAC,CACvB,CAAC;IAEF,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CACxC,8BAAC,WAAI,IACH,OAAO,EAAE,kCAAW,CAAC,MAAM,EAC3B,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,iCAAU,CAAC,MAAM,IAE5B,QAAQ,CACJ,CACR,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,CAAC;IAEF,MAAM,eAAe,GAAG,IAAA,kBAAO,EAC7B,mCAAmC,EACnC,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EACtC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EACpC,SAAS,CACV,CAAC;IAEF,OAAO,CACL,8BAAC,SAAG,IACF,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,uCAAgB,CAAC,GAAG,EACnC,UAAU,EAAE,oCAAa,CAAC,MAAM,EAChC,GAAG,EAAE,CAAC,EACN,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,eAAe,EAC1B,KAAK,EAAE,KAAK,KACR,KAAK;QAER,sBAAsB;QACtB,OAAO;QACP,oBAAoB,CACjB,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,WAAG,CAAC,WAAW,GAAG,KAAK,CAAC","sourcesContent":["import {\n BoxAlignItems,\n BoxFlexDirection,\n FontWeight,\n IconSize,\n TagSeverity,\n TextVariant,\n} from '@metamask/design-system-shared';\nimport React, { forwardRef } from 'react';\n\nimport { twMerge } from '../../utils/tw-merge';\nimport { Box } from '../Box';\nimport { Icon } from '../Icon';\nimport { Text } from '../Text';\n\nimport {\n MAP_TAG_SEVERITY_BACKGROUND,\n MAP_TAG_SEVERITY_ICON_COLOR,\n MAP_TAG_SEVERITY_TEXT_COLOR,\n} from './Tag.constants';\nimport type { TagProps } from './Tag.types';\n\nconst isTextContent = (content: React.ReactNode): content is string | number =>\n typeof content === 'string' || typeof content === 'number';\n\nexport const Tag = forwardRef<HTMLDivElement, TagProps>(\n (\n {\n children,\n severity = TagSeverity.Neutral,\n startIconName,\n startIconProps,\n startAccessory,\n endIconName,\n endIconProps,\n endAccessory,\n className,\n style,\n ...props\n },\n ref,\n ) => {\n const backgroundColor = MAP_TAG_SEVERITY_BACKGROUND[severity];\n const textColor = MAP_TAG_SEVERITY_TEXT_COLOR[severity];\n const iconColor = MAP_TAG_SEVERITY_ICON_COLOR[severity];\n\n const finalStartIconName = startIconName ?? startIconProps?.name;\n const finalEndIconName = endIconName ?? endIconProps?.name;\n\n const resolvedStartAccessory = finalStartIconName ? (\n <Icon\n name={finalStartIconName}\n color={iconColor}\n size={IconSize.Xs}\n className=\"shrink-0\"\n {...startIconProps}\n />\n ) : (\n (startAccessory ?? null)\n );\n\n const resolvedEndAccessory = finalEndIconName ? (\n <Icon\n name={finalEndIconName}\n color={iconColor}\n size={IconSize.Xs}\n className=\"shrink-0\"\n {...endIconProps}\n />\n ) : (\n (endAccessory ?? null)\n );\n\n const content = isTextContent(children) ? (\n <Text\n variant={TextVariant.BodyXs}\n color={textColor}\n fontWeight={FontWeight.Medium}\n >\n {children}\n </Text>\n ) : (\n children\n );\n\n const mergedClassName = twMerge(\n 'inline-flex self-start rounded-md',\n finalStartIconName ? 'pl-1' : 'pl-1.5',\n finalEndIconName ? 'pr-1' : 'pr-1.5',\n className,\n );\n\n return (\n <Box\n ref={ref}\n flexDirection={BoxFlexDirection.Row}\n alignItems={BoxAlignItems.Center}\n gap={1}\n backgroundColor={backgroundColor}\n className={mergedClassName}\n style={style}\n {...props}\n >\n {resolvedStartAccessory}\n {content}\n {resolvedEndAccessory}\n </Box>\n );\n },\n);\n\nTag.displayName = 'Tag';\n"]}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MAP_TAG_SEVERITY_ICON_COLOR = exports.MAP_TAG_SEVERITY_TEXT_COLOR = exports.MAP_TAG_SEVERITY_BACKGROUND = void 0;
4
+ const design_system_shared_1 = require("@metamask/design-system-shared");
5
+ exports.MAP_TAG_SEVERITY_BACKGROUND = {
6
+ [design_system_shared_1.TagSeverity.Neutral]: design_system_shared_1.BoxBackgroundColor.BackgroundMuted,
7
+ [design_system_shared_1.TagSeverity.Success]: design_system_shared_1.BoxBackgroundColor.SuccessMuted,
8
+ [design_system_shared_1.TagSeverity.Danger]: design_system_shared_1.BoxBackgroundColor.ErrorMuted,
9
+ [design_system_shared_1.TagSeverity.Warning]: design_system_shared_1.BoxBackgroundColor.WarningMuted,
10
+ [design_system_shared_1.TagSeverity.Info]: design_system_shared_1.BoxBackgroundColor.InfoMuted,
11
+ };
12
+ exports.MAP_TAG_SEVERITY_TEXT_COLOR = {
13
+ [design_system_shared_1.TagSeverity.Neutral]: design_system_shared_1.TextColor.TextDefault,
14
+ [design_system_shared_1.TagSeverity.Success]: design_system_shared_1.TextColor.SuccessDefault,
15
+ [design_system_shared_1.TagSeverity.Danger]: design_system_shared_1.TextColor.ErrorDefault,
16
+ [design_system_shared_1.TagSeverity.Warning]: design_system_shared_1.TextColor.WarningDefault,
17
+ [design_system_shared_1.TagSeverity.Info]: design_system_shared_1.TextColor.InfoDefault,
18
+ };
19
+ exports.MAP_TAG_SEVERITY_ICON_COLOR = {
20
+ [design_system_shared_1.TagSeverity.Neutral]: design_system_shared_1.IconColor.IconDefault,
21
+ [design_system_shared_1.TagSeverity.Success]: design_system_shared_1.IconColor.SuccessDefault,
22
+ [design_system_shared_1.TagSeverity.Danger]: design_system_shared_1.IconColor.ErrorDefault,
23
+ [design_system_shared_1.TagSeverity.Warning]: design_system_shared_1.IconColor.WarningDefault,
24
+ [design_system_shared_1.TagSeverity.Info]: design_system_shared_1.IconColor.InfoDefault,
25
+ };
26
+ //# sourceMappingURL=Tag.constants.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.constants.cjs","sourceRoot":"","sources":["../../../src/components/Tag/Tag.constants.ts"],"names":[],"mappings":";;;AAAA,yEAKwC;AAE3B,QAAA,2BAA2B,GAGpC;IACF,CAAC,kCAAW,CAAC,OAAO,CAAC,EAAE,yCAAkB,CAAC,eAAe;IACzD,CAAC,kCAAW,CAAC,OAAO,CAAC,EAAE,yCAAkB,CAAC,YAAY;IACtD,CAAC,kCAAW,CAAC,MAAM,CAAC,EAAE,yCAAkB,CAAC,UAAU;IACnD,CAAC,kCAAW,CAAC,OAAO,CAAC,EAAE,yCAAkB,CAAC,YAAY;IACtD,CAAC,kCAAW,CAAC,IAAI,CAAC,EAAE,yCAAkB,CAAC,SAAS;CACjD,CAAC;AAEW,QAAA,2BAA2B,GAAmC;IACzE,CAAC,kCAAW,CAAC,OAAO,CAAC,EAAE,gCAAS,CAAC,WAAW;IAC5C,CAAC,kCAAW,CAAC,OAAO,CAAC,EAAE,gCAAS,CAAC,cAAc;IAC/C,CAAC,kCAAW,CAAC,MAAM,CAAC,EAAE,gCAAS,CAAC,YAAY;IAC5C,CAAC,kCAAW,CAAC,OAAO,CAAC,EAAE,gCAAS,CAAC,cAAc;IAC/C,CAAC,kCAAW,CAAC,IAAI,CAAC,EAAE,gCAAS,CAAC,WAAW;CAC1C,CAAC;AAEW,QAAA,2BAA2B,GAAmC;IACzE,CAAC,kCAAW,CAAC,OAAO,CAAC,EAAE,gCAAS,CAAC,WAAW;IAC5C,CAAC,kCAAW,CAAC,OAAO,CAAC,EAAE,gCAAS,CAAC,cAAc;IAC/C,CAAC,kCAAW,CAAC,MAAM,CAAC,EAAE,gCAAS,CAAC,YAAY;IAC5C,CAAC,kCAAW,CAAC,OAAO,CAAC,EAAE,gCAAS,CAAC,cAAc;IAC/C,CAAC,kCAAW,CAAC,IAAI,CAAC,EAAE,gCAAS,CAAC,WAAW;CAC1C,CAAC","sourcesContent":["import {\n BoxBackgroundColor,\n IconColor,\n TagSeverity,\n TextColor,\n} from '@metamask/design-system-shared';\n\nexport const MAP_TAG_SEVERITY_BACKGROUND: Record<\n TagSeverity,\n BoxBackgroundColor\n> = {\n [TagSeverity.Neutral]: BoxBackgroundColor.BackgroundMuted,\n [TagSeverity.Success]: BoxBackgroundColor.SuccessMuted,\n [TagSeverity.Danger]: BoxBackgroundColor.ErrorMuted,\n [TagSeverity.Warning]: BoxBackgroundColor.WarningMuted,\n [TagSeverity.Info]: BoxBackgroundColor.InfoMuted,\n};\n\nexport const MAP_TAG_SEVERITY_TEXT_COLOR: Record<TagSeverity, TextColor> = {\n [TagSeverity.Neutral]: TextColor.TextDefault,\n [TagSeverity.Success]: TextColor.SuccessDefault,\n [TagSeverity.Danger]: TextColor.ErrorDefault,\n [TagSeverity.Warning]: TextColor.WarningDefault,\n [TagSeverity.Info]: TextColor.InfoDefault,\n};\n\nexport const MAP_TAG_SEVERITY_ICON_COLOR: Record<TagSeverity, IconColor> = {\n [TagSeverity.Neutral]: IconColor.IconDefault,\n [TagSeverity.Success]: IconColor.SuccessDefault,\n [TagSeverity.Danger]: IconColor.ErrorDefault,\n [TagSeverity.Warning]: IconColor.WarningDefault,\n [TagSeverity.Info]: IconColor.InfoDefault,\n};\n"]}
@@ -0,0 +1,5 @@
1
+ import { BoxBackgroundColor, IconColor, TagSeverity, TextColor } from "@metamask/design-system-shared";
2
+ export declare const MAP_TAG_SEVERITY_BACKGROUND: Record<TagSeverity, BoxBackgroundColor>;
3
+ export declare const MAP_TAG_SEVERITY_TEXT_COLOR: Record<TagSeverity, TextColor>;
4
+ export declare const MAP_TAG_SEVERITY_ICON_COLOR: Record<TagSeverity, IconColor>;
5
+ //# sourceMappingURL=Tag.constants.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.constants.d.cts","sourceRoot":"","sources":["../../../src/components/Tag/Tag.constants.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,SAAS,EACV,uCAAuC;AAExC,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAC9C,WAAW,EACX,kBAAkB,CAOnB,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,WAAW,EAAE,SAAS,CAMtE,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,WAAW,EAAE,SAAS,CAMtE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { BoxBackgroundColor, IconColor, TagSeverity, TextColor } from "@metamask/design-system-shared";
2
+ export declare const MAP_TAG_SEVERITY_BACKGROUND: Record<TagSeverity, BoxBackgroundColor>;
3
+ export declare const MAP_TAG_SEVERITY_TEXT_COLOR: Record<TagSeverity, TextColor>;
4
+ export declare const MAP_TAG_SEVERITY_ICON_COLOR: Record<TagSeverity, IconColor>;
5
+ //# sourceMappingURL=Tag.constants.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.constants.d.mts","sourceRoot":"","sources":["../../../src/components/Tag/Tag.constants.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,SAAS,EACV,uCAAuC;AAExC,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAC9C,WAAW,EACX,kBAAkB,CAOnB,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,WAAW,EAAE,SAAS,CAMtE,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,WAAW,EAAE,SAAS,CAMtE,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { BoxBackgroundColor, IconColor, TagSeverity, TextColor } from "@metamask/design-system-shared";
2
+ export const MAP_TAG_SEVERITY_BACKGROUND = {
3
+ [TagSeverity.Neutral]: BoxBackgroundColor.BackgroundMuted,
4
+ [TagSeverity.Success]: BoxBackgroundColor.SuccessMuted,
5
+ [TagSeverity.Danger]: BoxBackgroundColor.ErrorMuted,
6
+ [TagSeverity.Warning]: BoxBackgroundColor.WarningMuted,
7
+ [TagSeverity.Info]: BoxBackgroundColor.InfoMuted,
8
+ };
9
+ export const MAP_TAG_SEVERITY_TEXT_COLOR = {
10
+ [TagSeverity.Neutral]: TextColor.TextDefault,
11
+ [TagSeverity.Success]: TextColor.SuccessDefault,
12
+ [TagSeverity.Danger]: TextColor.ErrorDefault,
13
+ [TagSeverity.Warning]: TextColor.WarningDefault,
14
+ [TagSeverity.Info]: TextColor.InfoDefault,
15
+ };
16
+ export const MAP_TAG_SEVERITY_ICON_COLOR = {
17
+ [TagSeverity.Neutral]: IconColor.IconDefault,
18
+ [TagSeverity.Success]: IconColor.SuccessDefault,
19
+ [TagSeverity.Danger]: IconColor.ErrorDefault,
20
+ [TagSeverity.Warning]: IconColor.WarningDefault,
21
+ [TagSeverity.Info]: IconColor.InfoDefault,
22
+ };
23
+ //# sourceMappingURL=Tag.constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.constants.mjs","sourceRoot":"","sources":["../../../src/components/Tag/Tag.constants.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,SAAS,EACV,uCAAuC;AAExC,MAAM,CAAC,MAAM,2BAA2B,GAGpC;IACF,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC,eAAe;IACzD,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC,YAAY;IACtD,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC,UAAU;IACnD,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC,YAAY;IACtD,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,SAAS;CACjD,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAmC;IACzE,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,WAAW;IAC5C,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,cAAc;IAC/C,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,YAAY;IAC5C,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,cAAc;IAC/C,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,WAAW;CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAmC;IACzE,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,WAAW;IAC5C,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,cAAc;IAC/C,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,YAAY;IAC5C,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,cAAc;IAC/C,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,WAAW;CAC1C,CAAC","sourcesContent":["import {\n BoxBackgroundColor,\n IconColor,\n TagSeverity,\n TextColor,\n} from '@metamask/design-system-shared';\n\nexport const MAP_TAG_SEVERITY_BACKGROUND: Record<\n TagSeverity,\n BoxBackgroundColor\n> = {\n [TagSeverity.Neutral]: BoxBackgroundColor.BackgroundMuted,\n [TagSeverity.Success]: BoxBackgroundColor.SuccessMuted,\n [TagSeverity.Danger]: BoxBackgroundColor.ErrorMuted,\n [TagSeverity.Warning]: BoxBackgroundColor.WarningMuted,\n [TagSeverity.Info]: BoxBackgroundColor.InfoMuted,\n};\n\nexport const MAP_TAG_SEVERITY_TEXT_COLOR: Record<TagSeverity, TextColor> = {\n [TagSeverity.Neutral]: TextColor.TextDefault,\n [TagSeverity.Success]: TextColor.SuccessDefault,\n [TagSeverity.Danger]: TextColor.ErrorDefault,\n [TagSeverity.Warning]: TextColor.WarningDefault,\n [TagSeverity.Info]: TextColor.InfoDefault,\n};\n\nexport const MAP_TAG_SEVERITY_ICON_COLOR: Record<TagSeverity, IconColor> = {\n [TagSeverity.Neutral]: IconColor.IconDefault,\n [TagSeverity.Success]: IconColor.SuccessDefault,\n [TagSeverity.Danger]: IconColor.ErrorDefault,\n [TagSeverity.Warning]: IconColor.WarningDefault,\n [TagSeverity.Info]: IconColor.InfoDefault,\n};\n"]}
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import type { TagProps } from "./Tag.types.cjs";
3
+ export declare const Tag: React.ForwardRefExoticComponent<Omit<TagProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
4
+ //# sourceMappingURL=Tag.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.d.cts","sourceRoot":"","sources":["../../../src/components/Tag/Tag.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAqB,cAAc;AAY1C,OAAO,KAAK,EAAE,QAAQ,EAAE,wBAAoB;AAK5C,eAAO,MAAM,GAAG,8FAoFf,CAAC"}
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import type { TagProps } from "./Tag.types.mjs";
3
+ export declare const Tag: React.ForwardRefExoticComponent<Omit<TagProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
4
+ //# sourceMappingURL=Tag.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.d.mts","sourceRoot":"","sources":["../../../src/components/Tag/Tag.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAqB,cAAc;AAY1C,OAAO,KAAK,EAAE,QAAQ,EAAE,wBAAoB;AAK5C,eAAO,MAAM,GAAG,8FAoFf,CAAC"}
@@ -0,0 +1,32 @@
1
+ function $importDefault(module) {
2
+ if (module?.__esModule) {
3
+ return module.default;
4
+ }
5
+ return module;
6
+ }
7
+ import { BoxAlignItems, BoxFlexDirection, FontWeight, IconSize, TagSeverity, TextVariant } from "@metamask/design-system-shared";
8
+ import $React, { forwardRef } from "react";
9
+ const React = $importDefault($React);
10
+ import { twMerge } from "../../utils/tw-merge.mjs";
11
+ import { Box } from "../Box/index.mjs";
12
+ import { Icon } from "../Icon/index.mjs";
13
+ import { Text } from "../Text/index.mjs";
14
+ import { MAP_TAG_SEVERITY_BACKGROUND, MAP_TAG_SEVERITY_ICON_COLOR, MAP_TAG_SEVERITY_TEXT_COLOR } from "./Tag.constants.mjs";
15
+ const isTextContent = (content) => typeof content === 'string' || typeof content === 'number';
16
+ export const Tag = forwardRef(({ children, severity = TagSeverity.Neutral, startIconName, startIconProps, startAccessory, endIconName, endIconProps, endAccessory, className, style, ...props }, ref) => {
17
+ const backgroundColor = MAP_TAG_SEVERITY_BACKGROUND[severity];
18
+ const textColor = MAP_TAG_SEVERITY_TEXT_COLOR[severity];
19
+ const iconColor = MAP_TAG_SEVERITY_ICON_COLOR[severity];
20
+ const finalStartIconName = startIconName ?? startIconProps?.name;
21
+ const finalEndIconName = endIconName ?? endIconProps?.name;
22
+ const resolvedStartAccessory = finalStartIconName ? (React.createElement(Icon, { name: finalStartIconName, color: iconColor, size: IconSize.Xs, className: "shrink-0", ...startIconProps })) : ((startAccessory ?? null));
23
+ const resolvedEndAccessory = finalEndIconName ? (React.createElement(Icon, { name: finalEndIconName, color: iconColor, size: IconSize.Xs, className: "shrink-0", ...endIconProps })) : ((endAccessory ?? null));
24
+ const content = isTextContent(children) ? (React.createElement(Text, { variant: TextVariant.BodyXs, color: textColor, fontWeight: FontWeight.Medium }, children)) : (children);
25
+ const mergedClassName = twMerge('inline-flex self-start rounded-md', finalStartIconName ? 'pl-1' : 'pl-1.5', finalEndIconName ? 'pr-1' : 'pr-1.5', className);
26
+ return (React.createElement(Box, { ref: ref, flexDirection: BoxFlexDirection.Row, alignItems: BoxAlignItems.Center, gap: 1, backgroundColor: backgroundColor, className: mergedClassName, style: style, ...props },
27
+ resolvedStartAccessory,
28
+ content,
29
+ resolvedEndAccessory));
30
+ });
31
+ Tag.displayName = 'Tag';
32
+ //# sourceMappingURL=Tag.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.mjs","sourceRoot":"","sources":["../../../src/components/Tag/Tag.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,QAAQ,EACR,WAAW,EACX,WAAW,EACZ,uCAAuC;AACxC,OAAO,QAAO,EAAE,UAAU,EAAE,cAAc;;AAE1C,OAAO,EAAE,OAAO,EAAE,iCAA6B;AAC/C,OAAO,EAAE,GAAG,EAAE,yBAAe;AAC7B,OAAO,EAAE,IAAI,EAAE,0BAAgB;AAC/B,OAAO,EAAE,IAAI,EAAE,0BAAgB;AAE/B,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,2BAA2B,EAC5B,4BAAwB;AAGzB,MAAM,aAAa,GAAG,CAAC,OAAwB,EAA8B,EAAE,CAC7E,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,KAAK,QAAQ,CAAC;AAE7D,MAAM,CAAC,MAAM,GAAG,GAAG,UAAU,CAC3B,CACE,EACE,QAAQ,EACR,QAAQ,GAAG,WAAW,CAAC,OAAO,EAC9B,aAAa,EACb,cAAc,EACd,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,eAAe,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IAExD,MAAM,kBAAkB,GAAG,aAAa,IAAI,cAAc,EAAE,IAAI,CAAC;IACjE,MAAM,gBAAgB,GAAG,WAAW,IAAI,YAAY,EAAE,IAAI,CAAC;IAE3D,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAClD,oBAAC,IAAI,IACH,IAAI,EAAE,kBAAkB,EACxB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,QAAQ,CAAC,EAAE,EACjB,SAAS,EAAC,UAAU,KAChB,cAAc,GAClB,CACH,CAAC,CAAC,CAAC,CACF,CAAC,cAAc,IAAI,IAAI,CAAC,CACzB,CAAC;IAEF,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAC9C,oBAAC,IAAI,IACH,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,QAAQ,CAAC,EAAE,EACjB,SAAS,EAAC,UAAU,KAChB,YAAY,GAChB,CACH,CAAC,CAAC,CAAC,CACF,CAAC,YAAY,IAAI,IAAI,CAAC,CACvB,CAAC;IAEF,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CACxC,oBAAC,IAAI,IACH,OAAO,EAAE,WAAW,CAAC,MAAM,EAC3B,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,UAAU,CAAC,MAAM,IAE5B,QAAQ,CACJ,CACR,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,CAAC;IAEF,MAAM,eAAe,GAAG,OAAO,CAC7B,mCAAmC,EACnC,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EACtC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EACpC,SAAS,CACV,CAAC;IAEF,OAAO,CACL,oBAAC,GAAG,IACF,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,gBAAgB,CAAC,GAAG,EACnC,UAAU,EAAE,aAAa,CAAC,MAAM,EAChC,GAAG,EAAE,CAAC,EACN,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,eAAe,EAC1B,KAAK,EAAE,KAAK,KACR,KAAK;QAER,sBAAsB;QACtB,OAAO;QACP,oBAAoB,CACjB,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC","sourcesContent":["import {\n BoxAlignItems,\n BoxFlexDirection,\n FontWeight,\n IconSize,\n TagSeverity,\n TextVariant,\n} from '@metamask/design-system-shared';\nimport React, { forwardRef } from 'react';\n\nimport { twMerge } from '../../utils/tw-merge';\nimport { Box } from '../Box';\nimport { Icon } from '../Icon';\nimport { Text } from '../Text';\n\nimport {\n MAP_TAG_SEVERITY_BACKGROUND,\n MAP_TAG_SEVERITY_ICON_COLOR,\n MAP_TAG_SEVERITY_TEXT_COLOR,\n} from './Tag.constants';\nimport type { TagProps } from './Tag.types';\n\nconst isTextContent = (content: React.ReactNode): content is string | number =>\n typeof content === 'string' || typeof content === 'number';\n\nexport const Tag = forwardRef<HTMLDivElement, TagProps>(\n (\n {\n children,\n severity = TagSeverity.Neutral,\n startIconName,\n startIconProps,\n startAccessory,\n endIconName,\n endIconProps,\n endAccessory,\n className,\n style,\n ...props\n },\n ref,\n ) => {\n const backgroundColor = MAP_TAG_SEVERITY_BACKGROUND[severity];\n const textColor = MAP_TAG_SEVERITY_TEXT_COLOR[severity];\n const iconColor = MAP_TAG_SEVERITY_ICON_COLOR[severity];\n\n const finalStartIconName = startIconName ?? startIconProps?.name;\n const finalEndIconName = endIconName ?? endIconProps?.name;\n\n const resolvedStartAccessory = finalStartIconName ? (\n <Icon\n name={finalStartIconName}\n color={iconColor}\n size={IconSize.Xs}\n className=\"shrink-0\"\n {...startIconProps}\n />\n ) : (\n (startAccessory ?? null)\n );\n\n const resolvedEndAccessory = finalEndIconName ? (\n <Icon\n name={finalEndIconName}\n color={iconColor}\n size={IconSize.Xs}\n className=\"shrink-0\"\n {...endIconProps}\n />\n ) : (\n (endAccessory ?? null)\n );\n\n const content = isTextContent(children) ? (\n <Text\n variant={TextVariant.BodyXs}\n color={textColor}\n fontWeight={FontWeight.Medium}\n >\n {children}\n </Text>\n ) : (\n children\n );\n\n const mergedClassName = twMerge(\n 'inline-flex self-start rounded-md',\n finalStartIconName ? 'pl-1' : 'pl-1.5',\n finalEndIconName ? 'pr-1' : 'pr-1.5',\n className,\n );\n\n return (\n <Box\n ref={ref}\n flexDirection={BoxFlexDirection.Row}\n alignItems={BoxAlignItems.Center}\n gap={1}\n backgroundColor={backgroundColor}\n className={mergedClassName}\n style={style}\n {...props}\n >\n {resolvedStartAccessory}\n {content}\n {resolvedEndAccessory}\n </Box>\n );\n },\n);\n\nTag.displayName = 'Tag';\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=Tag.types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.types.cjs","sourceRoot":"","sources":["../../../src/components/Tag/Tag.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { TagPropsShared } from '@metamask/design-system-shared';\nimport type { IconName } from '@metamask/design-system-shared';\nimport type { ComponentProps } from 'react';\n\nimport type { IconProps } from '../Icon';\n\n/**\n * Tag component props (React / extension).\n * Extends {@link TagPropsShared} with platform `Icon` passthroughs and `className`.\n */\nexport type TagProps = TagPropsShared &\n Omit<ComponentProps<'div'>, 'children'> & {\n /**\n * Optional icon at the start of the tag (`IconSize.Xs` unless overridden in `startIconProps`).\n */\n startIconName?: IconName;\n /**\n * Optional props for the start icon. You may set `name` here instead of `startIconName`.\n */\n startIconProps?: Partial<IconProps>;\n /**\n * Optional icon at the end of the tag (`IconSize.Xs` unless overridden in `endIconProps`).\n */\n endIconName?: IconName;\n /**\n * Optional props for the end icon. You may set `name` here instead of `endIconName`.\n */\n endIconProps?: Partial<IconProps>;\n /**\n * Optional CSS classes merged onto the tag container.\n */\n className?: string;\n };\n"]}
@@ -0,0 +1,31 @@
1
+ import type { TagPropsShared } from "@metamask/design-system-shared";
2
+ import type { IconName } from "@metamask/design-system-shared";
3
+ import type { ComponentProps } from "react";
4
+ import type { IconProps } from "../Icon/index.cjs";
5
+ /**
6
+ * Tag component props (React / extension).
7
+ * Extends {@link TagPropsShared} with platform `Icon` passthroughs and `className`.
8
+ */
9
+ export type TagProps = TagPropsShared & Omit<ComponentProps<'div'>, 'children'> & {
10
+ /**
11
+ * Optional icon at the start of the tag (`IconSize.Xs` unless overridden in `startIconProps`).
12
+ */
13
+ startIconName?: IconName;
14
+ /**
15
+ * Optional props for the start icon. You may set `name` here instead of `startIconName`.
16
+ */
17
+ startIconProps?: Partial<IconProps>;
18
+ /**
19
+ * Optional icon at the end of the tag (`IconSize.Xs` unless overridden in `endIconProps`).
20
+ */
21
+ endIconName?: IconName;
22
+ /**
23
+ * Optional props for the end icon. You may set `name` here instead of `endIconName`.
24
+ */
25
+ endIconProps?: Partial<IconProps>;
26
+ /**
27
+ * Optional CSS classes merged onto the tag container.
28
+ */
29
+ className?: string;
30
+ };
31
+ //# sourceMappingURL=Tag.types.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.types.d.cts","sourceRoot":"","sources":["../../../src/components/Tag/Tag.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,uCAAuC;AACrE,OAAO,KAAK,EAAE,QAAQ,EAAE,uCAAuC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc;AAE5C,OAAO,KAAK,EAAE,SAAS,EAAE,0BAAgB;AAEzC;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,cAAc,GACnC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,GAAG;IACxC;;OAEG;IACH,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC;;OAEG;IACH,WAAW,CAAC,EAAE,QAAQ,CAAC;IACvB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAClC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import type { TagPropsShared } from "@metamask/design-system-shared";
2
+ import type { IconName } from "@metamask/design-system-shared";
3
+ import type { ComponentProps } from "react";
4
+ import type { IconProps } from "../Icon/index.mjs";
5
+ /**
6
+ * Tag component props (React / extension).
7
+ * Extends {@link TagPropsShared} with platform `Icon` passthroughs and `className`.
8
+ */
9
+ export type TagProps = TagPropsShared & Omit<ComponentProps<'div'>, 'children'> & {
10
+ /**
11
+ * Optional icon at the start of the tag (`IconSize.Xs` unless overridden in `startIconProps`).
12
+ */
13
+ startIconName?: IconName;
14
+ /**
15
+ * Optional props for the start icon. You may set `name` here instead of `startIconName`.
16
+ */
17
+ startIconProps?: Partial<IconProps>;
18
+ /**
19
+ * Optional icon at the end of the tag (`IconSize.Xs` unless overridden in `endIconProps`).
20
+ */
21
+ endIconName?: IconName;
22
+ /**
23
+ * Optional props for the end icon. You may set `name` here instead of `endIconName`.
24
+ */
25
+ endIconProps?: Partial<IconProps>;
26
+ /**
27
+ * Optional CSS classes merged onto the tag container.
28
+ */
29
+ className?: string;
30
+ };
31
+ //# sourceMappingURL=Tag.types.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.types.d.mts","sourceRoot":"","sources":["../../../src/components/Tag/Tag.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,uCAAuC;AACrE,OAAO,KAAK,EAAE,QAAQ,EAAE,uCAAuC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc;AAE5C,OAAO,KAAK,EAAE,SAAS,EAAE,0BAAgB;AAEzC;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,cAAc,GACnC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,GAAG;IACxC;;OAEG;IACH,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC;;OAEG;IACH,WAAW,CAAC,EAAE,QAAQ,CAAC;IACvB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAClC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Tag.types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.types.mjs","sourceRoot":"","sources":["../../../src/components/Tag/Tag.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { TagPropsShared } from '@metamask/design-system-shared';\nimport type { IconName } from '@metamask/design-system-shared';\nimport type { ComponentProps } from 'react';\n\nimport type { IconProps } from '../Icon';\n\n/**\n * Tag component props (React / extension).\n * Extends {@link TagPropsShared} with platform `Icon` passthroughs and `className`.\n */\nexport type TagProps = TagPropsShared &\n Omit<ComponentProps<'div'>, 'children'> & {\n /**\n * Optional icon at the start of the tag (`IconSize.Xs` unless overridden in `startIconProps`).\n */\n startIconName?: IconName;\n /**\n * Optional props for the start icon. You may set `name` here instead of `startIconName`.\n */\n startIconProps?: Partial<IconProps>;\n /**\n * Optional icon at the end of the tag (`IconSize.Xs` unless overridden in `endIconProps`).\n */\n endIconName?: IconName;\n /**\n * Optional props for the end icon. You may set `name` here instead of `endIconName`.\n */\n endIconProps?: Partial<IconProps>;\n /**\n * Optional CSS classes merged onto the tag container.\n */\n className?: string;\n };\n"]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TagSeverity = exports.Tag = void 0;
4
+ var Tag_1 = require("./Tag.cjs");
5
+ Object.defineProperty(exports, "Tag", { enumerable: true, get: function () { return Tag_1.Tag; } });
6
+ var design_system_shared_1 = require("@metamask/design-system-shared");
7
+ Object.defineProperty(exports, "TagSeverity", { enumerable: true, get: function () { return design_system_shared_1.TagSeverity; } });
8
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../src/components/Tag/index.ts"],"names":[],"mappings":";;;AAAA,iCAA4B;AAAnB,0FAAA,GAAG,OAAA;AACZ,uEAA6D;AAApD,mHAAA,WAAW,OAAA","sourcesContent":["export { Tag } from './Tag';\nexport { TagSeverity } from '@metamask/design-system-shared';\nexport type { TagProps } from './Tag.types';\n"]}
@@ -0,0 +1,4 @@
1
+ export { Tag } from "./Tag.cjs";
2
+ export { TagSeverity } from "@metamask/design-system-shared";
3
+ export type { TagProps } from "./Tag.types.cjs";
4
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/components/Tag/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,kBAAc;AAC5B,OAAO,EAAE,WAAW,EAAE,uCAAuC;AAC7D,YAAY,EAAE,QAAQ,EAAE,wBAAoB"}
@@ -0,0 +1,4 @@
1
+ export { Tag } from "./Tag.mjs";
2
+ export { TagSeverity } from "@metamask/design-system-shared";
3
+ export type { TagProps } from "./Tag.types.mjs";
4
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/components/Tag/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,kBAAc;AAC5B,OAAO,EAAE,WAAW,EAAE,uCAAuC;AAC7D,YAAY,EAAE,QAAQ,EAAE,wBAAoB"}
@@ -0,0 +1,3 @@
1
+ export { Tag } from "./Tag.mjs";
2
+ export { TagSeverity } from "@metamask/design-system-shared";
3
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/components/Tag/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,kBAAc;AAC5B,OAAO,EAAE,WAAW,EAAE,uCAAuC","sourcesContent":["export { Tag } from './Tag';\nexport { TagSeverity } from '@metamask/design-system-shared';\nexport type { TagProps } from './Tag.types';\n"]}