@lidofinance/lido-app-ui 1.5.0 → 1.6.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 (261) hide show
  1. package/dist/cjs/accordion/Accordion.cjs +5 -0
  2. package/dist/cjs/accordion/Accordion.cjs.map +1 -1
  3. package/dist/cjs/badge/Badge.cjs +3 -0
  4. package/dist/cjs/badge/Badge.cjs.map +1 -1
  5. package/dist/cjs/banner/Banner.cjs +6 -0
  6. package/dist/cjs/banner/Banner.cjs.map +1 -1
  7. package/dist/cjs/button/Button.cjs +5 -0
  8. package/dist/cjs/button/Button.cjs.map +1 -1
  9. package/dist/cjs/card/Card.cjs +2 -0
  10. package/dist/cjs/card/Card.cjs.map +1 -1
  11. package/dist/cjs/checkbox/Checkbox.cjs +4 -0
  12. package/dist/cjs/checkbox/Checkbox.cjs.map +1 -1
  13. package/dist/cjs/counter/Counter.cjs +2 -0
  14. package/dist/cjs/counter/Counter.cjs.map +1 -1
  15. package/dist/cjs/data-list/DataList.cjs +5 -1
  16. package/dist/cjs/data-list/DataList.cjs.map +1 -1
  17. package/dist/cjs/data-list/DataListRow.cjs +10 -1
  18. package/dist/cjs/data-list/DataListRow.cjs.map +1 -1
  19. package/dist/cjs/icon-button/IconButton.cjs +3 -0
  20. package/dist/cjs/icon-button/IconButton.cjs.map +1 -1
  21. package/dist/cjs/identicon/Identicon.cjs +8 -2
  22. package/dist/cjs/identicon/Identicon.cjs.map +1 -1
  23. package/dist/cjs/input/Input.cjs +7 -0
  24. package/dist/cjs/input/Input.cjs.map +1 -1
  25. package/dist/cjs/message-box/MessageBox.cjs +5 -0
  26. package/dist/cjs/message-box/MessageBox.cjs.map +1 -1
  27. package/dist/cjs/modal/Modal.cjs +13 -2
  28. package/dist/cjs/modal/Modal.cjs.map +1 -1
  29. package/dist/cjs/notification/Notification.cjs +10 -1
  30. package/dist/cjs/notification/Notification.cjs.map +1 -1
  31. package/dist/cjs/radio-button/RadioButton.cjs +4 -0
  32. package/dist/cjs/radio-button/RadioButton.cjs.map +1 -1
  33. package/dist/cjs/rich-input/RichInput.cjs +9 -0
  34. package/dist/cjs/rich-input/RichInput.cjs.map +1 -1
  35. package/dist/cjs/section-title/SectionTitle.cjs +5 -0
  36. package/dist/cjs/section-title/SectionTitle.cjs.map +1 -1
  37. package/dist/cjs/segmented-control/Segment.cjs +3 -0
  38. package/dist/cjs/segmented-control/Segment.cjs.map +1 -1
  39. package/dist/cjs/segmented-control/SegmentCard.cjs +8 -0
  40. package/dist/cjs/segmented-control/SegmentCard.cjs.map +1 -1
  41. package/dist/cjs/segmented-control/SegmentedControl.cjs +6 -1
  42. package/dist/cjs/segmented-control/SegmentedControl.cjs.map +1 -1
  43. package/dist/cjs/segmented-control/SegmentedControlCard.cjs +6 -1
  44. package/dist/cjs/segmented-control/SegmentedControlCard.cjs.map +1 -1
  45. package/dist/cjs/slider/Slider.cjs +3 -0
  46. package/dist/cjs/slider/Slider.cjs.map +1 -1
  47. package/dist/cjs/small-card/SmallCard.cjs +8 -0
  48. package/dist/cjs/small-card/SmallCard.cjs.map +1 -1
  49. package/dist/cjs/stat-item/StatItem.cjs +8 -0
  50. package/dist/cjs/stat-item/StatItem.cjs.map +1 -1
  51. package/dist/cjs/switch/Switch.cjs +4 -0
  52. package/dist/cjs/switch/Switch.cjs.map +1 -1
  53. package/dist/cjs/tabs/Tab.cjs +2 -0
  54. package/dist/cjs/tabs/Tab.cjs.map +1 -1
  55. package/dist/cjs/tabs/Tabs.cjs +6 -1
  56. package/dist/cjs/tabs/Tabs.cjs.map +1 -1
  57. package/dist/cjs/tag/Tag.cjs +4 -0
  58. package/dist/cjs/tag/Tag.cjs.map +1 -1
  59. package/dist/cjs/text-link/TextLink.cjs +3 -0
  60. package/dist/cjs/text-link/TextLink.cjs.map +1 -1
  61. package/dist/cjs/token-amount/TokenAmount.cjs +8 -2
  62. package/dist/cjs/token-amount/TokenAmount.cjs.map +1 -1
  63. package/dist/cjs/token-selector/TokenSelector.cjs +20 -1
  64. package/dist/cjs/token-selector/TokenSelector.cjs.map +1 -1
  65. package/dist/cjs/tooltip/Tooltip.cjs +3 -0
  66. package/dist/cjs/tooltip/Tooltip.cjs.map +1 -1
  67. package/dist/cjs/tx-status/TxStatus.cjs +9 -1
  68. package/dist/cjs/tx-status/TxStatus.cjs.map +1 -1
  69. package/dist/cjs/typography/Typography.cjs +2 -0
  70. package/dist/cjs/typography/Typography.cjs.map +1 -1
  71. package/dist/esm/accordion/Accordion.mjs +5 -0
  72. package/dist/esm/accordion/Accordion.mjs.map +1 -1
  73. package/dist/esm/badge/Badge.mjs +3 -0
  74. package/dist/esm/badge/Badge.mjs.map +1 -1
  75. package/dist/esm/banner/Banner.mjs +6 -0
  76. package/dist/esm/banner/Banner.mjs.map +1 -1
  77. package/dist/esm/button/Button.mjs +5 -0
  78. package/dist/esm/button/Button.mjs.map +1 -1
  79. package/dist/esm/card/Card.mjs +2 -0
  80. package/dist/esm/card/Card.mjs.map +1 -1
  81. package/dist/esm/checkbox/Checkbox.mjs +4 -0
  82. package/dist/esm/checkbox/Checkbox.mjs.map +1 -1
  83. package/dist/esm/counter/Counter.mjs +2 -0
  84. package/dist/esm/counter/Counter.mjs.map +1 -1
  85. package/dist/esm/data-list/DataList.mjs +5 -1
  86. package/dist/esm/data-list/DataList.mjs.map +1 -1
  87. package/dist/esm/data-list/DataListRow.mjs +10 -1
  88. package/dist/esm/data-list/DataListRow.mjs.map +1 -1
  89. package/dist/esm/icon-button/IconButton.mjs +3 -0
  90. package/dist/esm/icon-button/IconButton.mjs.map +1 -1
  91. package/dist/esm/identicon/Identicon.mjs +8 -2
  92. package/dist/esm/identicon/Identicon.mjs.map +1 -1
  93. package/dist/esm/input/Input.mjs +7 -0
  94. package/dist/esm/input/Input.mjs.map +1 -1
  95. package/dist/esm/message-box/MessageBox.mjs +5 -0
  96. package/dist/esm/message-box/MessageBox.mjs.map +1 -1
  97. package/dist/esm/modal/Modal.mjs +13 -2
  98. package/dist/esm/modal/Modal.mjs.map +1 -1
  99. package/dist/esm/notification/Notification.mjs +10 -1
  100. package/dist/esm/notification/Notification.mjs.map +1 -1
  101. package/dist/esm/radio-button/RadioButton.mjs +4 -0
  102. package/dist/esm/radio-button/RadioButton.mjs.map +1 -1
  103. package/dist/esm/rich-input/RichInput.mjs +9 -0
  104. package/dist/esm/rich-input/RichInput.mjs.map +1 -1
  105. package/dist/esm/section-title/SectionTitle.mjs +5 -0
  106. package/dist/esm/section-title/SectionTitle.mjs.map +1 -1
  107. package/dist/esm/segmented-control/Segment.mjs +3 -0
  108. package/dist/esm/segmented-control/Segment.mjs.map +1 -1
  109. package/dist/esm/segmented-control/SegmentCard.mjs +8 -0
  110. package/dist/esm/segmented-control/SegmentCard.mjs.map +1 -1
  111. package/dist/esm/segmented-control/SegmentedControl.mjs +6 -1
  112. package/dist/esm/segmented-control/SegmentedControl.mjs.map +1 -1
  113. package/dist/esm/segmented-control/SegmentedControlCard.mjs +6 -1
  114. package/dist/esm/segmented-control/SegmentedControlCard.mjs.map +1 -1
  115. package/dist/esm/slider/Slider.mjs +3 -0
  116. package/dist/esm/slider/Slider.mjs.map +1 -1
  117. package/dist/esm/small-card/SmallCard.mjs +8 -0
  118. package/dist/esm/small-card/SmallCard.mjs.map +1 -1
  119. package/dist/esm/stat-item/StatItem.mjs +8 -0
  120. package/dist/esm/stat-item/StatItem.mjs.map +1 -1
  121. package/dist/esm/switch/Switch.mjs +4 -0
  122. package/dist/esm/switch/Switch.mjs.map +1 -1
  123. package/dist/esm/tabs/Tab.mjs +2 -0
  124. package/dist/esm/tabs/Tab.mjs.map +1 -1
  125. package/dist/esm/tabs/Tabs.mjs +6 -1
  126. package/dist/esm/tabs/Tabs.mjs.map +1 -1
  127. package/dist/esm/tag/Tag.mjs +4 -0
  128. package/dist/esm/tag/Tag.mjs.map +1 -1
  129. package/dist/esm/text-link/TextLink.mjs +3 -0
  130. package/dist/esm/text-link/TextLink.mjs.map +1 -1
  131. package/dist/esm/token-amount/TokenAmount.mjs +8 -2
  132. package/dist/esm/token-amount/TokenAmount.mjs.map +1 -1
  133. package/dist/esm/token-selector/TokenSelector.mjs +20 -1
  134. package/dist/esm/token-selector/TokenSelector.mjs.map +1 -1
  135. package/dist/esm/tooltip/Tooltip.mjs +3 -0
  136. package/dist/esm/tooltip/Tooltip.mjs.map +1 -1
  137. package/dist/esm/tx-status/TxStatus.mjs +9 -1
  138. package/dist/esm/tx-status/TxStatus.mjs.map +1 -1
  139. package/dist/esm/typography/Typography.mjs +2 -0
  140. package/dist/esm/typography/Typography.mjs.map +1 -1
  141. package/dist/types/accordion/Accordion.d.ts +8 -1
  142. package/dist/types/accordion/Accordion.d.ts.map +1 -1
  143. package/dist/types/badge/Badge.d.ts +6 -1
  144. package/dist/types/badge/Badge.d.ts.map +1 -1
  145. package/dist/types/badge/index.d.ts +1 -1
  146. package/dist/types/badge/index.d.ts.map +1 -1
  147. package/dist/types/banner/Banner.d.ts +9 -1
  148. package/dist/types/banner/Banner.d.ts.map +1 -1
  149. package/dist/types/button/Button.d.ts +8 -1
  150. package/dist/types/button/Button.d.ts.map +1 -1
  151. package/dist/types/button/index.d.ts +1 -1
  152. package/dist/types/button/index.d.ts.map +1 -1
  153. package/dist/types/card/Card.d.ts +7 -2
  154. package/dist/types/card/Card.d.ts.map +1 -1
  155. package/dist/types/card/index.d.ts +1 -1
  156. package/dist/types/card/index.d.ts.map +1 -1
  157. package/dist/types/checkbox/Checkbox.d.ts +7 -0
  158. package/dist/types/checkbox/Checkbox.d.ts.map +1 -1
  159. package/dist/types/checkbox/index.d.ts +1 -1
  160. package/dist/types/checkbox/index.d.ts.map +1 -1
  161. package/dist/types/counter/Counter.d.ts +5 -1
  162. package/dist/types/counter/Counter.d.ts.map +1 -1
  163. package/dist/types/counter/index.d.ts +1 -1
  164. package/dist/types/counter/index.d.ts.map +1 -1
  165. package/dist/types/data-list/DataList.d.ts +7 -4
  166. package/dist/types/data-list/DataList.d.ts.map +1 -1
  167. package/dist/types/data-list/DataListRow.d.ts +11 -4
  168. package/dist/types/data-list/DataListRow.d.ts.map +1 -1
  169. package/dist/types/data-list/index.d.ts +2 -2
  170. package/dist/types/data-list/index.d.ts.map +1 -1
  171. package/dist/types/icon-button/IconButton.d.ts +6 -1
  172. package/dist/types/icon-button/IconButton.d.ts.map +1 -1
  173. package/dist/types/icon-button/index.d.ts +1 -1
  174. package/dist/types/icon-button/index.d.ts.map +1 -1
  175. package/dist/types/identicon/Identicon.d.ts +11 -3
  176. package/dist/types/identicon/Identicon.d.ts.map +1 -1
  177. package/dist/types/identicon/index.d.ts +1 -1
  178. package/dist/types/identicon/index.d.ts.map +1 -1
  179. package/dist/types/input/Input.d.ts +10 -0
  180. package/dist/types/input/Input.d.ts.map +1 -1
  181. package/dist/types/message-box/MessageBox.d.ts +8 -1
  182. package/dist/types/message-box/MessageBox.d.ts.map +1 -1
  183. package/dist/types/message-box/index.d.ts +1 -1
  184. package/dist/types/message-box/index.d.ts.map +1 -1
  185. package/dist/types/modal/Modal.d.ts +12 -4
  186. package/dist/types/modal/Modal.d.ts.map +1 -1
  187. package/dist/types/modal/index.d.ts +1 -1
  188. package/dist/types/modal/index.d.ts.map +1 -1
  189. package/dist/types/notification/Notification.d.ts +15 -6
  190. package/dist/types/notification/Notification.d.ts.map +1 -1
  191. package/dist/types/notification/index.d.ts +1 -1
  192. package/dist/types/notification/index.d.ts.map +1 -1
  193. package/dist/types/radio-button/RadioButton.d.ts +7 -0
  194. package/dist/types/radio-button/RadioButton.d.ts.map +1 -1
  195. package/dist/types/radio-button/index.d.ts +1 -1
  196. package/dist/types/radio-button/index.d.ts.map +1 -1
  197. package/dist/types/rich-input/RichInput.d.ts +11 -1
  198. package/dist/types/rich-input/RichInput.d.ts.map +1 -1
  199. package/dist/types/rich-input/index.d.ts +1 -1
  200. package/dist/types/rich-input/index.d.ts.map +1 -1
  201. package/dist/types/section-title/SectionTitle.d.ts +8 -1
  202. package/dist/types/section-title/SectionTitle.d.ts.map +1 -1
  203. package/dist/types/section-title/index.d.ts +1 -1
  204. package/dist/types/section-title/index.d.ts.map +1 -1
  205. package/dist/types/segmented-control/Segment.d.ts +6 -0
  206. package/dist/types/segmented-control/Segment.d.ts.map +1 -1
  207. package/dist/types/segmented-control/SegmentCard.d.ts +9 -0
  208. package/dist/types/segmented-control/SegmentCard.d.ts.map +1 -1
  209. package/dist/types/segmented-control/SegmentedControl.d.ts +9 -4
  210. package/dist/types/segmented-control/SegmentedControl.d.ts.map +1 -1
  211. package/dist/types/segmented-control/SegmentedControlCard.d.ts +9 -4
  212. package/dist/types/segmented-control/SegmentedControlCard.d.ts.map +1 -1
  213. package/dist/types/segmented-control/index.d.ts +4 -4
  214. package/dist/types/segmented-control/index.d.ts.map +1 -1
  215. package/dist/types/slider/Slider.d.ts +6 -0
  216. package/dist/types/slider/Slider.d.ts.map +1 -1
  217. package/dist/types/slider/index.d.ts +1 -1
  218. package/dist/types/slider/index.d.ts.map +1 -1
  219. package/dist/types/small-card/SmallCard.d.ts +11 -1
  220. package/dist/types/small-card/SmallCard.d.ts.map +1 -1
  221. package/dist/types/small-card/index.d.ts +1 -1
  222. package/dist/types/small-card/index.d.ts.map +1 -1
  223. package/dist/types/stat-item/StatItem.d.ts +10 -1
  224. package/dist/types/stat-item/StatItem.d.ts.map +1 -1
  225. package/dist/types/stat-item/index.d.ts +1 -1
  226. package/dist/types/stat-item/index.d.ts.map +1 -1
  227. package/dist/types/switch/Switch.d.ts +7 -0
  228. package/dist/types/switch/Switch.d.ts.map +1 -1
  229. package/dist/types/switch/index.d.ts +1 -1
  230. package/dist/types/switch/index.d.ts.map +1 -1
  231. package/dist/types/tabs/Tab.d.ts +5 -0
  232. package/dist/types/tabs/Tab.d.ts.map +1 -1
  233. package/dist/types/tabs/Tabs.d.ts +9 -4
  234. package/dist/types/tabs/Tabs.d.ts.map +1 -1
  235. package/dist/types/tabs/index.d.ts +2 -2
  236. package/dist/types/tabs/index.d.ts.map +1 -1
  237. package/dist/types/tag/Tag.d.ts +7 -1
  238. package/dist/types/tag/Tag.d.ts.map +1 -1
  239. package/dist/types/tag/index.d.ts +1 -1
  240. package/dist/types/tag/index.d.ts.map +1 -1
  241. package/dist/types/text-link/TextLink.d.ts +6 -1
  242. package/dist/types/text-link/TextLink.d.ts.map +1 -1
  243. package/dist/types/text-link/index.d.ts +1 -1
  244. package/dist/types/text-link/index.d.ts.map +1 -1
  245. package/dist/types/token-amount/TokenAmount.d.ts +9 -4
  246. package/dist/types/token-amount/TokenAmount.d.ts.map +1 -1
  247. package/dist/types/token-selector/TokenSelector.d.ts +17 -4
  248. package/dist/types/token-selector/TokenSelector.d.ts.map +1 -1
  249. package/dist/types/token-selector/index.d.ts +1 -1
  250. package/dist/types/token-selector/index.d.ts.map +1 -1
  251. package/dist/types/tooltip/Tooltip.d.ts +6 -1
  252. package/dist/types/tooltip/Tooltip.d.ts.map +1 -1
  253. package/dist/types/tooltip/index.d.ts +1 -1
  254. package/dist/types/tooltip/index.d.ts.map +1 -1
  255. package/dist/types/tx-status/TxStatus.d.ts +11 -4
  256. package/dist/types/tx-status/TxStatus.d.ts.map +1 -1
  257. package/dist/types/tx-status/index.d.ts +1 -1
  258. package/dist/types/tx-status/index.d.ts.map +1 -1
  259. package/dist/types/typography/Typography.d.ts +5 -1
  260. package/dist/types/typography/Typography.d.ts.map +1 -1
  261. package/package.json +1 -1
@@ -18,6 +18,7 @@ const Accordion = _ref => {
18
18
  onExpandedChange,
19
19
  children,
20
20
  className,
21
+ dataTestId,
21
22
  ...rest
22
23
  } = _ref;
23
24
  const [uncontrolledExpanded, setUncontrolledExpanded] = react.useState(defaultExpanded);
@@ -32,6 +33,7 @@ const Accordion = _ref => {
32
33
  className: cn(Accordion_module.accordion, className, {
33
34
  [Accordion_module.borderless]: !border
34
35
  }),
36
+ "data-testid": dataTestId?.root,
35
37
  ...rest,
36
38
  children: [/*#__PURE__*/jsxRuntime.jsxs("button", {
37
39
  type: "button",
@@ -39,8 +41,10 @@ const Accordion = _ref => {
39
41
  "aria-expanded": isExpanded,
40
42
  "aria-controls": contentId,
41
43
  onClick: handleToggle,
44
+ "data-testid": dataTestId?.header,
42
45
  children: [/*#__PURE__*/jsxRuntime.jsx("span", {
43
46
  className: Accordion_module.title,
47
+ "data-testid": dataTestId?.title,
44
48
  children: title
45
49
  }), /*#__PURE__*/jsxRuntime.jsx("span", {
46
50
  className: Accordion_module.chevron,
@@ -56,6 +60,7 @@ const Accordion = _ref => {
56
60
  className: Accordion_module.content,
57
61
  children: /*#__PURE__*/jsxRuntime.jsx("div", {
58
62
  className: Accordion_module.contentInner,
63
+ "data-testid": dataTestId?.content,
59
64
  children: children
60
65
  })
61
66
  })
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.cjs","sources":["../../../src/accordion/Accordion.tsx"],"sourcesContent":["import {\n useId,\n useState,\n type ComponentPropsWithoutRef,\n type ReactNode,\n} from 'react'\n\nimport { IconChevronDown, IconChevronUp } from '../icons'\nimport cn from 'classnames'\n\nimport styles from './Accordion.module.css'\n\nexport type AccordionProps = Omit<ComponentPropsWithoutRef<'div'>, 'title'> & {\n title: ReactNode\n border?: boolean\n defaultExpanded?: boolean\n expanded?: boolean\n onExpandedChange?: (expanded: boolean) => void\n}\n\nexport const Accordion = ({\n title,\n border = true,\n defaultExpanded = false,\n expanded,\n onExpandedChange,\n children,\n className,\n ...rest\n}: AccordionProps) => {\n const [uncontrolledExpanded, setUncontrolledExpanded] =\n useState(defaultExpanded)\n const isExpanded = expanded ?? uncontrolledExpanded\n const contentId = useId()\n\n const handleToggle = () => {\n const next = !isExpanded\n if (expanded == null) setUncontrolledExpanded(next)\n onExpandedChange?.(next)\n }\n\n return (\n <div\n className={cn(styles.accordion, className, {\n [styles.borderless]: !border,\n })}\n {...rest}\n >\n <button\n type='button'\n className={styles.header}\n aria-expanded={isExpanded}\n aria-controls={contentId}\n onClick={handleToggle}\n >\n <span className={styles.title}>{title}</span>\n <span className={styles.chevron} aria-hidden='true'>\n {isExpanded ? <IconChevronUp /> : <IconChevronDown />}\n </span>\n </button>\n <div\n id={contentId}\n className={cn(styles.contentWrapper, {\n [styles.expanded]: isExpanded,\n })}\n >\n <div className={styles.content}>\n <div className={styles.contentInner}>{children}</div>\n </div>\n </div>\n </div>\n )\n}\n\nAccordion.displayName = 'Accordion'\n"],"names":["Accordion","_ref","title","border","defaultExpanded","expanded","onExpandedChange","children","className","rest","uncontrolledExpanded","setUncontrolledExpanded","useState","isExpanded","contentId","useId","handleToggle","next","_jsxs","cn","styles","accordion","borderless","type","header","onClick","_jsx","chevron","IconChevronUp","IconChevronDown","id","contentWrapper","content","contentInner","displayName"],"mappings":";;;;;;;;;;;AAoBaA,MAAAA,SAAS,GAAGC,IAAA,IASH;EAAA,IATI;IACxBC,KAAK;AACLC,IAAAA,MAAM,GAAG,IAAI;AACbC,IAAAA,eAAe,GAAG,KAAK;IACvBC,QAAQ;IACRC,gBAAgB;IAChBC,QAAQ;IACRC,SAAS;IACT,GAAGC,IAAAA;AACW,GAAC,GAAAR,IAAA,CAAA;EACf,MAAM,CAACS,oBAAoB,EAAEC,uBAAuB,CAAC,GACnDC,cAAQ,CAACR,eAAe,CAAC,CAAA;AAC3B,EAAA,MAAMS,UAAU,GAAGR,QAAQ,IAAIK,oBAAoB,CAAA;AACnD,EAAA,MAAMI,SAAS,GAAGC,WAAK,EAAE,CAAA;EAEzB,MAAMC,YAAY,GAAGA,MAAM;IACzB,MAAMC,IAAI,GAAG,CAACJ,UAAU,CAAA;AACxB,IAAA,IAAIR,QAAQ,IAAI,IAAI,EAAEM,uBAAuB,CAACM,IAAI,CAAC,CAAA;IACnDX,gBAAgB,GAAGW,IAAI,CAAC,CAAA;GACzB,CAAA;AAED,EAAA,oBACEC,eAAA,CAAA,KAAA,EAAA;IACEV,SAAS,EAAEW,EAAE,CAACC,gBAAM,CAACC,SAAS,EAAEb,SAAS,EAAE;AACzC,MAAA,CAACY,gBAAM,CAACE,UAAU,GAAG,CAACnB,MAAAA;AACxB,KAAC,CAAE;AAAA,IAAA,GACCM,IAAI;AAAAF,IAAAA,QAAA,gBAERW,eAAA,CAAA,QAAA,EAAA;AACEK,MAAAA,IAAI,EAAC,QAAQ;MACbf,SAAS,EAAEY,gBAAM,CAACI,MAAO;AACzB,MAAA,eAAA,EAAeX,UAAW;AAC1B,MAAA,eAAA,EAAeC,SAAU;AACzBW,MAAAA,OAAO,EAAET,YAAa;AAAAT,MAAAA,QAAA,gBAEtBmB,cAAA,CAAA,MAAA,EAAA;QAAMlB,SAAS,EAAEY,gBAAM,CAAClB,KAAM;AAAAK,QAAAA,QAAA,EAAEL,KAAAA;OAAY,CAAC,eAC7CwB,cAAA,CAAA,MAAA,EAAA;QAAMlB,SAAS,EAAEY,gBAAM,CAACO,OAAQ;AAAC,QAAA,aAAA,EAAY,MAAM;AAAApB,QAAAA,QAAA,EAChDM,UAAU,gBAAGa,cAAA,CAACE,2BAAa,EAAE,EAAA,CAAC,gBAAGF,cAAA,CAACG,+BAAe,EAAE,EAAA,CAAA;AAAC,OACjD,CAAC,CAAA;KACD,CAAC,eACTH,cAAA,CAAA,KAAA,EAAA;AACEI,MAAAA,EAAE,EAAEhB,SAAU;AACdN,MAAAA,SAAS,EAAEW,EAAE,CAACC,gBAAM,CAACW,cAAc,EAAE;QACnC,CAACX,gBAAM,CAACf,QAAQ,GAAGQ,UAAAA;AACrB,OAAC,CAAE;AAAAN,MAAAA,QAAA,eAEHmB,cAAA,CAAA,KAAA,EAAA;QAAKlB,SAAS,EAAEY,gBAAM,CAACY,OAAQ;AAAAzB,QAAAA,QAAA,eAC7BmB,cAAA,CAAA,KAAA,EAAA;UAAKlB,SAAS,EAAEY,gBAAM,CAACa,YAAa;AAAA1B,UAAAA,QAAA,EAAEA,QAAAA;SAAc,CAAA;OACjD,CAAA;AAAC,KACH,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAEV,EAAC;AAEDP,SAAS,CAACkC,WAAW,GAAG,WAAW;;;;"}
1
+ {"version":3,"file":"Accordion.cjs","sources":["../../../src/accordion/Accordion.tsx"],"sourcesContent":["import {\n useId,\n useState,\n type ComponentPropsWithoutRef,\n type ReactNode,\n} from 'react'\n\nimport { IconChevronDown, IconChevronUp } from '../icons'\nimport cn from 'classnames'\n\nimport styles from './Accordion.module.css'\n\nexport type AccordionDataTestId = {\n root?: string\n header?: string\n title?: string\n content?: string\n}\n\nexport type AccordionProps = Omit<ComponentPropsWithoutRef<'div'>, 'title'> & {\n title: ReactNode\n border?: boolean\n defaultExpanded?: boolean\n expanded?: boolean\n onExpandedChange?: (expanded: boolean) => void\n dataTestId?: AccordionDataTestId\n}\n\nexport const Accordion = ({\n title,\n border = true,\n defaultExpanded = false,\n expanded,\n onExpandedChange,\n children,\n className,\n dataTestId,\n ...rest\n}: AccordionProps) => {\n const [uncontrolledExpanded, setUncontrolledExpanded] =\n useState(defaultExpanded)\n const isExpanded = expanded ?? uncontrolledExpanded\n const contentId = useId()\n\n const handleToggle = () => {\n const next = !isExpanded\n if (expanded == null) setUncontrolledExpanded(next)\n onExpandedChange?.(next)\n }\n\n return (\n <div\n className={cn(styles.accordion, className, {\n [styles.borderless]: !border,\n })}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <button\n type='button'\n className={styles.header}\n aria-expanded={isExpanded}\n aria-controls={contentId}\n onClick={handleToggle}\n data-testid={dataTestId?.header}\n >\n <span className={styles.title} data-testid={dataTestId?.title}>\n {title}\n </span>\n <span className={styles.chevron} aria-hidden='true'>\n {isExpanded ? <IconChevronUp /> : <IconChevronDown />}\n </span>\n </button>\n <div\n id={contentId}\n className={cn(styles.contentWrapper, {\n [styles.expanded]: isExpanded,\n })}\n >\n <div className={styles.content}>\n <div\n className={styles.contentInner}\n data-testid={dataTestId?.content}\n >\n {children}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nAccordion.displayName = 'Accordion'\n"],"names":["Accordion","_ref","title","border","defaultExpanded","expanded","onExpandedChange","children","className","dataTestId","rest","uncontrolledExpanded","setUncontrolledExpanded","useState","isExpanded","contentId","useId","handleToggle","next","_jsxs","cn","styles","accordion","borderless","root","type","header","onClick","_jsx","chevron","IconChevronUp","IconChevronDown","id","contentWrapper","content","contentInner","displayName"],"mappings":";;;;;;;;;;;AA4BaA,MAAAA,SAAS,GAAGC,IAAA,IAUH;EAAA,IAVI;IACxBC,KAAK;AACLC,IAAAA,MAAM,GAAG,IAAI;AACbC,IAAAA,eAAe,GAAG,KAAK;IACvBC,QAAQ;IACRC,gBAAgB;IAChBC,QAAQ;IACRC,SAAS;IACTC,UAAU;IACV,GAAGC,IAAAA;AACW,GAAC,GAAAT,IAAA,CAAA;EACf,MAAM,CAACU,oBAAoB,EAAEC,uBAAuB,CAAC,GACnDC,cAAQ,CAACT,eAAe,CAAC,CAAA;AAC3B,EAAA,MAAMU,UAAU,GAAGT,QAAQ,IAAIM,oBAAoB,CAAA;AACnD,EAAA,MAAMI,SAAS,GAAGC,WAAK,EAAE,CAAA;EAEzB,MAAMC,YAAY,GAAGA,MAAM;IACzB,MAAMC,IAAI,GAAG,CAACJ,UAAU,CAAA;AACxB,IAAA,IAAIT,QAAQ,IAAI,IAAI,EAAEO,uBAAuB,CAACM,IAAI,CAAC,CAAA;IACnDZ,gBAAgB,GAAGY,IAAI,CAAC,CAAA;GACzB,CAAA;AAED,EAAA,oBACEC,eAAA,CAAA,KAAA,EAAA;IACEX,SAAS,EAAEY,EAAE,CAACC,gBAAM,CAACC,SAAS,EAAEd,SAAS,EAAE;AACzC,MAAA,CAACa,gBAAM,CAACE,UAAU,GAAG,CAACpB,MAAAA;AACxB,KAAC,CAAE;IACH,aAAaM,EAAAA,UAAU,EAAEe,IAAK;AAAA,IAAA,GAC1Bd,IAAI;AAAAH,IAAAA,QAAA,gBAERY,eAAA,CAAA,QAAA,EAAA;AACEM,MAAAA,IAAI,EAAC,QAAQ;MACbjB,SAAS,EAAEa,gBAAM,CAACK,MAAO;AACzB,MAAA,eAAA,EAAeZ,UAAW;AAC1B,MAAA,eAAA,EAAeC,SAAU;AACzBY,MAAAA,OAAO,EAAEV,YAAa;MACtB,aAAaR,EAAAA,UAAU,EAAEiB,MAAO;AAAAnB,MAAAA,QAAA,gBAEhCqB,cAAA,CAAA,MAAA,EAAA;QAAMpB,SAAS,EAAEa,gBAAM,CAACnB,KAAM;QAAC,aAAaO,EAAAA,UAAU,EAAEP,KAAM;AAAAK,QAAAA,QAAA,EAC3DL,KAAAA;OACG,CAAC,eACP0B,cAAA,CAAA,MAAA,EAAA;QAAMpB,SAAS,EAAEa,gBAAM,CAACQ,OAAQ;AAAC,QAAA,aAAA,EAAY,MAAM;AAAAtB,QAAAA,QAAA,EAChDO,UAAU,gBAAGc,cAAA,CAACE,2BAAa,EAAE,EAAA,CAAC,gBAAGF,cAAA,CAACG,+BAAe,EAAE,EAAA,CAAA;AAAC,OACjD,CAAC,CAAA;KACD,CAAC,eACTH,cAAA,CAAA,KAAA,EAAA;AACEI,MAAAA,EAAE,EAAEjB,SAAU;AACdP,MAAAA,SAAS,EAAEY,EAAE,CAACC,gBAAM,CAACY,cAAc,EAAE;QACnC,CAACZ,gBAAM,CAAChB,QAAQ,GAAGS,UAAAA;AACrB,OAAC,CAAE;AAAAP,MAAAA,QAAA,eAEHqB,cAAA,CAAA,KAAA,EAAA;QAAKpB,SAAS,EAAEa,gBAAM,CAACa,OAAQ;AAAA3B,QAAAA,QAAA,eAC7BqB,cAAA,CAAA,KAAA,EAAA;UACEpB,SAAS,EAAEa,gBAAM,CAACc,YAAa;UAC/B,aAAa1B,EAAAA,UAAU,EAAEyB,OAAQ;AAAA3B,UAAAA,QAAA,EAEhCA,QAAAA;SACE,CAAA;OACF,CAAA;AAAC,KACH,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAEV,EAAC;AAEDP,SAAS,CAACoC,WAAW,GAAG,WAAW;;;;"}
@@ -11,14 +11,17 @@ const Badge = _ref => {
11
11
  icon,
12
12
  className,
13
13
  children,
14
+ dataTestId,
14
15
  ...rest
15
16
  } = _ref;
16
17
  return /*#__PURE__*/jsxRuntime.jsxs("span", {
17
18
  className: cn(Badge_module.badge, className),
19
+ "data-testid": dataTestId?.root,
18
20
  ...rest,
19
21
  children: [icon && /*#__PURE__*/jsxRuntime.jsx("span", {
20
22
  className: Badge_module.icon,
21
23
  "aria-hidden": "true",
24
+ "data-testid": dataTestId?.icon,
22
25
  children: icon
23
26
  }), children]
24
27
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.cjs","sources":["../../../src/badge/Badge.tsx"],"sourcesContent":["import cn from 'classnames'\nimport type { HTMLAttributes, ReactNode } from 'react'\nimport styles from './Badge.module.css'\n\nexport type BadgeProps = HTMLAttributes<HTMLSpanElement> & {\n /** Optional glyph before the label. Omitted entirely when not passed. */\n icon?: ReactNode\n}\n\nexport const Badge = ({ icon, className, children, ...rest }: BadgeProps) => (\n <span className={cn(styles.badge, className)} {...rest}>\n {icon && (\n <span className={styles.icon} aria-hidden='true'>\n {icon}\n </span>\n )}\n {children}\n </span>\n)\n"],"names":["Badge","_ref","icon","className","children","rest","_jsxs","cn","styles","badge","_jsx"],"mappings":";;;;;;;;AASO,MAAMA,KAAK,GAAGC,IAAA,IAAA;EAAA,IAAC;IAAEC,IAAI;IAAEC,SAAS;IAAEC,QAAQ;IAAE,GAAGC,IAAAA;AAAiB,GAAC,GAAAJ,IAAA,CAAA;AAAA,EAAA,oBACtEK,eAAA,CAAA,MAAA,EAAA;IAAMH,SAAS,EAAEI,EAAE,CAACC,YAAM,CAACC,KAAK,EAAEN,SAAS,CAAE;AAAA,IAAA,GAAKE,IAAI;IAAAD,QAAA,EAAA,CACnDF,IAAI,iBACHQ,cAAA,CAAA,MAAA,EAAA;MAAMP,SAAS,EAAEK,YAAM,CAACN,IAAK;AAAC,MAAA,aAAA,EAAY,MAAM;AAAAE,MAAAA,QAAA,EAC7CF,IAAAA;KACG,CACP,EACAE,QAAQ,CAAA;AAAA,GACL,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"Badge.cjs","sources":["../../../src/badge/Badge.tsx"],"sourcesContent":["import cn from 'classnames'\nimport type { HTMLAttributes, ReactNode } from 'react'\nimport styles from './Badge.module.css'\n\nexport type BadgeDataTestId = {\n root?: string\n icon?: string\n}\n\nexport type BadgeProps = HTMLAttributes<HTMLSpanElement> & {\n /** Optional glyph before the label. Omitted entirely when not passed. */\n icon?: ReactNode\n dataTestId?: BadgeDataTestId\n}\n\nexport const Badge = ({\n icon,\n className,\n children,\n dataTestId,\n ...rest\n}: BadgeProps) => (\n <span\n className={cn(styles.badge, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {icon && (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.icon}\n >\n {icon}\n </span>\n )}\n {children}\n </span>\n)\n"],"names":["Badge","_ref","icon","className","children","dataTestId","rest","_jsxs","cn","styles","badge","root","_jsx"],"mappings":";;;;;;;;AAeO,MAAMA,KAAK,GAAGC,IAAA,IAAA;EAAA,IAAC;IACpBC,IAAI;IACJC,SAAS;IACTC,QAAQ;IACRC,UAAU;IACV,GAAGC,IAAAA;AACO,GAAC,GAAAL,IAAA,CAAA;AAAA,EAAA,oBACXM,eAAA,CAAA,MAAA,EAAA;IACEJ,SAAS,EAAEK,EAAE,CAACC,YAAM,CAACC,KAAK,EAAEP,SAAS,CAAE;IACvC,aAAaE,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;IAAAF,QAAA,EAAA,CAEPF,IAAI,iBACHU,cAAA,CAAA,MAAA,EAAA;MACET,SAAS,EAAEM,YAAM,CAACP,IAAK;AACvB,MAAA,aAAA,EAAY,MAAM;MAClB,aAAaG,EAAAA,UAAU,EAAEH,IAAK;AAAAE,MAAAA,QAAA,EAE7BF,IAAAA;KACG,CACP,EACAE,QAAQ,CAAA;AAAA,GACL,CAAC,CAAA;AAAA;;;;"}
@@ -13,28 +13,34 @@ const Banner = _ref => {
13
13
  description,
14
14
  action,
15
15
  className,
16
+ dataTestId,
16
17
  ...rest
17
18
  } = _ref;
18
19
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
19
20
  className: cn(Banner_module.banner, className),
21
+ "data-testid": dataTestId?.root,
20
22
  ...rest,
21
23
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
22
24
  className: Banner_module.content,
23
25
  children: [icon ? /*#__PURE__*/jsxRuntime.jsx("span", {
24
26
  className: Banner_module.icon,
27
+ "data-testid": dataTestId?.icon,
25
28
  children: icon
26
29
  }) : null, /*#__PURE__*/jsxRuntime.jsxs("div", {
27
30
  className: Banner_module.text,
28
31
  children: [/*#__PURE__*/jsxRuntime.jsx("p", {
29
32
  className: Banner_module.title,
33
+ "data-testid": dataTestId?.title,
30
34
  children: title
31
35
  }), description ? /*#__PURE__*/jsxRuntime.jsx("p", {
32
36
  className: Banner_module.description,
37
+ "data-testid": dataTestId?.description,
33
38
  children: description
34
39
  }) : null]
35
40
  })]
36
41
  }), action ? /*#__PURE__*/jsxRuntime.jsx("div", {
37
42
  className: Banner_module.action,
43
+ "data-testid": dataTestId?.action,
38
44
  children: action
39
45
  }) : null]
40
46
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Banner.cjs","sources":["../../../src/banner/Banner.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Banner.module.css'\n\nexport type BannerProps = ComponentPropsWithoutRef<'div'> & {\n icon?: ReactNode\n title: ReactNode\n description?: ReactNode\n action?: ReactNode\n}\n\nexport const Banner = ({\n icon,\n title,\n description,\n action,\n className,\n ...rest\n}: BannerProps) => (\n <div className={cn(styles.banner, className)} {...rest}>\n <div className={styles.content}>\n {icon ? <span className={styles.icon}>{icon}</span> : null}\n <div className={styles.text}>\n <p className={styles.title}>{title}</p>\n {description ? (\n <p className={styles.description}>{description}</p>\n ) : null}\n </div>\n </div>\n {action ? <div className={styles.action}>{action}</div> : null}\n </div>\n)\n\nBanner.displayName = 'Banner'\n"],"names":["Banner","_ref","icon","title","description","action","className","rest","_jsxs","cn","styles","banner","children","content","_jsx","text","displayName"],"mappings":";;;;;;;;AAaO,MAAMA,MAAM,GAAGC,IAAA,IAAA;EAAA,IAAC;IACrBC,IAAI;IACJC,KAAK;IACLC,WAAW;IACXC,MAAM;IACNC,SAAS;IACT,GAAGC,IAAAA;AACQ,GAAC,GAAAN,IAAA,CAAA;AAAA,EAAA,oBACZO,eAAA,CAAA,KAAA,EAAA;IAAKF,SAAS,EAAEG,EAAE,CAACC,aAAM,CAACC,MAAM,EAAEL,SAAS,CAAE;AAAA,IAAA,GAAKC,IAAI;AAAAK,IAAAA,QAAA,gBACpDJ,eAAA,CAAA,KAAA,EAAA;MAAKF,SAAS,EAAEI,aAAM,CAACG,OAAQ;MAAAD,QAAA,EAAA,CAC5BV,IAAI,gBAAGY,cAAA,CAAA,MAAA,EAAA;QAAMR,SAAS,EAAEI,aAAM,CAACR,IAAK;AAAAU,QAAAA,QAAA,EAAEV,IAAAA;AAAI,OAAO,CAAC,GAAG,IAAI,eAC1DM,eAAA,CAAA,KAAA,EAAA;QAAKF,SAAS,EAAEI,aAAM,CAACK,IAAK;AAAAH,QAAAA,QAAA,gBAC1BE,cAAA,CAAA,GAAA,EAAA;UAAGR,SAAS,EAAEI,aAAM,CAACP,KAAM;AAAAS,UAAAA,QAAA,EAAET,KAAAA;AAAK,SAAI,CAAC,EACtCC,WAAW,gBACVU,cAAA,CAAA,GAAA,EAAA;UAAGR,SAAS,EAAEI,aAAM,CAACN,WAAY;AAAAQ,UAAAA,QAAA,EAAER,WAAAA;SAAe,CAAC,GACjD,IAAI,CAAA;AAAA,OACL,CAAC,CAAA;AAAA,KACH,CAAC,EACLC,MAAM,gBAAGS,cAAA,CAAA,KAAA,EAAA;MAAKR,SAAS,EAAEI,aAAM,CAACL,MAAO;AAAAO,MAAAA,QAAA,EAAEP,MAAAA;KAAY,CAAC,GAAG,IAAI,CAAA;AAAA,GAC3D,CAAC,CAAA;AAAA,EACP;AAEDL,MAAM,CAACgB,WAAW,GAAG,QAAQ;;;;"}
1
+ {"version":3,"file":"Banner.cjs","sources":["../../../src/banner/Banner.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Banner.module.css'\n\nexport type BannerDataTestId = {\n root?: string\n icon?: string\n title?: string\n description?: string\n action?: string\n}\n\nexport type BannerProps = ComponentPropsWithoutRef<'div'> & {\n icon?: ReactNode\n title: ReactNode\n description?: ReactNode\n action?: ReactNode\n dataTestId?: BannerDataTestId\n}\n\nexport const Banner = ({\n icon,\n title,\n description,\n action,\n className,\n dataTestId,\n ...rest\n}: BannerProps) => (\n <div\n className={cn(styles.banner, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <div className={styles.content}>\n {icon ? (\n <span className={styles.icon} data-testid={dataTestId?.icon}>\n {icon}\n </span>\n ) : null}\n <div className={styles.text}>\n <p className={styles.title} data-testid={dataTestId?.title}>\n {title}\n </p>\n {description ? (\n <p\n className={styles.description}\n data-testid={dataTestId?.description}\n >\n {description}\n </p>\n ) : null}\n </div>\n </div>\n {action ? (\n <div className={styles.action} data-testid={dataTestId?.action}>\n {action}\n </div>\n ) : null}\n </div>\n)\n\nBanner.displayName = 'Banner'\n"],"names":["Banner","_ref","icon","title","description","action","className","dataTestId","rest","_jsxs","cn","styles","banner","root","children","content","_jsx","text","displayName"],"mappings":";;;;;;;;AAsBO,MAAMA,MAAM,GAAGC,IAAA,IAAA;EAAA,IAAC;IACrBC,IAAI;IACJC,KAAK;IACLC,WAAW;IACXC,MAAM;IACNC,SAAS;IACTC,UAAU;IACV,GAAGC,IAAAA;AACQ,GAAC,GAAAP,IAAA,CAAA;AAAA,EAAA,oBACZQ,eAAA,CAAA,KAAA,EAAA;IACEH,SAAS,EAAEI,EAAE,CAACC,aAAM,CAACC,MAAM,EAAEN,SAAS,CAAE;IACxC,aAAaC,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAM,IAAAA,QAAA,gBAERL,eAAA,CAAA,KAAA,EAAA;MAAKH,SAAS,EAAEK,aAAM,CAACI,OAAQ;MAAAD,QAAA,EAAA,CAC5BZ,IAAI,gBACHc,cAAA,CAAA,MAAA,EAAA;QAAMV,SAAS,EAAEK,aAAM,CAACT,IAAK;QAAC,aAAaK,EAAAA,UAAU,EAAEL,IAAK;AAAAY,QAAAA,QAAA,EACzDZ,IAAAA;AAAI,OACD,CAAC,GACL,IAAI,eACRO,eAAA,CAAA,KAAA,EAAA;QAAKH,SAAS,EAAEK,aAAM,CAACM,IAAK;AAAAH,QAAAA,QAAA,gBAC1BE,cAAA,CAAA,GAAA,EAAA;UAAGV,SAAS,EAAEK,aAAM,CAACR,KAAM;UAAC,aAAaI,EAAAA,UAAU,EAAEJ,KAAM;AAAAW,UAAAA,QAAA,EACxDX,KAAAA;AAAK,SACL,CAAC,EACHC,WAAW,gBACVY,cAAA,CAAA,GAAA,EAAA;UACEV,SAAS,EAAEK,aAAM,CAACP,WAAY;UAC9B,aAAaG,EAAAA,UAAU,EAAEH,WAAY;AAAAU,UAAAA,QAAA,EAEpCV,WAAAA;SACA,CAAC,GACF,IAAI,CAAA;AAAA,OACL,CAAC,CAAA;AAAA,KACH,CAAC,EACLC,MAAM,gBACLW,cAAA,CAAA,KAAA,EAAA;MAAKV,SAAS,EAAEK,aAAM,CAACN,MAAO;MAAC,aAAaE,EAAAA,UAAU,EAAEF,MAAO;AAAAS,MAAAA,QAAA,EAC5DT,MAAAA;KACE,CAAC,GACJ,IAAI,CAAA;AAAA,GACL,CAAC,CAAA;AAAA,EACP;AAEDL,MAAM,CAACkB,WAAW,GAAG,QAAQ;;;;"}
@@ -18,6 +18,7 @@ const Button = _ref => {
18
18
  disabled = false,
19
19
  iconLeft,
20
20
  iconRight,
21
+ dataTestId,
21
22
  ...rest
22
23
  } = _ref;
23
24
  return /*#__PURE__*/jsxRuntime.jsxs("button", {
@@ -25,6 +26,7 @@ const Button = _ref => {
25
26
  disabled: disabled || loading,
26
27
  "aria-busy": loading || undefined,
27
28
  className: cn(Button_module.button, Button_module[variant], Button_module[size], loading && Button_module.loading, className),
29
+ "data-testid": dataTestId?.root,
28
30
  ...rest,
29
31
  children: [loading ? /*#__PURE__*/jsxRuntime.jsx(IconLoaderCircle.IconLoaderCircle, {
30
32
  className: Button_module.spinner,
@@ -32,13 +34,16 @@ const Button = _ref => {
32
34
  }) : iconLeft != null && /*#__PURE__*/jsxRuntime.jsx("span", {
33
35
  className: Button_module.icon,
34
36
  "aria-hidden": "true",
37
+ "data-testid": dataTestId?.iconLeft,
35
38
  children: iconLeft
36
39
  }), /*#__PURE__*/jsxRuntime.jsx("span", {
37
40
  className: Button_module.content,
41
+ "data-testid": dataTestId?.content,
38
42
  children: children
39
43
  }), !loading && iconRight != null ? /*#__PURE__*/jsxRuntime.jsx("span", {
40
44
  className: Button_module.icon,
41
45
  "aria-hidden": "true",
46
+ "data-testid": dataTestId?.iconRight,
42
47
  children: iconRight
43
48
  }) : null]
44
49
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Button.cjs","sources":["../../../src/button/Button.tsx"],"sourcesContent":["import type { ButtonHTMLAttributes, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport { IconLoaderCircle } from '../icons'\nimport styles from './Button.module.css'\n\nexport type ButtonVariant = 'primary' | 'outline' | 'subtle' | 'ghost' | 'error'\n\nexport type ButtonSize = 'big' | 'small'\n\nexport type ButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & {\n variant?: ButtonVariant\n size?: ButtonSize\n loading?: boolean\n iconLeft?: ReactNode\n iconRight?: ReactNode\n}\n\nexport const Button = ({\n className,\n children,\n type = 'button',\n variant = 'primary',\n size = 'big',\n loading = false,\n disabled = false,\n iconLeft,\n iconRight,\n ...rest\n}: ButtonProps) => (\n <button\n type={type}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n className={cn(\n styles.button,\n styles[variant],\n styles[size],\n loading && styles.loading,\n className,\n )}\n {...rest}\n >\n {loading ? (\n <IconLoaderCircle className={styles.spinner} aria-hidden='true' />\n ) : (\n iconLeft != null && (\n <span className={styles.icon} aria-hidden='true'>\n {iconLeft}\n </span>\n )\n )}\n <span className={styles.content}>{children}</span>\n {!loading && iconRight != null ? (\n <span className={styles.icon} aria-hidden='true'>\n {iconRight}\n </span>\n ) : null}\n </button>\n)\n"],"names":["Button","_ref","className","children","type","variant","size","loading","disabled","iconLeft","iconRight","rest","_jsxs","undefined","cn","styles","button","_jsx","IconLoaderCircle","spinner","icon","content"],"mappings":";;;;;;;;;AAmBO,MAAMA,MAAM,GAAGC,IAAA,IAAA;EAAA,IAAC;IACrBC,SAAS;IACTC,QAAQ;AACRC,IAAAA,IAAI,GAAG,QAAQ;AACfC,IAAAA,OAAO,GAAG,SAAS;AACnBC,IAAAA,IAAI,GAAG,KAAK;AACZC,IAAAA,OAAO,GAAG,KAAK;AACfC,IAAAA,QAAQ,GAAG,KAAK;IAChBC,QAAQ;IACRC,SAAS;IACT,GAAGC,IAAAA;AACQ,GAAC,GAAAV,IAAA,CAAA;AAAA,EAAA,oBACZW,eAAA,CAAA,QAAA,EAAA;AACER,IAAAA,IAAI,EAAEA,IAAK;IACXI,QAAQ,EAAEA,QAAQ,IAAID,OAAQ;IAC9B,WAAWA,EAAAA,OAAO,IAAIM,SAAU;IAChCX,SAAS,EAAEY,EAAE,CACXC,aAAM,CAACC,MAAM,EACbD,aAAM,CAACV,OAAO,CAAC,EACfU,aAAM,CAACT,IAAI,CAAC,EACZC,OAAO,IAAIQ,aAAM,CAACR,OAAO,EACzBL,SACF,CAAE;AAAA,IAAA,GACES,IAAI;AAAAR,IAAAA,QAAA,EAEPI,CAAAA,OAAO,gBACNU,cAAA,CAACC,iCAAgB,EAAA;MAAChB,SAAS,EAAEa,aAAM,CAACI,OAAQ;MAAC,aAAY,EAAA,MAAA;AAAM,KAAE,CAAC,GAElEV,QAAQ,IAAI,IAAI,iBACdQ,cAAA,CAAA,MAAA,EAAA;MAAMf,SAAS,EAAEa,aAAM,CAACK,IAAK;AAAC,MAAA,aAAA,EAAY,MAAM;AAAAjB,MAAAA,QAAA,EAC7CM,QAAAA;KACG,CAET,eACDQ,cAAA,CAAA,MAAA,EAAA;MAAMf,SAAS,EAAEa,aAAM,CAACM,OAAQ;AAAAlB,MAAAA,QAAA,EAAEA,QAAAA;KAAe,CAAC,EACjD,CAACI,OAAO,IAAIG,SAAS,IAAI,IAAI,gBAC5BO,cAAA,CAAA,MAAA,EAAA;MAAMf,SAAS,EAAEa,aAAM,CAACK,IAAK;AAAC,MAAA,aAAA,EAAY,MAAM;AAAAjB,MAAAA,QAAA,EAC7CO,SAAAA;KACG,CAAC,GACL,IAAI,CAAA;AAAA,GACF,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"Button.cjs","sources":["../../../src/button/Button.tsx"],"sourcesContent":["import type { ButtonHTMLAttributes, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport { IconLoaderCircle } from '../icons'\nimport styles from './Button.module.css'\n\nexport type ButtonVariant = 'primary' | 'outline' | 'subtle' | 'ghost' | 'error'\n\nexport type ButtonSize = 'big' | 'small'\n\nexport type ButtonDataTestId = {\n root?: string\n iconLeft?: string\n iconRight?: string\n content?: string\n}\n\nexport type ButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & {\n variant?: ButtonVariant\n size?: ButtonSize\n loading?: boolean\n iconLeft?: ReactNode\n iconRight?: ReactNode\n dataTestId?: ButtonDataTestId\n}\n\nexport const Button = ({\n className,\n children,\n type = 'button',\n variant = 'primary',\n size = 'big',\n loading = false,\n disabled = false,\n iconLeft,\n iconRight,\n dataTestId,\n ...rest\n}: ButtonProps) => (\n <button\n type={type}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n className={cn(\n styles.button,\n styles[variant],\n styles[size],\n loading && styles.loading,\n className,\n )}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {loading ? (\n <IconLoaderCircle className={styles.spinner} aria-hidden='true' />\n ) : (\n iconLeft != null && (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.iconLeft}\n >\n {iconLeft}\n </span>\n )\n )}\n <span className={styles.content} data-testid={dataTestId?.content}>\n {children}\n </span>\n {!loading && iconRight != null ? (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.iconRight}\n >\n {iconRight}\n </span>\n ) : null}\n </button>\n)\n"],"names":["Button","_ref","className","children","type","variant","size","loading","disabled","iconLeft","iconRight","dataTestId","rest","_jsxs","undefined","cn","styles","button","root","_jsx","IconLoaderCircle","spinner","icon","content"],"mappings":";;;;;;;;;AA2BO,MAAMA,MAAM,GAAGC,IAAA,IAAA;EAAA,IAAC;IACrBC,SAAS;IACTC,QAAQ;AACRC,IAAAA,IAAI,GAAG,QAAQ;AACfC,IAAAA,OAAO,GAAG,SAAS;AACnBC,IAAAA,IAAI,GAAG,KAAK;AACZC,IAAAA,OAAO,GAAG,KAAK;AACfC,IAAAA,QAAQ,GAAG,KAAK;IAChBC,QAAQ;IACRC,SAAS;IACTC,UAAU;IACV,GAAGC,IAAAA;AACQ,GAAC,GAAAX,IAAA,CAAA;AAAA,EAAA,oBACZY,eAAA,CAAA,QAAA,EAAA;AACET,IAAAA,IAAI,EAAEA,IAAK;IACXI,QAAQ,EAAEA,QAAQ,IAAID,OAAQ;IAC9B,WAAWA,EAAAA,OAAO,IAAIO,SAAU;IAChCZ,SAAS,EAAEa,EAAE,CACXC,aAAM,CAACC,MAAM,EACbD,aAAM,CAACX,OAAO,CAAC,EACfW,aAAM,CAACV,IAAI,CAAC,EACZC,OAAO,IAAIS,aAAM,CAACT,OAAO,EACzBL,SACF,CAAE;IACF,aAAaS,EAAAA,UAAU,EAAEO,IAAK;AAAA,IAAA,GAC1BN,IAAI;AAAAT,IAAAA,QAAA,EAEPI,CAAAA,OAAO,gBACNY,cAAA,CAACC,iCAAgB,EAAA;MAAClB,SAAS,EAAEc,aAAM,CAACK,OAAQ;MAAC,aAAY,EAAA,MAAA;AAAM,KAAE,CAAC,GAElEZ,QAAQ,IAAI,IAAI,iBACdU,cAAA,CAAA,MAAA,EAAA;MACEjB,SAAS,EAAEc,aAAM,CAACM,IAAK;AACvB,MAAA,aAAA,EAAY,MAAM;MAClB,aAAaX,EAAAA,UAAU,EAAEF,QAAS;AAAAN,MAAAA,QAAA,EAEjCM,QAAAA;KACG,CAET,eACDU,cAAA,CAAA,MAAA,EAAA;MAAMjB,SAAS,EAAEc,aAAM,CAACO,OAAQ;MAAC,aAAaZ,EAAAA,UAAU,EAAEY,OAAQ;AAAApB,MAAAA,QAAA,EAC/DA,QAAAA;KACG,CAAC,EACN,CAACI,OAAO,IAAIG,SAAS,IAAI,IAAI,gBAC5BS,cAAA,CAAA,MAAA,EAAA;MACEjB,SAAS,EAAEc,aAAM,CAACM,IAAK;AACvB,MAAA,aAAA,EAAY,MAAM;MAClB,aAAaX,EAAAA,UAAU,EAAED,SAAU;AAAAP,MAAAA,QAAA,EAElCO,SAAAA;KACG,CAAC,GACL,IAAI,CAAA;AAAA,GACF,CAAC,CAAA;AAAA;;;;"}
@@ -10,10 +10,12 @@ const Card = _ref => {
10
10
  let {
11
11
  className,
12
12
  children,
13
+ dataTestId,
13
14
  ...rest
14
15
  } = _ref;
15
16
  return /*#__PURE__*/jsxRuntime.jsx("div", {
16
17
  className: cn(Card_module.card, className),
18
+ "data-testid": dataTestId?.root,
17
19
  ...rest,
18
20
  children: children
19
21
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Card.cjs","sources":["../../../src/card/Card.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Card.module.css'\n\nexport type CardProps = HTMLAttributes<HTMLDivElement>\n\nexport const Card = ({ className, children, ...rest }: CardProps) => (\n <div className={cn(styles.card, className)} {...rest}>\n {children}\n </div>\n)\n"],"names":["Card","_ref","className","children","rest","_jsx","cn","styles","card"],"mappings":";;;;;;;;AAQO,MAAMA,IAAI,GAAGC,IAAA,IAAA;EAAA,IAAC;IAAEC,SAAS;IAAEC,QAAQ;IAAE,GAAGC,IAAAA;AAAgB,GAAC,GAAAH,IAAA,CAAA;AAAA,EAAA,oBAC9DI,cAAA,CAAA,KAAA,EAAA;IAAKH,SAAS,EAAEI,EAAE,CAACC,WAAM,CAACC,IAAI,EAAEN,SAAS,CAAE;AAAA,IAAA,GAAKE,IAAI;AAAAD,IAAAA,QAAA,EACjDA,QAAAA;AAAQ,GACN,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"Card.cjs","sources":["../../../src/card/Card.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Card.module.css'\n\nexport type CardDataTestId = {\n root?: string\n}\n\nexport type CardProps = HTMLAttributes<HTMLDivElement> & {\n dataTestId?: CardDataTestId\n}\n\nexport const Card = ({\n className,\n children,\n dataTestId,\n ...rest\n}: CardProps) => (\n <div\n className={cn(styles.card, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {children}\n </div>\n)\n"],"names":["Card","_ref","className","children","dataTestId","rest","_jsx","cn","styles","card","root"],"mappings":";;;;;;;;AAcO,MAAMA,IAAI,GAAGC,IAAA,IAAA;EAAA,IAAC;IACnBC,SAAS;IACTC,QAAQ;IACRC,UAAU;IACV,GAAGC,IAAAA;AACM,GAAC,GAAAJ,IAAA,CAAA;AAAA,EAAA,oBACVK,cAAA,CAAA,KAAA,EAAA;IACEJ,SAAS,EAAEK,EAAE,CAACC,WAAM,CAACC,IAAI,EAAEP,SAAS,CAAE;IACtC,aAAaE,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAF,IAAAA,QAAA,EAEPA,QAAAA;AAAQ,GACN,CAAC,CAAA;AAAA;;;;"}
@@ -13,12 +13,14 @@ const Checkbox = /*#__PURE__*/react.forwardRef((_ref, ref) => {
13
13
  label,
14
14
  className,
15
15
  disabled,
16
+ dataTestId,
16
17
  ...rest
17
18
  } = _ref;
18
19
  return /*#__PURE__*/jsxRuntime.jsxs("label", {
19
20
  className: cn(Checkbox_module.container, className, {
20
21
  [Checkbox_module.containerDisabled]: disabled
21
22
  }),
23
+ "data-testid": dataTestId?.root,
22
24
  children: [/*#__PURE__*/jsxRuntime.jsxs("span", {
23
25
  className: Checkbox_module.control,
24
26
  children: [/*#__PURE__*/jsxRuntime.jsx("input", {
@@ -26,6 +28,7 @@ const Checkbox = /*#__PURE__*/react.forwardRef((_ref, ref) => {
26
28
  type: "checkbox",
27
29
  className: Checkbox_module.input,
28
30
  disabled: disabled,
31
+ "data-testid": dataTestId?.input,
29
32
  ...rest
30
33
  }), /*#__PURE__*/jsxRuntime.jsx(IconCheck.IconCheck, {
31
34
  className: Checkbox_module.tick
@@ -34,6 +37,7 @@ const Checkbox = /*#__PURE__*/react.forwardRef((_ref, ref) => {
34
37
  className: cn(Checkbox_module.label, {
35
38
  [Checkbox_module.labelDisabled]: disabled
36
39
  }),
40
+ "data-testid": dataTestId?.label,
37
41
  children: label
38
42
  }) : null]
39
43
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.cjs","sources":["../../../src/checkbox/Checkbox.tsx"],"sourcesContent":["import { forwardRef, type InputHTMLAttributes, type ReactNode } from 'react'\n\nimport { IconCheck } from '../icons'\nimport cn from 'classnames'\n\nimport styles from './Checkbox.module.css'\n\nexport type CheckboxProps = Omit<\n InputHTMLAttributes<HTMLInputElement>,\n 'type'\n> & {\n label?: ReactNode\n}\n\nexport const Checkbox = forwardRef<HTMLInputElement, CheckboxProps>(\n ({ label, className, disabled, ...rest }, ref) => (\n <label\n className={cn(styles.container, className, {\n [styles.containerDisabled]: disabled,\n })}\n >\n <span className={styles.control}>\n <input\n ref={ref}\n type='checkbox'\n className={styles.input}\n disabled={disabled}\n {...rest}\n />\n <IconCheck className={styles.tick} />\n </span>\n {label ? (\n <span\n className={cn(styles.label, { [styles.labelDisabled]: disabled })}\n >\n {label}\n </span>\n ) : null}\n </label>\n ),\n)\n\nCheckbox.displayName = 'Checkbox'\n"],"names":["Checkbox","forwardRef","_ref","ref","label","className","disabled","rest","_jsxs","cn","styles","container","containerDisabled","children","control","_jsx","type","input","IconCheck","tick","labelDisabled","displayName"],"mappings":";;;;;;;;;;AAcO,MAAMA,QAAQ,gBAAGC,gBAAU,CAChC,CAAAC,IAAA,EAA0CC,GAAG,KAAA;EAAA,IAA5C;IAAEC,KAAK;IAAEC,SAAS;IAAEC,QAAQ;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAL,IAAA,CAAA;AAAA,EAAA,oBACtCM,eAAA,CAAA,OAAA,EAAA;IACEH,SAAS,EAAEI,EAAE,CAACC,eAAM,CAACC,SAAS,EAAEN,SAAS,EAAE;MACzC,CAACK,eAAM,CAACE,iBAAiB,GAAGN,QAAAA;AAC9B,KAAC,CAAE;AAAAO,IAAAA,QAAA,gBAEHL,eAAA,CAAA,MAAA,EAAA;MAAMH,SAAS,EAAEK,eAAM,CAACI,OAAQ;AAAAD,MAAAA,QAAA,gBAC9BE,cAAA,CAAA,OAAA,EAAA;AACEZ,QAAAA,GAAG,EAAEA,GAAI;AACTa,QAAAA,IAAI,EAAC,UAAU;QACfX,SAAS,EAAEK,eAAM,CAACO,KAAM;AACxBX,QAAAA,QAAQ,EAAEA,QAAS;QAAA,GACfC,IAAAA;AAAI,OACT,CAAC,eACFQ,cAAA,CAACG,mBAAS,EAAA;QAACb,SAAS,EAAEK,eAAM,CAACS,IAAAA;AAAK,OAAE,CAAC,CAAA;AAAA,KACjC,CAAC,EACNf,KAAK,gBACJW,cAAA,CAAA,MAAA,EAAA;AACEV,MAAAA,SAAS,EAAEI,EAAE,CAACC,eAAM,CAACN,KAAK,EAAE;QAAE,CAACM,eAAM,CAACU,aAAa,GAAGd,QAAAA;AAAS,OAAC,CAAE;AAAAO,MAAAA,QAAA,EAEjET,KAAAA;KACG,CAAC,GACL,IAAI,CAAA;AAAA,GACH,CAAC,CAAA;AAAA,CAEZ,EAAC;AAEDJ,QAAQ,CAACqB,WAAW,GAAG,UAAU;;;;"}
1
+ {"version":3,"file":"Checkbox.cjs","sources":["../../../src/checkbox/Checkbox.tsx"],"sourcesContent":["import { forwardRef, type InputHTMLAttributes, type ReactNode } from 'react'\n\nimport { IconCheck } from '../icons'\nimport cn from 'classnames'\n\nimport styles from './Checkbox.module.css'\n\nexport type CheckboxDataTestId = {\n root?: string\n input?: string\n label?: string\n}\n\nexport type CheckboxProps = Omit<\n InputHTMLAttributes<HTMLInputElement>,\n 'type'\n> & {\n label?: ReactNode\n dataTestId?: CheckboxDataTestId\n}\n\nexport const Checkbox = forwardRef<HTMLInputElement, CheckboxProps>(\n ({ label, className, disabled, dataTestId, ...rest }, ref) => (\n <label\n className={cn(styles.container, className, {\n [styles.containerDisabled]: disabled,\n })}\n data-testid={dataTestId?.root}\n >\n <span className={styles.control}>\n <input\n ref={ref}\n type='checkbox'\n className={styles.input}\n disabled={disabled}\n data-testid={dataTestId?.input}\n {...rest}\n />\n <IconCheck className={styles.tick} />\n </span>\n {label ? (\n <span\n className={cn(styles.label, { [styles.labelDisabled]: disabled })}\n data-testid={dataTestId?.label}\n >\n {label}\n </span>\n ) : null}\n </label>\n ),\n)\n\nCheckbox.displayName = 'Checkbox'\n"],"names":["Checkbox","forwardRef","_ref","ref","label","className","disabled","dataTestId","rest","_jsxs","cn","styles","container","containerDisabled","root","children","control","_jsx","type","input","IconCheck","tick","labelDisabled","displayName"],"mappings":";;;;;;;;;;AAqBO,MAAMA,QAAQ,gBAAGC,gBAAU,CAChC,CAAAC,IAAA,EAAsDC,GAAG,KAAA;EAAA,IAAxD;IAAEC,KAAK;IAAEC,SAAS;IAAEC,QAAQ;IAAEC,UAAU;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAN,IAAA,CAAA;AAAA,EAAA,oBAClDO,eAAA,CAAA,OAAA,EAAA;IACEJ,SAAS,EAAEK,EAAE,CAACC,eAAM,CAACC,SAAS,EAAEP,SAAS,EAAE;MACzC,CAACM,eAAM,CAACE,iBAAiB,GAAGP,QAAAA;AAC9B,KAAC,CAAE;IACH,aAAaC,EAAAA,UAAU,EAAEO,IAAK;AAAAC,IAAAA,QAAA,gBAE9BN,eAAA,CAAA,MAAA,EAAA;MAAMJ,SAAS,EAAEM,eAAM,CAACK,OAAQ;AAAAD,MAAAA,QAAA,gBAC9BE,cAAA,CAAA,OAAA,EAAA;AACEd,QAAAA,GAAG,EAAEA,GAAI;AACTe,QAAAA,IAAI,EAAC,UAAU;QACfb,SAAS,EAAEM,eAAM,CAACQ,KAAM;AACxBb,QAAAA,QAAQ,EAAEA,QAAS;QACnB,aAAaC,EAAAA,UAAU,EAAEY,KAAM;QAAA,GAC3BX,IAAAA;AAAI,OACT,CAAC,eACFS,cAAA,CAACG,mBAAS,EAAA;QAACf,SAAS,EAAEM,eAAM,CAACU,IAAAA;AAAK,OAAE,CAAC,CAAA;AAAA,KACjC,CAAC,EACNjB,KAAK,gBACJa,cAAA,CAAA,MAAA,EAAA;AACEZ,MAAAA,SAAS,EAAEK,EAAE,CAACC,eAAM,CAACP,KAAK,EAAE;QAAE,CAACO,eAAM,CAACW,aAAa,GAAGhB,QAAAA;AAAS,OAAC,CAAE;MAClE,aAAaC,EAAAA,UAAU,EAAEH,KAAM;AAAAW,MAAAA,QAAA,EAE9BX,KAAAA;KACG,CAAC,GACL,IAAI,CAAA;AAAA,GACH,CAAC,CAAA;AAAA,CAEZ,EAAC;AAEDJ,QAAQ,CAACuB,WAAW,GAAG,UAAU;;;;"}
@@ -11,10 +11,12 @@ const Counter = _ref => {
11
11
  variant = 'default',
12
12
  className,
13
13
  children,
14
+ dataTestId,
14
15
  ...rest
15
16
  } = _ref;
16
17
  return /*#__PURE__*/jsxRuntime.jsx("span", {
17
18
  className: cn(Counter_module.counter, Counter_module[variant], className),
19
+ "data-testid": dataTestId?.root,
18
20
  ...rest,
19
21
  children: children
20
22
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Counter.cjs","sources":["../../../src/counter/Counter.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Counter.module.css'\n\nexport type CounterVariant =\n | 'default'\n | 'neutral'\n | 'error'\n | 'warning'\n | 'action'\n | 'active'\n\nexport type CounterProps = HTMLAttributes<HTMLSpanElement> & {\n variant?: CounterVariant\n}\n\nexport const Counter = ({\n variant = 'default',\n className,\n children,\n ...rest\n}: CounterProps) => (\n <span className={cn(styles.counter, styles[variant], className)} {...rest}>\n {children}\n </span>\n)\n"],"names":["Counter","_ref","variant","className","children","rest","_jsx","cn","styles","counter"],"mappings":";;;;;;;;AAkBO,MAAMA,OAAO,GAAGC,IAAA,IAAA;EAAA,IAAC;AACtBC,IAAAA,OAAO,GAAG,SAAS;IACnBC,SAAS;IACTC,QAAQ;IACR,GAAGC,IAAAA;AACS,GAAC,GAAAJ,IAAA,CAAA;AAAA,EAAA,oBACbK,cAAA,CAAA,MAAA,EAAA;AAAMH,IAAAA,SAAS,EAAEI,EAAE,CAACC,cAAM,CAACC,OAAO,EAAED,cAAM,CAACN,OAAO,CAAC,EAAEC,SAAS,CAAE;AAAA,IAAA,GAAKE,IAAI;AAAAD,IAAAA,QAAA,EACtEA,QAAAA;AAAQ,GACL,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"Counter.cjs","sources":["../../../src/counter/Counter.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Counter.module.css'\n\nexport type CounterVariant =\n | 'default'\n | 'neutral'\n | 'error'\n | 'warning'\n | 'action'\n | 'active'\n\nexport type CounterDataTestId = {\n root?: string\n}\n\nexport type CounterProps = HTMLAttributes<HTMLSpanElement> & {\n variant?: CounterVariant\n dataTestId?: CounterDataTestId\n}\n\nexport const Counter = ({\n variant = 'default',\n className,\n children,\n dataTestId,\n ...rest\n}: CounterProps) => (\n <span\n className={cn(styles.counter, styles[variant], className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {children}\n </span>\n)\n"],"names":["Counter","_ref","variant","className","children","dataTestId","rest","_jsx","cn","styles","counter","root"],"mappings":";;;;;;;;AAuBO,MAAMA,OAAO,GAAGC,IAAA,IAAA;EAAA,IAAC;AACtBC,IAAAA,OAAO,GAAG,SAAS;IACnBC,SAAS;IACTC,QAAQ;IACRC,UAAU;IACV,GAAGC,IAAAA;AACS,GAAC,GAAAL,IAAA,CAAA;AAAA,EAAA,oBACbM,cAAA,CAAA,MAAA,EAAA;AACEJ,IAAAA,SAAS,EAAEK,EAAE,CAACC,cAAM,CAACC,OAAO,EAAED,cAAM,CAACP,OAAO,CAAC,EAAEC,SAAS,CAAE;IAC1D,aAAaE,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAF,IAAAA,QAAA,EAEPA,QAAAA;AAAQ,GACL,CAAC,CAAA;AAAA;;;;"}
@@ -10,10 +10,14 @@ const DataList = _ref => {
10
10
  let {
11
11
  children,
12
12
  className,
13
- divided = false
13
+ divided = false,
14
+ dataTestId,
15
+ ...rest
14
16
  } = _ref;
15
17
  return /*#__PURE__*/jsxRuntime.jsx("div", {
16
18
  className: cn(DataList_module.card, divided && DataList_module.divided, className),
19
+ "data-testid": dataTestId?.root,
20
+ ...rest,
17
21
  children: children
18
22
  });
19
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"DataList.cjs","sources":["../../../src/data-list/DataList.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './DataList.module.css'\n\nexport type DataListProps = {\n children: ReactNode\n className?: string\n divided?: boolean\n}\n\nexport const DataList = ({\n children,\n className,\n divided = false,\n}: DataListProps) => (\n <div className={cn(styles.card, divided && styles.divided, className)}>\n {children}\n </div>\n)\n"],"names":["DataList","_ref","children","className","divided","_jsx","cn","styles","card"],"mappings":";;;;;;;;AAYO,MAAMA,QAAQ,GAAGC,IAAA,IAAA;EAAA,IAAC;IACvBC,QAAQ;IACRC,SAAS;AACTC,IAAAA,OAAO,GAAG,KAAA;AACG,GAAC,GAAAH,IAAA,CAAA;AAAA,EAAA,oBACdI,cAAA,CAAA,KAAA,EAAA;AAAKF,IAAAA,SAAS,EAAEG,EAAE,CAACC,eAAM,CAACC,IAAI,EAAEJ,OAAO,IAAIG,eAAM,CAACH,OAAO,EAAED,SAAS,CAAE;AAAAD,IAAAA,QAAA,EACnEA,QAAAA;AAAQ,GACN,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"DataList.cjs","sources":["../../../src/data-list/DataList.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './DataList.module.css'\n\nexport type DataListDataTestId = {\n root?: string\n}\n\nexport type DataListProps = Omit<\n ComponentPropsWithoutRef<'div'>,\n 'children'\n> & {\n children: ReactNode\n divided?: boolean\n dataTestId?: DataListDataTestId\n}\n\nexport const DataList = ({\n children,\n className,\n divided = false,\n dataTestId,\n ...rest\n}: DataListProps) => (\n <div\n className={cn(styles.card, divided && styles.divided, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {children}\n </div>\n)\n"],"names":["DataList","_ref","children","className","divided","dataTestId","rest","_jsx","cn","styles","card","root"],"mappings":";;;;;;;;AAmBO,MAAMA,QAAQ,GAAGC,IAAA,IAAA;EAAA,IAAC;IACvBC,QAAQ;IACRC,SAAS;AACTC,IAAAA,OAAO,GAAG,KAAK;IACfC,UAAU;IACV,GAAGC,IAAAA;AACU,GAAC,GAAAL,IAAA,CAAA;AAAA,EAAA,oBACdM,cAAA,CAAA,KAAA,EAAA;AACEJ,IAAAA,SAAS,EAAEK,EAAE,CAACC,eAAM,CAACC,IAAI,EAAEN,OAAO,IAAIK,eAAM,CAACL,OAAO,EAAED,SAAS,CAAE;IACjE,aAAaE,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAJ,IAAAA,QAAA,EAEPA,QAAAA;AAAQ,GACN,CAAC,CAAA;AAAA;;;;"}
@@ -18,19 +18,25 @@ const DataListRow = _ref => {
18
18
  infoFaint = false,
19
19
  description,
20
20
  descriptionInfo,
21
- className
21
+ className,
22
+ dataTestId,
23
+ ...rest
22
24
  } = _ref;
23
25
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
24
26
  className: cn(DataList_module.row, className),
27
+ "data-testid": dataTestId?.root,
28
+ ...rest,
25
29
  children: [/*#__PURE__*/jsxRuntime.jsxs("span", {
26
30
  className: DataList_module.mainRow,
27
31
  children: [/*#__PURE__*/jsxRuntime.jsxs("span", {
28
32
  className: DataList_module.labelGroup,
29
33
  children: [icon ? /*#__PURE__*/jsxRuntime.jsx("span", {
30
34
  className: DataList_module.leadingIcon,
35
+ "data-testid": dataTestId?.icon,
31
36
  children: icon
32
37
  }) : null, /*#__PURE__*/jsxRuntime.jsx("span", {
33
38
  className: DataList_module.label,
39
+ "data-testid": dataTestId?.label,
34
40
  children: label
35
41
  }), info ? /*#__PURE__*/jsxRuntime.jsx(Tooltip.Tooltip, {
36
42
  content: info,
@@ -41,6 +47,7 @@ const DataListRow = _ref => {
41
47
  }) : null]
42
48
  }), isChangeValue(value) ? /*#__PURE__*/jsxRuntime.jsxs("span", {
43
49
  className: DataList_module.value,
50
+ "data-testid": dataTestId?.value,
44
51
  children: [/*#__PURE__*/jsxRuntime.jsx("span", {
45
52
  className: DataList_module.valueOld,
46
53
  children: value.from
@@ -53,12 +60,14 @@ const DataListRow = _ref => {
53
60
  })]
54
61
  }) : /*#__PURE__*/jsxRuntime.jsx("span", {
55
62
  className: DataList_module.value,
63
+ "data-testid": dataTestId?.value,
56
64
  children: value
57
65
  })]
58
66
  }), description ? /*#__PURE__*/jsxRuntime.jsxs("span", {
59
67
  className: DataList_module.descriptionRow,
60
68
  children: [/*#__PURE__*/jsxRuntime.jsx("span", {
61
69
  className: DataList_module.description,
70
+ "data-testid": dataTestId?.description,
62
71
  children: description
63
72
  }), descriptionInfo ? /*#__PURE__*/jsxRuntime.jsx(Tooltip.Tooltip, {
64
73
  content: descriptionInfo,
@@ -1 +1 @@
1
- {"version":3,"file":"DataListRow.cjs","sources":["../../../src/data-list/DataListRow.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\n\nimport { IconInfo } from '../icons'\nimport cn from 'classnames'\nimport { Tooltip } from '../tooltip'\n\nimport styles from './DataList.module.css'\n\nexport type DetailRowValue = ReactNode | { from: ReactNode; to: ReactNode }\n\nexport type DetailRowProps = {\n label: ReactNode\n value: DetailRowValue\n icon?: ReactNode\n info?: ReactNode\n infoFaint?: boolean\n description?: ReactNode\n descriptionInfo?: ReactNode\n className?: string\n}\n\nconst isChangeValue = (\n value: DetailRowValue,\n): value is { from: ReactNode; to: ReactNode } =>\n typeof value === 'object' &&\n value !== null &&\n 'from' in value &&\n 'to' in value\n\nexport const DataListRow = ({\n label,\n value,\n icon,\n info,\n infoFaint = false,\n description,\n descriptionInfo,\n className,\n}: DetailRowProps) => (\n <div className={cn(styles.row, className)}>\n <span className={styles.mainRow}>\n <span className={styles.labelGroup}>\n {icon ? <span className={styles.leadingIcon}>{icon}</span> : null}\n <span className={styles.label}>{label}</span>\n {info ? (\n <Tooltip\n content={info}\n className={cn(styles.info, infoFaint && styles.infoFaint)}\n >\n <IconInfo className={styles.infoIcon} />\n </Tooltip>\n ) : null}\n </span>\n {isChangeValue(value) ? (\n <span className={styles.value}>\n <span className={styles.valueOld}>{value.from}</span>\n <span className={styles.valueArrow} aria-hidden='true'>\n →\n </span>\n <span>{value.to}</span>\n </span>\n ) : (\n <span className={styles.value}>{value}</span>\n )}\n </span>\n {description ? (\n <span className={styles.descriptionRow}>\n <span className={styles.description}>{description}</span>\n {descriptionInfo ? (\n <Tooltip content={descriptionInfo} className={styles.info}>\n <IconInfo className={styles.descriptionIcon} />\n </Tooltip>\n ) : null}\n </span>\n ) : null}\n </div>\n)\n"],"names":["isChangeValue","value","DataListRow","_ref","label","icon","info","infoFaint","description","descriptionInfo","className","_jsxs","cn","styles","row","children","mainRow","labelGroup","_jsx","leadingIcon","Tooltip","content","IconInfo","infoIcon","valueOld","from","valueArrow","to","descriptionRow","descriptionIcon"],"mappings":"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"}
1
+ {"version":3,"file":"DataListRow.cjs","sources":["../../../src/data-list/DataListRow.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport { IconInfo } from '../icons'\nimport cn from 'classnames'\nimport { Tooltip } from '../tooltip'\n\nimport styles from './DataList.module.css'\n\nexport type DetailRowValue = ReactNode | { from: ReactNode; to: ReactNode }\n\nexport type DataListRowDataTestId = {\n root?: string\n label?: string\n value?: string\n icon?: string\n description?: string\n}\n\nexport type DetailRowProps = ComponentPropsWithoutRef<'div'> & {\n label: ReactNode\n value: DetailRowValue\n icon?: ReactNode\n info?: ReactNode\n infoFaint?: boolean\n description?: ReactNode\n descriptionInfo?: ReactNode\n dataTestId?: DataListRowDataTestId\n}\n\nconst isChangeValue = (\n value: DetailRowValue,\n): value is { from: ReactNode; to: ReactNode } =>\n typeof value === 'object' &&\n value !== null &&\n 'from' in value &&\n 'to' in value\n\nexport const DataListRow = ({\n label,\n value,\n icon,\n info,\n infoFaint = false,\n description,\n descriptionInfo,\n className,\n dataTestId,\n ...rest\n}: DetailRowProps) => (\n <div\n className={cn(styles.row, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <span className={styles.mainRow}>\n <span className={styles.labelGroup}>\n {icon ? (\n <span className={styles.leadingIcon} data-testid={dataTestId?.icon}>\n {icon}\n </span>\n ) : null}\n <span className={styles.label} data-testid={dataTestId?.label}>\n {label}\n </span>\n {info ? (\n <Tooltip\n content={info}\n className={cn(styles.info, infoFaint && styles.infoFaint)}\n >\n <IconInfo className={styles.infoIcon} />\n </Tooltip>\n ) : null}\n </span>\n {isChangeValue(value) ? (\n <span className={styles.value} data-testid={dataTestId?.value}>\n <span className={styles.valueOld}>{value.from}</span>\n <span className={styles.valueArrow} aria-hidden='true'>\n →\n </span>\n <span>{value.to}</span>\n </span>\n ) : (\n <span className={styles.value} data-testid={dataTestId?.value}>\n {value}\n </span>\n )}\n </span>\n {description ? (\n <span className={styles.descriptionRow}>\n <span\n className={styles.description}\n data-testid={dataTestId?.description}\n >\n {description}\n </span>\n {descriptionInfo ? (\n <Tooltip content={descriptionInfo} className={styles.info}>\n <IconInfo className={styles.descriptionIcon} />\n </Tooltip>\n ) : null}\n </span>\n ) : null}\n </div>\n)\n"],"names":["isChangeValue","value","DataListRow","_ref","label","icon","info","infoFaint","description","descriptionInfo","className","dataTestId","rest","_jsxs","cn","styles","row","root","children","mainRow","labelGroup","_jsx","leadingIcon","Tooltip","content","IconInfo","infoIcon","valueOld","from","valueArrow","to","descriptionRow","descriptionIcon"],"mappings":"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"}
@@ -15,6 +15,7 @@ const IconButton = _ref => {
15
15
  loading = false,
16
16
  disabled = false,
17
17
  icon,
18
+ dataTestId,
18
19
  ...rest
19
20
  } = _ref;
20
21
  return /*#__PURE__*/jsxRuntime.jsx("button", {
@@ -22,6 +23,7 @@ const IconButton = _ref => {
22
23
  disabled: disabled || loading,
23
24
  "aria-busy": loading || undefined,
24
25
  className: cn(IconButton_module.button, IconButton_module[variant], loading && IconButton_module.loading, className),
26
+ "data-testid": dataTestId?.root,
25
27
  ...rest,
26
28
  children: loading ? /*#__PURE__*/jsxRuntime.jsx(IconLoaderCircle.IconLoaderCircle, {
27
29
  className: IconButton_module.spinner,
@@ -29,6 +31,7 @@ const IconButton = _ref => {
29
31
  }) : /*#__PURE__*/jsxRuntime.jsx("span", {
30
32
  className: IconButton_module.icon,
31
33
  "aria-hidden": "true",
34
+ "data-testid": dataTestId?.icon,
32
35
  children: icon
33
36
  })
34
37
  });
@@ -1 +1 @@
1
- {"version":3,"file":"IconButton.cjs","sources":["../../../src/icon-button/IconButton.tsx"],"sourcesContent":["import type { ButtonHTMLAttributes, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport { IconLoaderCircle } from '../icons'\nimport styles from './IconButton.module.css'\n\nexport type IconButtonVariant = 'outline' | 'ghost'\n\nexport type IconButtonProps = Omit<\n ButtonHTMLAttributes<HTMLButtonElement>,\n 'aria-label'\n> & {\n 'aria-label': string\n icon: ReactNode\n variant?: IconButtonVariant\n loading?: boolean\n}\n\nexport const IconButton = ({\n className,\n type = 'button',\n variant = 'outline',\n loading = false,\n disabled = false,\n icon,\n ...rest\n}: IconButtonProps) => (\n <button\n type={type}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n className={cn(\n styles.button,\n styles[variant],\n loading && styles.loading,\n className,\n )}\n {...rest}\n >\n {loading ? (\n <IconLoaderCircle className={styles.spinner} aria-hidden='true' />\n ) : (\n <span className={styles.icon} aria-hidden='true'>\n {icon}\n </span>\n )}\n </button>\n)\n"],"names":["IconButton","_ref","className","type","variant","loading","disabled","icon","rest","_jsx","undefined","cn","styles","button","children","IconLoaderCircle","spinner"],"mappings":";;;;;;;;;AAmBO,MAAMA,UAAU,GAAGC,IAAA,IAAA;EAAA,IAAC;IACzBC,SAAS;AACTC,IAAAA,IAAI,GAAG,QAAQ;AACfC,IAAAA,OAAO,GAAG,SAAS;AACnBC,IAAAA,OAAO,GAAG,KAAK;AACfC,IAAAA,QAAQ,GAAG,KAAK;IAChBC,IAAI;IACJ,GAAGC,IAAAA;AACY,GAAC,GAAAP,IAAA,CAAA;AAAA,EAAA,oBAChBQ,cAAA,CAAA,QAAA,EAAA;AACEN,IAAAA,IAAI,EAAEA,IAAK;IACXG,QAAQ,EAAEA,QAAQ,IAAID,OAAQ;IAC9B,WAAWA,EAAAA,OAAO,IAAIK,SAAU;AAChCR,IAAAA,SAAS,EAAES,EAAE,CACXC,iBAAM,CAACC,MAAM,EACbD,iBAAM,CAACR,OAAO,CAAC,EACfC,OAAO,IAAIO,iBAAM,CAACP,OAAO,EACzBH,SACF,CAAE;AAAA,IAAA,GACEM,IAAI;AAAAM,IAAAA,QAAA,EAEPT,OAAO,gBACNI,cAAA,CAACM,iCAAgB,EAAA;MAACb,SAAS,EAAEU,iBAAM,CAACI,OAAQ;MAAC,aAAY,EAAA,MAAA;KAAQ,CAAC,gBAElEP,cAAA,CAAA,MAAA,EAAA;MAAMP,SAAS,EAAEU,iBAAM,CAACL,IAAK;AAAC,MAAA,aAAA,EAAY,MAAM;AAAAO,MAAAA,QAAA,EAC7CP,IAAAA;KACG,CAAA;AACP,GACK,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"IconButton.cjs","sources":["../../../src/icon-button/IconButton.tsx"],"sourcesContent":["import type { ButtonHTMLAttributes, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport { IconLoaderCircle } from '../icons'\nimport styles from './IconButton.module.css'\n\nexport type IconButtonVariant = 'outline' | 'ghost'\n\nexport type IconButtonDataTestId = {\n root?: string\n icon?: string\n}\n\nexport type IconButtonProps = Omit<\n ButtonHTMLAttributes<HTMLButtonElement>,\n 'aria-label'\n> & {\n 'aria-label': string\n icon: ReactNode\n variant?: IconButtonVariant\n loading?: boolean\n dataTestId?: IconButtonDataTestId\n}\n\nexport const IconButton = ({\n className,\n type = 'button',\n variant = 'outline',\n loading = false,\n disabled = false,\n icon,\n dataTestId,\n ...rest\n}: IconButtonProps) => (\n <button\n type={type}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n className={cn(\n styles.button,\n styles[variant],\n loading && styles.loading,\n className,\n )}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {loading ? (\n <IconLoaderCircle className={styles.spinner} aria-hidden='true' />\n ) : (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.icon}\n >\n {icon}\n </span>\n )}\n </button>\n)\n"],"names":["IconButton","_ref","className","type","variant","loading","disabled","icon","dataTestId","rest","_jsx","undefined","cn","styles","button","root","children","IconLoaderCircle","spinner"],"mappings":";;;;;;;;;AAyBO,MAAMA,UAAU,GAAGC,IAAA,IAAA;EAAA,IAAC;IACzBC,SAAS;AACTC,IAAAA,IAAI,GAAG,QAAQ;AACfC,IAAAA,OAAO,GAAG,SAAS;AACnBC,IAAAA,OAAO,GAAG,KAAK;AACfC,IAAAA,QAAQ,GAAG,KAAK;IAChBC,IAAI;IACJC,UAAU;IACV,GAAGC,IAAAA;AACY,GAAC,GAAAR,IAAA,CAAA;AAAA,EAAA,oBAChBS,cAAA,CAAA,QAAA,EAAA;AACEP,IAAAA,IAAI,EAAEA,IAAK;IACXG,QAAQ,EAAEA,QAAQ,IAAID,OAAQ;IAC9B,WAAWA,EAAAA,OAAO,IAAIM,SAAU;AAChCT,IAAAA,SAAS,EAAEU,EAAE,CACXC,iBAAM,CAACC,MAAM,EACbD,iBAAM,CAACT,OAAO,CAAC,EACfC,OAAO,IAAIQ,iBAAM,CAACR,OAAO,EACzBH,SACF,CAAE;IACF,aAAaM,EAAAA,UAAU,EAAEO,IAAK;AAAA,IAAA,GAC1BN,IAAI;AAAAO,IAAAA,QAAA,EAEPX,OAAO,gBACNK,cAAA,CAACO,iCAAgB,EAAA;MAACf,SAAS,EAAEW,iBAAM,CAACK,OAAQ;MAAC,aAAY,EAAA,MAAA;KAAQ,CAAC,gBAElER,cAAA,CAAA,MAAA,EAAA;MACER,SAAS,EAAEW,iBAAM,CAACN,IAAK;AACvB,MAAA,aAAA,EAAY,MAAM;MAClB,aAAaC,EAAAA,UAAU,EAAED,IAAK;AAAAS,MAAAA,QAAA,EAE7BT,IAAAA;KACG,CAAA;AACP,GACK,CAAC,CAAA;AAAA;;;;"}
@@ -12,16 +12,22 @@ const Identicon = /*#__PURE__*/react.forwardRef((_ref, ref) => {
12
12
  let {
13
13
  address,
14
14
  size = 40,
15
- className
15
+ className,
16
+ style,
17
+ dataTestId,
18
+ ...rest
16
19
  } = _ref;
17
20
  return /*#__PURE__*/jsxRuntime.jsx("span", {
18
21
  ref: ref,
19
22
  className: cn(Identicon_module.root, !address && Identicon_module.empty, className),
20
23
  style: {
21
24
  width: size,
22
- height: size
25
+ height: size,
26
+ ...style
23
27
  },
24
28
  "aria-hidden": "true",
29
+ "data-testid": dataTestId?.root,
30
+ ...rest,
25
31
  children: address ? /*#__PURE__*/jsxRuntime.jsx(Jazzicon, {
26
32
  diameter: size,
27
33
  seed: Jazzicon.jsNumberForAddress(address)
@@ -1 +1 @@
1
- {"version":3,"file":"Identicon.cjs","sources":["../../../src/identicon/Identicon.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport Jazzicon, { jsNumberForAddress } from 'react-jazzicon'\n\nimport cn from 'classnames'\n\nimport styles from './Identicon.module.css'\n\nexport type IdenticonProps = {\n address?: string\n size?: number\n className?: string\n}\n\nexport const Identicon = forwardRef<HTMLSpanElement, IdenticonProps>(\n ({ address, size = 40, className }, ref) => (\n <span\n ref={ref}\n className={cn(styles.root, !address && styles.empty, className)}\n style={{ width: size, height: size }}\n aria-hidden='true'\n >\n {address ? (\n <Jazzicon diameter={size} seed={jsNumberForAddress(address)} />\n ) : null}\n </span>\n ),\n)\n\nIdenticon.displayName = 'Identicon'\n"],"names":["Identicon","forwardRef","_ref","ref","address","size","className","_jsx","cn","styles","root","empty","style","width","height","children","Jazzicon","diameter","seed","jsNumberForAddress","displayName"],"mappings":";;;;;;;;;;AAaO,MAAMA,SAAS,gBAAGC,gBAAU,CACjC,CAAAC,IAAA,EAAoCC,GAAG,KAAA;EAAA,IAAtC;IAAEC,OAAO;AAAEC,IAAAA,IAAI,GAAG,EAAE;AAAEC,IAAAA,SAAAA;AAAU,GAAC,GAAAJ,IAAA,CAAA;AAAA,EAAA,oBAChCK,cAAA,CAAA,MAAA,EAAA;AACEJ,IAAAA,GAAG,EAAEA,GAAI;AACTG,IAAAA,SAAS,EAAEE,EAAE,CAACC,gBAAM,CAACC,IAAI,EAAE,CAACN,OAAO,IAAIK,gBAAM,CAACE,KAAK,EAAEL,SAAS,CAAE;AAChEM,IAAAA,KAAK,EAAE;AAAEC,MAAAA,KAAK,EAAER,IAAI;AAAES,MAAAA,MAAM,EAAET,IAAAA;KAAO;AACrC,IAAA,aAAA,EAAY,MAAM;AAAAU,IAAAA,QAAA,EAEjBX,OAAO,gBACNG,cAAA,CAACS,QAAQ,EAAA;AAACC,MAAAA,QAAQ,EAAEZ,IAAK;MAACa,IAAI,EAAEC,2BAAkB,CAACf,OAAO,CAAA;AAAE,KAAE,CAAC,GAC7D,IAAA;AAAI,GACJ,CAAC,CAAA;AAAA,CAEX,EAAC;AAEDJ,SAAS,CAACoB,WAAW,GAAG,WAAW;;;;"}
1
+ {"version":3,"file":"Identicon.cjs","sources":["../../../src/identicon/Identicon.tsx"],"sourcesContent":["import { forwardRef, type ComponentPropsWithoutRef } from 'react'\nimport Jazzicon, { jsNumberForAddress } from 'react-jazzicon'\n\nimport cn from 'classnames'\n\nimport styles from './Identicon.module.css'\n\nexport type IdenticonDataTestId = {\n root?: string\n}\n\nexport type IdenticonProps = ComponentPropsWithoutRef<'span'> & {\n address?: string\n size?: number\n dataTestId?: IdenticonDataTestId\n}\n\nexport const Identicon = forwardRef<HTMLSpanElement, IdenticonProps>(\n ({ address, size = 40, className, style, dataTestId, ...rest }, ref) => (\n <span\n ref={ref}\n className={cn(styles.root, !address && styles.empty, className)}\n style={{ width: size, height: size, ...style }}\n aria-hidden='true'\n data-testid={dataTestId?.root}\n {...rest}\n >\n {address ? (\n <Jazzicon diameter={size} seed={jsNumberForAddress(address)} />\n ) : null}\n </span>\n ),\n)\n\nIdenticon.displayName = 'Identicon'\n"],"names":["Identicon","forwardRef","_ref","ref","address","size","className","style","dataTestId","rest","_jsx","cn","styles","root","empty","width","height","children","Jazzicon","diameter","seed","jsNumberForAddress","displayName"],"mappings":";;;;;;;;;;AAiBO,MAAMA,SAAS,gBAAGC,gBAAU,CACjC,CAAAC,IAAA,EAAgEC,GAAG,KAAA;EAAA,IAAlE;IAAEC,OAAO;AAAEC,IAAAA,IAAI,GAAG,EAAE;IAAEC,SAAS;IAAEC,KAAK;IAAEC,UAAU;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAP,IAAA,CAAA;AAAA,EAAA,oBAC5DQ,cAAA,CAAA,MAAA,EAAA;AACEP,IAAAA,GAAG,EAAEA,GAAI;AACTG,IAAAA,SAAS,EAAEK,EAAE,CAACC,gBAAM,CAACC,IAAI,EAAE,CAACT,OAAO,IAAIQ,gBAAM,CAACE,KAAK,EAAER,SAAS,CAAE;AAChEC,IAAAA,KAAK,EAAE;AAAEQ,MAAAA,KAAK,EAAEV,IAAI;AAAEW,MAAAA,MAAM,EAAEX,IAAI;MAAE,GAAGE,KAAAA;KAAQ;AAC/C,IAAA,aAAA,EAAY,MAAM;IAClB,aAAaC,EAAAA,UAAU,EAAEK,IAAK;AAAA,IAAA,GAC1BJ,IAAI;AAAAQ,IAAAA,QAAA,EAEPb,OAAO,gBACNM,cAAA,CAACQ,QAAQ,EAAA;AAACC,MAAAA,QAAQ,EAAEd,IAAK;MAACe,IAAI,EAAEC,2BAAkB,CAACjB,OAAO,CAAA;AAAE,KAAE,CAAC,GAC7D,IAAA;AAAI,GACJ,CAAC,CAAA;AAAA,CAEX,EAAC;AAEDJ,SAAS,CAACsB,WAAW,GAAG,WAAW;;;;"}
@@ -20,6 +20,7 @@ const Input = /*#__PURE__*/react.forwardRef((_ref, ref) => {
20
20
  disabled,
21
21
  className,
22
22
  id,
23
+ dataTestId,
23
24
  ...rest
24
25
  } = _ref;
25
26
  const fallbackId = react.useId();
@@ -30,11 +31,13 @@ const Input = /*#__PURE__*/react.forwardRef((_ref, ref) => {
30
31
  const showErrorMessage = errorMessage != null;
31
32
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
32
33
  className: cn(Input_module.field, className),
34
+ "data-testid": dataTestId?.root,
33
35
  children: [label != null ? /*#__PURE__*/jsxRuntime.jsxs("span", {
34
36
  className: Input_module.labelRow,
35
37
  children: [/*#__PURE__*/jsxRuntime.jsx("label", {
36
38
  className: Input_module.label,
37
39
  htmlFor: inputId,
40
+ "data-testid": dataTestId?.label,
38
41
  children: label
39
42
  }), tooltip != null ? /*#__PURE__*/jsxRuntime.jsx(Tooltip.Tooltip, {
40
43
  content: tooltip,
@@ -51,6 +54,7 @@ const Input = /*#__PURE__*/react.forwardRef((_ref, ref) => {
51
54
  children: [icon ? /*#__PURE__*/jsxRuntime.jsx("span", {
52
55
  className: Input_module.icon,
53
56
  "aria-hidden": "true",
57
+ "data-testid": dataTestId?.icon,
54
58
  children: icon
55
59
  }) : null, /*#__PURE__*/jsxRuntime.jsx("input", {
56
60
  ref: ref,
@@ -59,15 +63,18 @@ const Input = /*#__PURE__*/react.forwardRef((_ref, ref) => {
59
63
  disabled: disabled,
60
64
  "aria-invalid": hasError || undefined,
61
65
  "aria-describedby": showErrorMessage ? errorId : undefined,
66
+ "data-testid": dataTestId?.input,
62
67
  ...rest
63
68
  })]
64
69
  }), showErrorMessage ? /*#__PURE__*/jsxRuntime.jsx("p", {
65
70
  id: errorId,
66
71
  className: Input_module.errorText,
67
72
  role: "alert",
73
+ "data-testid": dataTestId?.error,
68
74
  children: errorMessage
69
75
  }) : null, description != null ? /*#__PURE__*/jsxRuntime.jsx("p", {
70
76
  className: Input_module.description,
77
+ "data-testid": dataTestId?.description,
71
78
  children: description
72
79
  }) : null]
73
80
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Input.cjs","sources":["../../../src/input/Input.tsx"],"sourcesContent":["import {\n forwardRef,\n useId,\n type InputHTMLAttributes,\n type ReactNode,\n} from 'react'\n\nimport cn from 'classnames'\n\nimport { IconInfo } from '../icons'\nimport { Tooltip } from '../tooltip'\nimport styles from './Input.module.css'\n\nexport type InputSize = 'default' | 'small'\n\nexport type InputProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> & {\n size?: InputSize\n icon?: ReactNode\n label?: ReactNode\n tooltip?: ReactNode\n description?: ReactNode\n error?: ReactNode | boolean\n}\n\nexport const Input = forwardRef<HTMLInputElement, InputProps>(\n (\n {\n size = 'default',\n icon,\n label,\n tooltip,\n description,\n error,\n disabled,\n className,\n id,\n ...rest\n },\n ref,\n ) => {\n const fallbackId = useId()\n const inputId = id ?? fallbackId\n const errorId = `${inputId}-error`\n\n const hasError = Boolean(error)\n const errorMessage = typeof error === 'boolean' ? null : error\n const showErrorMessage = errorMessage != null\n\n return (\n <div className={cn(styles.field, className)}>\n {label != null ? (\n <span className={styles.labelRow}>\n <label className={styles.label} htmlFor={inputId}>\n {label}\n </label>\n {tooltip != null ? (\n <Tooltip content={tooltip}>\n <IconInfo className={styles.tooltipIcon} aria-hidden='true' />\n </Tooltip>\n ) : null}\n </span>\n ) : null}\n <label\n className={cn(styles.root, styles[size], {\n [styles.error]: hasError,\n [styles.disabled]: disabled,\n })}\n >\n {icon ? (\n <span className={styles.icon} aria-hidden='true'>\n {icon}\n </span>\n ) : null}\n <input\n ref={ref}\n id={inputId}\n className={styles.input}\n disabled={disabled}\n aria-invalid={hasError || undefined}\n aria-describedby={showErrorMessage ? errorId : undefined}\n {...rest}\n />\n </label>\n {showErrorMessage ? (\n <p id={errorId} className={styles.errorText} role='alert'>\n {errorMessage}\n </p>\n ) : null}\n {description != null ? (\n <p className={styles.description}>{description}</p>\n ) : null}\n </div>\n )\n },\n)\n\nInput.displayName = 'Input'\n"],"names":["Input","forwardRef","_ref","ref","size","icon","label","tooltip","description","error","disabled","className","id","rest","fallbackId","useId","inputId","errorId","hasError","Boolean","errorMessage","showErrorMessage","_jsxs","cn","styles","field","children","labelRow","_jsx","htmlFor","Tooltip","content","IconInfo","tooltipIcon","root","input","undefined","errorText","role","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Input.cjs","sources":["../../../src/input/Input.tsx"],"sourcesContent":["import {\n forwardRef,\n useId,\n type InputHTMLAttributes,\n type ReactNode,\n} from 'react'\n\nimport cn from 'classnames'\n\nimport { IconInfo } from '../icons'\nimport { Tooltip } from '../tooltip'\nimport styles from './Input.module.css'\n\nexport type InputSize = 'default' | 'small'\n\nexport type InputDataTestId = {\n root?: string\n label?: string\n icon?: string\n input?: string\n error?: string\n description?: string\n}\n\nexport type InputProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> & {\n size?: InputSize\n icon?: ReactNode\n label?: ReactNode\n tooltip?: ReactNode\n description?: ReactNode\n error?: ReactNode | boolean\n dataTestId?: InputDataTestId\n}\n\nexport const Input = forwardRef<HTMLInputElement, InputProps>(\n (\n {\n size = 'default',\n icon,\n label,\n tooltip,\n description,\n error,\n disabled,\n className,\n id,\n dataTestId,\n ...rest\n },\n ref,\n ) => {\n const fallbackId = useId()\n const inputId = id ?? fallbackId\n const errorId = `${inputId}-error`\n\n const hasError = Boolean(error)\n const errorMessage = typeof error === 'boolean' ? null : error\n const showErrorMessage = errorMessage != null\n\n return (\n <div\n className={cn(styles.field, className)}\n data-testid={dataTestId?.root}\n >\n {label != null ? (\n <span className={styles.labelRow}>\n <label\n className={styles.label}\n htmlFor={inputId}\n data-testid={dataTestId?.label}\n >\n {label}\n </label>\n {tooltip != null ? (\n <Tooltip content={tooltip}>\n <IconInfo className={styles.tooltipIcon} aria-hidden='true' />\n </Tooltip>\n ) : null}\n </span>\n ) : null}\n <label\n className={cn(styles.root, styles[size], {\n [styles.error]: hasError,\n [styles.disabled]: disabled,\n })}\n >\n {icon ? (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.icon}\n >\n {icon}\n </span>\n ) : null}\n <input\n ref={ref}\n id={inputId}\n className={styles.input}\n disabled={disabled}\n aria-invalid={hasError || undefined}\n aria-describedby={showErrorMessage ? errorId : undefined}\n data-testid={dataTestId?.input}\n {...rest}\n />\n </label>\n {showErrorMessage ? (\n <p\n id={errorId}\n className={styles.errorText}\n role='alert'\n data-testid={dataTestId?.error}\n >\n {errorMessage}\n </p>\n ) : null}\n {description != null ? (\n <p\n className={styles.description}\n data-testid={dataTestId?.description}\n >\n {description}\n </p>\n ) : null}\n </div>\n )\n },\n)\n\nInput.displayName = 'Input'\n"],"names":["Input","forwardRef","_ref","ref","size","icon","label","tooltip","description","error","disabled","className","id","dataTestId","rest","fallbackId","useId","inputId","errorId","hasError","Boolean","errorMessage","showErrorMessage","_jsxs","cn","styles","field","root","children","labelRow","_jsx","htmlFor","Tooltip","content","IconInfo","tooltipIcon","input","undefined","errorText","role","displayName"],"mappings":";;;;;;;;;;;AAkCO,MAAMA,KAAK,gBAAGC,gBAAU,CAC7B,CAAAC,IAAA,EAcEC,GAAG,KACA;EAAA,IAdH;AACEC,IAAAA,IAAI,GAAG,SAAS;IAChBC,IAAI;IACJC,KAAK;IACLC,OAAO;IACPC,WAAW;IACXC,KAAK;IACLC,QAAQ;IACRC,SAAS;IACTC,EAAE;IACFC,UAAU;IACV,GAAGC,IAAAA;AACL,GAAC,GAAAZ,IAAA,CAAA;AAGD,EAAA,MAAMa,UAAU,GAAGC,WAAK,EAAE,CAAA;AAC1B,EAAA,MAAMC,OAAO,GAAGL,EAAE,IAAIG,UAAU,CAAA;AAChC,EAAA,MAAMG,OAAO,GAAG,CAAGD,EAAAA,OAAO,CAAQ,MAAA,CAAA,CAAA;AAElC,EAAA,MAAME,QAAQ,GAAGC,OAAO,CAACX,KAAK,CAAC,CAAA;EAC/B,MAAMY,YAAY,GAAG,OAAOZ,KAAK,KAAK,SAAS,GAAG,IAAI,GAAGA,KAAK,CAAA;AAC9D,EAAA,MAAMa,gBAAgB,GAAGD,YAAY,IAAI,IAAI,CAAA;AAE7C,EAAA,oBACEE,eAAA,CAAA,KAAA,EAAA;IACEZ,SAAS,EAAEa,EAAE,CAACC,YAAM,CAACC,KAAK,EAAEf,SAAS,CAAE;IACvC,aAAaE,EAAAA,UAAU,EAAEc,IAAK;AAAAC,IAAAA,QAAA,EAE7BtB,CAAAA,KAAK,IAAI,IAAI,gBACZiB,eAAA,CAAA,MAAA,EAAA;MAAMZ,SAAS,EAAEc,YAAM,CAACI,QAAS;AAAAD,MAAAA,QAAA,gBAC/BE,cAAA,CAAA,OAAA,EAAA;QACEnB,SAAS,EAAEc,YAAM,CAACnB,KAAM;AACxByB,QAAAA,OAAO,EAAEd,OAAQ;QACjB,aAAaJ,EAAAA,UAAU,EAAEP,KAAM;AAAAsB,QAAAA,QAAA,EAE9BtB,KAAAA;OACI,CAAC,EACPC,OAAO,IAAI,IAAI,gBACduB,cAAA,CAACE,eAAO,EAAA;AAACC,QAAAA,OAAO,EAAE1B,OAAQ;QAAAqB,QAAA,eACxBE,cAAA,CAACI,iBAAQ,EAAA;UAACvB,SAAS,EAAEc,YAAM,CAACU,WAAY;UAAC,aAAY,EAAA,MAAA;SAAQ,CAAA;OACtD,CAAC,GACR,IAAI,CAAA;AAAA,KACJ,CAAC,GACL,IAAI,eACRZ,eAAA,CAAA,OAAA,EAAA;MACEZ,SAAS,EAAEa,EAAE,CAACC,YAAM,CAACE,IAAI,EAAEF,YAAM,CAACrB,IAAI,CAAC,EAAE;AACvC,QAAA,CAACqB,YAAM,CAAChB,KAAK,GAAGU,QAAQ;QACxB,CAACM,YAAM,CAACf,QAAQ,GAAGA,QAAAA;AACrB,OAAC,CAAE;MAAAkB,QAAA,EAAA,CAEFvB,IAAI,gBACHyB,cAAA,CAAA,MAAA,EAAA;QACEnB,SAAS,EAAEc,YAAM,CAACpB,IAAK;AACvB,QAAA,aAAA,EAAY,MAAM;QAClB,aAAaQ,EAAAA,UAAU,EAAER,IAAK;AAAAuB,QAAAA,QAAA,EAE7BvB,IAAAA;AAAI,OACD,CAAC,GACL,IAAI,eACRyB,cAAA,CAAA,OAAA,EAAA;AACE3B,QAAAA,GAAG,EAAEA,GAAI;AACTS,QAAAA,EAAE,EAAEK,OAAQ;QACZN,SAAS,EAAEc,YAAM,CAACW,KAAM;AACxB1B,QAAAA,QAAQ,EAAEA,QAAS;QACnB,cAAcS,EAAAA,QAAQ,IAAIkB,SAAU;AACpC,QAAA,kBAAA,EAAkBf,gBAAgB,GAAGJ,OAAO,GAAGmB,SAAU;QACzD,aAAaxB,EAAAA,UAAU,EAAEuB,KAAM;QAAA,GAC3BtB,IAAAA;AAAI,OACT,CAAC,CAAA;AAAA,KACG,CAAC,EACPQ,gBAAgB,gBACfQ,cAAA,CAAA,GAAA,EAAA;AACElB,MAAAA,EAAE,EAAEM,OAAQ;MACZP,SAAS,EAAEc,YAAM,CAACa,SAAU;AAC5BC,MAAAA,IAAI,EAAC,OAAO;MACZ,aAAa1B,EAAAA,UAAU,EAAEJ,KAAM;AAAAmB,MAAAA,QAAA,EAE9BP,YAAAA;KACA,CAAC,GACF,IAAI,EACPb,WAAW,IAAI,IAAI,gBAClBsB,cAAA,CAAA,GAAA,EAAA;MACEnB,SAAS,EAAEc,YAAM,CAACjB,WAAY;MAC9B,aAAaK,EAAAA,UAAU,EAAEL,WAAY;AAAAoB,MAAAA,QAAA,EAEpCpB,WAAAA;KACA,CAAC,GACF,IAAI,CAAA;AAAA,GACL,CAAC,CAAA;AAEV,CACF,EAAC;AAEDR,KAAK,CAACwC,WAAW,GAAG,OAAO;;;;"}
@@ -24,23 +24,28 @@ const MessageBox = _ref => {
24
24
  headline,
25
25
  className,
26
26
  children,
27
+ dataTestId,
27
28
  ...rest
28
29
  } = _ref;
29
30
  const Icon = variantIcons[variant];
30
31
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
31
32
  className: cn(MessageBox_module.box, MessageBox_module[variant], className),
33
+ "data-testid": dataTestId?.root,
32
34
  ...rest,
33
35
  children: [icon ? /*#__PURE__*/jsxRuntime.jsx("span", {
34
36
  className: MessageBox_module.icon,
35
37
  "aria-hidden": "true",
38
+ "data-testid": dataTestId?.icon,
36
39
  children: /*#__PURE__*/jsxRuntime.jsx(Icon, {})
37
40
  }) : null, /*#__PURE__*/jsxRuntime.jsxs("div", {
38
41
  className: MessageBox_module.text,
39
42
  children: [headline != null ? /*#__PURE__*/jsxRuntime.jsx("div", {
40
43
  className: MessageBox_module.headline,
44
+ "data-testid": dataTestId?.headline,
41
45
  children: headline
42
46
  }) : null, /*#__PURE__*/jsxRuntime.jsx("div", {
43
47
  className: MessageBox_module.description,
48
+ "data-testid": dataTestId?.description,
44
49
  children: children
45
50
  })]
46
51
  })]