@helsenorge/designsystem-react 2.17.0 → 3.0.1

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 (1006) hide show
  1. package/AnchorLink.js +1 -1
  2. package/AnchorLink.js.map +1 -1
  3. package/Avatar.js +1 -1
  4. package/Avatar.js.map +1 -1
  5. package/Badge.js +1 -1
  6. package/Badge.js.map +1 -1
  7. package/Button.js +1 -1
  8. package/Button.js.map +1 -1
  9. package/CHANGELOG.md +60 -2
  10. package/Checkbox.js +1 -1
  11. package/Checkbox.js.map +1 -1
  12. package/Close.js +1 -1
  13. package/Close.js.map +1 -1
  14. package/ErrorWrapper.js +1 -1
  15. package/ErrorWrapper.js.map +1 -1
  16. package/FormGroup.js +1 -1
  17. package/FormGroup.js.map +1 -1
  18. package/FormLayout.js +1 -1
  19. package/FormLayout.js.map +1 -1
  20. package/HelpBubble.js +1 -1
  21. package/HelpBubble.js.map +1 -1
  22. package/HorizontalScroll.js +1 -1
  23. package/HorizontalScroll.js.map +1 -1
  24. package/Input.js +1 -1
  25. package/Input.js.map +1 -1
  26. package/ListHeader.js +1 -1
  27. package/ListHeader.js.map +1 -1
  28. package/ListHeaderText.js +1 -1
  29. package/ListHeaderText.js.map +1 -1
  30. package/MaxCharacters.js +1 -1
  31. package/MaxCharacters.js.map +1 -1
  32. package/Modal.js +1 -1
  33. package/Modal.js.map +1 -1
  34. package/Panel.js +1 -1
  35. package/Panel.js.map +1 -1
  36. package/PopOver.js +2 -0
  37. package/PopOver.js.map +1 -0
  38. package/RadioButton.js +1 -1
  39. package/RadioButton.js.map +1 -1
  40. package/Select.js +1 -1
  41. package/Select.js.map +1 -1
  42. package/Spacer.js +1 -1
  43. package/Spacer.js.map +1 -1
  44. package/StatusDot.js +1 -1
  45. package/StatusDot.js.map +1 -1
  46. package/TableBody.js +1 -1
  47. package/TableBody.js.map +1 -1
  48. package/TableCell.js +1 -1
  49. package/TableCell.js.map +1 -1
  50. package/TableExpandedRow.js +1 -1
  51. package/TableExpandedRow.js.map +1 -1
  52. package/TableExpanderCell.js +1 -1
  53. package/TableExpanderCell.js.map +1 -1
  54. package/TableHead.js +1 -1
  55. package/TableHead.js.map +1 -1
  56. package/TableHeadCell.js +1 -1
  57. package/TableHeadCell.js.map +1 -1
  58. package/TableRow.js +1 -1
  59. package/TableRow.js.map +1 -1
  60. package/Textarea.js +1 -1
  61. package/Textarea.js.map +1 -1
  62. package/Title.js +1 -1
  63. package/Title.js.map +1 -1
  64. package/Tooltip.js +1 -1
  65. package/Tooltip.js.map +1 -1
  66. package/TooltipWord.js +1 -1
  67. package/TooltipWord.js.map +1 -1
  68. package/Validation.js +1 -1
  69. package/Validation.js.map +1 -1
  70. package/__mocks__/matchMedia.d.ts +1 -1
  71. package/__mocks__/matchMedia.d.ts.map +1 -1
  72. package/components/AnchorLink/AnchorLink.d.ts +2 -2
  73. package/components/AnchorLink/AnchorLink.d.ts.map +1 -1
  74. package/components/AnchorLink/index.js +1 -1
  75. package/components/AnchorLink/styles.module.scss +19 -11
  76. package/components/Avatar/Avatar.d.ts +1 -1
  77. package/components/Avatar/Avatar.d.ts.map +1 -1
  78. package/components/Avatar/index.js +1 -1
  79. package/components/Avatar/styles.module.scss +2 -2
  80. package/components/Badge/Badge.d.ts +3 -3
  81. package/components/Badge/Badge.d.ts.map +1 -1
  82. package/components/Badge/index.js +1 -1
  83. package/components/Badge/styles.module.scss +7 -1
  84. package/components/Button/Button.d.ts +7 -7
  85. package/components/Button/Button.d.ts.map +1 -1
  86. package/components/Button/componentdata.json +1 -1
  87. package/components/Button/index.js +1 -1
  88. package/components/Button/styles.module.scss +35 -21
  89. package/components/ButtonWithModal/ButtonWithModal.d.ts.map +1 -1
  90. package/components/ButtonWithModal/index.js +1 -1
  91. package/components/ButtonWithModal/index.js.map +1 -1
  92. package/components/Checkbox/Checkbox.d.ts.map +1 -1
  93. package/components/Checkbox/componentdata.json +1 -1
  94. package/components/Checkbox/index.js +1 -1
  95. package/components/Checkbox/styles.module.scss +12 -12
  96. package/components/Close/Close.d.ts +8 -2
  97. package/components/Close/Close.d.ts.map +1 -1
  98. package/components/Close/componentdata.json +1 -1
  99. package/components/Close/index.js +1 -1
  100. package/components/Close/styles.module.scss +16 -8
  101. package/components/Dropdown/Dropdown.d.ts.map +1 -1
  102. package/components/Dropdown/componentdata.json +1 -1
  103. package/components/Dropdown/index.js +1 -1
  104. package/components/Dropdown/index.js.map +1 -1
  105. package/components/Dropdown/styles.module.scss +31 -10
  106. package/components/Duolist/Duolist.d.ts +4 -4
  107. package/components/Duolist/Duolist.d.ts.map +1 -1
  108. package/components/Duolist/index.js +1 -1
  109. package/components/Duolist/index.js.map +1 -1
  110. package/components/Duolist/styles.module.scss +5 -3
  111. package/components/ErrorWrapper/ErrorWrapper.d.ts.map +1 -1
  112. package/components/ErrorWrapper/componentdata.json +1 -1
  113. package/components/ErrorWrapper/index.js +1 -1
  114. package/components/ErrorWrapper/styles.module.scss +8 -6
  115. package/components/Expander/Expander.d.ts +2 -2
  116. package/components/Expander/Expander.d.ts.map +1 -1
  117. package/components/Expander/componentdata.json +1 -1
  118. package/components/Expander/index.js +1 -1
  119. package/components/Expander/index.js.map +1 -1
  120. package/components/Expander/styles.module.scss +46 -15
  121. package/components/ExpanderHierarchy/Expander.d.ts +18 -0
  122. package/components/ExpanderHierarchy/Expander.d.ts.map +1 -0
  123. package/components/ExpanderHierarchy/ExpanderButton.d.ts +11 -0
  124. package/components/ExpanderHierarchy/ExpanderButton.d.ts.map +1 -0
  125. package/components/ExpanderHierarchy/ExpanderHierarchy.d.ts +22 -0
  126. package/components/ExpanderHierarchy/ExpanderHierarchy.d.ts.map +1 -0
  127. package/components/ExpanderHierarchy/componentdata.json +1 -0
  128. package/components/ExpanderHierarchy/expander.module.scss +152 -0
  129. package/components/ExpanderHierarchy/expander.module.scss.d.ts +25 -0
  130. package/components/ExpanderHierarchy/index.d.ts +4 -0
  131. package/components/ExpanderHierarchy/index.d.ts.map +1 -0
  132. package/components/ExpanderHierarchy/index.js +2 -0
  133. package/components/ExpanderHierarchy/index.js.map +1 -0
  134. package/components/ExpanderHierarchy/styles.module.scss +17 -0
  135. package/components/ExpanderHierarchy/styles.module.scss.d.ts +11 -0
  136. package/components/ExpanderHierarchy/utils.d.ts +3 -0
  137. package/components/ExpanderHierarchy/utils.d.ts.map +1 -0
  138. package/components/ExpanderList/ExpanderList.d.ts +4 -4
  139. package/components/ExpanderList/ExpanderList.d.ts.map +1 -1
  140. package/components/ExpanderList/index.js +1 -1
  141. package/components/ExpanderList/index.js.map +1 -1
  142. package/components/ExpanderList/styles.module.scss +17 -6
  143. package/components/FormExample/FormExample.d.ts.map +1 -1
  144. package/components/FormExample/index.js +3 -3
  145. package/components/FormExample/index.js.map +1 -1
  146. package/components/FormExample/styles.module.scss +6 -6
  147. package/components/FormGroup/FormGroup.d.ts +1 -1
  148. package/components/FormGroup/FormGroup.d.ts.map +1 -1
  149. package/components/FormGroup/index.js +1 -1
  150. package/components/FormGroup/styles.module.scss +5 -4
  151. package/components/FormLayout/FormLayout.d.ts.map +1 -1
  152. package/components/FormLayout/index.js +1 -1
  153. package/components/FormLayout/styles.module.scss +5 -2
  154. package/components/GridExample/index.js +1 -1
  155. package/components/GridExample/index.js.map +1 -1
  156. package/components/HelpBubble/HelpBubble.d.ts +5 -8
  157. package/components/HelpBubble/HelpBubble.d.ts.map +1 -1
  158. package/components/HelpBubble/index.js +1 -1
  159. package/components/HelpBubble/styles.module.scss +10 -51
  160. package/components/HelpBubble/styles.module.scss.d.ts +0 -4
  161. package/components/HelpBubbleExample/componentdata.json +1 -1
  162. package/components/HelpBubbleExample/index.js +1 -1
  163. package/components/HelpBubbleExample/index.js.map +1 -1
  164. package/components/HighlightBox/HighlightBox.d.ts +2 -2
  165. package/components/HighlightBox/HighlightBox.d.ts.map +1 -1
  166. package/components/HighlightBox/componentdata.json +1 -1
  167. package/components/HighlightBox/index.js +1 -1
  168. package/components/HighlightBox/index.js.map +1 -1
  169. package/components/HighlightBox/styles.module.scss +38 -29
  170. package/components/HorizontalScroll/HorizontalScroll.d.ts.map +1 -1
  171. package/components/HorizontalScroll/index.js +1 -1
  172. package/components/HorizontalScroll/styles.module.scss +10 -3
  173. package/components/Icons/ActiveMonitoring.d.ts.map +1 -1
  174. package/components/Icons/ActiveMonitoring.js.map +1 -1
  175. package/components/Icons/AcupunctureBack.d.ts.map +1 -1
  176. package/components/Icons/AcupunctureBack.js.map +1 -1
  177. package/components/Icons/AlarmClock.d.ts.map +1 -1
  178. package/components/Icons/AlarmClock.js.map +1 -1
  179. package/components/Icons/AlertSignFill.d.ts.map +1 -1
  180. package/components/Icons/AlertSignFill.js.map +1 -1
  181. package/components/Icons/AlertSignStroke.d.ts.map +1 -1
  182. package/components/Icons/AlertSignStroke.js.map +1 -1
  183. package/components/Icons/Amputation.d.ts.map +1 -1
  184. package/components/Icons/Amputation.js.map +1 -1
  185. package/components/Icons/Anxiety.d.ts.map +1 -1
  186. package/components/Icons/Anxiety.js.map +1 -1
  187. package/components/Icons/Apple.d.ts.map +1 -1
  188. package/components/Icons/Apple.js.map +1 -1
  189. package/components/Icons/Archive.d.ts.map +1 -1
  190. package/components/Icons/Archive.js.map +1 -1
  191. package/components/Icons/ArmFlexing.d.ts.map +1 -1
  192. package/components/Icons/ArmFlexing.js.map +1 -1
  193. package/components/Icons/ArrowDown.d.ts.map +1 -1
  194. package/components/Icons/ArrowDown.js.map +1 -1
  195. package/components/Icons/ArrowLeft.d.ts.map +1 -1
  196. package/components/Icons/ArrowLeft.js.map +1 -1
  197. package/components/Icons/ArrowRight.d.ts.map +1 -1
  198. package/components/Icons/ArrowRight.js.map +1 -1
  199. package/components/Icons/ArrowUp.d.ts.map +1 -1
  200. package/components/Icons/ArrowUp.js.map +1 -1
  201. package/components/Icons/ArrowUpRight.d.ts.map +1 -1
  202. package/components/Icons/ArrowUpRight.js.map +1 -1
  203. package/components/Icons/Attachment.d.ts.map +1 -1
  204. package/components/Icons/Attachment.js.map +1 -1
  205. package/components/Icons/Atv.d.ts.map +1 -1
  206. package/components/Icons/Atv.js.map +1 -1
  207. package/components/Icons/Avatar.d.ts.map +1 -1
  208. package/components/Icons/Avatar.js.map +1 -1
  209. package/components/Icons/AwakePersonOnPillow.d.ts.map +1 -1
  210. package/components/Icons/AwakePersonOnPillow.js.map +1 -1
  211. package/components/Icons/Baby.d.ts.map +1 -1
  212. package/components/Icons/Baby.js.map +1 -1
  213. package/components/Icons/BandAid.d.ts.map +1 -1
  214. package/components/Icons/BandAid.js.map +1 -1
  215. package/components/Icons/BeerAndPills.d.ts.map +1 -1
  216. package/components/Icons/BeerAndPills.js.map +1 -1
  217. package/components/Icons/Bell.d.ts.map +1 -1
  218. package/components/Icons/Bell.js.map +1 -1
  219. package/components/Icons/Bike.d.ts.map +1 -1
  220. package/components/Icons/Bike.js.map +1 -1
  221. package/components/Icons/BirthControl.d.ts.map +1 -1
  222. package/components/Icons/BirthControl.js.map +1 -1
  223. package/components/Icons/BirthdayCake.d.ts.map +1 -1
  224. package/components/Icons/BirthdayCake.js.map +1 -1
  225. package/components/Icons/Boat.d.ts.map +1 -1
  226. package/components/Icons/Boat.js.map +1 -1
  227. package/components/Icons/Body.d.ts.map +1 -1
  228. package/components/Icons/Body.js.map +1 -1
  229. package/components/Icons/Brain.d.ts.map +1 -1
  230. package/components/Icons/Brain.js.map +1 -1
  231. package/components/Icons/BreastReconstruction.d.ts.map +1 -1
  232. package/components/Icons/BreastReconstruction.js.map +1 -1
  233. package/components/Icons/BreastRemoval.d.ts.map +1 -1
  234. package/components/Icons/BreastRemoval.js.map +1 -1
  235. package/components/Icons/Breasts.d.ts.map +1 -1
  236. package/components/Icons/Breasts.js.map +1 -1
  237. package/components/Icons/BrokenHeart.d.ts.map +1 -1
  238. package/components/Icons/BrokenHeart.js.map +1 -1
  239. package/components/Icons/BrokenPuzzle.d.ts.map +1 -1
  240. package/components/Icons/BrokenPuzzle.js.map +1 -1
  241. package/components/Icons/Bus.d.ts.map +1 -1
  242. package/components/Icons/Bus.js.map +1 -1
  243. package/components/Icons/Calendar.d.ts.map +1 -1
  244. package/components/Icons/Calendar.js.map +1 -1
  245. package/components/Icons/CalendarChange.d.ts.map +1 -1
  246. package/components/Icons/CalendarChange.js.map +1 -1
  247. package/components/Icons/CalendarCheck.d.ts.map +1 -1
  248. package/components/Icons/CalendarCheck.js.map +1 -1
  249. package/components/Icons/CalendarEvent.d.ts.map +1 -1
  250. package/components/Icons/CalendarEvent.js.map +1 -1
  251. package/components/Icons/CalendarSave.d.ts.map +1 -1
  252. package/components/Icons/CalendarSave.js.map +1 -1
  253. package/components/Icons/Cancer.d.ts.map +1 -1
  254. package/components/Icons/Cancer.js.map +1 -1
  255. package/components/Icons/Car.d.ts.map +1 -1
  256. package/components/Icons/Car.js.map +1 -1
  257. package/components/Icons/Change.d.ts.map +1 -1
  258. package/components/Icons/Change.js.map +1 -1
  259. package/components/Icons/Check.d.ts.map +1 -1
  260. package/components/Icons/Check.js.map +1 -1
  261. package/components/Icons/CheckFill.d.ts.map +1 -1
  262. package/components/Icons/CheckFill.js.map +1 -1
  263. package/components/Icons/CheckOutline.d.ts.map +1 -1
  264. package/components/Icons/CheckOutline.js.map +1 -1
  265. package/components/Icons/Chest.d.ts.map +1 -1
  266. package/components/Icons/Chest.js.map +1 -1
  267. package/components/Icons/ChevronDown.d.ts.map +1 -1
  268. package/components/Icons/ChevronDown.js.map +1 -1
  269. package/components/Icons/ChevronLeft.d.ts.map +1 -1
  270. package/components/Icons/ChevronLeft.js.map +1 -1
  271. package/components/Icons/ChevronRight.d.ts.map +1 -1
  272. package/components/Icons/ChevronRight.js.map +1 -1
  273. package/components/Icons/ChevronUp.d.ts.map +1 -1
  274. package/components/Icons/ChevronUp.js.map +1 -1
  275. package/components/Icons/ChevronsDown.d.ts.map +1 -1
  276. package/components/Icons/ChevronsDown.js.map +1 -1
  277. package/components/Icons/ChevronsUp.d.ts.map +1 -1
  278. package/components/Icons/ChevronsUp.js.map +1 -1
  279. package/components/Icons/ChildPlaying.d.ts.map +1 -1
  280. package/components/Icons/ChildPlaying.js.map +1 -1
  281. package/components/Icons/Cigarette.d.ts.map +1 -1
  282. package/components/Icons/Cigarette.js.map +1 -1
  283. package/components/Icons/Coins.d.ts.map +1 -1
  284. package/components/Icons/Coins.js.map +1 -1
  285. package/components/Icons/Contacts.d.ts.map +1 -1
  286. package/components/Icons/Contacts.js.map +1 -1
  287. package/components/Icons/Copy.d.ts.map +1 -1
  288. package/components/Icons/Copy.js.map +1 -1
  289. package/components/Icons/CoronaCertificate.d.ts.map +1 -1
  290. package/components/Icons/CoronaCertificate.js.map +1 -1
  291. package/components/Icons/Coronavirus.d.ts.map +1 -1
  292. package/components/Icons/Coronavirus.js.map +1 -1
  293. package/components/Icons/Cough.d.ts.map +1 -1
  294. package/components/Icons/Cough.js.map +1 -1
  295. package/components/Icons/CriticalHealthInfo.d.ts.map +1 -1
  296. package/components/Icons/CriticalHealthInfo.js.map +1 -1
  297. package/components/Icons/Cross.d.ts.map +1 -1
  298. package/components/Icons/Cross.js.map +1 -1
  299. package/components/Icons/DataExchange.d.ts.map +1 -1
  300. package/components/Icons/DataExchange.js.map +1 -1
  301. package/components/Icons/DataReceived.d.ts.map +1 -1
  302. package/components/Icons/DataReceived.js.map +1 -1
  303. package/components/Icons/DataSent.d.ts.map +1 -1
  304. package/components/Icons/DataSent.js.map +1 -1
  305. package/components/Icons/Depression.d.ts.map +1 -1
  306. package/components/Icons/Depression.js.map +1 -1
  307. package/components/Icons/DigestiveSystem.d.ts.map +1 -1
  308. package/components/Icons/DigestiveSystem.js.map +1 -1
  309. package/components/Icons/Dizzy.d.ts.map +1 -1
  310. package/components/Icons/Dizzy.js.map +1 -1
  311. package/components/Icons/Documents.d.ts.map +1 -1
  312. package/components/Icons/Documents.js.map +1 -1
  313. package/components/Icons/Dog.d.ts.map +1 -1
  314. package/components/Icons/Dog.js.map +1 -1
  315. package/components/Icons/DonorCard.d.ts.map +1 -1
  316. package/components/Icons/DonorCard.js.map +1 -1
  317. package/components/Icons/Download.d.ts.map +1 -1
  318. package/components/Icons/Download.js.map +1 -1
  319. package/components/Icons/Draft.d.ts.map +1 -1
  320. package/components/Icons/Draft.js.map +1 -1
  321. package/components/Icons/EChat.d.ts.map +1 -1
  322. package/components/Icons/EChat.js.map +1 -1
  323. package/components/Icons/EarNoseThroat.d.ts.map +1 -1
  324. package/components/Icons/EarNoseThroat.js.map +1 -1
  325. package/components/Icons/ElderlyPerson.d.ts.map +1 -1
  326. package/components/Icons/ElderlyPerson.js.map +1 -1
  327. package/components/Icons/Embolization.d.ts.map +1 -1
  328. package/components/Icons/Embolization.js.map +1 -1
  329. package/components/Icons/EmoticonAnnoyed.d.ts.map +1 -1
  330. package/components/Icons/EmoticonAnnoyed.js.map +1 -1
  331. package/components/Icons/EmoticonDelighted.d.ts.map +1 -1
  332. package/components/Icons/EmoticonDelighted.js.map +1 -1
  333. package/components/Icons/EmoticonDisappointed.d.ts.map +1 -1
  334. package/components/Icons/EmoticonDisappointed.js.map +1 -1
  335. package/components/Icons/EmoticonHappy.d.ts.map +1 -1
  336. package/components/Icons/EmoticonHappy.js.map +1 -1
  337. package/components/Icons/EmoticonMeh.d.ts.map +1 -1
  338. package/components/Icons/EmoticonMeh.js.map +1 -1
  339. package/components/Icons/EnterFullScreen.d.ts.map +1 -1
  340. package/components/Icons/EnterFullScreen.js.map +1 -1
  341. package/components/Icons/Envelope.d.ts.map +1 -1
  342. package/components/Icons/Envelope.js.map +1 -1
  343. package/components/Icons/Epilepsy.d.ts.map +1 -1
  344. package/components/Icons/Epilepsy.js.map +1 -1
  345. package/components/Icons/Eraser.d.ts.map +1 -1
  346. package/components/Icons/Eraser.js.map +1 -1
  347. package/components/Icons/ErrorSignFill.d.ts.map +1 -1
  348. package/components/Icons/ErrorSignFill.js.map +1 -1
  349. package/components/Icons/ErrorSignStroke.d.ts.map +1 -1
  350. package/components/Icons/ErrorSignStroke.js.map +1 -1
  351. package/components/Icons/EuropeanHealthCard.d.ts.map +1 -1
  352. package/components/Icons/EuropeanHealthCard.js.map +1 -1
  353. package/components/Icons/ExitFullScreen.d.ts.map +1 -1
  354. package/components/Icons/ExitFullScreen.js.map +1 -1
  355. package/components/Icons/Eye.d.ts.map +1 -1
  356. package/components/Icons/Eye.js.map +1 -1
  357. package/components/Icons/Facebook.d.ts.map +1 -1
  358. package/components/Icons/Facebook.js.map +1 -1
  359. package/components/Icons/Female.d.ts.map +1 -1
  360. package/components/Icons/Female.js.map +1 -1
  361. package/components/Icons/FemaleDoctor.d.ts.map +1 -1
  362. package/components/Icons/FemaleDoctor.js.map +1 -1
  363. package/components/Icons/Ferry.d.ts.map +1 -1
  364. package/components/Icons/Ferry.js.map +1 -1
  365. package/components/Icons/File.d.ts.map +1 -1
  366. package/components/Icons/File.js.map +1 -1
  367. package/components/Icons/Filter.d.ts.map +1 -1
  368. package/components/Icons/Filter.js.map +1 -1
  369. package/components/Icons/FingerBleed.d.ts.map +1 -1
  370. package/components/Icons/FingerBleed.js.map +1 -1
  371. package/components/Icons/FirstAidKit.d.ts.map +1 -1
  372. package/components/Icons/FirstAidKit.js.map +1 -1
  373. package/components/Icons/FloppyDisk.d.ts.map +1 -1
  374. package/components/Icons/FloppyDisk.js.map +1 -1
  375. package/components/Icons/Football.d.ts.map +1 -1
  376. package/components/Icons/Football.js.map +1 -1
  377. package/components/Icons/Form.d.ts.map +1 -1
  378. package/components/Icons/Form.js.map +1 -1
  379. package/components/Icons/Forward.d.ts.map +1 -1
  380. package/components/Icons/Forward.js.map +1 -1
  381. package/components/Icons/Gallery.d.ts.map +1 -1
  382. package/components/Icons/Gallery.js.map +1 -1
  383. package/components/Icons/Garden.d.ts.map +1 -1
  384. package/components/Icons/Garden.js.map +1 -1
  385. package/components/Icons/GasCan.d.ts.map +1 -1
  386. package/components/Icons/GasCan.js.map +1 -1
  387. package/components/Icons/GenderIdentity.d.ts.map +1 -1
  388. package/components/Icons/GenderIdentity.js.map +1 -1
  389. package/components/Icons/Globe.d.ts.map +1 -1
  390. package/components/Icons/Globe.js.map +1 -1
  391. package/components/Icons/Group.d.ts.map +1 -1
  392. package/components/Icons/Group.js.map +1 -1
  393. package/components/Icons/HandWaving.d.ts.map +1 -1
  394. package/components/Icons/HandWaving.js.map +1 -1
  395. package/components/Icons/HandWithDisease.d.ts.map +1 -1
  396. package/components/Icons/HandWithDisease.js.map +1 -1
  397. package/components/Icons/HealthClinic.d.ts.map +1 -1
  398. package/components/Icons/HealthClinic.js.map +1 -1
  399. package/components/Icons/HealthWarning.d.ts.map +1 -1
  400. package/components/Icons/HealthWarning.js.map +1 -1
  401. package/components/Icons/Heart.d.ts.map +1 -1
  402. package/components/Icons/Heart.js.map +1 -1
  403. package/components/Icons/HeartHands.d.ts.map +1 -1
  404. package/components/Icons/HeartHands.js.map +1 -1
  405. package/components/Icons/HelpSign.d.ts.map +1 -1
  406. package/components/Icons/HelpSign.js.map +1 -1
  407. package/components/Icons/HelpingHand.d.ts.map +1 -1
  408. package/components/Icons/HelpingHand.js.map +1 -1
  409. package/components/Icons/Hemodialysis.d.ts.map +1 -1
  410. package/components/Icons/Hemodialysis.js.map +1 -1
  411. package/components/Icons/Hiker.d.ts.map +1 -1
  412. package/components/Icons/Hiker.js.map +1 -1
  413. package/components/Icons/Hipprosthesis.d.ts.map +1 -1
  414. package/components/Icons/Hipprosthesis.js.map +1 -1
  415. package/components/Icons/History.d.ts.map +1 -1
  416. package/components/Icons/History.js.map +1 -1
  417. package/components/Icons/HivAndAids.d.ts.map +1 -1
  418. package/components/Icons/HivAndAids.js.map +1 -1
  419. package/components/Icons/Home.d.ts.map +1 -1
  420. package/components/Icons/Home.js.map +1 -1
  421. package/components/Icons/Hormone.d.ts.map +1 -1
  422. package/components/Icons/Hormone.js.map +1 -1
  423. package/components/Icons/Hospital.d.ts.map +1 -1
  424. package/components/Icons/Hospital.js.map +1 -1
  425. package/components/Icons/Hourglass.d.ts.map +1 -1
  426. package/components/Icons/Hourglass.js.map +1 -1
  427. package/components/Icons/Icon.d.ts +1 -1
  428. package/components/Icons/Icon.d.ts.map +1 -1
  429. package/components/Icons/Icon.js +1 -1
  430. package/components/Icons/Icon.js.map +1 -1
  431. package/components/Icons/ImgFile.d.ts.map +1 -1
  432. package/components/Icons/ImgFile.js.map +1 -1
  433. package/components/Icons/Inbox.d.ts.map +1 -1
  434. package/components/Icons/Inbox.js.map +1 -1
  435. package/components/Icons/InfoSignFill.d.ts.map +1 -1
  436. package/components/Icons/InfoSignFill.js.map +1 -1
  437. package/components/Icons/InfoSignStroke.d.ts.map +1 -1
  438. package/components/Icons/InfoSignStroke.js.map +1 -1
  439. package/components/Icons/Instagram.d.ts.map +1 -1
  440. package/components/Icons/Instagram.js.map +1 -1
  441. package/components/Icons/Intravenous.d.ts.map +1 -1
  442. package/components/Icons/Intravenous.js.map +1 -1
  443. package/components/Icons/JointPain.d.ts.map +1 -1
  444. package/components/Icons/JointPain.js.map +1 -1
  445. package/components/Icons/Journal.d.ts.map +1 -1
  446. package/components/Icons/Journal.js.map +1 -1
  447. package/components/Icons/JpgFile.d.ts.map +1 -1
  448. package/components/Icons/JpgFile.js.map +1 -1
  449. package/components/Icons/Kidney.d.ts.map +1 -1
  450. package/components/Icons/Kidney.js.map +1 -1
  451. package/components/Icons/KitchenScale.d.ts.map +1 -1
  452. package/components/Icons/KitchenScale.js.map +1 -1
  453. package/components/Icons/Kjernejournal.d.ts.map +1 -1
  454. package/components/Icons/Kjernejournal.js.map +1 -1
  455. package/components/Icons/Laboratory.d.ts.map +1 -1
  456. package/components/Icons/Laboratory.js.map +1 -1
  457. package/components/Icons/LaptopBlog.d.ts.map +1 -1
  458. package/components/Icons/LaptopBlog.js.map +1 -1
  459. package/components/Icons/LawBook.d.ts.map +1 -1
  460. package/components/Icons/LawBook.js.map +1 -1
  461. package/components/Icons/LightBulb.d.ts.map +1 -1
  462. package/components/Icons/LightBulb.js.map +1 -1
  463. package/components/Icons/List.d.ts.map +1 -1
  464. package/components/Icons/List.js.map +1 -1
  465. package/components/Icons/Location.d.ts.map +1 -1
  466. package/components/Icons/Location.js.map +1 -1
  467. package/components/Icons/Lock.d.ts.map +1 -1
  468. package/components/Icons/Lock.js.map +1 -1
  469. package/components/Icons/Login.d.ts.map +1 -1
  470. package/components/Icons/Login.js.map +1 -1
  471. package/components/Icons/Logout.d.ts.map +1 -1
  472. package/components/Icons/Logout.js.map +1 -1
  473. package/components/Icons/Lungs.d.ts.map +1 -1
  474. package/components/Icons/Lungs.js.map +1 -1
  475. package/components/Icons/Makeup.d.ts.map +1 -1
  476. package/components/Icons/Makeup.js.map +1 -1
  477. package/components/Icons/MaleDoctor.d.ts.map +1 -1
  478. package/components/Icons/MaleDoctor.js.map +1 -1
  479. package/components/Icons/MaleDoctorAndPerson.d.ts.map +1 -1
  480. package/components/Icons/MaleDoctorAndPerson.js.map +1 -1
  481. package/components/Icons/MaleGenitalia.d.ts.map +1 -1
  482. package/components/Icons/MaleGenitalia.js.map +1 -1
  483. package/components/Icons/Medicine.d.ts.map +1 -1
  484. package/components/Icons/Medicine.js.map +1 -1
  485. package/components/Icons/MedicineWarning.d.ts.map +1 -1
  486. package/components/Icons/MedicineWarning.js.map +1 -1
  487. package/components/Icons/MentalHealthAdult.d.ts.map +1 -1
  488. package/components/Icons/MentalHealthAdult.js.map +1 -1
  489. package/components/Icons/MentalHealthChild.d.ts.map +1 -1
  490. package/components/Icons/MentalHealthChild.js.map +1 -1
  491. package/components/Icons/Menu.d.ts.map +1 -1
  492. package/components/Icons/Menu.js.map +1 -1
  493. package/components/Icons/Microscope.d.ts.map +1 -1
  494. package/components/Icons/Microscope.js.map +1 -1
  495. package/components/Icons/Minus.d.ts.map +1 -1
  496. package/components/Icons/Minus.js.map +1 -1
  497. package/components/Icons/Mirror.d.ts.map +1 -1
  498. package/components/Icons/Mirror.js.map +1 -1
  499. package/components/Icons/MobilePhone.d.ts.map +1 -1
  500. package/components/Icons/MobilePhone.js.map +1 -1
  501. package/components/Icons/MotherHoldingBaby.d.ts.map +1 -1
  502. package/components/Icons/MotherHoldingBaby.js.map +1 -1
  503. package/components/Icons/MuscleBack.d.ts.map +1 -1
  504. package/components/Icons/MuscleBack.js.map +1 -1
  505. package/components/Icons/MuscleLeg.d.ts.map +1 -1
  506. package/components/Icons/MuscleLeg.js.map +1 -1
  507. package/components/Icons/Mushroom.d.ts.map +1 -1
  508. package/components/Icons/Mushroom.js.map +1 -1
  509. package/components/Icons/Music.d.ts.map +1 -1
  510. package/components/Icons/Music.js.map +1 -1
  511. package/components/Icons/MusselsAndSalt.d.ts.map +1 -1
  512. package/components/Icons/MusselsAndSalt.js.map +1 -1
  513. package/components/Icons/NoAccess.d.ts.map +1 -1
  514. package/components/Icons/NoAccess.js.map +1 -1
  515. package/components/Icons/NoEye.d.ts.map +1 -1
  516. package/components/Icons/NoEye.js.map +1 -1
  517. package/components/Icons/NoFilter.d.ts.map +1 -1
  518. package/components/Icons/NoFilter.js.map +1 -1
  519. package/components/Icons/Notepad.d.ts.map +1 -1
  520. package/components/Icons/Notepad.js.map +1 -1
  521. package/components/Icons/Osteotomy.d.ts.map +1 -1
  522. package/components/Icons/Osteotomy.js.map +1 -1
  523. package/components/Icons/PaintRoller.d.ts.map +1 -1
  524. package/components/Icons/PaintRoller.js.map +1 -1
  525. package/components/Icons/PaperPlane.d.ts.map +1 -1
  526. package/components/Icons/PaperPlane.js.map +1 -1
  527. package/components/Icons/PatientAndPerson.d.ts.map +1 -1
  528. package/components/Icons/PatientAndPerson.js.map +1 -1
  529. package/components/Icons/Pause.d.ts.map +1 -1
  530. package/components/Icons/Pause.js.map +1 -1
  531. package/components/Icons/PdfFile.d.ts.map +1 -1
  532. package/components/Icons/PdfFile.js.map +1 -1
  533. package/components/Icons/Pencil.d.ts.map +1 -1
  534. package/components/Icons/Pencil.js.map +1 -1
  535. package/components/Icons/PeopleTalking.d.ts.map +1 -1
  536. package/components/Icons/PeopleTalking.js.map +1 -1
  537. package/components/Icons/Peritonealdialysis.d.ts.map +1 -1
  538. package/components/Icons/Peritonealdialysis.js.map +1 -1
  539. package/components/Icons/Person.d.ts.map +1 -1
  540. package/components/Icons/Person.js.map +1 -1
  541. package/components/Icons/PersonAndPatient.d.ts.map +1 -1
  542. package/components/Icons/PersonAndPatient.js.map +1 -1
  543. package/components/Icons/PersonCancel.d.ts.map +1 -1
  544. package/components/Icons/PersonCancel.js.map +1 -1
  545. package/components/Icons/PersonInXRayMachine.d.ts.map +1 -1
  546. package/components/Icons/PersonInXRayMachine.js.map +1 -1
  547. package/components/Icons/PersonOverweight.d.ts.map +1 -1
  548. package/components/Icons/PersonOverweight.js.map +1 -1
  549. package/components/Icons/PersonRelaxing.d.ts.map +1 -1
  550. package/components/Icons/PersonRelaxing.js.map +1 -1
  551. package/components/Icons/PersonWithBrain.d.ts.map +1 -1
  552. package/components/Icons/PersonWithBrain.js.map +1 -1
  553. package/components/Icons/PersonWithBrokenArm.d.ts.map +1 -1
  554. package/components/Icons/PersonWithBrokenArm.js.map +1 -1
  555. package/components/Icons/PersonWithCrutches.d.ts.map +1 -1
  556. package/components/Icons/PersonWithCrutches.js.map +1 -1
  557. package/components/Icons/PersonWithJaw.d.ts.map +1 -1
  558. package/components/Icons/PersonWithJaw.js.map +1 -1
  559. package/components/Icons/PersonWithMagnifyingGlass.d.ts.map +1 -1
  560. package/components/Icons/PersonWithMagnifyingGlass.js.map +1 -1
  561. package/components/Icons/PersonWithSenses.d.ts.map +1 -1
  562. package/components/Icons/PersonWithSenses.js.map +1 -1
  563. package/components/Icons/PersonWorking.d.ts.map +1 -1
  564. package/components/Icons/PersonWorking.js.map +1 -1
  565. package/components/Icons/PersonalPlan.d.ts.map +1 -1
  566. package/components/Icons/PersonalPlan.js.map +1 -1
  567. package/components/Icons/PizzaSlice.d.ts.map +1 -1
  568. package/components/Icons/PizzaSlice.js.map +1 -1
  569. package/components/Icons/Plane.d.ts.map +1 -1
  570. package/components/Icons/Plane.js.map +1 -1
  571. package/components/Icons/Plant.d.ts.map +1 -1
  572. package/components/Icons/Plant.js.map +1 -1
  573. package/components/Icons/Play.d.ts.map +1 -1
  574. package/components/Icons/Play.js.map +1 -1
  575. package/components/Icons/PlusLarge.d.ts.map +1 -1
  576. package/components/Icons/PlusLarge.js.map +1 -1
  577. package/components/Icons/PlusSmall.d.ts.map +1 -1
  578. package/components/Icons/PlusSmall.js.map +1 -1
  579. package/components/Icons/PngFile.d.ts.map +1 -1
  580. package/components/Icons/PngFile.js.map +1 -1
  581. package/components/Icons/Podcast.d.ts.map +1 -1
  582. package/components/Icons/Podcast.js.map +1 -1
  583. package/components/Icons/PoisonInformation.d.ts.map +1 -1
  584. package/components/Icons/PoisonInformation.js.map +1 -1
  585. package/components/Icons/Pregnant.d.ts.map +1 -1
  586. package/components/Icons/Pregnant.js.map +1 -1
  587. package/components/Icons/Printer.d.ts.map +1 -1
  588. package/components/Icons/Printer.js.map +1 -1
  589. package/components/Icons/Psychosis.d.ts.map +1 -1
  590. package/components/Icons/Psychosis.js.map +1 -1
  591. package/components/Icons/Publication.d.ts.map +1 -1
  592. package/components/Icons/Publication.js.map +1 -1
  593. package/components/Icons/Puzzle.d.ts.map +1 -1
  594. package/components/Icons/Puzzle.js.map +1 -1
  595. package/components/Icons/QrCode.d.ts.map +1 -1
  596. package/components/Icons/QrCode.js.map +1 -1
  597. package/components/Icons/Quarrel.d.ts.map +1 -1
  598. package/components/Icons/Quarrel.js.map +1 -1
  599. package/components/Icons/RadioTherapy.d.ts.map +1 -1
  600. package/components/Icons/RadioTherapy.js.map +1 -1
  601. package/components/Icons/RadioactiveTreatment.d.ts.map +1 -1
  602. package/components/Icons/RadioactiveTreatment.js.map +1 -1
  603. package/components/Icons/Radioiodine.d.ts.map +1 -1
  604. package/components/Icons/Radioiodine.js.map +1 -1
  605. package/components/Icons/Receipt.d.ts.map +1 -1
  606. package/components/Icons/Receipt.js.map +1 -1
  607. package/components/Icons/Receptionist.d.ts.map +1 -1
  608. package/components/Icons/Receptionist.js.map +1 -1
  609. package/components/Icons/Recovery.d.ts.map +1 -1
  610. package/components/Icons/Recovery.js.map +1 -1
  611. package/components/Icons/Referral.d.ts.map +1 -1
  612. package/components/Icons/Referral.js.map +1 -1
  613. package/components/Icons/Refresh.d.ts.map +1 -1
  614. package/components/Icons/Refresh.js.map +1 -1
  615. package/components/Icons/Refund.d.ts.map +1 -1
  616. package/components/Icons/Refund.js.map +1 -1
  617. package/components/Icons/Reply.d.ts.map +1 -1
  618. package/components/Icons/Reply.js.map +1 -1
  619. package/components/Icons/Rocket.d.ts.map +1 -1
  620. package/components/Icons/Rocket.js.map +1 -1
  621. package/components/Icons/RtfFile.d.ts.map +1 -1
  622. package/components/Icons/RtfFile.js.map +1 -1
  623. package/components/Icons/STDs.d.ts.map +1 -1
  624. package/components/Icons/STDs.js.map +1 -1
  625. package/components/Icons/Save.d.ts.map +1 -1
  626. package/components/Icons/Save.js.map +1 -1
  627. package/components/Icons/Scale.d.ts.map +1 -1
  628. package/components/Icons/Scale.js.map +1 -1
  629. package/components/Icons/Search.d.ts.map +1 -1
  630. package/components/Icons/Search.js.map +1 -1
  631. package/components/Icons/SectionSign.d.ts.map +1 -1
  632. package/components/Icons/SectionSign.js.map +1 -1
  633. package/components/Icons/Settings.d.ts.map +1 -1
  634. package/components/Icons/Settings.js.map +1 -1
  635. package/components/Icons/Sexualorientation.d.ts.map +1 -1
  636. package/components/Icons/Sexualorientation.js.map +1 -1
  637. package/components/Icons/ShakingHand.d.ts.map +1 -1
  638. package/components/Icons/ShakingHand.js.map +1 -1
  639. package/components/Icons/Share.d.ts.map +1 -1
  640. package/components/Icons/Share.js.map +1 -1
  641. package/components/Icons/Shield.d.ts.map +1 -1
  642. package/components/Icons/Shield.js.map +1 -1
  643. package/components/Icons/ShuntOperation.d.ts.map +1 -1
  644. package/components/Icons/ShuntOperation.js.map +1 -1
  645. package/components/Icons/Skeleton.d.ts.map +1 -1
  646. package/components/Icons/Skeleton.js.map +1 -1
  647. package/components/Icons/Skin.d.ts.map +1 -1
  648. package/components/Icons/Skin.js.map +1 -1
  649. package/components/Icons/Snake.d.ts.map +1 -1
  650. package/components/Icons/Snake.js.map +1 -1
  651. package/components/Icons/Snapchat.d.ts.map +1 -1
  652. package/components/Icons/Snapchat.js.map +1 -1
  653. package/components/Icons/SortDown.d.ts.map +1 -1
  654. package/components/Icons/SortDown.js.map +1 -1
  655. package/components/Icons/SortUp.d.ts.map +1 -1
  656. package/components/Icons/SortUp.js +1 -1
  657. package/components/Icons/SortUp.js.map +1 -1
  658. package/components/Icons/SpeechBubble.d.ts.map +1 -1
  659. package/components/Icons/SpeechBubble.js.map +1 -1
  660. package/components/Icons/Spray.d.ts.map +1 -1
  661. package/components/Icons/Spray.js.map +1 -1
  662. package/components/Icons/Stopwatch.d.ts.map +1 -1
  663. package/components/Icons/Stopwatch.js.map +1 -1
  664. package/components/Icons/SupportingPerson.js +1 -1
  665. package/components/Icons/SupportingPerson.js.map +1 -1
  666. package/components/Icons/Surgery.d.ts.map +1 -1
  667. package/components/Icons/Surgery.js.map +1 -1
  668. package/components/Icons/Syringe.d.ts.map +1 -1
  669. package/components/Icons/Syringe.js.map +1 -1
  670. package/components/Icons/Taxi.d.ts.map +1 -1
  671. package/components/Icons/Taxi.js.map +1 -1
  672. package/components/Icons/TeddyBear.d.ts.map +1 -1
  673. package/components/Icons/TeddyBear.js.map +1 -1
  674. package/components/Icons/Teenagers.d.ts.map +1 -1
  675. package/components/Icons/Teenagers.js.map +1 -1
  676. package/components/Icons/ThinkingAboutBaby.d.ts.map +1 -1
  677. package/components/Icons/ThinkingAboutBaby.js.map +1 -1
  678. package/components/Icons/Ticket.d.ts.map +1 -1
  679. package/components/Icons/Ticket.js.map +1 -1
  680. package/components/Icons/TimePassing.d.ts.map +1 -1
  681. package/components/Icons/TimePassing.js.map +1 -1
  682. package/components/Icons/Toolbox.d.ts.map +1 -1
  683. package/components/Icons/Toolbox.js.map +1 -1
  684. package/components/Icons/Tooth.d.ts.map +1 -1
  685. package/components/Icons/Tooth.js.map +1 -1
  686. package/components/Icons/TotalKneeProsthesis.d.ts.map +1 -1
  687. package/components/Icons/TotalKneeProsthesis.js.map +1 -1
  688. package/components/Icons/Train.d.ts.map +1 -1
  689. package/components/Icons/Train.js.map +1 -1
  690. package/components/Icons/Transplantation.d.ts.map +1 -1
  691. package/components/Icons/Transplantation.js.map +1 -1
  692. package/components/Icons/TrashCan.d.ts.map +1 -1
  693. package/components/Icons/TrashCan.js.map +1 -1
  694. package/components/Icons/TravelRoute.d.ts.map +1 -1
  695. package/components/Icons/TravelRoute.js.map +1 -1
  696. package/components/Icons/TriangleX.d.ts.map +1 -1
  697. package/components/Icons/TriangleX.js.map +1 -1
  698. package/components/Icons/Twitter.d.ts.map +1 -1
  699. package/components/Icons/Twitter.js.map +1 -1
  700. package/components/Icons/Undo.d.ts.map +1 -1
  701. package/components/Icons/Undo.js.map +1 -1
  702. package/components/Icons/UniProsthesis.d.ts.map +1 -1
  703. package/components/Icons/UniProsthesis.js.map +1 -1
  704. package/components/Icons/Upload.d.ts.map +1 -1
  705. package/components/Icons/Upload.js.map +1 -1
  706. package/components/Icons/UserOrganization.d.ts.map +1 -1
  707. package/components/Icons/UserOrganization.js.map +1 -1
  708. package/components/Icons/Vaccine.d.ts.map +1 -1
  709. package/components/Icons/Vaccine.js.map +1 -1
  710. package/components/Icons/VerticalDots.d.ts.map +1 -1
  711. package/components/Icons/VerticalDots.js.map +1 -1
  712. package/components/Icons/VideoCamera.d.ts.map +1 -1
  713. package/components/Icons/VideoCamera.js.map +1 -1
  714. package/components/Icons/VideoChat.d.ts.map +1 -1
  715. package/components/Icons/VideoChat.js.map +1 -1
  716. package/components/Icons/Wallet.d.ts.map +1 -1
  717. package/components/Icons/Wallet.js.map +1 -1
  718. package/components/Icons/Watch.d.ts.map +1 -1
  719. package/components/Icons/Watch.js.map +1 -1
  720. package/components/Icons/Website.d.ts.map +1 -1
  721. package/components/Icons/Website.js.map +1 -1
  722. package/components/Icons/Wheelchair.d.ts.map +1 -1
  723. package/components/Icons/Wheelchair.js.map +1 -1
  724. package/components/Icons/WheelchairActive.d.ts.map +1 -1
  725. package/components/Icons/WheelchairActive.js.map +1 -1
  726. package/components/Icons/Window.d.ts.map +1 -1
  727. package/components/Icons/Window.js.map +1 -1
  728. package/components/Icons/WordDocument.d.ts.map +1 -1
  729. package/components/Icons/WordDocument.js.map +1 -1
  730. package/components/Icons/WorkSuitcase.d.ts.map +1 -1
  731. package/components/Icons/WorkSuitcase.js.map +1 -1
  732. package/components/Icons/X.d.ts.map +1 -1
  733. package/components/Icons/X.js.map +1 -1
  734. package/components/Icons/XOutline.d.ts.map +1 -1
  735. package/components/Icons/XOutline.js.map +1 -1
  736. package/components/Icons/XmlFile.d.ts.map +1 -1
  737. package/components/Icons/XmlFile.js.map +1 -1
  738. package/components/Icons/YouTube.d.ts.map +1 -1
  739. package/components/Icons/YouTube.js.map +1 -1
  740. package/components/Icons/Zoom.d.ts.map +1 -1
  741. package/components/Icons/Zoom.js.map +1 -1
  742. package/components/Icons/index.js +1 -1
  743. package/components/Input/Input.d.ts.map +1 -1
  744. package/components/Input/componentdata.json +1 -1
  745. package/components/Input/index.js +1 -1
  746. package/components/Input/styles.module.scss +8 -7
  747. package/components/LinkList/LinkList.d.ts +8 -8
  748. package/components/LinkList/LinkList.d.ts.map +1 -1
  749. package/components/LinkList/index.js +1 -1
  750. package/components/LinkList/index.js.map +1 -1
  751. package/components/LinkList/styles.module.scss +23 -5
  752. package/components/List/List.d.ts +17 -3
  753. package/components/List/List.d.ts.map +1 -1
  754. package/components/List/componentdata.json +1 -1
  755. package/components/List/index.js +1 -1
  756. package/components/List/index.js.map +1 -1
  757. package/components/List/styles.module.scss +55 -5
  758. package/components/List/styles.module.scss.d.ts +5 -0
  759. package/components/ListHeader/ListHeader.d.ts +12 -10
  760. package/components/ListHeader/ListHeader.d.ts.map +1 -1
  761. package/components/ListHeader/ListHeaderText/ListHeaderText.d.ts +1 -1
  762. package/components/ListHeader/ListHeaderText/ListHeaderText.d.ts.map +1 -1
  763. package/components/ListHeader/ListHeaderText/index.js +1 -1
  764. package/components/ListHeader/index.js +1 -1
  765. package/components/ListHeader/styles.module.scss +36 -11
  766. package/components/Loader/Loader.d.ts +2 -2
  767. package/components/Loader/Loader.d.ts.map +1 -1
  768. package/components/Loader/index.js +1 -1
  769. package/components/Loader/index.js.map +1 -1
  770. package/components/Loader/styles.module.scss +40 -18
  771. package/components/Logo/Logo.d.ts +1 -1
  772. package/components/Logo/Logo.d.ts.map +1 -1
  773. package/components/Logo/index.js +1 -1
  774. package/components/Logo/index.js.map +1 -1
  775. package/components/MaxCharacters/MaxCharacters.d.ts.map +1 -1
  776. package/components/MaxCharacters/styles.module.scss +7 -5
  777. package/components/Modal/Modal.d.ts.map +1 -1
  778. package/components/Modal/index.js +1 -1
  779. package/components/Modal/styles.module.scss +39 -23
  780. package/components/NotificationPanel/DetailButton/DetailButton.d.ts +10 -0
  781. package/components/NotificationPanel/DetailButton/DetailButton.d.ts.map +1 -0
  782. package/components/NotificationPanel/DetailButton/componentdata.json +1 -0
  783. package/components/NotificationPanel/DetailButton/styles.module.scss +38 -0
  784. package/components/NotificationPanel/DetailButton/styles.module.scss.d.ts +13 -0
  785. package/components/NotificationPanel/NotificationPanel.d.ts +16 -7
  786. package/components/NotificationPanel/NotificationPanel.d.ts.map +1 -1
  787. package/components/NotificationPanel/componentdata.json +1 -1
  788. package/components/NotificationPanel/index.js +1 -1
  789. package/components/NotificationPanel/index.js.map +1 -1
  790. package/components/NotificationPanel/styles.module.scss +131 -97
  791. package/components/NotificationPanel/styles.module.scss.d.ts +10 -10
  792. package/components/Panel/Panel.d.ts +2 -2
  793. package/components/Panel/Panel.d.ts.map +1 -1
  794. package/components/Panel/index.js +1 -1
  795. package/components/Panel/styles.module.scss +53 -29
  796. package/components/PanelList/PanelList.d.ts.map +1 -1
  797. package/components/PanelList/index.js +1 -1
  798. package/components/PanelList/index.js.map +1 -1
  799. package/components/PanelList/styles.module.scss +6 -5
  800. package/components/PopMenu/PopMenu.d.ts +30 -0
  801. package/components/PopMenu/PopMenu.d.ts.map +1 -0
  802. package/components/PopMenu/componentdata.json +1 -0
  803. package/components/PopMenu/story.module.scss +5 -0
  804. package/components/PopMenu/story.module.scss.d.ts +9 -0
  805. package/components/PopMenu/styles.module.scss +138 -0
  806. package/components/PopMenu/styles.module.scss.d.ts +14 -0
  807. package/components/PopOver/PopOver.d.ts +34 -0
  808. package/components/PopOver/PopOver.d.ts.map +1 -0
  809. package/components/PopOver/componentdata.json +1 -0
  810. package/components/PopOver/index.d.ts +4 -0
  811. package/components/PopOver/index.d.ts.map +1 -0
  812. package/components/PopOver/index.js +2 -0
  813. package/components/PopOver/index.js.map +1 -0
  814. package/components/PopOver/styles.module.scss +66 -0
  815. package/components/PopOver/styles.module.scss.d.ts +16 -0
  816. package/components/{HelpBubble → PopOver}/utils.d.ts +4 -4
  817. package/components/PopOver/utils.d.ts.map +1 -0
  818. package/components/Portal/index.d.ts.map +1 -1
  819. package/components/Portal/index.js +1 -1
  820. package/components/Portal/index.js.map +1 -1
  821. package/components/RadioButton/RadioButton.d.ts.map +1 -1
  822. package/components/RadioButton/componentdata.json +1 -1
  823. package/components/RadioButton/index.js +1 -1
  824. package/components/RadioButton/styles.module.scss +12 -14
  825. package/components/Select/Select.d.ts +1 -1
  826. package/components/Select/Select.d.ts.map +1 -1
  827. package/components/Select/componentdata.json +1 -1
  828. package/components/Select/index.js +1 -1
  829. package/components/Select/styles.module.scss +14 -8
  830. package/components/Slider/Slider.d.ts.map +1 -1
  831. package/components/Slider/index.js +1 -1
  832. package/components/Slider/index.js.map +1 -1
  833. package/components/Slider/styles.module.scss +2 -1
  834. package/components/Spacer/Spacer.d.ts.map +1 -1
  835. package/components/Spacer/index.js +1 -1
  836. package/components/Spacer/styles.module.scss +13 -1
  837. package/components/StatusDot/index.js +1 -1
  838. package/components/StatusDot/styles.module.scss +2 -2
  839. package/components/Stepper/Dot.d.ts.map +1 -0
  840. package/components/Stepper/DotList.d.ts.map +1 -0
  841. package/components/{Progressbar/Progressbar.d.ts → Stepper/Stepper.d.ts} +6 -6
  842. package/components/Stepper/Stepper.d.ts.map +1 -0
  843. package/components/Stepper/componentdata.json +1 -0
  844. package/components/Stepper/index.d.ts +4 -0
  845. package/components/Stepper/index.d.ts.map +1 -0
  846. package/components/Stepper/index.js +2 -0
  847. package/components/Stepper/index.js.map +1 -0
  848. package/components/Stepper/styles.module.scss +105 -0
  849. package/components/Stepper/styles.module.scss.d.ts +16 -0
  850. package/components/{Progressbar → Stepper}/utils.d.ts +7 -7
  851. package/components/Stepper/utils.d.ts.map +1 -0
  852. package/components/Table/Table.d.ts +7 -6
  853. package/components/Table/Table.d.ts.map +1 -1
  854. package/components/Table/TableBody/index.js +1 -1
  855. package/components/Table/TableCell/TableCell.d.ts.map +1 -1
  856. package/components/Table/TableCell/index.js +1 -1
  857. package/components/Table/TableExpandedRow/TableExpandedRow.d.ts.map +1 -1
  858. package/components/Table/TableExpandedRow/index.js +1 -1
  859. package/components/Table/TableExpanderCell/TableExpanderCell.d.ts.map +1 -1
  860. package/components/Table/TableExpanderCell/TableExpanderCellMobile.d.ts +2 -2
  861. package/components/Table/TableExpanderCell/TableExpanderCellMobile.d.ts.map +1 -1
  862. package/components/Table/TableExpanderCell/index.js +1 -1
  863. package/components/Table/TableHead/TableHead.d.ts.map +1 -1
  864. package/components/Table/TableHead/index.js +1 -1
  865. package/components/Table/TableHeadCell/TableHeadCell.d.ts.map +1 -1
  866. package/components/Table/TableHeadCell/index.js +1 -1
  867. package/components/Table/TableRow/TableRow.d.ts.map +1 -1
  868. package/components/Table/TableRow/componentdata.json +1 -1
  869. package/components/Table/TableRow/index.js +1 -1
  870. package/components/Table/index.js +1 -1
  871. package/components/Table/index.js.map +1 -1
  872. package/components/Table/styles.module.scss +32 -20
  873. package/components/Table/utils.d.ts +3 -7
  874. package/components/Table/utils.d.ts.map +1 -1
  875. package/components/Tag/Tag.d.ts +2 -2
  876. package/components/Tag/Tag.d.ts.map +1 -1
  877. package/components/Tag/componentdata.json +1 -1
  878. package/components/Tag/index.js +1 -1
  879. package/components/Tag/index.js.map +1 -1
  880. package/components/Tag/styles.module.scss +39 -27
  881. package/components/TagList/index.js +1 -1
  882. package/components/TagList/index.js.map +1 -1
  883. package/components/TagList/styles.module.scss +3 -3
  884. package/components/Textarea/Textarea.d.ts.map +1 -1
  885. package/components/Textarea/componentdata.json +1 -1
  886. package/components/Textarea/index.js +1 -1
  887. package/components/Textarea/styles.module.scss +6 -5
  888. package/components/Tile/Tile.d.ts +2 -2
  889. package/components/Tile/Tile.d.ts.map +1 -1
  890. package/components/Tile/index.js +1 -1
  891. package/components/Tile/index.js.map +1 -1
  892. package/components/Tile/styles.module.scss +11 -6
  893. package/components/Title/Title.d.ts +3 -3
  894. package/components/Title/Title.d.ts.map +1 -1
  895. package/components/Title/index.js +1 -1
  896. package/components/Title/styles.module.scss +5 -0
  897. package/components/Tooltip/Tooltip.d.ts +1 -1
  898. package/components/Tooltip/Tooltip.d.ts.map +1 -1
  899. package/components/Tooltip/TooltipWord/TooltipWord.d.ts +1 -1
  900. package/components/Tooltip/TooltipWord/TooltipWord.d.ts.map +1 -1
  901. package/components/Tooltip/TooltipWord/index.js +1 -1
  902. package/components/Tooltip/TooltipWord/styles.module.scss +3 -3
  903. package/components/Tooltip/componentdata.json +1 -1
  904. package/components/Tooltip/index.js +1 -1
  905. package/components/TooltipExample/TooltipExample.d.ts.map +1 -1
  906. package/components/TooltipExample/componentdata.json +1 -1
  907. package/components/TooltipExample/index.js +1 -1
  908. package/components/TooltipExample/index.js.map +1 -1
  909. package/components/Validation/Validation.d.ts.map +1 -1
  910. package/components/Validation/index.js +1 -1
  911. package/components/Validation/styles.module.scss +3 -3
  912. package/constants.d.ts +7 -3
  913. package/constants.d.ts.map +1 -1
  914. package/constants.js +1 -1
  915. package/constants.js.map +1 -1
  916. package/hoc/withBreakpoint/index.js +1 -1
  917. package/hoc/withBreakpoint/withBreakpoint.d.ts +1 -1
  918. package/hoc/withBreakpoint/withBreakpoint.d.ts.map +1 -1
  919. package/hoc/withBreakpoint/withBreakpoint.js.map +1 -1
  920. package/hooks/useBreakpoint.d.ts.map +1 -1
  921. package/hooks/useBreakpoint.js +1 -1
  922. package/hooks/useBreakpoint.js.map +1 -1
  923. package/hooks/useExpand.d.ts +3 -0
  924. package/hooks/useExpand.d.ts.map +1 -0
  925. package/hooks/useExpand.js +2 -0
  926. package/hooks/useExpand.js.map +1 -0
  927. package/hooks/useFocusToggle.d.ts.map +1 -1
  928. package/hooks/useFocusToggle.js.map +1 -1
  929. package/hooks/useFocusTrap.d.ts.map +1 -1
  930. package/hooks/useFocusTrap.js +1 -1
  931. package/hooks/useFocusTrap.js.map +1 -1
  932. package/hooks/useIcons.js.map +1 -1
  933. package/hooks/useIsVisible.d.ts.map +1 -1
  934. package/hooks/useIsVisible.js.map +1 -1
  935. package/hooks/useKeyboardEvent.d.ts +1 -1
  936. package/hooks/useKeyboardEvent.d.ts.map +1 -1
  937. package/hooks/useOutsideEvent.d.ts +1 -1
  938. package/hooks/useOutsideEvent.d.ts.map +1 -1
  939. package/hooks/useResizeObserver.js.map +1 -1
  940. package/hooks/useSize.d.ts.map +1 -1
  941. package/hooks/useSize.js.map +1 -1
  942. package/hooks/useSticky.d.ts.map +1 -1
  943. package/hooks/useSticky.js +1 -1
  944. package/hooks/useSticky.js.map +1 -1
  945. package/hooks/useToggle.d.ts.map +1 -1
  946. package/hooks/useToggle.js.map +1 -1
  947. package/hooks/useUuid.d.ts.map +1 -1
  948. package/hooks/useUuid.js.map +1 -1
  949. package/index.js +1 -1
  950. package/package.json +1 -1
  951. package/scss/_body.scss +3 -1
  952. package/scss/_breakpoints.scss +5 -8
  953. package/scss/_figma-tokens.scss +2 -2
  954. package/scss/_fonts.scss +36 -21
  955. package/scss/_grid.scss +5 -4
  956. package/scss/_input.scss +20 -11
  957. package/scss/_palette.scss +7 -15
  958. package/scss/_print.scss +58 -18
  959. package/scss/_screen-reader.scss +0 -2
  960. package/scss/_spacers.scss +17 -15
  961. package/scss/_title.scss +11 -5
  962. package/scss/helsenorge.scss +1 -1
  963. package/scss/typography.module.scss +20 -13
  964. package/theme/currys/color.d.ts.map +1 -1
  965. package/theme/currys/color.js +1 -1
  966. package/theme/currys/color.js.map +1 -1
  967. package/theme/currys/index.js +1 -1
  968. package/theme/currys/spacing.js.map +1 -1
  969. package/theme/index.js +1 -1
  970. package/theme/index.js.map +1 -1
  971. package/theme/palette.d.ts +3 -3
  972. package/theme/palette.d.ts.map +1 -1
  973. package/theme/palette.js +1 -1
  974. package/theme/palette.js.map +1 -1
  975. package/theme/spacers.d.ts +1 -1
  976. package/theme/spacers.d.ts.map +1 -1
  977. package/utils/accessibility.d.ts +1 -1
  978. package/utils/accessibility.d.ts.map +1 -1
  979. package/utils/component.d.ts +2 -1
  980. package/utils/component.d.ts.map +1 -1
  981. package/utils/component.js +1 -1
  982. package/utils/component.js.map +1 -1
  983. package/utils/debounce.d.ts +1 -2
  984. package/utils/debounce.d.ts.map +1 -1
  985. package/utils/debounce.js +1 -1
  986. package/utils/debounce.js.map +1 -1
  987. package/utils/environment.js.map +1 -1
  988. package/utils/focus.js +1 -1
  989. package/utils/focus.js.map +1 -1
  990. package/utils/viewport.js +1 -1
  991. package/utils/viewport.js.map +1 -1
  992. package/uuid.js +1 -1
  993. package/components/HelpBubble/utils.d.ts.map +0 -1
  994. package/components/Progressbar/Dot.d.ts.map +0 -1
  995. package/components/Progressbar/DotList.d.ts.map +0 -1
  996. package/components/Progressbar/Progressbar.d.ts.map +0 -1
  997. package/components/Progressbar/componentdata.json +0 -1
  998. package/components/Progressbar/index.d.ts +0 -4
  999. package/components/Progressbar/index.d.ts.map +0 -1
  1000. package/components/Progressbar/index.js +0 -2
  1001. package/components/Progressbar/index.js.map +0 -1
  1002. package/components/Progressbar/styles.module.scss +0 -91
  1003. package/components/Progressbar/styles.module.scss.d.ts +0 -16
  1004. package/components/Progressbar/utils.d.ts.map +0 -1
  1005. /package/components/{Progressbar → Stepper}/Dot.d.ts +0 -0
  1006. /package/components/{Progressbar → Stepper}/DotList.d.ts +0 -0
package/Panel.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Panel.js","sources":["../src/components/Panel/Panel.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport classNames from 'classnames';\n\nimport panelStyles from './styles.module.scss';\nimport Title, { TitleTags } from '../Title';\nimport Button, { ButtonProps, ButtonTags } from '../Button';\nimport { AnchorTarget, AnalyticsId } from '../../constants';\n\nimport Icon, { IconSize, SvgPathProps } from '../Icons';\nimport ChevronDown from '../Icons/ChevronDown';\nimport ChevronUp from '../Icons/ChevronUp';\nimport ArrowRight from '../Icons/ArrowRight';\nimport AlertSignFill from '../Icons/AlertSignFill';\nimport { palette } from '../../theme/palette';\nimport Pencil from '../Icons/Pencil';\nimport Calendar from '../Icons/Calendar';\nimport Watch from '../Icons/Watch';\nimport { useUuid } from '../../hooks/useUuid';\nimport { usePrevious } from '../../hooks/usePrevious';\nimport { AriaLabelAttributes, getAriaLabelAttributes } from '../../utils/accessibility';\nimport Badge from '../Badge';\n\nexport enum PanelStatus {\n normal = 'normal',\n new = 'new',\n error = 'error',\n draft = 'draft',\n}\n\nexport enum PanelVariant {\n fill = 'fill',\n white = 'white',\n stroke = 'stroke',\n line = 'line',\n}\n\nexport enum PanelLayout {\n layout1 = 'layout1',\n layout2 = 'layout2',\n layout3a = 'layout3a',\n layout3b = 'layout3b',\n layout3c = 'layout3c',\n}\n\nexport interface PanelProps {\n children?: React.ReactNode;\n /** Title of the panel */\n title?: string;\n /** Changes the underlying element of the title. Default: h2*/\n titleHtmlMarkup?: TitleTags;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n /** Displays a status on the left side: defualt normal */\n status?: keyof typeof PanelStatus;\n /** Displayed on top of the panel with a status icon */\n statusMessage?: string;\n /** Changes the visual representation of the panel. */\n variant?: keyof typeof PanelVariant;\n /** Url to details, renders as a button with anchor tag */\n url?: string;\n /** target used in the button: default is _self */\n target?: AnchorTarget;\n /** Icon displayed in title */\n icon?: React.ReactNode;\n /** Display icon on right */\n iconRight?: boolean;\n /** Panel section A content */\n contentA?: React.ReactNode | string;\n /** Panel section B content*/\n contentB?: React.ReactNode | string;\n /** Panel button text */\n buttonText?: string;\n /** Panel button close text */\n buttonTextClose?: string;\n /** HTML markup for panel button. Default: a */\n buttonHtmlMarkup?: ButtonTags;\n /** Callback when panel button is clicked */\n buttonOnClick?: ButtonProps['onClick'];\n /** Panel button is aria-labelledby the text in the button itself + the element set in buttonAriaLabelledById. Default: auto-generated id for title (if title is set). */\n buttonAriaLabelledById?: string;\n /** Panel button aria label */\n buttonAriaLabel?: string;\n /** Show close button in bottom of Panel Expand */\n /** @deprecated Has no effect anymore due to accessbility reasons. No close button is shown in expanded content. Will be removed in 2.0.0 */\n showCloseButtonInExpand?: boolean;\n /** Layout (see description) */\n layout?: keyof typeof PanelLayout;\n /** Clicking anywhere on the container will trigger a click on the panel's button */\n containerAsButton?: boolean;\n /** Displays time with icon */\n time?: string;\n /** Displays date with icon */\n date?: string;\n /** Removes top border when variant is \"line\" */\n noTopBorder?: boolean;\n /** Opens or closes the panel */\n expanded?: boolean;\n /** Called when panel is open/closed. */\n onExpand?: (isExpanded: boolean) => void;\n /** Whether to render children when closed (in which case they are hidden with CSS). Default: false */\n renderChildrenWhenClosed?: boolean;\n}\n\nconst StatusText: React.FC<{ status?: keyof typeof PanelStatus; statusMessage?: string }> = ({ status, statusMessage }) => {\n const statusIcon = (): { color: string; svgIcon: React.FC<SvgPathProps> } => {\n if (status === PanelStatus.error) {\n return { color: palette.cherry500, svgIcon: AlertSignFill };\n }\n\n return { color: palette.black, svgIcon: Pencil };\n };\n\n const statusMessageClass = classNames(panelStyles['status-message'], {\n [panelStyles['status-message--new']]: status === PanelStatus.new,\n });\n\n if ((status === PanelStatus.error || status === PanelStatus.draft) && statusMessage) {\n return (\n <div className={statusMessageClass} data-testid=\"display-status\">\n {<Icon {...statusIcon()} size={IconSize.XSmall} />} <span>{statusMessage}</span>\n </div>\n );\n }\n\n return null;\n};\n\nconst DateTime: React.FC<{ date?: string; time?: string }> = ({ date, time }) => {\n if (date || time) {\n return (\n <div className={panelStyles['datetime-container']} data-testid=\"datetime\">\n {date && (\n <div className={panelStyles['datetime-container__icon']}>\n <Icon svgIcon={Calendar} size={IconSize.XSmall} />\n <span>{date}</span>\n </div>\n )}\n {time && (\n <div className={panelStyles['datetime-container__icon']}>\n <Icon svgIcon={Watch} size={IconSize.XSmall} />\n <span>{time}</span>\n </div>\n )}\n </div>\n );\n }\n\n return null;\n};\n\nconst Panel = React.forwardRef(function PanelForwardedRef(props: PanelProps, ref: React.ForwardedRef<HTMLHeadingElement>) {\n const {\n children,\n contentA,\n contentB,\n className,\n testId,\n title,\n titleHtmlMarkup = 'h2',\n url,\n target = '_self',\n icon,\n iconRight = false,\n variant = PanelVariant.fill,\n status = PanelStatus.normal,\n statusMessage,\n buttonText = 'Se detaljer',\n buttonTextClose = 'Skjul detaljer',\n buttonAriaLabelledById,\n buttonAriaLabel,\n layout = PanelLayout.layout2,\n containerAsButton = false,\n date,\n time,\n noTopBorder,\n buttonOnClick,\n buttonHtmlMarkup = 'a',\n expanded = false,\n onExpand,\n renderChildrenWhenClosed = false,\n } = props;\n\n const [isExpanded, setIsExpanded] = useState<boolean>(expanded);\n const previousIsExpanded = usePrevious(isExpanded);\n const titleId = useUuid();\n const buttonTextId = useUuid();\n const hasBadge = statusMessage && status === PanelStatus.new;\n\n useEffect(() => {\n if (expanded !== isExpanded) {\n setIsExpanded(expanded);\n }\n }, [expanded]);\n\n useEffect(() => {\n if (onExpand && isExpanded !== !!previousIsExpanded) {\n onExpand(isExpanded);\n }\n }, [isExpanded, onExpand]);\n\n const layout3 = [PanelLayout.layout3a.toString(), PanelLayout.layout3b.toString(), PanelLayout.layout3c.toString()].includes(layout);\n\n const panelWrapperClass = classNames(panelStyles['panel-wrapper'], className);\n\n const panelClasses = classNames(panelStyles.panel, {\n [panelStyles['panel--fill']]: variant === PanelVariant.fill,\n [panelStyles['panel--stroke']]: variant === PanelVariant.stroke,\n [panelStyles['panel--white']]: variant === PanelVariant.white,\n [panelStyles['panel--line']]: variant === PanelVariant.line,\n [panelStyles['panel--no-top-border']]: variant === PanelVariant.line && noTopBorder,\n [panelStyles['panel--selected']]: isExpanded,\n [panelStyles['panel--new']]: status === PanelStatus.new,\n [panelStyles['panel--draft']]: status === PanelStatus.draft,\n [panelStyles['panel--error']]: status === PanelStatus.error,\n [panelStyles['panel--status']]: status && status !== PanelStatus.normal,\n [panelStyles['panel--with-icon']]: icon,\n [panelStyles['panel--button']]: containerAsButton,\n [panelStyles['panel--clickable']]: children || url || onExpand || buttonOnClick || containerAsButton,\n });\n\n const panelContainer = classNames({\n [panelStyles['panel__container']]: layout === PanelLayout.layout2 && contentB,\n [panelStyles['panel__container--layout3']]: layout3 && contentB,\n [panelStyles['panel__container--grow']]: icon,\n });\n\n const panelContentLeftClass = classNames({\n [panelStyles['panel-content-a']]: layout === PanelLayout.layout2,\n [panelStyles['panel-content-a--layout3a']]: layout === PanelLayout.layout3a,\n [panelStyles['panel-content-a--layout3b']]: layout === PanelLayout.layout3b,\n [panelStyles['panel-content-a--layout3c']]: layout === PanelLayout.layout3c,\n });\n\n const panelContentRightClass = classNames({\n [panelStyles['panel__content-right--layout1']]: contentB && layout === PanelLayout.layout1,\n [panelStyles['panel__content-right--layout2']]: contentB && layout === PanelLayout.layout2,\n [panelStyles['panel__content-right--layout3']]: contentB && layout3,\n [panelStyles['panel__content-right--layout3a']]: contentB && layout === PanelLayout.layout3a,\n [panelStyles['panel__content-right--layout3b']]: contentB && layout === PanelLayout.layout3b,\n [panelStyles['panel__content-right--layout3c']]: contentB && layout === PanelLayout.layout3c,\n });\n\n const panelContentBClass = classNames(panelStyles['panel-content-b'], {\n [panelStyles['panel-content-b--layout1']]: layout === PanelLayout.layout1,\n [panelStyles['panel-content-b--layout3']]: layout3,\n });\n\n const panelActionBtnClass = classNames(panelStyles['panel__details-btn']);\n const titleClasses = classNames(panelStyles['panel-content-a__title'], { [panelStyles['panel-content-a__title--badge']]: hasBadge });\n\n const renderDetailsButton = (): JSX.Element => {\n const ariaLabelAttributes = getAriaLabelAttributes({\n label: buttonAriaLabel,\n id: (buttonAriaLabelledById && `${buttonTextId} ${buttonAriaLabelledById}`) || (title && titleId && `${buttonTextId} ${titleId}`),\n prefer: 'label',\n });\n\n const commonProps: Partial<ButtonProps> & AriaLabelAttributes = {\n onClick: buttonOnClick ? buttonOnClick : () => setIsExpanded(!isExpanded),\n className: containerAsButton ? panelStyles['panel__expand'] : undefined,\n variant: 'borderless',\n ellipsis: true,\n ...ariaLabelAttributes,\n };\n\n if (!!children) {\n return (\n <Button testId=\"expand\" aria-expanded={isExpanded} {...commonProps}>\n <span id={buttonTextId}>{isExpanded ? buttonTextClose : buttonText}</span>\n <Icon svgIcon={isExpanded ? ChevronUp : ChevronDown} />\n </Button>\n );\n }\n\n return (\n <Button testId=\"url\" htmlMarkup={buttonHtmlMarkup} href={url} target={target} {...commonProps}>\n <span id={buttonTextId}>{buttonText}</span>\n <Icon svgIcon={ArrowRight} />\n </Button>\n );\n };\n\n const btnContainerClass = classNames(panelStyles['panel__btn-container'], {\n [panelStyles['panel__btn-container--layout3']]: layout3,\n [panelStyles['panel__btn-container--padding-top']]: contentB,\n });\n\n const renderContent = () => {\n if (!children) {\n return null;\n }\n if (!renderChildrenWhenClosed && !isExpanded) {\n return null;\n }\n\n const panelDetailsClasses = classNames(panelStyles['panel-details'], {\n [panelStyles['panel-details--open']]: isExpanded,\n [panelStyles['panel-details--line']]: variant === PanelVariant.line,\n [panelStyles['panel-details--white']]: variant === PanelVariant.white,\n [panelStyles['panel-details--with-icon']]: icon,\n });\n\n return (\n <div className={panelDetailsClasses} data-testid=\"panel-details\">\n <div>{children}</div>\n </div>\n );\n };\n\n return (\n <div ref={ref} data-testid={testId} className={panelWrapperClass} data-analyticsid={AnalyticsId.Panel}>\n <div className={panelClasses}>\n {icon && !iconRight && <div className={panelStyles.panel__icon}>{icon}</div>}\n <div className={panelContainer}>\n <div className={panelContentLeftClass}>\n <StatusText status={status} statusMessage={statusMessage} />\n {title && (\n <div className={panelStyles['panel-content-a__title-container']}>\n <Title appearance=\"title3\" htmlMarkup={titleHtmlMarkup} id={titleId} className={titleClasses}>\n {title}\n </Title>\n {hasBadge && (\n <div className={panelStyles.panel__badge}>\n <Badge color=\"blueberry\" testId=\"badge-status\">\n {statusMessage}\n </Badge>\n </div>\n )}\n </div>\n )}\n {contentA}\n </div>\n <div className={panelContentRightClass}>\n {contentB && <div className={panelContentBClass}>{contentB}</div>}\n {(children || url || date || time || buttonOnClick) && (\n <div className={btnContainerClass}>\n {<DateTime date={date} time={time} />}\n {(children || url || buttonOnClick) && <div className={panelActionBtnClass}>{renderDetailsButton()}</div>}\n </div>\n )}\n </div>\n </div>\n {icon && iconRight && <div className={panelStyles['panel__icon--right']}>{icon}</div>}\n </div>\n {renderContent()}\n </div>\n );\n});\n\nexport default Panel;\n"],"names":["PanelStatus","PanelVariant","PanelLayout","StatusText","status","statusMessage","statusIcon","palette","AlertSignFill","Pencil","statusMessageClass","classNames","panelStyles","React","Icon","IconSize","DateTime","date","time","Calendar","Watch","Panel","props","ref","children","contentA","contentB","className","testId","title","titleHtmlMarkup","url","target","icon","iconRight","variant","buttonText","buttonTextClose","buttonAriaLabelledById","buttonAriaLabel","layout","containerAsButton","noTopBorder","buttonOnClick","buttonHtmlMarkup","expanded","onExpand","renderChildrenWhenClosed","isExpanded","setIsExpanded","useState","previousIsExpanded","usePrevious","titleId","useUuid","buttonTextId","hasBadge","useEffect","layout3","panelWrapperClass","panelClasses","panelContainer","panelContentLeftClass","panelContentRightClass","panelContentBClass","panelActionBtnClass","titleClasses","renderDetailsButton","ariaLabelAttributes","getAriaLabelAttributes","commonProps","Button","ChevronUp","ChevronDown","ArrowRight","btnContainerClass","renderContent","panelDetailsClasses","AnalyticsId","Title","Badge"],"mappings":"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"}
1
+ {"version":3,"file":"Panel.js","sources":["../src/components/Panel/Panel.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport { AnchorTarget, AnalyticsId } from '../../constants';\nimport { useExpand } from '../../hooks/useExpand';\nimport { useUuid } from '../../hooks/useUuid';\nimport { palette } from '../../theme/palette';\nimport { AriaLabelAttributes, getAriaLabelAttributes } from '../../utils/accessibility';\nimport Badge from '../Badge';\nimport Button, { ButtonProps, ButtonTags } from '../Button';\nimport Icon, { IconSize, SvgPathProps } from '../Icons';\nimport AlertSignFill from '../Icons/AlertSignFill';\nimport ArrowRight from '../Icons/ArrowRight';\nimport Calendar from '../Icons/Calendar';\nimport ChevronDown from '../Icons/ChevronDown';\nimport ChevronUp from '../Icons/ChevronUp';\nimport Pencil from '../Icons/Pencil';\nimport Watch from '../Icons/Watch';\nimport Title, { TitleTags } from '../Title';\n\nimport panelStyles from './styles.module.scss';\n\nexport enum PanelStatus {\n normal = 'normal',\n new = 'new',\n error = 'error',\n draft = 'draft',\n}\n\nexport enum PanelVariant {\n fill = 'fill',\n white = 'white',\n stroke = 'stroke',\n line = 'line',\n}\n\nexport enum PanelLayout {\n layout1 = 'layout1',\n layout2 = 'layout2',\n layout3a = 'layout3a',\n layout3b = 'layout3b',\n layout3c = 'layout3c',\n}\n\nexport interface PanelProps {\n children?: React.ReactNode;\n /** Title of the panel */\n title?: string;\n /** Changes the underlying element of the title. Default: h2*/\n titleHtmlMarkup?: TitleTags;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n /** Displays a status on the left side: defualt normal */\n status?: keyof typeof PanelStatus;\n /** Displayed on top of the panel with a status icon */\n statusMessage?: string;\n /** Changes the visual representation of the panel. */\n variant?: keyof typeof PanelVariant;\n /** Url to details, renders as a button with anchor tag */\n url?: string;\n /** target used in the button: default is _self */\n target?: AnchorTarget;\n /** Icon displayed in title */\n icon?: React.ReactNode;\n /** Display icon on right */\n iconRight?: boolean;\n /** Panel section A content */\n contentA?: React.ReactNode | string;\n /** Panel section B content*/\n contentB?: React.ReactNode | string;\n /** Panel button text */\n buttonText?: string;\n /** Panel button close text */\n buttonTextClose?: string;\n /** HTML markup for panel button. Default: a */\n buttonHtmlMarkup?: ButtonTags;\n /** Callback when panel button is clicked */\n buttonOnClick?: ButtonProps['onClick'];\n /** Panel button is aria-labelledby the text in the button itself + the element set in buttonAriaLabelledById. Default: auto-generated id for title (if title is set). */\n buttonAriaLabelledById?: string;\n /** Panel button aria label */\n buttonAriaLabel?: string;\n /** Show close button in bottom of Panel Expand */\n /** @deprecated Has no effect anymore due to accessbility reasons. No close button is shown in expanded content. Will be removed in 2.0.0 */\n showCloseButtonInExpand?: boolean;\n /** Layout (see description) */\n layout?: keyof typeof PanelLayout;\n /** Clicking anywhere on the container will trigger a click on the panel's button */\n containerAsButton?: boolean;\n /** Displays time with icon */\n time?: string;\n /** Displays date with icon */\n date?: string;\n /** Removes top border when variant is \"line\" */\n noTopBorder?: boolean;\n /** Opens or closes the panel */\n expanded?: boolean;\n /** Called when panel is open/closed. */\n onExpand?: (isExpanded: boolean) => void;\n /** Whether to render children when closed (in which case they are hidden with CSS). Default: false */\n renderChildrenWhenClosed?: boolean;\n}\n\nconst StatusText: React.FC<{ status?: keyof typeof PanelStatus; statusMessage?: string }> = ({ status, statusMessage }) => {\n const statusIcon = (): { color: string; svgIcon: React.FC<SvgPathProps> } => {\n if (status === PanelStatus.error) {\n return { color: palette.cherry500, svgIcon: AlertSignFill };\n }\n\n return { color: palette.black, svgIcon: Pencil };\n };\n\n const statusMessageClass = classNames(panelStyles['status-message'], {\n [panelStyles['status-message--new']]: status === PanelStatus.new,\n });\n\n if ((status === PanelStatus.error || status === PanelStatus.draft) && statusMessage) {\n return (\n <div className={statusMessageClass} data-testid=\"display-status\">\n {<Icon {...statusIcon()} size={IconSize.XSmall} />} <span>{statusMessage}</span>\n </div>\n );\n }\n\n return null;\n};\n\nconst DateTime: React.FC<{ date?: string; time?: string }> = ({ date, time }) => {\n if (date || time) {\n return (\n <div className={panelStyles['datetime-container']} data-testid=\"datetime\">\n {date && (\n <div className={panelStyles['datetime-container__icon']}>\n <Icon svgIcon={Calendar} size={IconSize.XSmall} />\n <span>{date}</span>\n </div>\n )}\n {time && (\n <div className={panelStyles['datetime-container__icon']}>\n <Icon svgIcon={Watch} size={IconSize.XSmall} />\n <span>{time}</span>\n </div>\n )}\n </div>\n );\n }\n\n return null;\n};\n\nconst Panel = React.forwardRef(function PanelForwardedRef(props: PanelProps, ref: React.ForwardedRef<HTMLHeadingElement>) {\n const {\n children,\n contentA,\n contentB,\n className,\n testId,\n title,\n titleHtmlMarkup = 'h2',\n url,\n target = '_self',\n icon,\n iconRight = false,\n variant = PanelVariant.fill,\n status = PanelStatus.normal,\n statusMessage,\n buttonText = 'Se detaljer',\n buttonTextClose = 'Skjul detaljer',\n buttonAriaLabelledById,\n buttonAriaLabel,\n layout = PanelLayout.layout2,\n containerAsButton = false,\n date,\n time,\n noTopBorder,\n buttonOnClick,\n buttonHtmlMarkup = 'a',\n expanded = false,\n onExpand,\n renderChildrenWhenClosed = false,\n } = props;\n\n const [isExpanded, setIsExpanded] = useExpand(expanded, onExpand);\n const titleId = useUuid();\n const buttonTextId = useUuid();\n const hasBadge = statusMessage && status === PanelStatus.new;\n\n const layout3 = [PanelLayout.layout3a.toString(), PanelLayout.layout3b.toString(), PanelLayout.layout3c.toString()].includes(layout);\n\n const panelWrapperClass = classNames(panelStyles['panel-wrapper'], className);\n\n const panelClasses = classNames(panelStyles.panel, {\n [panelStyles['panel--fill']]: variant === PanelVariant.fill,\n [panelStyles['panel--stroke']]: variant === PanelVariant.stroke,\n [panelStyles['panel--white']]: variant === PanelVariant.white,\n [panelStyles['panel--line']]: variant === PanelVariant.line,\n [panelStyles['panel--no-top-border']]: variant === PanelVariant.line && noTopBorder,\n [panelStyles['panel--selected']]: isExpanded,\n [panelStyles['panel--new']]: status === PanelStatus.new,\n [panelStyles['panel--draft']]: status === PanelStatus.draft,\n [panelStyles['panel--error']]: status === PanelStatus.error,\n [panelStyles['panel--status']]: status && status !== PanelStatus.normal,\n [panelStyles['panel--with-icon']]: icon,\n [panelStyles['panel--button']]: containerAsButton,\n [panelStyles['panel--clickable']]: children || url || onExpand || buttonOnClick || containerAsButton,\n });\n\n const panelContainer = classNames({\n [panelStyles['panel__container']]: layout === PanelLayout.layout2 && contentB,\n [panelStyles['panel__container--layout3']]: layout3 && contentB,\n [panelStyles['panel__container--grow']]: icon,\n });\n\n const panelContentLeftClass = classNames({\n [panelStyles['panel-content-a']]: layout === PanelLayout.layout2,\n [panelStyles['panel-content-a--layout3a']]: layout === PanelLayout.layout3a,\n [panelStyles['panel-content-a--layout3b']]: layout === PanelLayout.layout3b,\n [panelStyles['panel-content-a--layout3c']]: layout === PanelLayout.layout3c,\n });\n\n const panelContentRightClass = classNames({\n [panelStyles['panel__content-right--layout1']]: contentB && layout === PanelLayout.layout1,\n [panelStyles['panel__content-right--layout2']]: contentB && layout === PanelLayout.layout2,\n [panelStyles['panel__content-right--layout3']]: contentB && layout3,\n [panelStyles['panel__content-right--layout3a']]: contentB && layout === PanelLayout.layout3a,\n [panelStyles['panel__content-right--layout3b']]: contentB && layout === PanelLayout.layout3b,\n [panelStyles['panel__content-right--layout3c']]: contentB && layout === PanelLayout.layout3c,\n });\n\n const panelContentBClass = classNames(panelStyles['panel-content-b'], {\n [panelStyles['panel-content-b--layout1']]: layout === PanelLayout.layout1,\n [panelStyles['panel-content-b--layout3']]: layout3,\n });\n\n const panelActionBtnClass = classNames(panelStyles['panel__details-btn']);\n const titleClasses = classNames(panelStyles['panel-content-a__title'], { [panelStyles['panel-content-a__title--badge']]: hasBadge });\n\n const renderDetailsButton = (): JSX.Element => {\n const ariaLabelAttributes = getAriaLabelAttributes({\n label: buttonAriaLabel,\n id: (buttonAriaLabelledById && `${buttonTextId} ${buttonAriaLabelledById}`) || (title && titleId && `${buttonTextId} ${titleId}`),\n prefer: 'label',\n });\n\n const commonProps: Partial<ButtonProps> & AriaLabelAttributes = {\n onClick: buttonOnClick ? buttonOnClick : () => setIsExpanded(!isExpanded),\n className: containerAsButton ? panelStyles['panel__expand'] : undefined,\n variant: 'borderless',\n ellipsis: true,\n ...ariaLabelAttributes,\n };\n\n if (children) {\n return (\n <Button testId=\"expand\" aria-expanded={isExpanded} {...commonProps}>\n <span id={buttonTextId}>{isExpanded ? buttonTextClose : buttonText}</span>\n <Icon svgIcon={isExpanded ? ChevronUp : ChevronDown} />\n </Button>\n );\n }\n\n return (\n <Button testId=\"url\" htmlMarkup={buttonHtmlMarkup} href={url} target={target} {...commonProps}>\n <span id={buttonTextId}>{buttonText}</span>\n <Icon svgIcon={ArrowRight} />\n </Button>\n );\n };\n\n const btnContainerClass = classNames(panelStyles['panel__btn-container'], {\n [panelStyles['panel__btn-container--layout3']]: layout3,\n [panelStyles['panel__btn-container--padding-top']]: contentA || contentB,\n });\n\n const renderContent = () => {\n if (!children) {\n return null;\n }\n if (!renderChildrenWhenClosed && !isExpanded) {\n return null;\n }\n\n const panelDetailsClasses = classNames(panelStyles['panel-details'], {\n [panelStyles['panel-details--open']]: isExpanded,\n [panelStyles['panel-details--line']]: variant === PanelVariant.line,\n [panelStyles['panel-details--white']]: variant === PanelVariant.white,\n [panelStyles['panel-details--with-icon']]: icon,\n });\n\n return (\n <div className={panelDetailsClasses} data-testid=\"panel-details\">\n <div>{children}</div>\n </div>\n );\n };\n\n return (\n <div ref={ref} data-testid={testId} className={panelWrapperClass} data-analyticsid={AnalyticsId.Panel}>\n <div className={panelClasses}>\n {icon && !iconRight && <div className={panelStyles.panel__icon}>{icon}</div>}\n <div className={panelContainer}>\n <div className={panelContentLeftClass}>\n <StatusText status={status} statusMessage={statusMessage} />\n {title && (\n <div className={panelStyles['panel-content-a__title-container']}>\n <Title appearance=\"title3\" htmlMarkup={titleHtmlMarkup} id={titleId} className={titleClasses}>\n {title}\n </Title>\n {hasBadge && (\n <div className={panelStyles.panel__badge}>\n <Badge color=\"blueberry\" testId=\"badge-status\">\n {statusMessage}\n </Badge>\n </div>\n )}\n </div>\n )}\n {contentA}\n </div>\n <div className={panelContentRightClass}>\n {contentB && <div className={panelContentBClass}>{contentB}</div>}\n {(children || url || date || time || buttonOnClick) && (\n <div className={btnContainerClass}>\n {<DateTime date={date} time={time} />}\n {(children || url || buttonOnClick) && <div className={panelActionBtnClass}>{renderDetailsButton()}</div>}\n </div>\n )}\n </div>\n </div>\n {icon && iconRight && <div className={panelStyles['panel__icon--right']}>{icon}</div>}\n </div>\n {renderContent()}\n </div>\n );\n});\n\nexport default Panel;\n"],"names":["PanelStatus","PanelVariant","PanelLayout","StatusText","status","statusMessage","statusIcon","palette","AlertSignFill","Pencil","statusMessageClass","classNames","panelStyles","Icon","IconSize","React","DateTime","date","time","Calendar","Watch","Panel","props","ref","children","contentA","contentB","className","testId","title","titleHtmlMarkup","url","target","icon","iconRight","variant","buttonText","buttonTextClose","buttonAriaLabelledById","buttonAriaLabel","layout","containerAsButton","noTopBorder","buttonOnClick","buttonHtmlMarkup","expanded","onExpand","renderChildrenWhenClosed","isExpanded","setIsExpanded","useExpand","titleId","useUuid","buttonTextId","hasBadge","layout3","panelWrapperClass","panelClasses","panelContainer","panelContentLeftClass","panelContentRightClass","panelContentBClass","panelActionBtnClass","titleClasses","renderDetailsButton","ariaLabelAttributes","getAriaLabelAttributes","commonProps","Button","ChevronUp","ChevronDown","ArrowRight","btnContainerClass","renderContent","panelDetailsClasses","AnalyticsId","Title","Badge","Panel$1"],"mappings":"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"}
package/PopOver.js ADDED
@@ -0,0 +1,2 @@
1
+ import f,{useRef as B,useState as U,useEffect as Z}from"react";import E from"classnames";import{AnalyticsId as $}from"./constants.js";import{useInterval as j}from"./hooks/useInterval.js";import{useIsVisible as k}from"./hooks/useIsVisible.js";import{useLayoutEvent as q}from"./hooks/useLayoutEvent.js";import{useSize as J}from"./hooks/useSize.js";import{mergeRefs as K}from"./utils/refs.js";import u from"./components/PopOver/styles.module.scss";const Q=373,s=12,g=16,C=20,Y=4,L=12,I=(t,o,n)=>n!==r.positionautomatic?n:t.top>o.height+g?r.positionabove:r.positionbelow,W=t=>t.left+t.width/2,z=t=>document.documentElement.clientWidth-t.right+t.width/2,m=(t,o)=>W(t)-o.width/2,S=(t,o)=>m(t,o)+o.width,tt=(t,o)=>m(t,o)>s,ot=(t,o)=>S(t,o)<document.documentElement.clientWidth-s,et=(t,o)=>ot(t,o)?tt(t,o)?"floating":"left":"right",P=(t,o)=>t.top-g-o.height,w=t=>t.bottom+g,nt=()=>document.documentElement.clientWidth-s*2,it=()=>document.documentElement.clientWidth>Q+s*2,A=t=>t.top-g-Y,rt=t=>W(t)-C/2,st=t=>z(t)-C/2,lt=(t,o,n)=>{const i=et(t,o),e=I(t,o,n);return i==="left"?e===r.positionabove?"leftabove":"leftbelow":i==="right"?e===r.positionabove?"rightabove":"rightbelow":e===r.positionabove?"floatingabove":"floatingbelow"},ct=(t,o,n)=>{const i=lt(t,o,n),e=it()?void 0:nt();return i==="leftabove"?{left:s,top:P(t,o),width:e}:i==="leftbelow"?{left:s,top:w(t),width:e}:i==="rightabove"?{right:s,top:P(t,o),width:e}:i==="rightbelow"?{right:s,top:w(t),width:e}:i==="floatingbelow"?{left:m(t,o),top:w(t),width:e}:{left:m(t,o),top:P(t,o),width:e}},at=(t,o,n)=>{const i=rt(o),e=st(o),l=t.left+L,c=t.right+L;return t.right?n===r.positionabove?{right:e>c?e:c,top:A(o)}:{right:e>c?e:c,top:o.bottom}:n===r.positionabove?{left:i>l?i:l,top:A(o)}:{left:i>l?i:l,top:o.bottom}};var r=(t=>(t.positionautomatic="positionautomatic",t.positionbelow="positionbelow",t.positionabove="positionabove",t))(r||{});const O=f.forwardRef((t,o)=>{const{id:n,children:i,controllerRef:e,popOverRef:l,show:c=!1,className:N="",variant:v="positionautomatic",role:R,testId:y,arrowClassName:T}=t,x=l||B(null),F=B(null),p=J(x),[a,H]=U(),X=k(e,0),h=()=>{var _;H((_=e.current)==null?void 0:_.getBoundingClientRect())};j(h,500),q(h,["scroll","resize"],10),Z(()=>{h()},[]);const V=R==="tooltip",D=E(u.popover,{[u["popover--visible"]]:V?c:X},N),b=a&&p&&I(a,p,v),G=E(u.popover__arrow,T,{[u["popover__arrow--over"]]:b==="positionbelow",[u["popover__arrow--under"]]:b==="positionabove"}),d=a&&p&&ct(a,p,v),M=d&&a&&b&&at(d,a,b);return f.createElement(f.Fragment,null,f.createElement("div",{id:n,ref:K([o,x]),className:D,style:d,"data-testid":y,"data-analyticsid":$.PopOver,role:R},i),f.createElement("div",{ref:F,className:G,style:M}))});O.displayName="PopOver";const wt=O;export{r as P,wt as a};
2
+ //# sourceMappingURL=PopOver.js.map
package/PopOver.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PopOver.js","sources":["../src/components/PopOver/utils.ts","../src/components/PopOver/PopOver.tsx"],"sourcesContent":["import { CSSProperties } from 'react';\n\nimport { PopOverVariant } from './PopOver';\n\ntype HorizontalPosition = 'left' | 'right' | 'floating';\ntype BubblePosition = 'leftabove' | 'leftbelow' | 'rightabove' | 'rightbelow' | 'floatingabove' | 'floatingbelow';\n\n/** Bredde på hjelpeboble */\nconst BUBBLE_WIDTH_PX = 373;\n/** Hjelpeboblen skal holde avstand til venstre/høyre kant på vinduet */\nconst WINDOW_MARGIN_PX = 12;\n/** Vertikal avstand fra hjelpeboble til kontroller */\nconst BUBBLE_VERTICAL_OFFSET_PX = 16;\n/** Høyde/bredde på pil */\nconst ARROW_WIDTH_PX = 20;\n/** Avstand fra pil til hjelpeboble */\nconst ARROW_VERTICAL_OFFSET_PX = 4;\n/** Pilen skal holde avstand til venstre/høyre kant av hjelpeboblen */\nconst ARROW_HORIZONTAL_MARGIN_PX = 12;\n\n/**\n * Beregn om hjelpeboblen skal vises over eller under kontrolleren\n * @param controllerSize DOMRect for controlleren\n * @param bubbleSize DOMRect for hjelpeboblen\n * @param variant Ønsket plassering av hjelpeboblen (over/under/automatisk)\n * @returns Om hjelpeboblen skal vises over eller under\n */\nexport const getVerticalPosition = (\n controllerSize: DOMRect,\n bubbleSize: DOMRect,\n variant: keyof typeof PopOverVariant\n): keyof typeof PopOverVariant => {\n if (variant !== PopOverVariant.positionautomatic) {\n return variant;\n }\n if (controllerSize.top > bubbleSize.height + BUBBLE_VERTICAL_OFFSET_PX) {\n return PopOverVariant.positionabove;\n } else {\n return PopOverVariant.positionbelow;\n }\n};\n\n/**\n * Finn horisontalt midtpunkt på kontrolleren i forhold til venstre kant av vinduet\n * @param controllerSize DOMRect for controlleren\n * @returns Horisontalt senter av controlleren i px\n */\nconst getControllerLeftCenterPx = (controllerSize: DOMRect): number => controllerSize.left + controllerSize.width / 2;\n\n/**\n * Finn horisontalt midtpunkt på kontrolleren i forhold til høyre kant av vinduet\n * @param controllerSize DOMRect for controlleren\n * @returns Horisontalt senter av controlleren i px\n */\nconst getControllerRightCenterPx = (controllerSize: DOMRect): number =>\n document.documentElement.clientWidth - controllerSize.right + controllerSize.width / 2;\n\n/**\n * Finn venstre kant av hjelpeboblen i forhold til kontrolleren\n * @param controllerSize DOMRect for controlleren\n * @param bubbleSize DOMRect for hjelpeboblen\n * @returns Venstre kant av hjelpeboblen i px\n */\nconst getBubbleLeftPx = (controllerSize: DOMRect, bubbleSize: DOMRect): number => {\n const controllerHorizontalCenterPx = getControllerLeftCenterPx(controllerSize);\n\n return controllerHorizontalCenterPx - bubbleSize.width / 2;\n};\n\n/**\n * Finn høyre kant av hjelpeboblen i forhold til kontrolleren\n * @param controllerSize DOMRect for controlleren\n * @param bubbleSize DOMRect for hjelpeboblen\n * @returns Høyre kant av hjelpeboblen i px\n */\nconst getBubbleRightPx = (controllerSize: DOMRect, bubbleSize: DOMRect): number => {\n const bubbleLeftPx = getBubbleLeftPx(controllerSize, bubbleSize);\n\n return bubbleLeftPx + bubbleSize.width;\n};\n\n/**\n * Sjekk om venstre kant av hjelpeboblen er innenfor vinduet\n * @param controllerSize DOMRect for controlleren\n * @param bubbleSize DOMRect for hjelpeboblen\n * @returns true dersom venstre kant er innenfor vinduet\n */\nconst getBubbleLeftVisible = (controllerSize: DOMRect, bubbleSize: DOMRect): boolean => {\n const bubbleLeftPx = getBubbleLeftPx(controllerSize, bubbleSize);\n\n return bubbleLeftPx > WINDOW_MARGIN_PX;\n};\n\n/**\n * Sjekk om høyre kant av hjelpeboblen er innenfor vinduet\n * @param controllerSize DOMRect for controlleren\n * @param bubbleSize DOMRect for hjelpeboblen\n * @returns true dersom høyre kant er innenfor vinduet\n */\nconst getBubbleRightIsVisible = (controllerSize: DOMRect, bubbleSize: DOMRect): boolean => {\n const bubbleRightPx = getBubbleRightPx(controllerSize, bubbleSize);\n\n return bubbleRightPx < document.documentElement.clientWidth - WINDOW_MARGIN_PX;\n};\n\n/**\n * Finn riktig horisontal plassering til hjelpeboblen\n * @param controllerSize DOMRect for controlleren\n * @param bubbleSize DOMRect for hjelpeboblen\n * @returns left, right eller floating\n */\nconst getHorizontalPosition = (controllerSize: DOMRect, bubbleSize: DOMRect): HorizontalPosition => {\n if (!getBubbleRightIsVisible(controllerSize, bubbleSize)) {\n return 'right';\n }\n if (!getBubbleLeftVisible(controllerSize, bubbleSize)) {\n return 'left';\n }\n\n return 'floating';\n};\n\n/**\n * Finn vertikal plassering av hjelpeboblen når den skal vises over\n * @param controllerSize DOMRect for controlleren\n * @param bubbleSize DOMRect for hjelpeboblen\n * @returns \"Top\" for hjelpeboblen i px\n */\nconst getBubbleAbovePx = (controllerSize: DOMRect, bubbleSize: DOMRect): number =>\n controllerSize.top - BUBBLE_VERTICAL_OFFSET_PX - bubbleSize.height;\n\n/**\n * Finn vertikal plassering av hjelpeboblen når den skal vises under\n * @param controllerSize DOMRect for controlleren\n * @param bubbleSize DOMRect for hjelpeboblen\n * @returns \"Top\" for hjelpeboblen i px\n */\nconst getBubbleBelowPx = (controllerSize: DOMRect): number => controllerSize.bottom + BUBBLE_VERTICAL_OFFSET_PX;\n\n/**\n * Finn maks bredde på hjelpeboblen i forhold til vinduet\n * @returns Bredde på hjelpeboblen i px\n */\nconst getBubbleWidth = (): number => document.documentElement.clientWidth - WINDOW_MARGIN_PX * 2;\n\n/**\n * Sjekk om hjelpeboblen har plass i vinduet\n * @returns true dersom det er plass til hjelpeboblen i vinduet\n */\nconst getBubbleFitsInWindow = (): boolean => {\n return document.documentElement.clientWidth > BUBBLE_WIDTH_PX + WINDOW_MARGIN_PX * 2;\n};\n\n/**\n * Finn vertikal plassering av pilen når den skal vises over\n * @param controllerSize DOMRect for controlleren\n * @returns \"Top\" for pilen i px\n */\nconst getArrowTopxPx = (controllerSize: DOMRect): number => controllerSize.top - BUBBLE_VERTICAL_OFFSET_PX - ARROW_VERTICAL_OFFSET_PX;\n\n/**\n * Finn horisontal plassering av pilen i forhold til venstre kant av vinduet\n * @param controllerSize DOMRect for controlleren\n * @returns Venstre kant av pilen i px\n */\nconst getArrowLeftPx = (controllerSize: DOMRect): number => getControllerLeftCenterPx(controllerSize) - ARROW_WIDTH_PX / 2;\n\n/**\n * Finn horisontal plassering av pilen\n * @param controllerSize DOMRect for controlleren\n * @returns Venstre kant av pilen i px\n */\nconst getArrowRightPx = (controllerSize: DOMRect): number => getControllerRightCenterPx(controllerSize) - ARROW_WIDTH_PX / 2;\n\n/**\n * Finn riktig plassering av hjelpeboblen\n * @param controllerSize DOMRect for controlleren\n * @param bubbleSize DOMRect for hjelpeboblen\n * @param variant Ønsket plassering av hjelpeboblen (over/under)\n * @returns Beste mulige plassering av hjelpeboblen\n */\nconst getBubblePosition = (controllerSize: DOMRect, bubbleSize: DOMRect, variant: keyof typeof PopOverVariant): BubblePosition => {\n const horizontalPosition = getHorizontalPosition(controllerSize, bubbleSize);\n const verticalPosition = getVerticalPosition(controllerSize, bubbleSize, variant);\n\n if (horizontalPosition === 'left') {\n if (verticalPosition === PopOverVariant.positionabove) {\n return 'leftabove';\n }\n return 'leftbelow';\n }\n\n if (horizontalPosition === 'right') {\n if (verticalPosition === PopOverVariant.positionabove) {\n return 'rightabove';\n }\n return 'rightbelow';\n }\n\n if (verticalPosition === PopOverVariant.positionabove) {\n return 'floatingabove';\n }\n\n return 'floatingbelow';\n};\n\n/**\n * Finn riktig plassering av hjelpeboblen\n * @param controllerSize DOMRect for controlleren\n * @param bubbleSize DOMRect for hjelpeboblen\n * @param variant Ønsket plassering av hjelpeboblen (over/under)\n * @returns CSSProperties som plasserer hjelpeboblen riktig\n */\nexport const getBubbleStyle = (controllerSize: DOMRect, bubbleSize: DOMRect, variant: keyof typeof PopOverVariant): CSSProperties => {\n const bubblePosition = getBubblePosition(controllerSize, bubbleSize, variant);\n const bubbleWidth = !getBubbleFitsInWindow() ? getBubbleWidth() : undefined;\n\n if (bubblePosition === 'leftabove') {\n return {\n left: WINDOW_MARGIN_PX,\n top: getBubbleAbovePx(controllerSize, bubbleSize),\n width: bubbleWidth,\n };\n }\n if (bubblePosition === 'leftbelow') {\n return { left: WINDOW_MARGIN_PX, top: getBubbleBelowPx(controllerSize), width: bubbleWidth };\n }\n if (bubblePosition === 'rightabove') {\n return { right: WINDOW_MARGIN_PX, top: getBubbleAbovePx(controllerSize, bubbleSize), width: bubbleWidth };\n }\n if (bubblePosition === 'rightbelow') {\n return { right: WINDOW_MARGIN_PX, top: getBubbleBelowPx(controllerSize), width: bubbleWidth };\n }\n\n if (bubblePosition === 'floatingbelow') {\n return { left: getBubbleLeftPx(controllerSize, bubbleSize), top: getBubbleBelowPx(controllerSize), width: bubbleWidth };\n }\n\n return { left: getBubbleLeftPx(controllerSize, bubbleSize), top: getBubbleAbovePx(controllerSize, bubbleSize), width: bubbleWidth };\n};\n\n/**\n * Finn riktig plassering av pilen\n * @param bubbleStyle CSSProperties for hjelpeboblen\n * @param controllerSize DOMRect for kontrolleren\n * @param verticalPosition Ønsket plassering av hjelpeboblen (over/under)\n * @returns CSSProperties som plasserer pilen riktig\n */\nexport const getArrowStyle = (\n bubbleStyle: CSSProperties,\n controllerSize: DOMRect,\n verticalPosition: keyof typeof PopOverVariant\n): CSSProperties => {\n const leftPx = getArrowLeftPx(controllerSize);\n const rightPx = getArrowRightPx(controllerSize);\n const minLeftPx = (bubbleStyle.left as number) + ARROW_HORIZONTAL_MARGIN_PX;\n const minRightPx = (bubbleStyle.right as number) + ARROW_HORIZONTAL_MARGIN_PX;\n\n if (bubbleStyle.right) {\n if (verticalPosition === PopOverVariant.positionabove) {\n return {\n right: rightPx > minRightPx ? rightPx : minRightPx,\n top: getArrowTopxPx(controllerSize),\n };\n }\n\n return {\n right: rightPx > minRightPx ? rightPx : minRightPx,\n top: controllerSize.bottom,\n };\n }\n\n if (verticalPosition === PopOverVariant.positionabove) {\n return {\n left: leftPx > minLeftPx ? leftPx : minLeftPx,\n top: getArrowTopxPx(controllerSize),\n };\n }\n\n return {\n left: leftPx > minLeftPx ? leftPx : minLeftPx,\n top: controllerSize.bottom,\n };\n};\n","import React, { useEffect, useRef, useState } from 'react';\n\nimport classNames from 'classnames';\n\nimport { getArrowStyle, getBubbleStyle, getVerticalPosition } from './utils';\nimport { AnalyticsId } from '../../constants';\nimport { useInterval } from '../../hooks/useInterval';\nimport { useIsVisible } from '../../hooks/useIsVisible';\nimport { useLayoutEvent } from '../../hooks/useLayoutEvent';\nimport { useSize } from '../../hooks/useSize';\nimport { mergeRefs } from '../../utils/refs';\n\nimport styles from './styles.module.scss';\n\nexport enum PopOverVariant {\n positionautomatic = 'positionautomatic',\n positionbelow = 'positionbelow',\n positionabove = 'positionabove',\n}\n\nexport type PopOverRole = 'tooltip';\n\nexport interface PopOverProps {\n /** Id of the PopOver */\n id?: string;\n /** Content shown inside PopOver. Note that if role=\"tooltip\", you must not include interactive/focusable elements. */\n children: React.ReactNode;\n /** Ref for the element the PopOver is placed upon */\n controllerRef: React.RefObject<HTMLElement | SVGSVGElement>;\n /** Ref for the element the PopOver is placed upon */\n popOverRef?: React.RefObject<HTMLDivElement>;\n /** Show the popover. Only applies when role=tooltip. Default: false. */\n show?: boolean;\n /** Adds custom classes to the element. */\n className?: string;\n /** Adds custom classes to the arrow element. */\n arrowClassName?: string;\n /** Determines the placement of the popover. Default: automatic positioning. */\n variant?: keyof typeof PopOverVariant;\n /** Sets role of the PopOver element */\n role?: PopOverRole;\n /** Closes popover on click outside the bubble. */\n closeOnClickOutside?: boolean;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\nconst PopOver = React.forwardRef<HTMLDivElement | SVGSVGElement, PopOverProps>((props, ref) => {\n const {\n id,\n children,\n controllerRef,\n popOverRef,\n show = false,\n className = '',\n variant = PopOverVariant.positionautomatic,\n role,\n testId,\n arrowClassName,\n } = props;\n\n const bubbleRef = popOverRef || useRef<HTMLDivElement>(null);\n const arrowRef = useRef<HTMLDivElement>(null);\n const bubbleSize = useSize(bubbleRef);\n const [controllerSize, setControllerSize] = useState<DOMRect>();\n const controllerisVisible = useIsVisible(controllerRef, 0);\n\n const updateControllerSize = (): void => {\n setControllerSize(controllerRef.current?.getBoundingClientRect());\n };\n\n useInterval(updateControllerSize, 500);\n useLayoutEvent(updateControllerSize, ['scroll', 'resize'], 10);\n\n useEffect(() => {\n updateControllerSize();\n }, []);\n\n const isTooltip = role === 'tooltip';\n\n const popOverClasses = classNames(styles.popover, { [styles['popover--visible']]: isTooltip ? show : controllerisVisible }, className);\n const verticalPosition = controllerSize && bubbleSize && getVerticalPosition(controllerSize, bubbleSize, variant);\n const arrowClasses = classNames(styles.popover__arrow, arrowClassName, {\n [styles['popover__arrow--over']]: verticalPosition === PopOverVariant.positionbelow,\n [styles['popover__arrow--under']]: verticalPosition === PopOverVariant.positionabove,\n });\n\n const bubbleStyle = controllerSize && bubbleSize && getBubbleStyle(controllerSize, bubbleSize, variant);\n const arrowStyle = bubbleStyle && controllerSize && verticalPosition && getArrowStyle(bubbleStyle, controllerSize, verticalPosition);\n\n return (\n <>\n <div\n id={id}\n ref={mergeRefs([ref, bubbleRef])}\n className={popOverClasses}\n style={bubbleStyle}\n data-testid={testId}\n data-analyticsid={AnalyticsId.PopOver}\n role={role}\n >\n {children}\n </div>\n <div ref={arrowRef} className={arrowClasses} style={arrowStyle} />\n </>\n );\n});\n\nPopOver.displayName = 'PopOver';\n\nexport default PopOver;\n"],"names":["BUBBLE_WIDTH_PX","WINDOW_MARGIN_PX","BUBBLE_VERTICAL_OFFSET_PX","ARROW_WIDTH_PX","ARROW_VERTICAL_OFFSET_PX","ARROW_HORIZONTAL_MARGIN_PX","getVerticalPosition","controllerSize","bubbleSize","variant","PopOverVariant","getControllerLeftCenterPx","getControllerRightCenterPx","getBubbleLeftPx","getBubbleRightPx","getBubbleLeftVisible","getBubbleRightIsVisible","getHorizontalPosition","getBubbleAbovePx","getBubbleBelowPx","getBubbleWidth","getBubbleFitsInWindow","getArrowTopxPx","getArrowLeftPx","getArrowRightPx","getBubblePosition","horizontalPosition","verticalPosition","getBubbleStyle","bubblePosition","bubbleWidth","getArrowStyle","bubbleStyle","leftPx","rightPx","minLeftPx","minRightPx","PopOver","React","props","ref","id","children","controllerRef","popOverRef","show","className","role","testId","arrowClassName","bubbleRef","useRef","arrowRef","useSize","setControllerSize","useState","controllerisVisible","useIsVisible","updateControllerSize","_a","useInterval","useLayoutEvent","useEffect","isTooltip","popOverClasses","classNames","styles","arrowClasses","arrowStyle","mergeRefs","AnalyticsId","PopOver$1"],"mappings":"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"}
package/RadioButton.js CHANGED
@@ -1,2 +1,2 @@
1
- import r from"react";import a from"classnames";import{a as I}from"./uuid.js";import o from"./components/RadioButton/styles.module.scss";import{FormMode as l,FormVariant as x,AnalyticsId as S}from"./constants.js";const T=r.forwardRef((p,f)=>{const{className:y,defaultChecked:v=!1,disabled:e,label:s,inputId:i=I(),mode:n,name:B=i,variant:N,errorText:t,error:b=!!t,value:g=s,testId:k,required:w,...R}=p,u=b||n===l.oninvalid,m=n===l.ondark,c=n===l.onblueberry,d=N===x.bigform,C=a(o["radio-button-wrapper"],{[o["radio-button-wrapper--with-error"]]:t,[o["radio-button-wrapper--bigform"]]:d}),E=a(o["radio-button-label"],{[o["radio-button-label--disabled"]]:e,[o["radio-button-label--on-dark"]]:m,[o["radio-button-label--on-blueberry"]]:c,[o["radio-button-label--invalid"]]:u,[o["radio-button-label--bigform"]]:d}),h=a(o["radio-button"],{[o["radio-button--on-dark"]]:m,[o["radio-button--disabled"]]:e,[o["radio-button--on-blueberry"]]:c,[o["radio-button--invalid"]]:u},y),F=a(o["radio-button-errors"],{[o["radio-button-errors--bigform"]]:d});return r.createElement("div",{"data-testid":k,"data-analyticsid":S.RadioButton,className:C},t&&r.createElement("p",{className:F},t),r.createElement("label",{htmlFor:i,className:E},r.createElement("input",{id:i,name:B,className:h,type:"radio",disabled:e,value:g,ref:f,"aria-invalid":b,defaultChecked:v,required:w,...R}),s))});export{T as R};
1
+ import t from"react";import r from"classnames";import{FormMode as l,FormVariant as x,AnalyticsId as S}from"./constants.js";import{a as q}from"./uuid.js";import o from"./components/RadioButton/styles.module.scss";const c=t.forwardRef((p,f)=>{const{className:y,defaultChecked:B=!1,disabled:e,label:s,inputId:i=q(),mode:n,name:v=i,variant:N,errorText:a,error:R=!!a,value:g=s,testId:k,required:w,...C}=p,b=R||n===l.oninvalid,u=n===l.ondark,m=n===l.onblueberry,d=N===x.bigform,E=r(o["radio-button-wrapper"],{[o["radio-button-wrapper--with-error"]]:a,[o["radio-button-wrapper--bigform"]]:d}),h=r(o["radio-button-label"],{[o["radio-button-label--disabled"]]:e,[o["radio-button-label--on-dark"]]:u,[o["radio-button-label--on-blueberry"]]:m,[o["radio-button-label--invalid"]]:b,[o["radio-button-label--bigform"]]:d}),F=r(o["radio-button"],{[o["radio-button--on-dark"]]:u,[o["radio-button--disabled"]]:e,[o["radio-button--on-blueberry"]]:m,[o["radio-button--invalid"]]:b},y),I=r(o["radio-button-errors"],{[o["radio-button-errors--bigform"]]:d});return t.createElement("div",{"data-testid":k,"data-analyticsid":S.RadioButton,className:E},a&&t.createElement("p",{className:I},a),t.createElement("label",{htmlFor:i,className:h},t.createElement("input",{id:i,name:v,className:F,type:"radio",disabled:e,value:g,ref:f,defaultChecked:B,required:w,...C}),s))});c.displayName="RadioButton";const V=c;export{V as R,c as a};
2
2
  //# sourceMappingURL=RadioButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RadioButton.js","sources":["../src/components/RadioButton/RadioButton.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\nimport { uuid } from '../../utils/uuid';\n\nimport radioButtonStyles from './styles.module.scss';\nimport { AnalyticsId, FormMode, FormVariant } from '../../constants';\n\nexport interface RadioButtonProps\n extends Pick<React.InputHTMLAttributes<HTMLInputElement>, 'name' | 'value' | 'disabled' | 'defaultChecked' | 'required'> {\n /** Adds custom classes to the element. */\n className?: string;\n /** The label text next to the radioButton */\n label: string;\n /** input id of the radioButton */\n inputId?: string;\n /** Changes the visuals of the radioButton */\n mode?: keyof typeof FormMode;\n /** Changes the visuals of the radioButton */\n variant?: keyof typeof FormVariant;\n /** Activates Error style for the radioButton - This is can be true while errorText is empty, when in a FormGroup */\n error?: boolean;\n /** Error text to show above the component */\n errorText?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\nexport const RadioButton = React.forwardRef((props: RadioButtonProps, ref: React.Ref<HTMLInputElement>) => {\n const {\n className,\n defaultChecked = false,\n disabled,\n label,\n inputId = uuid(),\n mode,\n name = inputId,\n variant,\n errorText,\n error = !!errorText,\n value = label,\n testId,\n required,\n ...rest\n } = props;\n const invalid = error || mode === FormMode.oninvalid;\n const onDark = mode === FormMode.ondark;\n const onBlueberry = mode === FormMode.onblueberry;\n const bigform = variant === FormVariant.bigform;\n\n const radioButtonWrapperClasses = classNames(radioButtonStyles['radio-button-wrapper'], {\n [radioButtonStyles['radio-button-wrapper--with-error']]: errorText,\n [radioButtonStyles['radio-button-wrapper--bigform']]: bigform,\n });\n const radioButtonLabelClasses = classNames(radioButtonStyles['radio-button-label'], {\n [radioButtonStyles['radio-button-label--disabled']]: disabled,\n [radioButtonStyles['radio-button-label--on-dark']]: onDark,\n [radioButtonStyles['radio-button-label--on-blueberry']]: onBlueberry,\n [radioButtonStyles['radio-button-label--invalid']]: invalid,\n [radioButtonStyles['radio-button-label--bigform']]: bigform,\n });\n const radioButtonClasses = classNames(\n radioButtonStyles['radio-button'],\n {\n [radioButtonStyles['radio-button--on-dark']]: onDark,\n [radioButtonStyles['radio-button--disabled']]: disabled,\n [radioButtonStyles['radio-button--on-blueberry']]: onBlueberry,\n [radioButtonStyles['radio-button--invalid']]: invalid,\n },\n className\n );\n const errorStyles = classNames(radioButtonStyles['radio-button-errors'], {\n [radioButtonStyles['radio-button-errors--bigform']]: bigform,\n });\n\n return (\n <div data-testid={testId} data-analyticsid={AnalyticsId.RadioButton} className={radioButtonWrapperClasses}>\n {errorText && <p className={errorStyles}>{errorText}</p>}\n <label htmlFor={inputId} className={radioButtonLabelClasses}>\n <input\n id={inputId}\n name={name}\n className={radioButtonClasses}\n type=\"radio\"\n disabled={disabled}\n value={value}\n ref={ref}\n aria-invalid={error}\n defaultChecked={defaultChecked}\n required={required}\n {...rest}\n />\n {label}\n </label>\n </div>\n );\n});\n\nexport default RadioButton;\n"],"names":["RadioButton","React","props","ref","className","defaultChecked","disabled","label","inputId","uuid","mode","name","variant","errorText","error","value","testId","required","rest","invalid","FormMode","onDark","onBlueberry","bigform","FormVariant","radioButtonWrapperClasses","classNames","radioButtonStyles","radioButtonLabelClasses","radioButtonClasses","errorStyles","AnalyticsId"],"mappings":"oNA4BO,MAAMA,EAAcC,EAAM,WAAW,CAACC,EAAyBC,IAAqC,CACnG,KAAA,CACJ,UAAAC,EACA,eAAAC,EAAiB,GACjB,SAAAC,EACA,MAAAC,EACA,QAAAC,EAAUC,EAAK,EACf,KAAAC,EACA,KAAAC,EAAOH,EACP,QAAAI,EACA,UAAAC,EACA,MAAAC,EAAQ,CAAC,CAACD,EACV,MAAAE,EAAQR,EACR,OAAAS,EACA,SAAAC,KACGC,CACD,EAAAhB,EACEiB,EAAUL,GAASJ,IAASU,EAAS,UACrCC,EAASX,IAASU,EAAS,OAC3BE,EAAcZ,IAASU,EAAS,YAChCG,EAAUX,IAAYY,EAAY,QAElCC,EAA4BC,EAAWC,EAAkB,wBAAyB,CACtF,CAACA,EAAkB,qCAAsCd,EACzD,CAACc,EAAkB,kCAAmCJ,CAAA,CACvD,EACKK,EAA0BF,EAAWC,EAAkB,sBAAuB,CAClF,CAACA,EAAkB,iCAAkCrB,EACrD,CAACqB,EAAkB,gCAAiCN,EACpD,CAACM,EAAkB,qCAAsCL,EACzD,CAACK,EAAkB,gCAAiCR,EACpD,CAACQ,EAAkB,gCAAiCJ,CAAA,CACrD,EACKM,EAAqBH,EACzBC,EAAkB,gBAClB,CACE,CAACA,EAAkB,0BAA2BN,EAC9C,CAACM,EAAkB,2BAA4BrB,EAC/C,CAACqB,EAAkB,+BAAgCL,EACnD,CAACK,EAAkB,0BAA2BR,CAChD,EACAf,CAAA,EAEI0B,EAAcJ,EAAWC,EAAkB,uBAAwB,CACvE,CAACA,EAAkB,iCAAkCJ,CAAA,CACtD,EAED,OACGtB,EAAA,cAAA,MAAA,CAAI,cAAae,EAAQ,mBAAkBe,EAAY,YAAa,UAAWN,CAAA,EAC7EZ,GAAcZ,EAAA,cAAA,IAAA,CAAE,UAAW6B,CAAc,EAAAjB,CAAU,EACnDZ,EAAA,cAAA,QAAA,CAAM,QAASO,EAAS,UAAWoB,CAAA,EACjC3B,EAAA,cAAA,QAAA,CACC,GAAIO,EACJ,KAAAG,EACA,UAAWkB,EACX,KAAK,QACL,SAAAvB,EACA,MAAAS,EACA,IAAAZ,EACA,eAAcW,EACd,eAAAT,EACA,SAAAY,EACC,GAAGC,CAAA,CACN,EACCX,CACH,CACF,CAEJ,CAAC"}
1
+ {"version":3,"file":"RadioButton.js","sources":["../src/components/RadioButton/RadioButton.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport { AnalyticsId, FormMode, FormVariant } from '../../constants';\nimport { uuid } from '../../utils/uuid';\n\nimport radioButtonStyles from './styles.module.scss';\n\nexport interface RadioButtonProps\n extends Pick<React.InputHTMLAttributes<HTMLInputElement>, 'name' | 'value' | 'disabled' | 'defaultChecked' | 'required'> {\n /** Adds custom classes to the element. */\n className?: string;\n /** The label text next to the radioButton */\n label: string;\n /** input id of the radioButton */\n inputId?: string;\n /** Changes the visuals of the radioButton */\n mode?: keyof typeof FormMode;\n /** Changes the visuals of the radioButton */\n variant?: keyof typeof FormVariant;\n /** Activates Error style for the radioButton - This is can be true while errorText is empty, when in a FormGroup */\n error?: boolean;\n /** Error text to show above the component */\n errorText?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\nexport const RadioButton = React.forwardRef((props: RadioButtonProps, ref: React.Ref<HTMLInputElement>) => {\n const {\n className,\n defaultChecked = false,\n disabled,\n label,\n inputId = uuid(),\n mode,\n name = inputId,\n variant,\n errorText,\n error = !!errorText,\n value = label,\n testId,\n required,\n ...rest\n } = props;\n const invalid = error || mode === FormMode.oninvalid;\n const onDark = mode === FormMode.ondark;\n const onBlueberry = mode === FormMode.onblueberry;\n const bigform = variant === FormVariant.bigform;\n\n const radioButtonWrapperClasses = classNames(radioButtonStyles['radio-button-wrapper'], {\n [radioButtonStyles['radio-button-wrapper--with-error']]: errorText,\n [radioButtonStyles['radio-button-wrapper--bigform']]: bigform,\n });\n const radioButtonLabelClasses = classNames(radioButtonStyles['radio-button-label'], {\n [radioButtonStyles['radio-button-label--disabled']]: disabled,\n [radioButtonStyles['radio-button-label--on-dark']]: onDark,\n [radioButtonStyles['radio-button-label--on-blueberry']]: onBlueberry,\n [radioButtonStyles['radio-button-label--invalid']]: invalid,\n [radioButtonStyles['radio-button-label--bigform']]: bigform,\n });\n const radioButtonClasses = classNames(\n radioButtonStyles['radio-button'],\n {\n [radioButtonStyles['radio-button--on-dark']]: onDark,\n [radioButtonStyles['radio-button--disabled']]: disabled,\n [radioButtonStyles['radio-button--on-blueberry']]: onBlueberry,\n [radioButtonStyles['radio-button--invalid']]: invalid,\n },\n className\n );\n const errorStyles = classNames(radioButtonStyles['radio-button-errors'], {\n [radioButtonStyles['radio-button-errors--bigform']]: bigform,\n });\n\n return (\n <div data-testid={testId} data-analyticsid={AnalyticsId.RadioButton} className={radioButtonWrapperClasses}>\n {errorText && <p className={errorStyles}>{errorText}</p>}\n <label htmlFor={inputId} className={radioButtonLabelClasses}>\n <input\n id={inputId}\n name={name}\n className={radioButtonClasses}\n type=\"radio\"\n disabled={disabled}\n value={value}\n ref={ref}\n defaultChecked={defaultChecked}\n required={required}\n {...rest}\n />\n {label}\n </label>\n </div>\n );\n});\n\nRadioButton.displayName = 'RadioButton';\n\nexport default RadioButton;\n"],"names":["RadioButton","React","props","ref","className","defaultChecked","disabled","label","inputId","uuid","mode","name","variant","errorText","error","value","testId","required","rest","invalid","FormMode","onDark","onBlueberry","bigform","FormVariant","radioButtonWrapperClasses","classNames","radioButtonStyles","radioButtonLabelClasses","radioButtonClasses","errorStyles","AnalyticsId","RadioButton$1"],"mappings":"oNA6BO,MAAMA,EAAcC,EAAM,WAAW,CAACC,EAAyBC,IAAqC,CACnG,KAAA,CACJ,UAAAC,EACA,eAAAC,EAAiB,GACjB,SAAAC,EACA,MAAAC,EACA,QAAAC,EAAUC,EAAK,EACf,KAAAC,EACA,KAAAC,EAAOH,EACP,QAAAI,EACA,UAAAC,EACA,MAAAC,EAAQ,CAAC,CAACD,EACV,MAAAE,EAAQR,EACR,OAAAS,EACA,SAAAC,EACA,GAAGC,CACD,EAAAhB,EACEiB,EAAUL,GAASJ,IAASU,EAAS,UACrCC,EAASX,IAASU,EAAS,OAC3BE,EAAcZ,IAASU,EAAS,YAChCG,EAAUX,IAAYY,EAAY,QAElCC,EAA4BC,EAAWC,EAAkB,sBAAsB,EAAG,CACtF,CAACA,EAAkB,kCAAkC,CAAC,EAAGd,EACzD,CAACc,EAAkB,+BAA+B,CAAC,EAAGJ,CAAA,CACvD,EACKK,EAA0BF,EAAWC,EAAkB,oBAAoB,EAAG,CAClF,CAACA,EAAkB,8BAA8B,CAAC,EAAGrB,EACrD,CAACqB,EAAkB,6BAA6B,CAAC,EAAGN,EACpD,CAACM,EAAkB,kCAAkC,CAAC,EAAGL,EACzD,CAACK,EAAkB,6BAA6B,CAAC,EAAGR,EACpD,CAACQ,EAAkB,6BAA6B,CAAC,EAAGJ,CAAA,CACrD,EACKM,EAAqBH,EACzBC,EAAkB,cAAc,EAChC,CACE,CAACA,EAAkB,uBAAuB,CAAC,EAAGN,EAC9C,CAACM,EAAkB,wBAAwB,CAAC,EAAGrB,EAC/C,CAACqB,EAAkB,4BAA4B,CAAC,EAAGL,EACnD,CAACK,EAAkB,uBAAuB,CAAC,EAAGR,CAChD,EACAf,CAAA,EAEI0B,EAAcJ,EAAWC,EAAkB,qBAAqB,EAAG,CACvE,CAACA,EAAkB,8BAA8B,CAAC,EAAGJ,CAAA,CACtD,EAGC,OAAAtB,EAAA,cAAC,OAAI,cAAae,EAAQ,mBAAkBe,EAAY,YAAa,UAAWN,CAC7E,EAAAZ,mBAAc,IAAE,CAAA,UAAWiB,GAAcjB,CAAU,kBACnD,QAAM,CAAA,QAASL,EAAS,UAAWoB,CAClC,EAAA3B,EAAA,cAAC,QAAA,CACC,GAAIO,EACJ,KAAAG,EACA,UAAWkB,EACX,KAAK,QACL,SAAAvB,EACA,MAAAS,EACA,IAAAZ,EACA,eAAAE,EACA,SAAAY,EACC,GAAGC,CAAA,CAAA,EAELX,CACH,CACF,CAEJ,CAAC,EAEDP,EAAY,YAAc,cAE1B,MAAAgC,EAAehC"}
package/Select.js CHANGED
@@ -1,2 +1,2 @@
1
- import r from"react";import c from"classnames";import e from"./components/Select/styles.module.scss";import{AnalyticsId as D,IconSize as T,AVERAGE_CHARACTER_WIDTH_PX as q}from"./constants.js";import{Icon as z}from"./components/Icons/Icon.js";import H from"./components/Icons/ChevronDown.js";import{getColor as f}from"./theme/currys/color.js";import{E as L}from"./ErrorWrapper.js";import{useUuid as V}from"./hooks/useUuid.js";const X=t=>{const a="2rem";return`calc(${t*q}px + ${a})`},$=(t,a)=>a?f("neutral",500):f(t?"cherry":"blueberry",600),O=r.forwardRef((t,a)=>{const{afterLabelChildren:s,className:v,children:E,concept:C="normal",disabled:n,error:h,errorText:i,label:m,selectId:p,name:y=p,mode:o,testId:I,width:d,required:b,value:_,defaultValue:N,...S}=t,u=V(p),w=o==="onblueberry",l=o==="oninvalid"||!!i||!!h,W=o==="ondark",g=$(l,!!n),x=d?X(d):void 0,A=c(e["select-wrapper__label-wrapper"],{[e["select-wrapper__label-wrapper--on-dark"]]:W}),R=c(e["select-inner-wrapper"],{[e["select-inner-wrapper--transparent"]]:C==="transparent",[e["select-inner-wrapper--on-blueberry"]]:w,[e["select-inner-wrapper--invalid"]]:l,[e["select-inner-wrapper--disabled"]]:n},v),k=c(e.select,{[e["select--on-blueberry"]]:w,[e["select--invalid"]]:l});return r.createElement(L,{errorText:i},r.createElement("div",{"data-testid":I,"data-analyticsid":D.Select,className:e["select-wrapper"],style:{maxWidth:x}},m&&r.createElement("div",{className:A},r.createElement("label",{htmlFor:u},m),s&&r.createElement("div",{className:e["select-wrapper__after-label-children"]},s)),r.createElement("div",{className:R},r.createElement(z,{className:e["select-arrow"],svgIcon:H,color:g,size:T.XSmall}),r.createElement("select",{"aria-invalid":!!l,id:u,name:y,className:k,disabled:n,ref:a,required:b,"aria-required":!!b,value:_,defaultValue:N,...S},E))))});export{O as S};
1
+ import r from"react";import c from"classnames";import{AnalyticsId as D,IconSize as T,AVERAGE_CHARACTER_WIDTH_PX as $}from"./constants.js";import{useUuid as q}from"./hooks/useUuid.js";import{getColor as f}from"./theme/currys/color.js";import{E as z}from"./ErrorWrapper.js";import{Icon as H}from"./components/Icons/Icon.js";import L from"./components/Icons/ChevronDown.js";import e from"./components/Select/styles.module.scss";const V=t=>{const a="2rem";return`calc(${t*$}px + ${a})`},X=(t,a)=>a?f("neutral",500):f(t?"cherry":"blueberry",600),B=r.forwardRef((t,a)=>{const{afterLabelChildren:s,className:v,children:E,concept:C="normal",disabled:n,error:h,errorText:i,label:m,selectId:p,name:y=p,mode:o,testId:I,width:d,required:b,value:_,defaultValue:N,...S}=t,u=q(p),w=o==="onblueberry",l=o==="oninvalid"||!!i||!!h,W=o==="ondark",g=X(l,!!n),x=d?V(d):void 0,A=c(e["select-wrapper__label-wrapper"],{[e["select-wrapper__label-wrapper--on-dark"]]:W}),R=c(e["select-inner-wrapper"],{[e["select-inner-wrapper--transparent"]]:C==="transparent",[e["select-inner-wrapper--on-blueberry"]]:w,[e["select-inner-wrapper--invalid"]]:l,[e["select-inner-wrapper--disabled"]]:n},v),k=c(e.select,{[e["select--on-blueberry"]]:w,[e["select--invalid"]]:l});return r.createElement(z,{errorText:i},r.createElement("div",{"data-testid":I,"data-analyticsid":D.Select,className:e["select-wrapper"],style:{maxWidth:x}},m&&r.createElement("div",{className:A},r.createElement("label",{htmlFor:u},m),s&&r.createElement("div",{className:e["select-wrapper__after-label-children"]},s)),r.createElement("div",{className:R},r.createElement(H,{className:e["select-arrow"],svgIcon:L,color:g,size:T.XSmall}),r.createElement("select",{"aria-invalid":!!l,id:u,name:y,className:k,disabled:n,ref:a,required:b,"aria-required":!!b,value:_,defaultValue:N,...S},E))))}),Q=B;export{Q as S,B as a};
2
2
  //# sourceMappingURL=Select.js.map
package/Select.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../src/components/Select/Select.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport selectStyles from './styles.module.scss';\nimport { AnalyticsId, AVERAGE_CHARACTER_WIDTH_PX, FormMode, IconSize } from '../../constants';\nimport Icon from '../Icons';\nimport ChevronDown from '../Icons/ChevronDown';\nimport { getColor } from '../../theme/currys';\nimport ErrorWrapper from '../ErrorWrapper';\nimport { useUuid } from '../../hooks/useUuid';\n\ntype SelectConcept = 'normal' | 'transparent';\n\nexport interface SelectProps extends Pick<React.SelectHTMLAttributes<HTMLSelectElement>, 'name' | 'disabled' | 'required' | 'value'> {\n /** Component shown after label */\n afterLabelChildren?: React.ReactNode;\n /** Sets the content of the select element. */\n children: React.ReactNode;\n /** Adds custom classes to the element. */\n className?: string;\n /** Changes the visuals of the component */\n concept?: SelectConcept;\n /** The label text above the select */\n label?: string;\n /** Changes the visuals of the component */\n mode?: keyof typeof FormMode;\n /** Activates Error style for the select component - This is can be true while errorText is empty, when in a FormGroup */\n error?: boolean;\n /** Error text to show above the component */\n errorText?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n /** select id of the select element */\n selectId?: string;\n /** Width of select in characters (approximate) */\n width?: number;\n /** Gives defaultvalue to the comp. Preferred over selected prop on option by react */\n defaultValue?: string | number;\n}\n\nconst getSelectMaxWidth = (characters: number): string => {\n const paddingWidth = '2rem';\n\n return `calc(${characters * AVERAGE_CHARACTER_WIDTH_PX}px + ${paddingWidth})`;\n};\n\nconst getIconColor = (invalid: boolean, disabled: boolean) => {\n const iconColor = invalid ? 'cherry' : 'blueberry';\n return disabled ? getColor('neutral', 500) : getColor(iconColor, 600);\n};\n\nexport const Select = React.forwardRef((props: SelectProps, ref: React.Ref<HTMLSelectElement>) => {\n const {\n afterLabelChildren,\n className,\n children,\n concept = 'normal',\n disabled,\n error,\n errorText,\n label,\n selectId,\n name = selectId,\n mode,\n testId,\n width,\n required,\n value,\n defaultValue,\n ...rest\n } = props;\n\n const uuid = useUuid(selectId);\n const onBlueberry = mode === 'onblueberry';\n const invalid = mode === 'oninvalid' || !!errorText || !!error;\n const onDark = mode === 'ondark';\n const iconColor = getIconColor(invalid, !!disabled);\n const maxWidth = width ? getSelectMaxWidth(width) : undefined;\n\n const selectLabelClasses = classNames(selectStyles['select-wrapper__label-wrapper'], {\n [selectStyles['select-wrapper__label-wrapper--on-dark']]: onDark,\n });\n\n const selectInnerWrapperClasses = classNames(\n selectStyles['select-inner-wrapper'],\n {\n [selectStyles['select-inner-wrapper--transparent']]: concept === 'transparent',\n [selectStyles['select-inner-wrapper--on-blueberry']]: onBlueberry,\n [selectStyles['select-inner-wrapper--invalid']]: invalid,\n [selectStyles['select-inner-wrapper--disabled']]: disabled,\n },\n className\n );\n\n const selectClasses = classNames(selectStyles.select, {\n [selectStyles['select--on-blueberry']]: onBlueberry,\n [selectStyles['select--invalid']]: invalid,\n });\n\n return (\n <ErrorWrapper errorText={errorText}>\n <div data-testid={testId} data-analyticsid={AnalyticsId.Select} className={selectStyles['select-wrapper']} style={{ maxWidth }}>\n {label && (\n <div className={selectLabelClasses}>\n <label htmlFor={uuid}>{label}</label>\n {afterLabelChildren && <div className={selectStyles['select-wrapper__after-label-children']}>{afterLabelChildren}</div>}\n </div>\n )}\n <div className={selectInnerWrapperClasses}>\n <Icon className={selectStyles['select-arrow']} svgIcon={ChevronDown} color={iconColor} size={IconSize.XSmall} />\n <select\n aria-invalid={!!invalid}\n id={uuid}\n name={name}\n className={selectClasses}\n disabled={disabled}\n ref={ref}\n required={required}\n aria-required={!!required}\n value={value}\n defaultValue={defaultValue}\n {...rest}\n >\n {children}\n </select>\n </div>\n </div>\n </ErrorWrapper>\n );\n});\n\nexport default Select;\n"],"names":["getSelectMaxWidth","characters","paddingWidth","AVERAGE_CHARACTER_WIDTH_PX","getIconColor","invalid","disabled","getColor","Select","React","props","ref","afterLabelChildren","className","children","concept","error","errorText","label","selectId","name","mode","testId","width","required","value","defaultValue","rest","uuid","useUuid","onBlueberry","onDark","iconColor","maxWidth","selectLabelClasses","classNames","selectStyles","selectInnerWrapperClasses","selectClasses","ErrorWrapper","AnalyticsId","Icon","ChevronDown","IconSize"],"mappings":"yaAyCA,MAAMA,EAAqBC,GAA+B,CACxD,MAAMC,EAAe,OAEd,MAAA,QAAQD,EAAaE,SAAkCD,IAChE,EAEME,EAAe,CAACC,EAAkBC,IAE/BA,EAAWC,EAAS,UAAW,GAAG,EAAIA,EAD3BF,EAAU,SAAW,YAC0B,GAAG,EAGzDG,EAASC,EAAM,WAAW,CAACC,EAAoBC,IAAsC,CAC1F,KAAA,CACJ,mBAAAC,EACA,UAAAC,EACA,SAAAC,EACA,QAAAC,EAAU,SACV,SAAAT,EACA,MAAAU,EACA,UAAAC,EACA,MAAAC,EACA,SAAAC,EACA,KAAAC,EAAOD,EACP,KAAAE,EACA,OAAAC,EACA,MAAAC,EACA,SAAAC,EACA,MAAAC,EACA,aAAAC,KACGC,CACD,EAAAjB,EAEEkB,EAAOC,EAAQV,CAAQ,EACvBW,EAAcT,IAAS,cACvBhB,EAAUgB,IAAS,aAAe,CAAC,CAACJ,GAAa,CAAC,CAACD,EACnDe,EAASV,IAAS,SAClBW,EAAY5B,EAAaC,EAAS,CAAC,CAACC,CAAQ,EAC5C2B,EAAWV,EAAQvB,EAAkBuB,CAAK,EAAI,OAE9CW,EAAqBC,EAAWC,EAAa,iCAAkC,CACnF,CAACA,EAAa,2CAA4CL,CAAA,CAC3D,EAEKM,EAA4BF,EAChCC,EAAa,wBACb,CACE,CAACA,EAAa,sCAAuCrB,IAAY,cACjE,CAACqB,EAAa,uCAAwCN,EACtD,CAACM,EAAa,kCAAmC/B,EACjD,CAAC+B,EAAa,mCAAoC9B,CACpD,EACAO,CAAA,EAGIyB,EAAgBH,EAAWC,EAAa,OAAQ,CACpD,CAACA,EAAa,yBAA0BN,EACxC,CAACM,EAAa,oBAAqB/B,CAAA,CACpC,EAED,OACGI,EAAA,cAAA8B,EAAA,CAAa,UAAAtB,CAAA,EACXR,EAAA,cAAA,MAAA,CAAI,cAAaa,EAAQ,mBAAkBkB,EAAY,OAAQ,UAAWJ,EAAa,kBAAmB,MAAO,CAAE,SAAAH,CAAS,CAAA,EAC1Hf,GACET,EAAA,cAAA,MAAA,CAAI,UAAWyB,CAAA,EACbzB,EAAA,cAAA,QAAA,CAAM,QAASmB,CAAO,EAAAV,CAAM,EAC5BN,GAAuBH,EAAA,cAAA,MAAA,CAAI,UAAW2B,EAAa,uCAA0C,EAAAxB,CAAmB,CACnH,EAEDH,EAAA,cAAA,MAAA,CAAI,UAAW4B,CAAA,EACb5B,EAAA,cAAAgC,EAAA,CAAK,UAAWL,EAAa,gBAAiB,QAASM,EAAa,MAAOV,EAAW,KAAMW,EAAS,MAAA,CAAQ,EAC7GlC,EAAA,cAAA,SAAA,CACC,eAAc,CAAC,CAACJ,EAChB,GAAIuB,EACJ,KAAAR,EACA,UAAWkB,EACX,SAAAhC,EACA,IAAAK,EACA,SAAAa,EACA,gBAAe,CAAC,CAACA,EACjB,MAAAC,EACA,aAAAC,EACC,GAAGC,CAAA,EAEHb,CACH,CACF,CACF,CACF,CAEJ,CAAC"}
1
+ {"version":3,"file":"Select.js","sources":["../src/components/Select/Select.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport { AnalyticsId, AVERAGE_CHARACTER_WIDTH_PX, FormMode, IconSize } from '../../constants';\nimport { useUuid } from '../../hooks/useUuid';\nimport { getColor } from '../../theme/currys';\nimport ErrorWrapper from '../ErrorWrapper';\nimport Icon from '../Icons';\nimport ChevronDown from '../Icons/ChevronDown';\n\nimport selectStyles from './styles.module.scss';\n\ntype SelectConcept = 'normal' | 'transparent';\n\nexport interface SelectProps extends Pick<React.SelectHTMLAttributes<HTMLSelectElement>, 'name' | 'disabled' | 'required' | 'value'> {\n /** Component shown after label */\n afterLabelChildren?: React.ReactNode;\n /** Sets the content of the select element. */\n children: React.ReactNode;\n /** Adds custom classes to the element. */\n className?: string;\n /** Changes the visuals of the component */\n concept?: SelectConcept;\n /** The label text above the select */\n label?: string;\n /** Changes the visuals of the component */\n mode?: keyof typeof FormMode;\n /** Activates Error style for the select component - This is can be true while errorText is empty, when in a FormGroup */\n error?: boolean;\n /** Error text to show above the component */\n errorText?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n /** select id of the select element */\n selectId?: string;\n /** Width of select in characters (approximate) */\n width?: number;\n /** Gives defaultvalue to the comp. Preferred over selected prop on option by react */\n defaultValue?: string | number;\n}\n\nconst getSelectMaxWidth = (characters: number): string => {\n const paddingWidth = '2rem';\n\n return `calc(${characters * AVERAGE_CHARACTER_WIDTH_PX}px + ${paddingWidth})`;\n};\n\nconst getIconColor = (invalid: boolean, disabled: boolean) => {\n const iconColor = invalid ? 'cherry' : 'blueberry';\n return disabled ? getColor('neutral', 500) : getColor(iconColor, 600);\n};\n\nexport const Select = React.forwardRef((props: SelectProps, ref: React.Ref<HTMLSelectElement>) => {\n const {\n afterLabelChildren,\n className,\n children,\n concept = 'normal',\n disabled,\n error,\n errorText,\n label,\n selectId,\n name = selectId,\n mode,\n testId,\n width,\n required,\n value,\n defaultValue,\n ...rest\n } = props;\n\n const uuid = useUuid(selectId);\n const onBlueberry = mode === 'onblueberry';\n const invalid = mode === 'oninvalid' || !!errorText || !!error;\n const onDark = mode === 'ondark';\n const iconColor = getIconColor(invalid, !!disabled);\n const maxWidth = width ? getSelectMaxWidth(width) : undefined;\n\n const selectLabelClasses = classNames(selectStyles['select-wrapper__label-wrapper'], {\n [selectStyles['select-wrapper__label-wrapper--on-dark']]: onDark,\n });\n\n const selectInnerWrapperClasses = classNames(\n selectStyles['select-inner-wrapper'],\n {\n [selectStyles['select-inner-wrapper--transparent']]: concept === 'transparent',\n [selectStyles['select-inner-wrapper--on-blueberry']]: onBlueberry,\n [selectStyles['select-inner-wrapper--invalid']]: invalid,\n [selectStyles['select-inner-wrapper--disabled']]: disabled,\n },\n className\n );\n\n const selectClasses = classNames(selectStyles.select, {\n [selectStyles['select--on-blueberry']]: onBlueberry,\n [selectStyles['select--invalid']]: invalid,\n });\n\n return (\n <ErrorWrapper errorText={errorText}>\n <div data-testid={testId} data-analyticsid={AnalyticsId.Select} className={selectStyles['select-wrapper']} style={{ maxWidth }}>\n {label && (\n <div className={selectLabelClasses}>\n <label htmlFor={uuid}>{label}</label>\n {afterLabelChildren && <div className={selectStyles['select-wrapper__after-label-children']}>{afterLabelChildren}</div>}\n </div>\n )}\n <div className={selectInnerWrapperClasses}>\n <Icon className={selectStyles['select-arrow']} svgIcon={ChevronDown} color={iconColor} size={IconSize.XSmall} />\n <select\n aria-invalid={!!invalid}\n id={uuid}\n name={name}\n className={selectClasses}\n disabled={disabled}\n ref={ref}\n required={required}\n aria-required={!!required}\n value={value}\n defaultValue={defaultValue}\n {...rest}\n >\n {children}\n </select>\n </div>\n </div>\n </ErrorWrapper>\n );\n});\n\nexport default Select;\n"],"names":["getSelectMaxWidth","characters","paddingWidth","AVERAGE_CHARACTER_WIDTH_PX","getIconColor","invalid","disabled","getColor","Select","React","props","ref","afterLabelChildren","className","children","concept","error","errorText","label","selectId","name","mode","testId","width","required","value","defaultValue","rest","uuid","useUuid","onBlueberry","onDark","iconColor","maxWidth","selectLabelClasses","classNames","selectStyles","selectInnerWrapperClasses","selectClasses","ErrorWrapper","AnalyticsId","Icon","ChevronDown","IconSize","Select$1"],"mappings":"yaA0CA,MAAMA,EAAqBC,GAA+B,CACxD,MAAMC,EAAe,OAEd,MAAA,QAAQD,EAAaE,SAAkCD,IAChE,EAEME,EAAe,CAACC,EAAkBC,IAE/BA,EAAWC,EAAS,UAAW,GAAG,EAAIA,EAD3BF,EAAU,SAAW,YAC0B,GAAG,EAGzDG,EAASC,EAAM,WAAW,CAACC,EAAoBC,IAAsC,CAC1F,KAAA,CACJ,mBAAAC,EACA,UAAAC,EACA,SAAAC,EACA,QAAAC,EAAU,SACV,SAAAT,EACA,MAAAU,EACA,UAAAC,EACA,MAAAC,EACA,SAAAC,EACA,KAAAC,EAAOD,EACP,KAAAE,EACA,OAAAC,EACA,MAAAC,EACA,SAAAC,EACA,MAAAC,EACA,aAAAC,EACA,GAAGC,CACD,EAAAjB,EAEEkB,EAAOC,EAAQV,CAAQ,EACvBW,EAAcT,IAAS,cACvBhB,EAAUgB,IAAS,aAAe,CAAC,CAACJ,GAAa,CAAC,CAACD,EACnDe,EAASV,IAAS,SAClBW,EAAY5B,EAAaC,EAAS,CAAC,CAACC,CAAQ,EAC5C2B,EAAWV,EAAQvB,EAAkBuB,CAAK,EAAI,OAE9CW,EAAqBC,EAAWC,EAAa,+BAA+B,EAAG,CACnF,CAACA,EAAa,wCAAwC,CAAC,EAAGL,CAAA,CAC3D,EAEKM,EAA4BF,EAChCC,EAAa,sBAAsB,EACnC,CACE,CAACA,EAAa,mCAAmC,CAAC,EAAGrB,IAAY,cACjE,CAACqB,EAAa,oCAAoC,CAAC,EAAGN,EACtD,CAACM,EAAa,+BAA+B,CAAC,EAAG/B,EACjD,CAAC+B,EAAa,gCAAgC,CAAC,EAAG9B,CACpD,EACAO,CAAA,EAGIyB,EAAgBH,EAAWC,EAAa,OAAQ,CACpD,CAACA,EAAa,sBAAsB,CAAC,EAAGN,EACxC,CAACM,EAAa,iBAAiB,CAAC,EAAG/B,CAAA,CACpC,EAGC,OAAAI,EAAA,cAAC8B,EAAa,CAAA,UAAAtB,CAAA,EACXR,EAAA,cAAA,MAAA,CAAI,cAAaa,EAAQ,mBAAkBkB,EAAY,OAAQ,UAAWJ,EAAa,gBAAgB,EAAG,MAAO,CAAE,SAAAH,CAAS,CAAA,EAC1Hf,GACCT,EAAA,cAAC,MAAI,CAAA,UAAWyB,CACd,EAAAzB,EAAA,cAAC,QAAM,CAAA,QAASmB,CAAO,EAAAV,CAAM,EAC5BN,GAAsBH,EAAA,cAAC,MAAI,CAAA,UAAW2B,EAAa,sCAAsC,CAAI,EAAAxB,CAAmB,CACnH,EAEDH,EAAA,cAAA,MAAA,CAAI,UAAW4B,CAAA,kBACbI,EAAK,CAAA,UAAWL,EAAa,cAAc,EAAG,QAASM,EAAa,MAAOV,EAAW,KAAMW,EAAS,MAAQ,CAAA,EAC9GlC,EAAA,cAAC,SAAA,CACC,eAAc,CAAC,CAACJ,EAChB,GAAIuB,EACJ,KAAAR,EACA,UAAWkB,EACX,SAAAhC,EACA,IAAAK,EACA,SAAAa,EACA,gBAAe,CAAC,CAACA,EACjB,MAAAC,EACA,aAAAC,EACC,GAAGC,CAAA,EAEHb,CAEL,CAAA,CACF,CACF,CAEJ,CAAC,EAED8B,EAAepC"}
package/Spacer.js CHANGED
@@ -1,2 +1,2 @@
1
- import e from"react";import x from"classnames";import s from"./components/Spacer/styles.module.scss";import{AnalyticsId as o}from"./constants.js";const S=e.forwardRef(function(r,c){const{size:a="s",className:p,testId:l}=r,t=x(s.spacer,{[s["spacer--4xs"]]:a==="4xs",[s["spacer--3xs"]]:a==="3xs",[s["spacer--2xs"]]:a==="2xs",[s["spacer--xs"]]:a==="xs",[s["spacer--s"]]:a==="s",[s["spacer--m"]]:a==="m",[s["spacer--l"]]:a==="l",[s["spacer--xl"]]:a==="xl",[s["spacer--2xl"]]:a==="2xl",[s["spacer--3xl"]]:a==="3xl",[s["spacer--4xl"]]:a==="4xl",[s["spacer--5xl"]]:a==="5xl",[s["spacer--6xl"]]:a==="6xl"},p);return e.createElement("span",{className:t,ref:c,"data-testid":l,"data-analyticsid":o.Spacer})});export{S};
1
+ import e from"react";import x from"classnames";import{AnalyticsId as o}from"./constants.js";import s from"./components/Spacer/styles.module.scss";const m=e.forwardRef(function(r,c){const{size:a="s",className:p,testId:t}=r,l=x(s.spacer,{[s["spacer--4xs"]]:a==="4xs",[s["spacer--3xs"]]:a==="3xs",[s["spacer--2xs"]]:a==="2xs",[s["spacer--xs"]]:a==="xs",[s["spacer--s"]]:a==="s",[s["spacer--m"]]:a==="m",[s["spacer--l"]]:a==="l",[s["spacer--xl"]]:a==="xl",[s["spacer--2xl"]]:a==="2xl",[s["spacer--3xl"]]:a==="3xl",[s["spacer--4xl"]]:a==="4xl",[s["spacer--5xl"]]:a==="5xl",[s["spacer--6xl"]]:a==="6xl"},p);return e.createElement("span",{className:l,ref:c,"data-testid":t,"data-analyticsid":o.Spacer})}),y=m;export{y as S};
2
2
  //# sourceMappingURL=Spacer.js.map
package/Spacer.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Spacer.js","sources":["../src/components/Spacer/Spacer.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\nimport { SpacerSizes } from './../../theme/spacers';\n\nimport spacerStyles from './styles.module.scss';\nimport { AnalyticsId } from '../../constants';\n\ninterface SpacerProps {\n /** Sets the size of the spacer. */\n size?: SpacerSizes;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\nconst Spacer = React.forwardRef(function SpacerForwardedRef(props: SpacerProps, ref: React.ForwardedRef<HTMLElement>) {\n const { size = 's', className, testId } = props;\n const spacerClasses = classNames(\n spacerStyles.spacer,\n {\n [spacerStyles['spacer--4xs']]: size === '4xs',\n [spacerStyles['spacer--3xs']]: size === '3xs',\n [spacerStyles['spacer--2xs']]: size === '2xs',\n [spacerStyles['spacer--xs']]: size === 'xs',\n [spacerStyles['spacer--s']]: size === 's',\n [spacerStyles['spacer--m']]: size === 'm',\n [spacerStyles['spacer--l']]: size === 'l',\n [spacerStyles['spacer--xl']]: size === 'xl',\n [spacerStyles['spacer--2xl']]: size === '2xl',\n [spacerStyles['spacer--3xl']]: size === '3xl',\n [spacerStyles['spacer--4xl']]: size === '4xl',\n [spacerStyles['spacer--5xl']]: size === '5xl',\n [spacerStyles['spacer--6xl']]: size === '6xl',\n },\n className\n );\n\n return <span className={spacerClasses} ref={ref} data-testid={testId} data-analyticsid={AnalyticsId.Spacer}></span>;\n});\n\nexport default Spacer;\n"],"names":["Spacer","React","props","ref","size","className","testId","spacerClasses","classNames","spacerStyles","AnalyticsId"],"mappings":"kJAiBA,MAAMA,EAASC,EAAM,WAAW,SAA4BC,EAAoBC,EAAsC,CACpH,KAAM,CAAE,KAAAC,EAAO,IAAK,UAAAC,EAAW,OAAAC,GAAWJ,EACpCK,EAAgBC,EACpBC,EAAa,OACb,CACE,CAACA,EAAa,gBAAiBL,IAAS,MACxC,CAACK,EAAa,gBAAiBL,IAAS,MACxC,CAACK,EAAa,gBAAiBL,IAAS,MACxC,CAACK,EAAa,eAAgBL,IAAS,KACvC,CAACK,EAAa,cAAeL,IAAS,IACtC,CAACK,EAAa,cAAeL,IAAS,IACtC,CAACK,EAAa,cAAeL,IAAS,IACtC,CAACK,EAAa,eAAgBL,IAAS,KACvC,CAACK,EAAa,gBAAiBL,IAAS,MACxC,CAACK,EAAa,gBAAiBL,IAAS,MACxC,CAACK,EAAa,gBAAiBL,IAAS,MACxC,CAACK,EAAa,gBAAiBL,IAAS,MACxC,CAACK,EAAa,gBAAiBL,IAAS,KAC1C,EACAC,CAAA,EAGF,OAAQJ,EAAA,cAAA,OAAA,CAAK,UAAWM,EAAe,IAAAJ,EAAU,cAAaG,EAAQ,mBAAkBI,EAAY,MAAA,CAAQ,CAC9G,CAAC"}
1
+ {"version":3,"file":"Spacer.js","sources":["../src/components/Spacer/Spacer.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport { SpacerSizes } from './../../theme/spacers';\nimport { AnalyticsId } from '../../constants';\n\nimport spacerStyles from './styles.module.scss';\n\ninterface SpacerProps {\n /** Sets the size of the spacer. */\n size?: SpacerSizes;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\nconst Spacer = React.forwardRef(function SpacerForwardedRef(props: SpacerProps, ref: React.ForwardedRef<HTMLElement>) {\n const { size = 's', className, testId } = props;\n const spacerClasses = classNames(\n spacerStyles.spacer,\n {\n [spacerStyles['spacer--4xs']]: size === '4xs',\n [spacerStyles['spacer--3xs']]: size === '3xs',\n [spacerStyles['spacer--2xs']]: size === '2xs',\n [spacerStyles['spacer--xs']]: size === 'xs',\n [spacerStyles['spacer--s']]: size === 's',\n [spacerStyles['spacer--m']]: size === 'm',\n [spacerStyles['spacer--l']]: size === 'l',\n [spacerStyles['spacer--xl']]: size === 'xl',\n [spacerStyles['spacer--2xl']]: size === '2xl',\n [spacerStyles['spacer--3xl']]: size === '3xl',\n [spacerStyles['spacer--4xl']]: size === '4xl',\n [spacerStyles['spacer--5xl']]: size === '5xl',\n [spacerStyles['spacer--6xl']]: size === '6xl',\n },\n className\n );\n\n return <span className={spacerClasses} ref={ref} data-testid={testId} data-analyticsid={AnalyticsId.Spacer}></span>;\n});\n\nexport default Spacer;\n"],"names":["Spacer","React","props","ref","size","className","testId","spacerClasses","classNames","spacerStyles","AnalyticsId","Spacer$1"],"mappings":"kJAkBA,MAAMA,EAASC,EAAM,WAAW,SAA4BC,EAAoBC,EAAsC,CACpH,KAAM,CAAE,KAAAC,EAAO,IAAK,UAAAC,EAAW,OAAAC,GAAWJ,EACpCK,EAAgBC,EACpBC,EAAa,OACb,CACE,CAACA,EAAa,aAAa,CAAC,EAAGL,IAAS,MACxC,CAACK,EAAa,aAAa,CAAC,EAAGL,IAAS,MACxC,CAACK,EAAa,aAAa,CAAC,EAAGL,IAAS,MACxC,CAACK,EAAa,YAAY,CAAC,EAAGL,IAAS,KACvC,CAACK,EAAa,WAAW,CAAC,EAAGL,IAAS,IACtC,CAACK,EAAa,WAAW,CAAC,EAAGL,IAAS,IACtC,CAACK,EAAa,WAAW,CAAC,EAAGL,IAAS,IACtC,CAACK,EAAa,YAAY,CAAC,EAAGL,IAAS,KACvC,CAACK,EAAa,aAAa,CAAC,EAAGL,IAAS,MACxC,CAACK,EAAa,aAAa,CAAC,EAAGL,IAAS,MACxC,CAACK,EAAa,aAAa,CAAC,EAAGL,IAAS,MACxC,CAACK,EAAa,aAAa,CAAC,EAAGL,IAAS,MACxC,CAACK,EAAa,aAAa,CAAC,EAAGL,IAAS,KAC1C,EACAC,CAAA,EAGK,OAAAJ,EAAA,cAAC,QAAK,UAAWM,EAAe,IAAAJ,EAAU,cAAaG,EAAQ,mBAAkBI,EAAY,MAAQ,CAAA,CAC9G,CAAC,EAEDC,EAAeX"}
package/StatusDot.js CHANGED
@@ -1,2 +1,2 @@
1
- import t from"react";import n from"classnames";import"./theme/grid.js";import"./hooks/useBreakpoint.js";import{AnalyticsId as g,IconSize as o}from"./constants.js";import{getColor as I}from"./theme/currys/color.js";import _ from"./components/Icons/Attachment.js";import E from"./components/Icons/Group.js";import{Icon as r}from"./components/Icons/Icon.js";import X from"./components/Icons/NoAccess.js";import h from"./components/Icons/Undo.js";import c from"./components/StatusDot/styles.module.scss";var v=(e=>(e.info="info",e.warning="warning",e.alert="alert",e.cancelled="cancelled",e.active="active",e.transparent="transparent",e.recurring="recurring",e.group="group",e.noaccess="noaccess",e.attachment="attachment",e))(v||{});const N=({variant:e})=>e==="recurring"?t.createElement(r,{size:o.XXSmall,svgIcon:h}):e==="group"?t.createElement(r,{size:o.XXSmall,svgIcon:E}):e==="noaccess"?t.createElement(r,{size:o.XXSmall,svgIcon:X,color:I("cherry",600)}):e==="attachment"?t.createElement(r,{size:o.XXSmall,svgIcon:_}):null,k=e=>{const{variant:s="info",text:a,className:m,testId:i}=e,l=s==="recurring"||s==="group"||s==="noaccess"||s==="attachment",d=s==="cancelled",p=n(c.statusdot,d&&c["statusdot--cancelled"],m),u=n(c.statusdot__dot,l?c["statusdot__dot--icon"]:c[`statusdot__dot--${s}`]),f=n(c.statusdot__label,l&&c["statusdot__label--icon"]);return t.createElement("div",{className:p,"data-testid":i,"data-analyticsid":g.StatusDot},t.createElement("span",{className:u},t.createElement(N,{variant:s})),t.createElement("span",{className:f},a))};export{k as S,v as a};
1
+ import t from"react";import n from"classnames";import"./theme/grid.js";import"./hooks/useBreakpoint.js";import{AnalyticsId as g,IconSize as o}from"./constants.js";import{getColor as I}from"./theme/currys/color.js";import _ from"./components/Icons/Attachment.js";import E from"./components/Icons/Group.js";import{Icon as r}from"./components/Icons/Icon.js";import X from"./components/Icons/NoAccess.js";import h from"./components/Icons/Undo.js";import c from"./components/StatusDot/styles.module.scss";var v=(e=>(e.info="info",e.warning="warning",e.alert="alert",e.cancelled="cancelled",e.active="active",e.transparent="transparent",e.recurring="recurring",e.group="group",e.noaccess="noaccess",e.attachment="attachment",e))(v||{});const N=({variant:e})=>e==="recurring"?t.createElement(r,{size:o.XXSmall,svgIcon:h}):e==="group"?t.createElement(r,{size:o.XXSmall,svgIcon:E}):e==="noaccess"?t.createElement(r,{size:o.XXSmall,svgIcon:X,color:I("cherry",600)}):e==="attachment"?t.createElement(r,{size:o.XXSmall,svgIcon:_}):null,z=e=>{const{variant:s="info",text:l,className:m,testId:i}=e,a=s==="recurring"||s==="group"||s==="noaccess"||s==="attachment",d=s==="cancelled",p=n(c.statusdot,d&&c["statusdot--cancelled"],m),u=n(c.statusdot__dot,a?c["statusdot__dot--icon"]:c[`statusdot__dot--${s}`]),f=n(c.statusdot__label,a&&c["statusdot__label--icon"]);return t.createElement("div",{className:p,"data-testid":i,"data-analyticsid":g.StatusDot},t.createElement("span",{className:u},t.createElement(N,{variant:s})),t.createElement("span",{className:f},l))},k=z;export{k as S,v as a};
2
2
  //# sourceMappingURL=StatusDot.js.map
package/StatusDot.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"StatusDot.js","sources":["../src/components/StatusDot/StatusDot.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport { IconSize } from '../..';\nimport { AnalyticsId } from '../../constants';\nimport { getColor } from '../../theme/currys';\nimport Attachment from '../Icons/Attachment';\nimport Group from '../Icons/Group';\nimport { Icon } from '../Icons/Icon';\nimport NoAccess from '../Icons/NoAccess';\nimport Undo from '../Icons/Undo';\n\nimport styles from './styles.module.scss';\n\nexport enum StatusDotVariant {\n info = 'info',\n warning = 'warning',\n alert = 'alert',\n cancelled = 'cancelled',\n active = 'active',\n transparent = 'transparent',\n recurring = 'recurring',\n group = 'group',\n noaccess = 'noaccess',\n attachment = 'attachment',\n}\n\nexport interface StatusDotIconProps {\n variant?: keyof typeof StatusDotVariant;\n}\n\nconst StatusDotIcon: React.FC<StatusDotIconProps> = ({ variant }) => {\n if (variant === StatusDotVariant.recurring) {\n return <Icon size={IconSize.XXSmall} svgIcon={Undo} />;\n } else if (variant === StatusDotVariant.group) {\n return <Icon size={IconSize.XXSmall} svgIcon={Group} />;\n } else if (variant === StatusDotVariant.noaccess) {\n return <Icon size={IconSize.XXSmall} svgIcon={NoAccess} color={getColor('cherry', 600)} />;\n } else if (variant === StatusDotVariant.attachment) {\n return <Icon size={IconSize.XXSmall} svgIcon={Attachment} />;\n }\n\n return null;\n};\n\nexport interface StatusDotProps {\n /** Visual variants for the statusdot */\n variant?: keyof typeof StatusDotVariant;\n /** Text placed to the right of the statusdot */\n text: string;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\nconst StatusDot: React.FC<StatusDotProps> = props => {\n const { variant = StatusDotVariant.info, text, className, testId } = props;\n\n const hasIcon =\n variant === StatusDotVariant.recurring ||\n variant === StatusDotVariant.group ||\n variant === StatusDotVariant.noaccess ||\n variant === StatusDotVariant.attachment;\n\n const isCancelled = variant === StatusDotVariant.cancelled;\n\n const statusDotClasses = classNames(styles['statusdot'], isCancelled && styles['statusdot--cancelled'], className);\n const dotClasses = classNames(styles['statusdot__dot'], hasIcon ? styles[`statusdot__dot--icon`] : styles[`statusdot__dot--${variant}`]);\n const labelClasses = classNames(styles['statusdot__label'], hasIcon && styles[`statusdot__label--icon`]);\n\n return (\n <div className={statusDotClasses} data-testid={testId} data-analyticsid={AnalyticsId.StatusDot}>\n <span className={dotClasses}>\n <StatusDotIcon variant={variant} />\n </span>\n <span className={labelClasses}>{text}</span>\n </div>\n );\n};\n\nexport default StatusDot;\n"],"names":["StatusDotVariant","StatusDotIcon","variant","React","Icon","IconSize","Undo","Group","NoAccess","getColor","Attachment","StatusDot","props","text","className","testId","hasIcon","isCancelled","statusDotClasses","classNames","styles","dotClasses","labelClasses","AnalyticsId"],"mappings":"ofAeY,IAAAA,GAAAA,IACVA,EAAA,KAAO,OACPA,EAAA,QAAU,UACVA,EAAA,MAAQ,QACRA,EAAA,UAAY,YACZA,EAAA,OAAS,SACTA,EAAA,YAAc,cACdA,EAAA,UAAY,YACZA,EAAA,MAAQ,QACRA,EAAA,SAAW,WACXA,EAAA,WAAa,aAVHA,IAAAA,GAAA,CAAA,CAAA,EAiBZ,MAAMC,EAA8C,CAAC,CAAE,QAAAC,KACjDA,IAAY,YACNC,EAAA,cAAAC,EAAA,CAAK,KAAMC,EAAS,QAAS,QAASC,CAAA,CAAM,EAC3CJ,IAAY,QACbC,EAAA,cAAAC,EAAA,CAAK,KAAMC,EAAS,QAAS,QAASE,CAAA,CAAO,EAC5CL,IAAY,WACbC,EAAA,cAAAC,EAAA,CAAK,KAAMC,EAAS,QAAS,QAASG,EAAU,MAAOC,EAAS,SAAU,GAAG,CAAA,CAAG,EAC/EP,IAAY,aACbC,EAAA,cAAAC,EAAA,CAAK,KAAMC,EAAS,QAAS,QAASK,CAAA,CAAY,EAGrD,KAcHC,EAA+CC,GAAA,CACnD,KAAM,CAAE,QAAAV,EAAU,OAAuB,KAAAW,EAAM,UAAAC,EAAW,OAAAC,CAAW,EAAAH,EAE/DI,EACJd,IAAY,aACZA,IAAY,SACZA,IAAY,YACZA,IAAY,aAERe,EAAcf,IAAY,YAE1BgB,EAAmBC,EAAWC,EAAO,UAAcH,GAAeG,EAAO,wBAAyBN,CAAS,EAC3GO,EAAaF,EAAWC,EAAO,eAAmBJ,EAAUI,EAAO,wBAA0BA,EAAO,mBAAmBlB,IAAU,EACjIoB,EAAeH,EAAWC,EAAO,iBAAqBJ,GAAWI,EAAO,yBAAyB,EAEvG,OACGjB,EAAA,cAAA,MAAA,CAAI,UAAWe,EAAkB,cAAaH,EAAQ,mBAAkBQ,EAAY,SAAA,EAClFpB,EAAA,cAAA,OAAA,CAAK,UAAWkB,CAAA,EACdlB,EAAA,cAAAF,EAAA,CAAc,QAAAC,CAAkB,CAAA,CACnC,EACCC,EAAA,cAAA,OAAA,CAAK,UAAWmB,CAAA,EAAeT,CAAK,CACvC,CAEJ"}
1
+ {"version":3,"file":"StatusDot.js","sources":["../src/components/StatusDot/StatusDot.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport { IconSize } from '../..';\nimport { AnalyticsId } from '../../constants';\nimport { getColor } from '../../theme/currys';\nimport Attachment from '../Icons/Attachment';\nimport Group from '../Icons/Group';\nimport { Icon } from '../Icons/Icon';\nimport NoAccess from '../Icons/NoAccess';\nimport Undo from '../Icons/Undo';\n\nimport styles from './styles.module.scss';\n\nexport enum StatusDotVariant {\n info = 'info',\n warning = 'warning',\n alert = 'alert',\n cancelled = 'cancelled',\n active = 'active',\n transparent = 'transparent',\n recurring = 'recurring',\n group = 'group',\n noaccess = 'noaccess',\n attachment = 'attachment',\n}\n\nexport interface StatusDotIconProps {\n variant?: keyof typeof StatusDotVariant;\n}\n\nconst StatusDotIcon: React.FC<StatusDotIconProps> = ({ variant }) => {\n if (variant === StatusDotVariant.recurring) {\n return <Icon size={IconSize.XXSmall} svgIcon={Undo} />;\n } else if (variant === StatusDotVariant.group) {\n return <Icon size={IconSize.XXSmall} svgIcon={Group} />;\n } else if (variant === StatusDotVariant.noaccess) {\n return <Icon size={IconSize.XXSmall} svgIcon={NoAccess} color={getColor('cherry', 600)} />;\n } else if (variant === StatusDotVariant.attachment) {\n return <Icon size={IconSize.XXSmall} svgIcon={Attachment} />;\n }\n\n return null;\n};\n\nexport interface StatusDotProps {\n /** Visual variants for the statusdot */\n variant?: keyof typeof StatusDotVariant;\n /** Text placed to the right of the statusdot */\n text: string;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\nconst StatusDot: React.FC<StatusDotProps> = props => {\n const { variant = StatusDotVariant.info, text, className, testId } = props;\n\n const hasIcon =\n variant === StatusDotVariant.recurring ||\n variant === StatusDotVariant.group ||\n variant === StatusDotVariant.noaccess ||\n variant === StatusDotVariant.attachment;\n\n const isCancelled = variant === StatusDotVariant.cancelled;\n\n const statusDotClasses = classNames(styles['statusdot'], isCancelled && styles['statusdot--cancelled'], className);\n const dotClasses = classNames(styles['statusdot__dot'], hasIcon ? styles[`statusdot__dot--icon`] : styles[`statusdot__dot--${variant}`]);\n const labelClasses = classNames(styles['statusdot__label'], hasIcon && styles[`statusdot__label--icon`]);\n\n return (\n <div className={statusDotClasses} data-testid={testId} data-analyticsid={AnalyticsId.StatusDot}>\n <span className={dotClasses}>\n <StatusDotIcon variant={variant} />\n </span>\n <span className={labelClasses}>{text}</span>\n </div>\n );\n};\n\nexport default StatusDot;\n"],"names":["StatusDotVariant","StatusDotIcon","variant","Icon","IconSize","Undo","Group","React","NoAccess","getColor","Attachment","StatusDot","props","text","className","testId","hasIcon","isCancelled","statusDotClasses","classNames","styles","dotClasses","labelClasses","AnalyticsId","StatusDot$1"],"mappings":"ofAeY,IAAAA,GAAAA,IACVA,EAAA,KAAO,OACPA,EAAA,QAAU,UACVA,EAAA,MAAQ,QACRA,EAAA,UAAY,YACZA,EAAA,OAAS,SACTA,EAAA,YAAc,cACdA,EAAA,UAAY,YACZA,EAAA,MAAQ,QACRA,EAAA,SAAW,WACXA,EAAA,WAAa,aAVHA,IAAAA,GAAA,CAAA,CAAA,EAiBZ,MAAMC,EAA8C,CAAC,CAAE,QAAAC,KACjDA,IAAY,4BACNC,EAAK,CAAA,KAAMC,EAAS,QAAS,QAASC,CAAM,CAAA,EAC3CH,IAAY,wBACbC,EAAK,CAAA,KAAMC,EAAS,QAAS,QAASE,CAAO,CAAA,EAC5CJ,IAAY,WACdK,EAAA,cAACJ,EAAK,CAAA,KAAMC,EAAS,QAAS,QAASI,EAAU,MAAOC,EAAS,SAAU,GAAG,CAAG,CAAA,EAC/EP,IAAY,6BACbC,EAAK,CAAA,KAAMC,EAAS,QAAS,QAASM,CAAY,CAAA,EAGrD,KAcHC,EAA+CC,GAAA,CACnD,KAAM,CAAE,QAAAV,EAAU,OAAuB,KAAAW,EAAM,UAAAC,EAAW,OAAAC,CAAW,EAAAH,EAE/DI,EACJd,IAAY,aACZA,IAAY,SACZA,IAAY,YACZA,IAAY,aAERe,EAAcf,IAAY,YAE1BgB,EAAmBC,EAAWC,EAAO,UAAcH,GAAeG,EAAO,sBAAsB,EAAGN,CAAS,EAC3GO,EAAaF,EAAWC,EAAO,eAAmBJ,EAAUI,EAAO,sBAAsB,EAAIA,EAAO,mBAAmBlB,GAAS,CAAC,EACjIoB,EAAeH,EAAWC,EAAO,iBAAqBJ,GAAWI,EAAO,wBAAwB,CAAC,EAGrG,OAAAb,EAAA,cAAC,OAAI,UAAWW,EAAkB,cAAaH,EAAQ,mBAAkBQ,EAAY,SAAA,EAClFhB,EAAA,cAAA,OAAA,CAAK,UAAWc,CACf,EAAAd,EAAA,cAACN,EAAc,CAAA,QAAAC,CAAkB,CAAA,CACnC,kBACC,OAAK,CAAA,UAAWoB,CAAe,EAAAT,CAAK,CACvC,CAEJ,EAEAW,EAAeb"}
package/TableBody.js CHANGED
@@ -1,2 +1,2 @@
1
- import o from"react";const n=function({className:e,children:t}){return o.createElement("tbody",{className:e},t)};export{n as T};
1
+ import t from"react";const a=function({className:e,children:o}){return t.createElement("tbody",{className:e},o)},c=a;export{a as T,c as a};
2
2
  //# sourceMappingURL=TableBody.js.map
package/TableBody.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"TableBody.js","sources":["../src/components/Table/TableBody/TableBody.tsx"],"sourcesContent":["import React from 'react';\n\nexport interface Props {\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the content of the table body. Use TableRows */\n children?: React.ReactNode;\n}\n\nexport const TableBody = function TableBody({ className, children }: Props) {\n return <tbody className={className}>{children}</tbody>;\n};\n\nexport default TableBody;\n"],"names":["TableBody","className","children","React"],"mappings":"qBASO,MAAMA,EAAY,SAAmB,CAAE,UAAAC,EAAW,SAAAC,GAAmB,CAC1E,OAAQC,EAAA,cAAA,QAAA,CAAM,UAAAF,CAAA,EAAuBC,CAAS,CAChD"}
1
+ {"version":3,"file":"TableBody.js","sources":["../src/components/Table/TableBody/TableBody.tsx"],"sourcesContent":["import React from 'react';\n\nexport interface Props {\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the content of the table body. Use TableRows */\n children?: React.ReactNode;\n}\n\nexport const TableBody = function TableBody({ className, children }: Props) {\n return <tbody className={className}>{children}</tbody>;\n};\n\nexport default TableBody;\n"],"names":["TableBody","className","children","React","TableBody$1"],"mappings":"qBASO,MAAMA,EAAY,SAAmB,CAAE,UAAAC,EAAW,SAAAC,GAAmB,CACnE,OAAAC,EAAA,cAAC,QAAM,CAAA,UAAAF,CAAA,EAAuBC,CAAS,CAChD,EAEAE,EAAeJ"}
package/TableCell.js CHANGED
@@ -1,2 +1,2 @@
1
- import b from"react";import m from"classnames";import l from"./components/Table/styles.module.scss";var n=(e=>(e.left="left",e.center="center",e.right="right",e))(n||{});const p=function({nowrap:a=!1,textAlign:t="left",dataLabel:r,children:c,className:s}){const o=m(l.table__cell,{[l["table__cell--nowrap"]]:a},{[l["table__cell--center"]]:t==="center"},{[l["table__cell--right"]]:t==="right"},s);return b.createElement("td",{className:o,"data-label":r},c)};export{p as T,n as a};
1
+ import b from"react";import n from"classnames";import l from"./components/Table/styles.module.scss";var m=(e=>(e.left="left",e.center="center",e.right="right",e))(m||{});const f=function({nowrap:a=!1,textAlign:t="left",dataLabel:r,children:c,className:s}){const o=n(l.table__cell,{[l["table__cell--nowrap"]]:a},{[l["table__cell--center"]]:t==="center"},{[l["table__cell--right"]]:t==="right"},s);return b.createElement("td",{className:o,"data-label":r},c)},C=f;export{f as T,m as a,C as b};
2
2
  //# sourceMappingURL=TableCell.js.map
package/TableCell.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"TableCell.js","sources":["../src/components/Table/TableCell/TableCell.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport tableStyles from '../styles.module.scss';\n\nexport enum TextAlign {\n left = 'left',\n center = 'center',\n right = 'right',\n}\n\nexport interface Props {\n /** Label used for small viewport block */\n dataLabel: string;\n /** text align in cell */\n textAlign?: TextAlign;\n /** nowrap for white space */\n nowrap?: boolean;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the content of the table cell */\n children: React.ReactNode;\n}\n\nexport const TableCell = function TableCell({ nowrap = false, textAlign = TextAlign.left, dataLabel, children, className }: Props) {\n const tableCellClass = classNames(\n tableStyles['table__cell'],\n { [tableStyles['table__cell--nowrap']]: nowrap },\n { [tableStyles['table__cell--center']]: textAlign === 'center' },\n { [tableStyles['table__cell--right']]: textAlign === 'right' },\n className\n );\n\n return (\n <td className={tableCellClass} data-label={dataLabel}>\n {children}\n </td>\n );\n};\n\nexport default TableCell;\n"],"names":["TextAlign","TableCell","nowrap","textAlign","dataLabel","children","className","tableCellClass","classNames","tableStyles","React"],"mappings":"oGAIY,IAAAA,GAAAA,IACVA,EAAA,KAAO,OACPA,EAAA,OAAS,SACTA,EAAA,MAAQ,QAHEA,IAAAA,GAAA,CAAA,CAAA,EAmBC,MAAAC,EAAY,SAAmB,CAAE,OAAAC,EAAS,GAAO,UAAAC,EAAY,OAAgB,UAAAC,EAAW,SAAAC,EAAU,UAAAC,GAAoB,CACjI,MAAMC,EAAiBC,EACrBC,EAAY,YACZ,CAAE,CAACA,EAAY,wBAAyBP,CAAO,EAC/C,CAAE,CAACO,EAAY,wBAAyBN,IAAc,QAAS,EAC/D,CAAE,CAACM,EAAY,uBAAwBN,IAAc,OAAQ,EAC7DG,CAAA,EAGF,OACGI,EAAA,cAAA,KAAA,CAAG,UAAWH,EAAgB,aAAYH,CAAA,EACxCC,CACH,CAEJ"}
1
+ {"version":3,"file":"TableCell.js","sources":["../src/components/Table/TableCell/TableCell.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport tableStyles from '../styles.module.scss';\n\nexport enum TextAlign {\n left = 'left',\n center = 'center',\n right = 'right',\n}\n\nexport interface Props {\n /** Label used for small viewport block */\n dataLabel: string;\n /** text align in cell */\n textAlign?: TextAlign;\n /** nowrap for white space */\n nowrap?: boolean;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the content of the table cell */\n children: React.ReactNode;\n}\n\nexport const TableCell = function TableCell({ nowrap = false, textAlign = TextAlign.left, dataLabel, children, className }: Props) {\n const tableCellClass = classNames(\n tableStyles['table__cell'],\n { [tableStyles['table__cell--nowrap']]: nowrap },\n { [tableStyles['table__cell--center']]: textAlign === 'center' },\n { [tableStyles['table__cell--right']]: textAlign === 'right' },\n className\n );\n\n return (\n <td className={tableCellClass} data-label={dataLabel}>\n {children}\n </td>\n );\n};\n\nexport default TableCell;\n"],"names":["TextAlign","TableCell","nowrap","textAlign","dataLabel","children","className","tableCellClass","classNames","tableStyles","TableCell$1"],"mappings":"oGAMY,IAAAA,GAAAA,IACVA,EAAA,KAAO,OACPA,EAAA,OAAS,SACTA,EAAA,MAAQ,QAHEA,IAAAA,GAAA,CAAA,CAAA,EAmBC,MAAAC,EAAY,SAAmB,CAAE,OAAAC,EAAS,GAAO,UAAAC,EAAY,OAAgB,UAAAC,EAAW,SAAAC,EAAU,UAAAC,GAAoB,CACjI,MAAMC,EAAiBC,EACrBC,EAAY,YACZ,CAAE,CAACA,EAAY,qBAAqB,CAAC,EAAGP,CAAO,EAC/C,CAAE,CAACO,EAAY,qBAAqB,CAAC,EAAGN,IAAc,QAAS,EAC/D,CAAE,CAACM,EAAY,oBAAoB,CAAC,EAAGN,IAAc,OAAQ,EAC7DG,CAAA,EAGF,uBACG,KAAG,CAAA,UAAWC,EAAgB,aAAYH,GACxCC,CACH,CAEJ,EAEAK,EAAeT"}
@@ -1,2 +1,2 @@
1
- import e from"react";import o from"classnames";import a from"./components/Table/styles.module.scss";import{B as i}from"./Button.js";import{Icon as b}from"./components/Icons/Icon.js";import _ from"./components/Icons/ChevronUp.js";const u=function({numberOfColumns:n,expanded:t,hideDetailsText:l,toggleClick:s,children:c,className:r}){const m=o(a["table__expanded-row"],{[a["table__expanded-row--expanded"]]:t},r),d=o(a.table__cell,r),p=o(a["table__expanded-row-container"],{[a["table__expanded-row-container--expanded"]]:t});return e.createElement("tr",{className:m},e.createElement("td",{colSpan:n,className:d},e.createElement("div",{className:p},c,e.createElement(i,{variant:"borderless",onClick:s,"aria-expanded":t,tabIndex:t?0:-1},l,e.createElement(b,{svgIcon:_})))))};export{u as T};
1
+ import e from"react";import o from"classnames";import{B as i}from"./Button.js";import{Icon as b}from"./components/Icons/Icon.js";import _ from"./components/Icons/ChevronUp.js";import a from"./components/Table/styles.module.scss";const x=function({numberOfColumns:r,expanded:t,hideDetailsText:l,toggleClick:s,children:c,className:n}){const m=o(a["table__expanded-row"],{[a["table__expanded-row--expanded"]]:t},n),d=o(a.table__cell,n),p=o(a["table__expanded-row-container"],{[a["table__expanded-row-container--expanded"]]:t});return e.createElement("tr",{className:m},e.createElement("td",{colSpan:r,className:d},e.createElement("div",{className:p},c,e.createElement(i,{variant:"borderless",onClick:s,"aria-expanded":t,tabIndex:t?0:-1},l,e.createElement(b,{svgIcon:_})))))},u=x;export{x as T,u as a};
2
2
  //# sourceMappingURL=TableExpandedRow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableExpandedRow.js","sources":["../src/components/Table/TableExpandedRow/TableExpandedRow.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport tableStyles from '../styles.module.scss';\nimport Button from '../../Button';\nimport Icon from '../../Icons';\nimport ChevronUp from '../../Icons/ChevronUp';\n\nexport interface Props {\n /** Row is expanded. */\n expanded: boolean;\n /** Number of columns in table. */\n numberOfColumns: number;\n /** Text for hide button. */\n hideDetailsText: string;\n /** When hide button inside expanded row is clicked. */\n toggleClick: () => void;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the content of the expanded row. */\n children: React.ReactNode;\n}\n\nexport const TableExpandedRow = function TableExpandedRow({\n numberOfColumns,\n expanded,\n hideDetailsText,\n toggleClick,\n children,\n className,\n}: Props) {\n const tableRowClass = classNames(\n tableStyles['table__expanded-row'],\n { [tableStyles['table__expanded-row--expanded']]: expanded },\n className\n );\n const tableCellClass = classNames(tableStyles['table__cell'], className);\n\n const containerClass = classNames(tableStyles['table__expanded-row-container'], {\n [tableStyles['table__expanded-row-container--expanded']]: expanded,\n });\n\n return (\n <tr className={tableRowClass}>\n <td colSpan={numberOfColumns} className={tableCellClass}>\n <div className={containerClass}>\n {children}\n <Button variant={'borderless'} onClick={toggleClick} aria-expanded={expanded} tabIndex={expanded ? 0 : -1}>\n {hideDetailsText}\n <Icon svgIcon={ChevronUp} />\n </Button>\n </div>\n </td>\n </tr>\n );\n};\n\nexport default TableExpandedRow;\n"],"names":["TableExpandedRow","numberOfColumns","expanded","hideDetailsText","toggleClick","children","className","tableRowClass","classNames","tableStyles","tableCellClass","containerClass","React","Button","Icon","ChevronUp"],"mappings":"qOAsBa,MAAAA,EAAmB,SAA0B,CACxD,gBAAAC,EACA,SAAAC,EACA,gBAAAC,EACA,YAAAC,EACA,SAAAC,EACA,UAAAC,CACF,EAAU,CACR,MAAMC,EAAgBC,EACpBC,EAAY,uBACZ,CAAE,CAACA,EAAY,kCAAmCP,CAAS,EAC3DI,CAAA,EAEII,EAAiBF,EAAWC,EAAY,YAAgBH,CAAS,EAEjEK,EAAiBH,EAAWC,EAAY,iCAAkC,CAC9E,CAACA,EAAY,4CAA6CP,CAAA,CAC3D,EAED,OACGU,EAAA,cAAA,KAAA,CAAG,UAAWL,CAAA,EACZK,EAAA,cAAA,KAAA,CAAG,QAASX,EAAiB,UAAWS,CAAA,EACtCE,EAAA,cAAA,MAAA,CAAI,UAAWD,CAAA,EACbN,EACAO,EAAA,cAAAC,EAAA,CAAO,QAAS,aAAc,QAAST,EAAa,gBAAeF,EAAU,SAAUA,EAAW,EAAI,EAAA,EACpGC,EACAS,EAAA,cAAAE,EAAA,CAAK,QAASC,CAAA,CAAW,CAC5B,CACF,CACF,CACF,CAEJ"}
1
+ {"version":3,"file":"TableExpandedRow.js","sources":["../src/components/Table/TableExpandedRow/TableExpandedRow.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport Button from '../../Button';\nimport Icon from '../../Icons';\nimport ChevronUp from '../../Icons/ChevronUp';\nimport tableStyles from '../styles.module.scss';\n\nexport interface Props {\n /** Row is expanded. */\n expanded: boolean;\n /** Number of columns in table. */\n numberOfColumns: number;\n /** Text for hide button. */\n hideDetailsText: string;\n /** When hide button inside expanded row is clicked. */\n toggleClick: () => void;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the content of the expanded row. */\n children: React.ReactNode;\n}\n\nexport const TableExpandedRow = function TableExpandedRow({\n numberOfColumns,\n expanded,\n hideDetailsText,\n toggleClick,\n children,\n className,\n}: Props) {\n const tableRowClass = classNames(\n tableStyles['table__expanded-row'],\n { [tableStyles['table__expanded-row--expanded']]: expanded },\n className\n );\n const tableCellClass = classNames(tableStyles['table__cell'], className);\n\n const containerClass = classNames(tableStyles['table__expanded-row-container'], {\n [tableStyles['table__expanded-row-container--expanded']]: expanded,\n });\n\n return (\n <tr className={tableRowClass}>\n <td colSpan={numberOfColumns} className={tableCellClass}>\n <div className={containerClass}>\n {children}\n <Button variant={'borderless'} onClick={toggleClick} aria-expanded={expanded} tabIndex={expanded ? 0 : -1}>\n {hideDetailsText}\n <Icon svgIcon={ChevronUp} />\n </Button>\n </div>\n </td>\n </tr>\n );\n};\n\nexport default TableExpandedRow;\n"],"names":["TableExpandedRow","numberOfColumns","expanded","hideDetailsText","toggleClick","children","className","tableRowClass","classNames","tableStyles","tableCellClass","containerClass","React","Button","Icon","ChevronUp","TableExpandedRow$1"],"mappings":"qOAwBa,MAAAA,EAAmB,SAA0B,CACxD,gBAAAC,EACA,SAAAC,EACA,gBAAAC,EACA,YAAAC,EACA,SAAAC,EACA,UAAAC,CACF,EAAU,CACR,MAAMC,EAAgBC,EACpBC,EAAY,qBAAqB,EACjC,CAAE,CAACA,EAAY,+BAA+B,CAAC,EAAGP,CAAS,EAC3DI,CAAA,EAEII,EAAiBF,EAAWC,EAAY,YAAgBH,CAAS,EAEjEK,EAAiBH,EAAWC,EAAY,+BAA+B,EAAG,CAC9E,CAACA,EAAY,yCAAyC,CAAC,EAAGP,CAAA,CAC3D,EAED,OACGU,EAAA,cAAA,KAAA,CAAG,UAAWL,CAAA,kBACZ,KAAG,CAAA,QAASN,EAAiB,UAAWS,GACtCE,EAAA,cAAA,MAAA,CAAI,UAAWD,GACbN,EACAO,EAAA,cAAAC,EAAA,CAAO,QAAS,aAAc,QAAST,EAAa,gBAAeF,EAAU,SAAUA,EAAW,EAAI,EAAA,EACpGC,EACDS,EAAA,cAACE,GAAK,QAASC,CAAW,CAAA,CAC5B,CACF,CACF,CACF,CAEJ,EAEAC,EAAehB"}
@@ -1,2 +1,2 @@
1
- import r from"react";import c from"classnames";import t from"./components/Table/styles.module.scss";import{Icon as i}from"./components/Icons/Icon.js";import{B as p}from"./Button.js";import b from"./components/Icons/ChevronDown.js";import f from"./components/Icons/ChevronUp.js";const h=function({expandableRowId:o,hideDetailsText:a,showDetailsText:l,expanded:e,className:n}){const m=c(t.table__cell,t["table__cell-expander"],n),s=e?f:b;return r.createElement("td",{className:m},r.createElement(p,{variant:"borderless","aria-expanded":e,"aria-controls":o,ariaLabel:e?a:l},r.createElement(i,{svgIcon:s})))};export{h as T};
1
+ import r from"react";import c from"classnames";import{B as i}from"./Button.js";import{Icon as p}from"./components/Icons/Icon.js";import b from"./components/Icons/ChevronDown.js";import f from"./components/Icons/ChevronUp.js";import a from"./components/Table/styles.module.scss";const C=function({expandableRowId:t,hideDetailsText:o,showDetailsText:l,expanded:e,className:n}){const m=c(a.table__cell,a["table__cell-expander"],n),s=e?f:b;return r.createElement("td",{className:m},r.createElement(i,{variant:"borderless","aria-expanded":e,"aria-controls":t,ariaLabel:e?o:l},r.createElement(p,{svgIcon:s})))},B=C;export{C as T,B as a};
2
2
  //# sourceMappingURL=TableExpanderCell.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableExpanderCell.js","sources":["../src/components/Table/TableExpanderCell/TableExpanderCell.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport tableStyles from '../styles.module.scss';\nimport Icon from '../../Icons';\nimport Button from '../../Button';\nimport ChevronDown from '../../Icons/ChevronDown';\nimport ChevronUp from '../../Icons/ChevronUp';\n\nexport interface Props {\n /** Adds custom classes to the element. */\n className?: string;\n /** Row is expanded. */\n expanded: boolean;\n /** Id for expanded row. */\n expandableRowId: string;\n /** Text for hide button used for aria label. */\n hideDetailsText: string;\n /** Text for show button used for aria label. */\n showDetailsText: string;\n}\n\nexport const TableExpanderCell = function TableExpanderCell({\n expandableRowId,\n hideDetailsText,\n showDetailsText,\n expanded,\n className,\n}: Props) {\n const tableCellClass = classNames(tableStyles['table__cell'], tableStyles['table__cell-expander'], className);\n const icon = expanded ? ChevronUp : ChevronDown;\n\n return (\n <td className={tableCellClass}>\n <Button\n variant=\"borderless\"\n aria-expanded={expanded}\n aria-controls={expandableRowId}\n ariaLabel={expanded ? hideDetailsText : showDetailsText}\n >\n <Icon svgIcon={icon} />\n </Button>\n </td>\n );\n};\n\nexport default TableExpanderCell;\n"],"names":["TableExpanderCell","expandableRowId","hideDetailsText","showDetailsText","expanded","className","tableCellClass","classNames","tableStyles","icon","ChevronUp","ChevronDown","React","Button","Icon"],"mappings":"sRAqBa,MAAAA,EAAoB,SAA2B,CAC1D,gBAAAC,EACA,gBAAAC,EACA,gBAAAC,EACA,SAAAC,EACA,UAAAC,CACF,EAAU,CACR,MAAMC,EAAiBC,EAAWC,EAAY,YAAgBA,EAAY,wBAAyBH,CAAS,EACtGI,EAAOL,EAAWM,EAAYC,EAEpC,OACGC,EAAA,cAAA,KAAA,CAAG,UAAWN,CAAA,EACZM,EAAA,cAAAC,EAAA,CACC,QAAQ,aACR,gBAAeT,EACf,gBAAeH,EACf,UAAWG,EAAWF,EAAkBC,CAAA,EAEvCS,EAAA,cAAAE,EAAA,CAAK,QAASL,CAAM,CAAA,CACvB,CACF,CAEJ"}
1
+ {"version":3,"file":"TableExpanderCell.js","sources":["../src/components/Table/TableExpanderCell/TableExpanderCell.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport Button from '../../Button';\nimport Icon from '../../Icons';\nimport ChevronDown from '../../Icons/ChevronDown';\nimport ChevronUp from '../../Icons/ChevronUp';\nimport tableStyles from '../styles.module.scss';\n\nexport interface Props {\n /** Adds custom classes to the element. */\n className?: string;\n /** Row is expanded. */\n expanded: boolean;\n /** Id for expanded row. */\n expandableRowId: string;\n /** Text for hide button used for aria label. */\n hideDetailsText: string;\n /** Text for show button used for aria label. */\n showDetailsText: string;\n}\n\nexport const TableExpanderCell = function TableExpanderCell({\n expandableRowId,\n hideDetailsText,\n showDetailsText,\n expanded,\n className,\n}: Props) {\n const tableCellClass = classNames(tableStyles['table__cell'], tableStyles['table__cell-expander'], className);\n const icon = expanded ? ChevronUp : ChevronDown;\n\n return (\n <td className={tableCellClass}>\n <Button\n variant=\"borderless\"\n aria-expanded={expanded}\n aria-controls={expandableRowId}\n ariaLabel={expanded ? hideDetailsText : showDetailsText}\n >\n <Icon svgIcon={icon} />\n </Button>\n </td>\n );\n};\n\nexport default TableExpanderCell;\n"],"names":["TableExpanderCell","expandableRowId","hideDetailsText","showDetailsText","expanded","className","tableCellClass","classNames","tableStyles","icon","ChevronUp","ChevronDown","React","Button","Icon","TableExpanderCell$1"],"mappings":"sRAuBa,MAAAA,EAAoB,SAA2B,CAC1D,gBAAAC,EACA,gBAAAC,EACA,gBAAAC,EACA,SAAAC,EACA,UAAAC,CACF,EAAU,CACF,MAAAC,EAAiBC,EAAWC,EAAY,YAAgBA,EAAY,sBAAsB,EAAGH,CAAS,EACtGI,EAAOL,EAAWM,EAAYC,EAGlC,OAAAC,EAAA,cAAC,KAAG,CAAA,UAAWN,CACb,EAAAM,EAAA,cAACC,EAAA,CACC,QAAQ,aACR,gBAAeT,EACf,gBAAeH,EACf,UAAWG,EAAWF,EAAkBC,CAAA,EAExCS,EAAA,cAACE,EAAK,CAAA,QAASL,CAAM,CAAA,CAAA,CAEzB,CAEJ,EAEAM,EAAef"}
package/TableHead.js CHANGED
@@ -1,2 +1,2 @@
1
- import n from"react";import o from"classnames";import t from"./components/Table/styles.module.scss";var m=(a=>(a.normal="normal",a.transparent="transparent",a.sortable="sortable",a))(m||{});const d=function({category:e,className:r,children:l}){const s=o(t.table__head,{[t["table__head--normal"]]:e==="normal",[t["table__head--transparent"]]:e==="transparent",[t["table__head--sortable"]]:e=="sortable"},r);return n.createElement("thead",{className:s},l)};export{m as H,d as T};
1
+ import n from"react";import o from"classnames";import e from"./components/Table/styles.module.scss";var b=(a=>(a.normal="normal",a.transparent="transparent",a.sortable="sortable",a))(b||{});const m=function({category:t,className:r,children:l}){const s=o(e.table__head,{[e["table__head--normal"]]:t==="normal",[e["table__head--transparent"]]:t==="transparent",[e["table__head--sortable"]]:t=="sortable"},r);return n.createElement("thead",{className:s},l)},c=m;export{b as H,m as T,c as a};
2
2
  //# sourceMappingURL=TableHead.js.map
package/TableHead.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"TableHead.js","sources":["../src/components/Table/TableHead/TableHead.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport tableStyles from '../styles.module.scss';\n\nexport enum HeaderCategory {\n normal = 'normal',\n transparent = 'transparent',\n sortable = 'sortable',\n}\n\nexport interface Props {\n /** Header category for styling */\n category: HeaderCategory;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the content of the thead. Add table rows */\n children: React.ReactNode;\n}\n\nexport const TableHead = function TableHead({ category, className, children }: Props) {\n const tableHeadClass = classNames(\n tableStyles['table__head'],\n {\n [tableStyles['table__head--normal']]: category === HeaderCategory.normal,\n [tableStyles['table__head--transparent']]: category === HeaderCategory.transparent,\n [tableStyles['table__head--sortable']]: category == HeaderCategory.sortable,\n },\n className\n );\n\n return <thead className={tableHeadClass}>{children}</thead>;\n};\n\nexport default TableHead;\n"],"names":["HeaderCategory","TableHead","category","className","children","tableHeadClass","classNames","tableStyles","React"],"mappings":"oGAIY,IAAAA,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,YAAc,cACdA,EAAA,SAAW,WAHDA,IAAAA,GAAA,CAAA,CAAA,EAeL,MAAMC,EAAY,SAAmB,CAAE,SAAAC,EAAU,UAAAC,EAAW,SAAAC,GAAmB,CACpF,MAAMC,EAAiBC,EACrBC,EAAY,YACZ,CACE,CAACA,EAAY,wBAAyBL,IAAa,SACnD,CAACK,EAAY,6BAA8BL,IAAa,cACxD,CAACK,EAAY,0BAA2BL,GAAY,UACtD,EACAC,CAAA,EAGF,OAAQK,EAAA,cAAA,QAAA,CAAM,UAAWH,CAAA,EAAiBD,CAAS,CACrD"}
1
+ {"version":3,"file":"TableHead.js","sources":["../src/components/Table/TableHead/TableHead.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport tableStyles from '../styles.module.scss';\n\nexport enum HeaderCategory {\n normal = 'normal',\n transparent = 'transparent',\n sortable = 'sortable',\n}\n\nexport interface Props {\n /** Header category for styling */\n category: HeaderCategory;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the content of the thead. Add table rows */\n children: React.ReactNode;\n}\n\nexport const TableHead = function TableHead({ category, className, children }: Props) {\n const tableHeadClass = classNames(\n tableStyles['table__head'],\n {\n [tableStyles['table__head--normal']]: category === HeaderCategory.normal,\n [tableStyles['table__head--transparent']]: category === HeaderCategory.transparent,\n [tableStyles['table__head--sortable']]: category == HeaderCategory.sortable,\n },\n className\n );\n\n return <thead className={tableHeadClass}>{children}</thead>;\n};\n\nexport default TableHead;\n"],"names":["HeaderCategory","TableHead","category","className","children","tableHeadClass","classNames","tableStyles","React","TableHead$1"],"mappings":"oGAMY,IAAAA,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,YAAc,cACdA,EAAA,SAAW,WAHDA,IAAAA,GAAA,CAAA,CAAA,EAeL,MAAMC,EAAY,SAAmB,CAAE,SAAAC,EAAU,UAAAC,EAAW,SAAAC,GAAmB,CACpF,MAAMC,EAAiBC,EACrBC,EAAY,YACZ,CACE,CAACA,EAAY,qBAAqB,CAAC,EAAGL,IAAa,SACnD,CAACK,EAAY,0BAA0B,CAAC,EAAGL,IAAa,cACxD,CAACK,EAAY,uBAAuB,CAAC,EAAGL,GAAY,UACtD,EACAC,CAAA,EAGF,OAAQK,EAAA,cAAA,QAAA,CAAM,UAAWH,CAAA,EAAiBD,CAAS,CACrD,EAEAK,EAAeR"}
package/TableHeadCell.js CHANGED
@@ -1,2 +1,2 @@
1
- import t from"react";import r from"classnames";import a from"./components/Table/styles.module.scss";import{Icon as i}from"./components/Icons/Icon.js";import{IconSize as f}from"./constants.js";import u from"./components/Icons/ArrowUp.js";import _ from"./components/Icons/ArrowDown.js";var h=(l=>(l.asc="asc",l.desc="desc",l))(h||{});const N=function({sortable:n,onClick:m,className:s,children:c,sortDir:e}){const o=a["table__head-cell"];if(!n)return t.createElement("th",{scope:"col",className:r(o,s)},c);const d=r(o,a["table__head-cell--sortable"],{[a["table__head-cell--sorted"]]:e},s),p=()=>e&&t.createElement("div",{className:a["table__head-cell-sort-icon-wrapper"]},t.createElement(i,{svgIcon:e=="asc"?_:u,size:f.XXSmall})),b=()=>{switch(e){case"asc":return"ascending";case"desc":return"descending"}};return t.createElement("th",{scope:"col",className:d,"aria-sort":b()},t.createElement("button",{type:"button",onClick:m,className:a["table__sort-button"],"aria-pressed":e?!!e:void 0},p(),c))};export{h as S,N as T};
1
+ import a from"react";import r from"classnames";import{Icon as i}from"./components/Icons/Icon.js";import{IconSize as f}from"./constants.js";import u from"./components/Icons/ArrowDown.js";import _ from"./components/Icons/ArrowUp.js";import t from"./components/Table/styles.module.scss";var h=(l=>(l.asc="asc",l.desc="desc",l))(h||{});const C=function({sortable:n,onClick:m,className:s,children:c,sortDir:e}){const o=t["table__head-cell"];if(!n)return a.createElement("th",{scope:"col",className:r(o,s)},c);const d=r(o,t["table__head-cell--sortable"],{[t["table__head-cell--sorted"]]:e},s),b=()=>e&&a.createElement("div",{className:t["table__head-cell-sort-icon-wrapper"]},a.createElement(i,{svgIcon:e=="asc"?u:_,size:f.XXSmall})),p=()=>{switch(e){case"asc":return"ascending";case"desc":return"descending"}};return a.createElement("th",{scope:"col",className:d,"aria-sort":p()},a.createElement("button",{type:"button",onClick:m,className:t["table__sort-button"],"aria-pressed":e?!!e:void 0},b(),c))},N=C;export{h as S,C as T,N as a};
2
2
  //# sourceMappingURL=TableHeadCell.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeadCell.js","sources":["../src/components/Table/TableHeadCell/TableHeadCell.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport tableStyles from '../styles.module.scss';\nimport Icon, { IconSize } from '../../Icons';\nimport ArrowUp from '../../Icons/ArrowUp';\nimport ArrowDown from '../../Icons/ArrowDown';\n\nexport enum SortDirection {\n asc = 'asc',\n desc = 'desc',\n}\n\nexport interface Props {\n /** Sets if column for head cell should be sortable*/\n sortable?: boolean;\n /** Sort direction */\n sortDir?: SortDirection;\n /** Function that is called when clicked */\n onClick?: () => void;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the content of the td element. */\n children?: React.ReactNode;\n}\n\nexport const TableHeadCell = function TableHeadCell({ sortable, onClick, className, children, sortDir }: Props) {\n const tableHeadCellDefaultClass = tableStyles['table__head-cell'];\n\n if (!sortable) {\n return (\n <th scope=\"col\" className={classNames(tableHeadCellDefaultClass, className)}>\n {children}\n </th>\n );\n }\n\n const sortableClasses = classNames(\n tableHeadCellDefaultClass,\n tableStyles['table__head-cell--sortable'],\n { [tableStyles['table__head-cell--sorted']]: sortDir },\n className\n );\n\n const renderSortIcon = (): JSX.Element | undefined =>\n sortDir && (\n <div className={tableStyles['table__head-cell-sort-icon-wrapper']}>\n <Icon svgIcon={sortDir == SortDirection.asc ? ArrowDown : ArrowUp} size={IconSize.XXSmall} />\n </div>\n );\n\n const getSortDirection = (): React.AriaAttributes['aria-sort'] => {\n switch (sortDir) {\n case SortDirection.asc:\n return 'ascending';\n case SortDirection.desc:\n return 'descending';\n }\n };\n\n return (\n <th scope=\"col\" className={sortableClasses} aria-sort={getSortDirection()}>\n <button type=\"button\" onClick={onClick} className={tableStyles['table__sort-button']} aria-pressed={sortDir ? !!sortDir : undefined}>\n {renderSortIcon()}\n {children}\n </button>\n </th>\n );\n};\n\nexport default TableHeadCell;\n"],"names":["SortDirection","TableHeadCell","sortable","onClick","className","children","sortDir","tableHeadCellDefaultClass","tableStyles","React","classNames","sortableClasses","renderSortIcon","Icon","ArrowDown","ArrowUp","IconSize","getSortDirection"],"mappings":"4RAOY,IAAAA,GAAAA,IACVA,EAAA,IAAM,MACNA,EAAA,KAAO,OAFGA,IAAAA,GAAA,CAAA,CAAA,EAkBC,MAAAC,EAAgB,SAAuB,CAAE,SAAAC,EAAU,QAAAC,EAAS,UAAAC,EAAW,SAAAC,EAAU,QAAAC,GAAkB,CAC9G,MAAMC,EAA4BC,EAAY,oBAE9C,GAAI,CAACN,EACH,OACGO,EAAA,cAAA,KAAA,CAAG,MAAM,MAAM,UAAWC,EAAWH,EAA2BH,CAAS,CAAA,EACvEC,CACH,EAIJ,MAAMM,EAAkBD,EACtBH,EACAC,EAAY,8BACZ,CAAE,CAACA,EAAY,6BAA8BF,CAAQ,EACrDF,CAAA,EAGIQ,EAAiB,IACrBN,GACGG,EAAA,cAAA,MAAA,CAAI,UAAWD,EAAY,qCAAA,EACzBC,EAAA,cAAAI,EAAA,CAAK,QAASP,GAAW,MAAoBQ,EAAYC,EAAS,KAAMC,EAAS,OAAS,CAAA,CAC7F,EAGEC,EAAmB,IAAyC,CAChE,OAAQX,EAAS,CACf,IAAK,MACI,MAAA,YACT,IAAK,OACI,MAAA,YACX,CAAA,EAGF,OACGG,EAAA,cAAA,KAAA,CAAG,MAAM,MAAM,UAAWE,EAAiB,YAAWM,EAAiB,CAAA,EACrER,EAAA,cAAA,SAAA,CAAO,KAAK,SAAS,QAAAN,EAAkB,UAAWK,EAAY,sBAAuB,eAAcF,EAAU,CAAC,CAACA,EAAU,MAAA,EACvHM,EAAA,EACAP,CACH,CACF,CAEJ"}
1
+ {"version":3,"file":"TableHeadCell.js","sources":["../src/components/Table/TableHeadCell/TableHeadCell.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport Icon, { IconSize } from '../../Icons';\nimport ArrowDown from '../../Icons/ArrowDown';\nimport ArrowUp from '../../Icons/ArrowUp';\nimport tableStyles from '../styles.module.scss';\n\nexport enum SortDirection {\n asc = 'asc',\n desc = 'desc',\n}\n\nexport interface Props {\n /** Sets if column for head cell should be sortable*/\n sortable?: boolean;\n /** Sort direction */\n sortDir?: SortDirection;\n /** Function that is called when clicked */\n onClick?: () => void;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the content of the td element. */\n children?: React.ReactNode;\n}\n\nexport const TableHeadCell = function TableHeadCell({ sortable, onClick, className, children, sortDir }: Props) {\n const tableHeadCellDefaultClass = tableStyles['table__head-cell'];\n\n if (!sortable) {\n return (\n <th scope=\"col\" className={classNames(tableHeadCellDefaultClass, className)}>\n {children}\n </th>\n );\n }\n\n const sortableClasses = classNames(\n tableHeadCellDefaultClass,\n tableStyles['table__head-cell--sortable'],\n { [tableStyles['table__head-cell--sorted']]: sortDir },\n className\n );\n\n const renderSortIcon = (): JSX.Element | undefined =>\n sortDir && (\n <div className={tableStyles['table__head-cell-sort-icon-wrapper']}>\n <Icon svgIcon={sortDir == SortDirection.asc ? ArrowDown : ArrowUp} size={IconSize.XXSmall} />\n </div>\n );\n\n const getSortDirection = (): React.AriaAttributes['aria-sort'] => {\n switch (sortDir) {\n case SortDirection.asc:\n return 'ascending';\n case SortDirection.desc:\n return 'descending';\n }\n };\n\n return (\n <th scope=\"col\" className={sortableClasses} aria-sort={getSortDirection()}>\n <button type=\"button\" onClick={onClick} className={tableStyles['table__sort-button']} aria-pressed={sortDir ? !!sortDir : undefined}>\n {renderSortIcon()}\n {children}\n </button>\n </th>\n );\n};\n\nexport default TableHeadCell;\n"],"names":["SortDirection","TableHeadCell","sortable","onClick","className","children","sortDir","tableHeadCellDefaultClass","tableStyles","React","classNames","sortableClasses","renderSortIcon","Icon","ArrowDown","ArrowUp","IconSize","getSortDirection","TableHeadCell$1"],"mappings":"4RASY,IAAAA,GAAAA,IACVA,EAAA,IAAM,MACNA,EAAA,KAAO,OAFGA,IAAAA,GAAA,CAAA,CAAA,EAkBC,MAAAC,EAAgB,SAAuB,CAAE,SAAAC,EAAU,QAAAC,EAAS,UAAAC,EAAW,SAAAC,EAAU,QAAAC,GAAkB,CACxG,MAAAC,EAA4BC,EAAY,kBAAkB,EAEhE,GAAI,CAACN,EAED,OAAAO,EAAA,cAAC,MAAG,MAAM,MAAM,UAAWC,EAAWH,EAA2BH,CAAS,CAAA,EACvEC,CACH,EAIJ,MAAMM,EAAkBD,EACtBH,EACAC,EAAY,4BAA4B,EACxC,CAAE,CAACA,EAAY,0BAA0B,CAAC,EAAGF,CAAQ,EACrDF,CAAA,EAGIQ,EAAiB,IACrBN,mBACG,MAAI,CAAA,UAAWE,EAAY,oCAAoC,CAAA,kBAC7DK,EAAK,CAAA,QAASP,GAAW,MAAoBQ,EAAYC,EAAS,KAAMC,EAAS,QAAS,CAC7F,EAGEC,EAAmB,IAAyC,CAChE,OAAQX,EAAS,CACf,IAAK,MACI,MAAA,YACT,IAAK,OACI,MAAA,YACX,CAAA,EAIA,OAAAG,EAAA,cAAC,KAAG,CAAA,MAAM,MAAM,UAAWE,EAAiB,YAAWM,EAAiB,CAAA,EACrER,EAAA,cAAA,SAAA,CAAO,KAAK,SAAS,QAAAN,EAAkB,UAAWK,EAAY,oBAAoB,EAAG,eAAcF,EAAU,CAAC,CAACA,EAAU,MACvH,EAAAM,EAAA,EACAP,CACH,CACF,CAEJ,EAEAa,EAAejB"}
package/TableRow.js CHANGED
@@ -1,2 +1,2 @@
1
- import r from"react";import n from"classnames";import t from"./components/Table/styles.module.scss";import{B as p}from"./Button.js";import{Icon as _}from"./components/Icons/Icon.js";import f from"./components/Icons/ChevronUp.js";import w from"./components/Icons/ChevronDown.js";const E=({expanded:e,onClick:a,hideDetailsText:m,showDetailsText:l})=>{const o=n(t.table__cell,t["table__expander-cell-mobile"],{[t["table__expander-cell-mobile--expanded"]]:e});return r.createElement("td",{className:o},r.createElement(p,{"aria-expanded":e,variant:"borderless",onClick:a},r.createElement(_,{svgIcon:e?f:w})," ",e?m:l))},T=({rowKey:e,hideDetailsText:a,showDetailsText:m,expandable:l,expanded:o,onClick:s,className:c,children:b})=>{const i=n(t["table-row"],{[t["table__row--expandable"]]:l,[t["table__row--expanded"]]:o},c);return r.createElement("tr",{className:i,onClick:s,key:e},b,l&&r.createElement(E,{expanded:o,onClick:s,hideDetailsText:a,showDetailsText:m}))};export{T};
1
+ import l from"react";import n from"classnames";import t from"./components/Table/styles.module.scss";import{B as p}from"./Button.js";import{Icon as _}from"./components/Icons/Icon.js";import f from"./components/Icons/ChevronDown.js";import w from"./components/Icons/ChevronUp.js";const E=({expanded:e,onClick:o,hideDetailsText:m,showDetailsText:r})=>{const a=n(t.table__cell,t["table__expander-cell-mobile"],{[t["table__expander-cell-mobile--expanded"]]:e});return l.createElement("td",{className:a},l.createElement(p,{"aria-expanded":e,variant:"borderless",onClick:o},l.createElement(_,{svgIcon:e?w:f})," ",e?m:r))},C=E,T=({rowKey:e,hideDetailsText:o,showDetailsText:m,expandable:r,expanded:a,onClick:s,className:c,children:b})=>{const i=n(t["table-row"],{[t["table__row--expandable"]]:r,[t["table__row--expanded"]]:a},c);return l.createElement("tr",{className:i,onClick:s,key:e},b,r&&l.createElement(C,{expanded:a,onClick:s,hideDetailsText:o,showDetailsText:m}))},y=T;export{T,y as a};
2
2
  //# sourceMappingURL=TableRow.js.map
package/TableRow.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"TableRow.js","sources":["../src/components/Table/TableExpanderCell/TableExpanderCellMobile.tsx","../src/components/Table/TableRow/TableRow.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\n\nimport Button from '../../Button';\nimport Icon from '../../Icons';\nimport ChevronUp from '../../Icons/ChevronUp';\nimport ChevronDown from '../../Icons/ChevronDown';\nimport { Props } from '../TableRow/TableRow';\n\nimport tableStyles from '../styles.module.scss';\n\ntype TableExpanderCellMobile = Pick<Props, 'expanded' | 'onClick' | 'hideDetailsText' | 'showDetailsText'>;\n\nconst TableExpanderCellMobile: React.FC<TableExpanderCellMobile> = ({ expanded, onClick, hideDetailsText, showDetailsText }) => {\n const cellClass = classNames(tableStyles.table__cell, tableStyles['table__expander-cell-mobile'], {\n [tableStyles['table__expander-cell-mobile--expanded']]: expanded,\n });\n\n return (\n <td className={cellClass}>\n <Button aria-expanded={expanded} variant=\"borderless\" onClick={onClick}>\n <Icon svgIcon={expanded ? ChevronUp : ChevronDown} /> {expanded ? hideDetailsText : showDetailsText}\n </Button>\n </td>\n );\n};\n\nexport default TableExpanderCellMobile;\n","import React from 'react';\nimport classNames from 'classnames';\nimport tableStyles from '../styles.module.scss';\nimport TableExpanderCellMobile from '../TableExpanderCell/TableExpanderCellMobile';\n\nexport interface Props {\n /** Sets if expanded row can be expanded */\n expandable?: boolean;\n /** Sets if expanded row is expanded */\n expanded?: boolean;\n /** When hide/show button for expanded row is clicked. */\n onClick?: () => void;\n /** Text for expanded row hide button. */\n hideDetailsText?: string;\n /** Text for expanded row show button. */\n showDetailsText?: string;\n /** Key attribute for row */\n rowKey?: string;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the cells of the table row element. */\n children?: React.ReactNode;\n}\n\nexport const TableRow: React.FC<Props> = ({\n rowKey,\n hideDetailsText,\n showDetailsText,\n expandable,\n expanded,\n onClick,\n className,\n children,\n}) => {\n const tableRowClass = classNames(\n tableStyles['table-row'],\n {\n [tableStyles['table__row--expandable']]: expandable,\n [tableStyles['table__row--expanded']]: expanded,\n },\n className\n );\n\n return (\n <tr className={tableRowClass} onClick={onClick} key={rowKey}>\n {children}\n {expandable && (\n <TableExpanderCellMobile\n expanded={expanded}\n onClick={onClick}\n hideDetailsText={hideDetailsText}\n showDetailsText={showDetailsText}\n />\n )}\n </tr>\n );\n};\n\nexport default TableRow;\n"],"names":["TableExpanderCellMobile","expanded","onClick","hideDetailsText","showDetailsText","cellClass","classNames","tableStyles","React","Button","Icon","ChevronUp","ChevronDown","TableRow","rowKey","expandable","className","children","tableRowClass"],"mappings":"sRAaA,MAAMA,EAA6D,CAAC,CAAE,SAAAC,EAAU,QAAAC,EAAS,gBAAAC,EAAiB,gBAAAC,KAAsB,CAC9H,MAAMC,EAAYC,EAAWC,EAAY,YAAaA,EAAY,+BAAgC,CAChG,CAACA,EAAY,0CAA2CN,CAAA,CACzD,EAED,OACGO,EAAA,cAAA,KAAA,CAAG,UAAWH,CAAA,EACZG,EAAA,cAAAC,EAAA,CAAO,gBAAeR,EAAU,QAAQ,aAAa,QAAAC,CAAA,EACnDM,EAAA,cAAAE,EAAA,CAAK,QAAST,EAAWU,EAAYC,CAAa,CAAA,EAAE,IAAEX,EAAWE,EAAkBC,CACtF,CACF,CAEJ,ECDaS,EAA4B,CAAC,CACxC,OAAAC,EACA,gBAAAX,EACA,gBAAAC,EACA,WAAAW,EACA,SAAAd,EACA,QAAAC,EACA,UAAAc,EACA,SAAAC,CACF,IAAM,CACJ,MAAMC,EAAgBZ,EACpBC,EAAY,aACZ,CACE,CAACA,EAAY,2BAA4BQ,EACzC,CAACR,EAAY,yBAA0BN,CACzC,EACAe,CAAA,EAGF,OACGR,EAAA,cAAA,KAAA,CAAG,UAAWU,EAAe,QAAAhB,EAAkB,IAAKY,CAClD,EAAAG,EACAF,GACEP,EAAA,cAAAR,EAAA,CACC,SAAAC,EACA,QAAAC,EACA,gBAAAC,EACA,gBAAAC,CACF,CAAA,CAEJ,CAEJ"}
1
+ {"version":3,"file":"TableRow.js","sources":["../src/components/Table/TableExpanderCell/TableExpanderCellMobile.tsx","../src/components/Table/TableRow/TableRow.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport Button from '../../Button';\nimport Icon from '../../Icons';\nimport ChevronDown from '../../Icons/ChevronDown';\nimport ChevronUp from '../../Icons/ChevronUp';\nimport tableStyles from '../styles.module.scss';\nimport { Props } from '../TableRow/TableRow';\n\ntype TableExpanderCellMobileProps = Pick<Props, 'expanded' | 'onClick' | 'hideDetailsText' | 'showDetailsText'>;\n\nconst TableExpanderCellMobile: React.FC<TableExpanderCellMobileProps> = ({ expanded, onClick, hideDetailsText, showDetailsText }) => {\n const cellClass = classNames(tableStyles.table__cell, tableStyles['table__expander-cell-mobile'], {\n [tableStyles['table__expander-cell-mobile--expanded']]: expanded,\n });\n\n return (\n <td className={cellClass}>\n <Button aria-expanded={expanded} variant=\"borderless\" onClick={onClick}>\n <Icon svgIcon={expanded ? ChevronUp : ChevronDown} /> {expanded ? hideDetailsText : showDetailsText}\n </Button>\n </td>\n );\n};\n\nexport default TableExpanderCellMobile;\n","import React from 'react';\n\nimport classNames from 'classnames';\n\nimport tableStyles from '../styles.module.scss';\nimport TableExpanderCellMobile from '../TableExpanderCell/TableExpanderCellMobile';\n\nexport interface Props {\n /** Sets if expanded row can be expanded */\n expandable?: boolean;\n /** Sets if expanded row is expanded */\n expanded?: boolean;\n /** When hide/show button for expanded row is clicked. */\n onClick?: () => void;\n /** Text for expanded row hide button. */\n hideDetailsText?: string;\n /** Text for expanded row show button. */\n showDetailsText?: string;\n /** Key attribute for row */\n rowKey?: string;\n /** Adds custom classes to the element. */\n className?: string;\n /** Sets the cells of the table row element. */\n children?: React.ReactNode;\n}\n\nexport const TableRow: React.FC<Props> = ({\n rowKey,\n hideDetailsText,\n showDetailsText,\n expandable,\n expanded,\n onClick,\n className,\n children,\n}) => {\n const tableRowClass = classNames(\n tableStyles['table-row'],\n {\n [tableStyles['table__row--expandable']]: expandable,\n [tableStyles['table__row--expanded']]: expanded,\n },\n className\n );\n\n return (\n <tr className={tableRowClass} onClick={onClick} key={rowKey}>\n {children}\n {expandable && (\n <TableExpanderCellMobile\n expanded={expanded}\n onClick={onClick}\n hideDetailsText={hideDetailsText}\n showDetailsText={showDetailsText}\n />\n )}\n </tr>\n );\n};\n\nexport default TableRow;\n"],"names":["TableExpanderCellMobile","expanded","onClick","hideDetailsText","showDetailsText","cellClass","classNames","tableStyles","React","Button","Icon","ChevronUp","ChevronDown","TableExpanderCellMobile$1","TableRow","rowKey","expandable","className","children","tableRowClass","TableRow$1"],"mappings":"sRAaA,MAAMA,EAAkE,CAAC,CAAE,SAAAC,EAAU,QAAAC,EAAS,gBAAAC,EAAiB,gBAAAC,KAAsB,CACnI,MAAMC,EAAYC,EAAWC,EAAY,YAAaA,EAAY,6BAA6B,EAAG,CAChG,CAACA,EAAY,uCAAuC,CAAC,EAAGN,CAAA,CACzD,EAGC,OAAAO,EAAA,cAAC,MAAG,UAAWH,CAAA,kBACZI,EAAO,CAAA,gBAAeR,EAAU,QAAQ,aAAa,QAAAC,CAAA,kBACnDQ,EAAK,CAAA,QAAST,EAAWU,EAAYC,CAAa,CAAA,EAAE,IAAEX,EAAWE,EAAkBC,CACtF,CACF,CAEJ,EAEAS,EAAeb,ECDFc,EAA4B,CAAC,CACxC,OAAAC,EACA,gBAAAZ,EACA,gBAAAC,EACA,WAAAY,EACA,SAAAf,EACA,QAAAC,EACA,UAAAe,EACA,SAAAC,CACF,IAAM,CACJ,MAAMC,EAAgBb,EACpBC,EAAY,WAAW,EACvB,CACE,CAACA,EAAY,wBAAwB,CAAC,EAAGS,EACzC,CAACT,EAAY,sBAAsB,CAAC,EAAGN,CACzC,EACAgB,CAAA,EAIA,OAAAT,EAAA,cAAC,MAAG,UAAWW,EAAe,QAAAjB,EAAkB,IAAKa,CAAA,EAClDG,EACAF,GACCR,EAAA,cAACR,EAAA,CACC,SAAAC,EACA,QAAAC,EACA,gBAAAC,EACA,gBAAAC,CAAA,CAAA,CAGN,CAEJ,EAEAgB,EAAeN"}
package/Textarea.js CHANGED
@@ -1,2 +1,2 @@
1
- import r,{useState as A,useRef as Z,useEffect as ee}from"react";import d from"classnames";import t from"./components/Textarea/styles.module.scss";import{FormMode as x,AnalyticsId as te,AVERAGE_CHARACTER_WIDTH_PX as re}from"./constants.js";import{a as ae}from"./uuid.js";import{E as ne}from"./ErrorWrapper.js";import{M as oe}from"./MaxCharacters.js";const se=o=>{const p="2rem",n="16px",m="4px";return`calc(${o*re}px + ${p} + ${n} + ${m})`},xe=r.forwardRef((o,p)=>{const{maxCharacters:n,maxText:m,width:u,testId:M,defaultValue:f,marginBottom:k,transparent:B,mode:s,label:w,textareaId:b=ae(),minRows:E=3,maxRows:l=10,grow:g,errorText:C,afterLabelChildren:_,belowLabelChildren:v,autoFocus:L,disabled:$,name:F,autoComplete:S,placeholder:D,readOnly:V,required:q,onChange:R,...z}=o,[G,T]=A(E),[W,O]=A(f||""),c=Z(null),y=e=>{const i=e.rows;e.rows=E;const a=Math.floor((e.scrollHeight-16)/28);a===i&&(e.rows=a),a>=l&&(e.rows=l,e.scrollTop=e.scrollHeight),a<l?T(a):T(l)},H=s===x.ondark,P=s===x.onblueberry,X=!!n&&W.toString().length>n,I=s===x.oninvalid||!!C||X,j=d(t.textarea,{[t["textarea--gutterBottom"]]:k}),J=d(t["textarea__label-wrapper"],{[t["textarea__label-wrapper--on-dark"]]:H}),K=d(t["content-wrapper"],{[t["content-wrapper--transparent"]]:B,[t["content-wrapper--on-blueberry"]]:P,[t["content-wrapper--on-dark"]]:H,[t["content-wrapper--invalid"]]:I,[t["content-wrapper--disabled"]]:o.disabled}),Q=d(t["content-wrapper__input"],{[t["content-wrapper__input--disabled"]]:o.disabled});ee(()=>{var e,h,i;if(g&&((e=c.current)==null?void 0:e.children)&&((h=c.current)==null?void 0:h.children[0])){const a=(i=c.current)==null?void 0:i.children[0];y(a)}},[]);const U=e=>{g&&y(e.target),O(e.target.value)},Y=e=>{R&&R(e),U(e)},N=u?se(u):void 0;return r.createElement(ne,{errorText:C},r.createElement("div",{"data-testid":M,"data-analyticsid":te.Textarea,className:j},w&&r.createElement("div",{className:J},r.createElement("label",{htmlFor:b},w),_&&r.createElement("div",{className:t["textarea__after-label-children"]},_)),v&&r.createElement("div",null,v),r.createElement("div",{className:K,ref:c,style:{maxWidth:N}},r.createElement("textarea",{rows:G,defaultValue:f,id:b,className:Q,ref:p,"aria-invalid":!!I,autoFocus:L,disabled:$,name:F,autoComplete:S,placeholder:D,readOnly:V,required:q,onChange:Y,...z})),n&&r.createElement(oe,{maxCharacters:n,length:W.toString().length,maxText:m,mode:s,maxWidth:N})))});export{xe as T};
1
+ import a,{useState as A,useRef as ee,useEffect as te}from"react";import d from"classnames";import{FormMode as h,AnalyticsId as ae,AVERAGE_CHARACTER_WIDTH_PX as re}from"./constants.js";import{a as ne}from"./uuid.js";import{E as oe}from"./ErrorWrapper.js";import{M as se}from"./MaxCharacters.js";import t from"./components/Textarea/styles.module.scss";const le=o=>{const p="2rem",n="16px",m="4px";return`calc(${o*re}px + ${p} + ${n} + ${m})`},M=a.forwardRef((o,p)=>{const{maxCharacters:n,maxText:m,width:u,testId:$,defaultValue:f,marginBottom:k,transparent:B,mode:s,label:w,textareaId:b=ne(),minRows:E=3,maxRows:l=10,grow:g,errorText:C,afterLabelChildren:_,belowLabelChildren:T,autoFocus:L,disabled:F,name:S,autoComplete:D,placeholder:V,readOnly:q,required:z,onChange:v,...G}=o,[O,R]=A(E),[W,P]=A(f||""),c=ee(null),y=e=>{const i=e.rows;e.rows=E;const r=Math.floor((e.scrollHeight-16)/28);r===i&&(e.rows=r),r>=l&&(e.rows=l,e.scrollTop=e.scrollHeight),r<l?R(r):R(l)},H=s===h.ondark,X=s===h.onblueberry,j=!!n&&W.toString().length>n,N=s===h.oninvalid||!!C||j,J=d(t.textarea,{[t["textarea--gutterBottom"]]:k}),K=d(t["textarea__label-wrapper"],{[t["textarea__label-wrapper--on-dark"]]:H}),Q=d(t["content-wrapper"],{[t["content-wrapper--transparent"]]:B,[t["content-wrapper--on-blueberry"]]:X,[t["content-wrapper--on-dark"]]:H,[t["content-wrapper--invalid"]]:N,[t["content-wrapper--disabled"]]:o.disabled}),U=d(t["content-wrapper__input"],{[t["content-wrapper__input--disabled"]]:o.disabled});te(()=>{var e,x,i;if(g&&((e=c.current)!=null&&e.children)&&((x=c.current)!=null&&x.children[0])){const r=(i=c.current)==null?void 0:i.children[0];y(r)}},[]);const Y=e=>{g&&y(e.target),P(e.target.value)},Z=e=>{v&&v(e),Y(e)},I=u?le(u):void 0;return a.createElement(oe,{errorText:C},a.createElement("div",{"data-testid":$,"data-analyticsid":ae.Textarea,className:J},w&&a.createElement("div",{className:K},a.createElement("label",{htmlFor:b},w),_&&a.createElement("div",{className:t["textarea__after-label-children"]},_)),T&&a.createElement("div",null,T),a.createElement("div",{className:Q,ref:c,style:{maxWidth:I}},a.createElement("textarea",{rows:O,defaultValue:f,id:b,className:U,ref:p,"aria-invalid":!!N,autoFocus:L,disabled:F,name:S,autoComplete:D,placeholder:V,readOnly:q,required:z,onChange:Z,...G})),n&&a.createElement(se,{maxCharacters:n,length:W.toString().length,maxText:m,mode:s,maxWidth:I})))});M.displayName="Textarea";const ue=M;export{ue as T};
2
2
  //# sourceMappingURL=Textarea.js.map