@digigov/ui 2.0.0-8e254888 → 2.0.0-a32ad9b2

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 (486) hide show
  1. package/app/Footer/Footer.stories/index.js +49 -1
  2. package/app/Footer/Footer.stories.d.ts +43 -1
  3. package/app/Footer/Footer.stories.js.map +3 -3
  4. package/app/Footer/FooterLink/index.js +17 -0
  5. package/app/Footer/FooterLink/package.json +6 -0
  6. package/app/Footer/FooterLink.d.ts +7 -0
  7. package/app/Footer/FooterLink.js.map +7 -0
  8. package/app/Footer/index.d.ts +1 -1
  9. package/app/Footer/index.js +1 -1
  10. package/app/Footer/index.js.map +1 -1
  11. package/app/Header/Header.stories/index.js +53 -1
  12. package/app/Header/Header.stories.d.ts +50 -1
  13. package/app/Header/Header.stories.js.map +3 -3
  14. package/app/Header/HeaderLogo/index.js +12 -2
  15. package/app/Header/HeaderLogo.d.ts +6 -2
  16. package/app/Header/HeaderLogo.js.map +3 -3
  17. package/app/Header/HeaderSecondaryLogo/index.js +9 -1
  18. package/app/Header/HeaderSecondaryLogo.d.ts +6 -2
  19. package/app/Header/HeaderSecondaryLogo.js.map +3 -3
  20. package/app/Header/HeaderTitle/index.js +10 -2
  21. package/app/Header/HeaderTitle.d.ts +6 -2
  22. package/app/Header/HeaderTitle.js.map +3 -3
  23. package/app/Modal/hooks/index.js +2 -6
  24. package/app/Modal/hooks.d.ts +2 -2
  25. package/app/Modal/hooks.js.map +2 -2
  26. package/app/Modal/index.web/index.js +5 -5
  27. package/app/Modal/index.web.js.map +2 -2
  28. package/app/OutdatedBrowserBanner/index.d.ts +1 -0
  29. package/app/OutdatedBrowserBanner/index.js.map +2 -2
  30. package/app/PhaseBannerHeader/index.d.ts +1 -1
  31. package/app/PhaseBannerHeader/index.js.map +2 -2
  32. package/app/QrCodeScanner/index.js.map +2 -2
  33. package/app/Skeleton/Skeleton.stories/index.js +28 -0
  34. package/app/Skeleton/Skeleton.stories.d.ts +56 -0
  35. package/app/Skeleton/Skeleton.stories.js.map +2 -2
  36. package/cjs/app/Footer/Footer.stories/index.js +37 -2
  37. package/cjs/app/Footer/Footer.stories.js.map +4 -4
  38. package/cjs/app/Footer/FooterLink/index.js +50 -0
  39. package/cjs/app/Footer/FooterLink.js.map +7 -0
  40. package/cjs/app/Footer/index.js +3 -3
  41. package/cjs/app/Footer/index.js.map +2 -2
  42. package/cjs/app/Header/Header.stories/index.js +51 -2
  43. package/cjs/app/Header/Header.stories.js.map +4 -4
  44. package/cjs/app/Header/HeaderLogo/index.js +13 -4
  45. package/cjs/app/Header/HeaderLogo.js.map +3 -3
  46. package/cjs/app/Header/HeaderSecondaryLogo/index.js +12 -4
  47. package/cjs/app/Header/HeaderSecondaryLogo.js.map +3 -3
  48. package/cjs/app/Header/HeaderTitle/index.js +11 -4
  49. package/cjs/app/Header/HeaderTitle.js.map +3 -3
  50. package/cjs/app/Modal/hooks/index.js +2 -6
  51. package/cjs/app/Modal/hooks.js.map +2 -2
  52. package/cjs/app/Modal/index.web/index.js +5 -5
  53. package/cjs/app/Modal/index.web.js.map +2 -2
  54. package/cjs/app/OutdatedBrowserBanner/index.js.map +2 -2
  55. package/cjs/app/PhaseBannerHeader/index.js.map +2 -2
  56. package/cjs/app/QrCodeScanner/index.js.map +2 -2
  57. package/cjs/app/Skeleton/Skeleton.stories/index.js +30 -1
  58. package/cjs/app/Skeleton/Skeleton.stories.js.map +2 -2
  59. package/cjs/content/Accordion/Accordion.stories/index.js +54 -2
  60. package/cjs/content/Accordion/Accordion.stories.js.map +4 -4
  61. package/cjs/content/Accordion/hooks.js.map +1 -1
  62. package/cjs/content/Blockquote/Blockquote.stories/index.js +20 -1
  63. package/cjs/content/Blockquote/Blockquote.stories.js.map +2 -2
  64. package/cjs/content/Card/Card.stories/index.js +78 -2
  65. package/cjs/content/Card/Card.stories.js.map +4 -4
  66. package/cjs/content/Chip/Chip.stories/index.js +24 -1
  67. package/cjs/content/Chip/Chip.stories.js.map +2 -2
  68. package/cjs/content/List/List.stories/index.js +40 -2
  69. package/cjs/content/List/List.stories.js.map +4 -4
  70. package/cjs/content/Table/Table.stories/index.js +157 -2
  71. package/cjs/content/Table/Table.stories.js.map +4 -4
  72. package/cjs/feedback/CopyToClipboard/CopyToClipboard.stories/index.js +61 -3
  73. package/cjs/feedback/CopyToClipboard/CopyToClipboard.stories.js.map +4 -4
  74. package/cjs/feedback/ErrorSummary/ErrorSummary.stories/index.js +42 -3
  75. package/cjs/feedback/ErrorSummary/ErrorSummary.stories.js.map +4 -4
  76. package/cjs/feedback/NotificationBanner/NotificationBanner.stories/index.js +36 -1
  77. package/cjs/feedback/NotificationBanner/NotificationBanner.stories.js.map +2 -2
  78. package/cjs/feedback/PhaseBanner/PhaseBanner.stories/index.js +27 -3
  79. package/cjs/feedback/PhaseBanner/PhaseBanner.stories.js.map +4 -4
  80. package/cjs/feedback/WarningText/WarningText.stories/index.js +24 -1
  81. package/cjs/feedback/WarningText/WarningText.stories.js.map +2 -2
  82. package/cjs/form/AutoComplete/AutoComplete.stories/index.js +75 -0
  83. package/cjs/form/AutoComplete/AutoComplete.stories.js.map +4 -4
  84. package/cjs/form/AutoComplete/Status/index.js.map +2 -2
  85. package/cjs/form/AutoComplete/index.js.map +2 -2
  86. package/cjs/form/Button/Button.stories/index.js +44 -13
  87. package/cjs/form/Button/Button.stories.js.map +3 -3
  88. package/cjs/form/Button/ButtonLink/index.js +13 -4
  89. package/cjs/form/Button/ButtonLink.js.map +3 -3
  90. package/cjs/form/Button/CallToAction/index.js +11 -4
  91. package/cjs/form/Button/CallToAction.js.map +3 -3
  92. package/cjs/form/Button/__stories__/Primary/index.js +18 -1
  93. package/cjs/form/Button/__stories__/Primary.js.map +2 -2
  94. package/cjs/form/Checkbox/Checkbox.stories/index.js +113 -2
  95. package/cjs/form/Checkbox/Checkbox.stories.js.map +4 -4
  96. package/cjs/form/DateInputContainer/DateInputContainer.stories/index.js +77 -2
  97. package/cjs/form/DateInputContainer/DateInputContainer.stories.js.map +4 -4
  98. package/cjs/form/ErrorMessage/ErrorMessage.stories/index.js +26 -1
  99. package/cjs/form/ErrorMessage/ErrorMessage.stories.js.map +4 -4
  100. package/cjs/form/RadioContainer/RadioContainer.stories/index.js +115 -2
  101. package/cjs/form/RadioContainer/RadioContainer.stories.js.map +4 -4
  102. package/cjs/form/SelectContainer/SelectContainer.stories/index.js +79 -2
  103. package/cjs/form/SelectContainer/SelectContainer.stories.js.map +4 -4
  104. package/cjs/form/SingleCharacterInputs/SingleCharacterInput.stories/index.js +93 -2
  105. package/cjs/form/SingleCharacterInputs/SingleCharacterInput.stories.js.map +4 -4
  106. package/cjs/form/TextArea/TextArea.stories/index.js +88 -2
  107. package/cjs/form/TextArea/TextArea.stories.js.map +4 -4
  108. package/cjs/form/TextInput/TextInput.stories/index.js +94 -0
  109. package/cjs/form/TextInput/TextInput.stories.js.map +4 -4
  110. package/cjs/govgr/GovGRLogo/index.js +14 -4
  111. package/cjs/govgr/GovGRLogo/index.js.map +3 -3
  112. package/cjs/layouts/Stack/__stories__/AlignItems/index.js +2 -2
  113. package/cjs/layouts/Stack/__stories__/AlignItems.js.map +3 -3
  114. package/cjs/layouts/Stack/__stories__/Default/index.js +2 -2
  115. package/cjs/layouts/Stack/__stories__/Default.js.map +3 -3
  116. package/cjs/layouts/Stack/__stories__/JustifyContent/index.js +2 -2
  117. package/cjs/layouts/Stack/__stories__/JustifyContent.js.map +3 -3
  118. package/cjs/layouts/Stack/__stories__/NoWrap/index.js +2 -2
  119. package/cjs/layouts/Stack/__stories__/NoWrap.js.map +3 -3
  120. package/cjs/layouts/Stack/__stories__/Row/index.js +2 -2
  121. package/cjs/layouts/Stack/__stories__/Row.js.map +3 -3
  122. package/cjs/layouts/Stack/__stories__/Spacing/index.js +2 -2
  123. package/cjs/layouts/Stack/__stories__/Spacing.js.map +3 -3
  124. package/cjs/layouts/Stack/index.js +6 -0
  125. package/cjs/layouts/Stack/index.js.map +2 -2
  126. package/cjs/lazy/index.js +13 -2
  127. package/cjs/lazy.js.map +2 -2
  128. package/cjs/navigation/BackLink/index.js +13 -4
  129. package/cjs/navigation/BackLink/index.js.map +3 -3
  130. package/cjs/navigation/Breadcrumbs/BreadcrumbsListItemLink/index.js +48 -0
  131. package/cjs/navigation/Breadcrumbs/BreadcrumbsListItemLink.js.map +7 -0
  132. package/cjs/navigation/Breadcrumbs/index.js +2 -2
  133. package/cjs/navigation/Breadcrumbs/index.js.map +2 -2
  134. package/cjs/navigation/Drawer/hooks/index.js +2 -6
  135. package/cjs/navigation/Drawer/hooks.js.map +2 -2
  136. package/cjs/navigation/Link/index.js +6 -2
  137. package/cjs/navigation/Link/index.js.map +2 -2
  138. package/cjs/navigation/NavList/NavListAuto/index.js +7 -13
  139. package/cjs/navigation/NavList/NavListAuto/index.js.map +3 -3
  140. package/cjs/navigation/NavList/NavListItemAction/index.js +66 -0
  141. package/cjs/navigation/NavList/NavListItemAction.js.map +7 -0
  142. package/cjs/navigation/NavList/NavListItemLink/index.js +48 -0
  143. package/cjs/navigation/NavList/NavListItemLink.js.map +7 -0
  144. package/cjs/navigation/NavList/index.js +4 -4
  145. package/cjs/navigation/NavList/index.js.map +2 -2
  146. package/cjs/navigation/Pagination/hooks/index.js +2 -2
  147. package/cjs/navigation/Pagination/hooks.js.map +2 -2
  148. package/cjs/navigation/Tabs/__stories__/Default/index.js +1 -2
  149. package/cjs/navigation/Tabs/__stories__/Default.js.map +2 -2
  150. package/cjs/navigation/Tabs/__stories__/UsingAccordion/index.js +7 -8
  151. package/cjs/navigation/Tabs/__stories__/UsingAccordion.js.map +2 -2
  152. package/cjs/navigation/Tabs/hooks.js.map +1 -1
  153. package/cjs/registry/index.js +99 -91
  154. package/cjs/registry.js.map +2 -2
  155. package/cjs/typography/CodeBlock/index.js +1 -2
  156. package/cjs/typography/CodeBlock/index.js.map +2 -2
  157. package/cjs/utils/hooks/useDebounce/index.js +1 -1
  158. package/cjs/utils/hooks/useDebounce.js.map +2 -2
  159. package/content/Accordion/Accordion.stories/index.js +58 -1
  160. package/content/Accordion/Accordion.stories.d.ts +79 -1
  161. package/content/Accordion/Accordion.stories.js.map +3 -3
  162. package/content/Accordion/hooks.js.map +1 -1
  163. package/content/Blockquote/Blockquote.stories/index.js +18 -0
  164. package/content/Blockquote/Blockquote.stories.d.ts +27 -0
  165. package/content/Blockquote/Blockquote.stories.js.map +2 -2
  166. package/content/Card/Card.stories/index.js +81 -1
  167. package/content/Card/Card.stories.d.ts +126 -1
  168. package/content/Card/Card.stories.js.map +3 -3
  169. package/content/Chip/Chip.stories/index.js +22 -0
  170. package/content/Chip/Chip.stories.d.ts +36 -0
  171. package/content/Chip/Chip.stories.js.map +2 -2
  172. package/content/List/List.stories/index.js +38 -1
  173. package/content/List/List.stories.d.ts +51 -1
  174. package/content/List/List.stories.js.map +3 -3
  175. package/content/Table/Table.stories/index.js +164 -1
  176. package/content/Table/Table.stories.d.ts +124 -1
  177. package/content/Table/Table.stories.js.map +3 -3
  178. package/feedback/CopyToClipboard/CopyToClipboard.stories/index.js +58 -1
  179. package/feedback/CopyToClipboard/CopyToClipboard.stories.d.ts +81 -1
  180. package/feedback/CopyToClipboard/CopyToClipboard.stories.js.map +3 -3
  181. package/feedback/ErrorSummary/ErrorSummary.stories/index.js +39 -1
  182. package/feedback/ErrorSummary/ErrorSummary.stories.d.ts +42 -1
  183. package/feedback/ErrorSummary/ErrorSummary.stories.js.map +3 -3
  184. package/feedback/NotificationBanner/NotificationBanner.stories/index.js +34 -0
  185. package/feedback/NotificationBanner/NotificationBanner.stories.d.ts +60 -0
  186. package/feedback/NotificationBanner/NotificationBanner.stories.js.map +2 -2
  187. package/feedback/PhaseBanner/PhaseBanner.stories/index.js +28 -1
  188. package/feedback/PhaseBanner/PhaseBanner.stories.d.ts +30 -1
  189. package/feedback/PhaseBanner/PhaseBanner.stories.js.map +3 -3
  190. package/feedback/WarningText/WarningText.stories/index.js +22 -0
  191. package/feedback/WarningText/WarningText.stories.d.ts +36 -0
  192. package/feedback/WarningText/WarningText.stories.js.map +2 -2
  193. package/form/AutoComplete/AutoComplete.stories/index.js +74 -0
  194. package/form/AutoComplete/AutoComplete.stories.d.ts +82 -0
  195. package/form/AutoComplete/AutoComplete.stories.js.map +3 -3
  196. package/form/AutoComplete/Status/index.d.ts +1 -1
  197. package/form/AutoComplete/Status/index.js.map +2 -2
  198. package/form/AutoComplete/index.d.ts +1 -1
  199. package/form/AutoComplete/index.js.map +2 -2
  200. package/form/Button/Button.stories/index.js +43 -3
  201. package/form/Button/Button.stories.d.ts +59 -2
  202. package/form/Button/Button.stories.js.map +2 -2
  203. package/form/Button/ButtonLink/index.js +12 -2
  204. package/form/Button/ButtonLink.d.ts +6 -2
  205. package/form/Button/ButtonLink.js.map +3 -3
  206. package/form/Button/CallToAction/index.js +10 -2
  207. package/form/Button/CallToAction.d.ts +6 -2
  208. package/form/Button/CallToAction.js.map +3 -3
  209. package/form/Button/__stories__/Primary/index.js +18 -1
  210. package/form/Button/__stories__/Primary.d.ts +8 -1
  211. package/form/Button/__stories__/Primary.js.map +2 -2
  212. package/form/Checkbox/Checkbox.stories/index.js +115 -1
  213. package/form/Checkbox/Checkbox.stories.d.ts +166 -1
  214. package/form/Checkbox/Checkbox.stories.js.map +3 -3
  215. package/form/DateInputContainer/DateInputContainer.stories/index.js +82 -1
  216. package/form/DateInputContainer/DateInputContainer.stories.d.ts +141 -1
  217. package/form/DateInputContainer/DateInputContainer.stories.js.map +3 -3
  218. package/form/ErrorMessage/ErrorMessage.stories/index.js +24 -0
  219. package/form/ErrorMessage/ErrorMessage.stories.d.ts +33 -0
  220. package/form/ErrorMessage/ErrorMessage.stories.js.map +3 -3
  221. package/form/RadioContainer/RadioContainer.stories/index.js +117 -1
  222. package/form/RadioContainer/RadioContainer.stories.d.ts +174 -1
  223. package/form/RadioContainer/RadioContainer.stories.js.map +3 -3
  224. package/form/SelectContainer/SelectContainer.stories/index.js +80 -1
  225. package/form/SelectContainer/SelectContainer.stories.d.ts +135 -1
  226. package/form/SelectContainer/SelectContainer.stories.js.map +3 -3
  227. package/form/SingleCharacterInputs/SingleCharacterInput.stories/index.js +98 -1
  228. package/form/SingleCharacterInputs/SingleCharacterInput.stories.d.ts +108 -1
  229. package/form/SingleCharacterInputs/SingleCharacterInput.stories.js.map +3 -3
  230. package/form/TextArea/TextArea.stories/index.js +86 -1
  231. package/form/TextArea/TextArea.stories.d.ts +117 -1
  232. package/form/TextArea/TextArea.stories.js.map +3 -3
  233. package/form/TextInput/TextInput.stories/index.js +93 -0
  234. package/form/TextInput/TextInput.stories.d.ts +118 -0
  235. package/form/TextInput/TextInput.stories.js.map +3 -3
  236. package/govgr/GovGRLogo/index.d.ts +6 -2
  237. package/govgr/GovGRLogo/index.js +11 -1
  238. package/govgr/GovGRLogo/index.js.map +3 -3
  239. package/index.js +1 -1
  240. package/layouts/Stack/__stories__/AlignItems/index.js +1 -1
  241. package/layouts/Stack/__stories__/AlignItems.js.map +2 -2
  242. package/layouts/Stack/__stories__/Default/index.js +1 -1
  243. package/layouts/Stack/__stories__/Default.js.map +2 -2
  244. package/layouts/Stack/__stories__/JustifyContent/index.js +1 -1
  245. package/layouts/Stack/__stories__/JustifyContent.js.map +2 -2
  246. package/layouts/Stack/__stories__/NoWrap/index.js +1 -1
  247. package/layouts/Stack/__stories__/NoWrap.js.map +2 -2
  248. package/layouts/Stack/__stories__/Row/index.js +1 -1
  249. package/layouts/Stack/__stories__/Row.js.map +2 -2
  250. package/layouts/Stack/__stories__/Spacing/index.js +1 -1
  251. package/layouts/Stack/__stories__/Spacing.js.map +2 -2
  252. package/layouts/Stack/index.d.ts +1 -0
  253. package/layouts/Stack/index.js +1 -0
  254. package/layouts/Stack/index.js.map +2 -2
  255. package/lazy/index.js +13 -2
  256. package/navigation/BackLink/index.d.ts +6 -2
  257. package/navigation/BackLink/index.js +12 -2
  258. package/navigation/BackLink/index.js.map +3 -3
  259. package/navigation/Breadcrumbs/BreadcrumbsListItemLink/index.js +15 -0
  260. package/navigation/Breadcrumbs/BreadcrumbsListItemLink/package.json +6 -0
  261. package/navigation/Breadcrumbs/BreadcrumbsListItemLink.d.ts +7 -0
  262. package/navigation/Breadcrumbs/BreadcrumbsListItemLink.js.map +7 -0
  263. package/navigation/Breadcrumbs/index.d.ts +1 -1
  264. package/navigation/Breadcrumbs/index.js +1 -1
  265. package/navigation/Breadcrumbs/index.js.map +1 -1
  266. package/navigation/Drawer/hooks/index.js +2 -6
  267. package/navigation/Drawer/hooks.js.map +2 -2
  268. package/navigation/Link/index.js +6 -2
  269. package/navigation/Link/index.js.map +2 -2
  270. package/navigation/NavList/NavListAuto/index.js +10 -8
  271. package/navigation/NavList/NavListAuto/index.js.map +2 -2
  272. package/navigation/NavList/NavListItemAction/index.js +37 -0
  273. package/navigation/NavList/NavListItemAction/package.json +6 -0
  274. package/navigation/NavList/NavListItemAction.d.ts +27 -0
  275. package/navigation/NavList/NavListItemAction.js.map +7 -0
  276. package/navigation/NavList/NavListItemLink/index.js +15 -0
  277. package/navigation/NavList/NavListItemLink/package.json +6 -0
  278. package/navigation/NavList/NavListItemLink.d.ts +7 -0
  279. package/navigation/NavList/NavListItemLink.js.map +7 -0
  280. package/navigation/NavList/index.d.ts +2 -2
  281. package/navigation/NavList/index.js +2 -2
  282. package/navigation/NavList/index.js.map +2 -2
  283. package/navigation/Pagination/hooks/index.js +2 -2
  284. package/navigation/Pagination/hooks.js.map +2 -2
  285. package/navigation/Tabs/__stories__/Default/index.js +1 -2
  286. package/navigation/Tabs/__stories__/Default.js.map +2 -2
  287. package/navigation/Tabs/__stories__/UsingAccordion/index.js +7 -8
  288. package/navigation/Tabs/__stories__/UsingAccordion.js.map +2 -2
  289. package/navigation/Tabs/hooks.d.ts +1 -1
  290. package/navigation/Tabs/hooks.js.map +1 -1
  291. package/package.json +7 -7
  292. package/registry/index.js +99 -91
  293. package/src/app/BannerContainer/index.test.tsx +4 -0
  294. package/src/app/Footer/Footer.stories.jsx +179 -0
  295. package/src/app/Footer/FooterLink.tsx +20 -0
  296. package/src/app/Footer/index.test.tsx +4 -0
  297. package/src/app/Footer/index.tsx +1 -1
  298. package/src/app/Footer/interaction.test.tsx +4 -0
  299. package/src/app/Header/Header.stories.jsx +102 -0
  300. package/src/app/Header/HeaderLogo.tsx +18 -2
  301. package/src/app/Header/HeaderSecondaryLogo.tsx +20 -2
  302. package/src/app/Header/HeaderTitle.tsx +20 -2
  303. package/src/app/Header/index.test.tsx +4 -0
  304. package/src/app/Header/interaction.test.tsx +8 -0
  305. package/src/app/Loader/index.test.tsx +4 -0
  306. package/src/app/Masthead/index.test.tsx +4 -0
  307. package/src/app/Masthead/interaction.test.tsx +4 -0
  308. package/src/app/Modal/hooks.ts +8 -8
  309. package/src/app/Modal/index.test.tsx +4 -0
  310. package/src/app/Modal/index.web.tsx +5 -7
  311. package/src/app/Modal/interaction.test.tsx +12 -0
  312. package/src/app/NotFound/index.test.tsx +4 -0
  313. package/src/app/OutdatedBrowserBanner/index.tsx +1 -1
  314. package/src/app/Panel/index.test.tsx +4 -0
  315. package/src/app/PhaseBannerHeader/index.test.tsx +4 -0
  316. package/src/app/PhaseBannerHeader/index.tsx +1 -1
  317. package/src/app/QrCodeScanner/index.tsx +0 -1
  318. package/src/app/QrCodeViewer/index.test.tsx +4 -0
  319. package/src/app/Skeleton/Skeleton.stories.js +30 -0
  320. package/src/app/Skeleton/index.test.tsx +4 -0
  321. package/src/content/Accordion/Accordion.stories.jsx +86 -0
  322. package/src/content/Accordion/hooks.ts +1 -1
  323. package/src/content/Accordion/index.test.tsx +4 -0
  324. package/src/content/Accordion/interaction.test.tsx +4 -0
  325. package/src/content/Blockquote/Blockquote.stories.js +20 -0
  326. package/src/content/Blockquote/index.test.tsx +4 -0
  327. package/src/content/Card/Card.stories.jsx +118 -0
  328. package/src/content/Card/index.test.tsx +4 -0
  329. package/src/content/Card/interaction.test.tsx +4 -0
  330. package/src/content/Chip/Chip.stories.js +22 -0
  331. package/src/content/Chip/index.test.tsx +4 -0
  332. package/src/content/Details/index.test.tsx +4 -0
  333. package/src/content/Details/interaction.test.tsx +4 -0
  334. package/src/content/List/List.stories.jsx +60 -0
  335. package/src/content/List/__snapshots__/index.spec.tsx.snap +13 -3
  336. package/src/content/List/index.test.tsx +4 -0
  337. package/src/content/Markdown/index.test.tsx +4 -0
  338. package/src/content/SafeHTML/index.test.tsx +4 -0
  339. package/src/content/StepNav/index.test.tsx +4 -0
  340. package/src/content/StepNav/interaction.test.tsx +4 -0
  341. package/src/content/SummaryList/index.test.tsx +4 -0
  342. package/src/content/SummaryList/interaction.test.tsx +4 -0
  343. package/src/content/Table/Table.stories.jsx +216 -0
  344. package/src/content/Table/index.test.tsx +4 -0
  345. package/src/content/Table/interaction.test.tsx +8 -0
  346. package/src/content/TaskList/index.test.tsx +4 -0
  347. package/src/content/Timeline/index.test.tsx +4 -0
  348. package/src/doc.mdx +49 -0
  349. package/src/feedback/CopyToClipboard/CopyToClipboard.stories.jsx +70 -0
  350. package/src/feedback/CopyToClipboard/doc.mdx +4 -2
  351. package/src/feedback/CopyToClipboard/index.test.tsx +4 -0
  352. package/src/feedback/CopyToClipboard/interaction.test.tsx +12 -0
  353. package/src/feedback/ErrorSummary/ErrorSummary.stories.jsx +67 -0
  354. package/src/feedback/ErrorSummary/__snapshots__/index.spec.tsx.snap +13 -3
  355. package/src/feedback/ErrorSummary/index.test.tsx +4 -0
  356. package/src/feedback/ErrorSummary/interaction.test.tsx +4 -0
  357. package/src/feedback/NotificationBanner/NotificationBanner.stories.js +36 -0
  358. package/src/feedback/NotificationBanner/__snapshots__/index.spec.tsx.snap +24 -14
  359. package/src/feedback/NotificationBanner/index.test.tsx +4 -0
  360. package/src/feedback/NotificationBanner/interaction.test.tsx +8 -0
  361. package/src/feedback/PhaseBanner/PhaseBanner.stories.jsx +47 -0
  362. package/src/feedback/PhaseBanner/index.test.tsx +4 -0
  363. package/src/feedback/PhaseBanner/interaction.test.tsx +4 -0
  364. package/src/feedback/WarningText/WarningText.stories.js +24 -0
  365. package/src/feedback/WarningText/__snapshots__/index.spec.tsx.snap +13 -3
  366. package/src/feedback/WarningText/index.test.tsx +4 -0
  367. package/src/form/AutoComplete/AutoComplete.stories.jsx +91 -0
  368. package/src/form/AutoComplete/Status/index.tsx +1 -1
  369. package/src/form/AutoComplete/index.test.tsx +4 -0
  370. package/src/form/AutoComplete/index.tsx +1 -1
  371. package/src/form/AutoComplete/interaction.test.tsx +4 -0
  372. package/src/form/Button/Button.stories.js +42 -2
  373. package/src/form/Button/ButtonLink.tsx +18 -2
  374. package/src/form/Button/CallToAction.tsx +20 -2
  375. package/src/form/Button/__stories__/Primary.tsx +24 -2
  376. package/src/form/Button/index.test.tsx +4 -0
  377. package/src/form/Button/interaction.test.tsx +20 -0
  378. package/src/form/Checkbox/Checkbox.stories.jsx +150 -0
  379. package/src/form/Checkbox/index.test.tsx +4 -0
  380. package/src/form/Checkbox/interaction.test.tsx +8 -0
  381. package/src/form/DateInputContainer/DateInputContainer.stories.jsx +115 -0
  382. package/src/form/DateInputContainer/index.test.tsx +4 -0
  383. package/src/form/DateInputContainer/interaction.test.tsx +8 -0
  384. package/src/form/ErrorMessage/ErrorMessage.stories.jsx +42 -0
  385. package/src/form/ErrorMessage/index.test.tsx +4 -0
  386. package/src/form/FileUpload/index.test.tsx +4 -0
  387. package/src/form/RadioContainer/RadioContainer.stories.jsx +157 -0
  388. package/src/form/RadioContainer/index.test.tsx +4 -0
  389. package/src/form/RadioContainer/interaction.test.tsx +8 -0
  390. package/src/form/SearchContainer/index.test.tsx +4 -0
  391. package/src/form/SelectContainer/SelectContainer.stories.jsx +107 -0
  392. package/src/form/SelectContainer/index.test.tsx +4 -0
  393. package/src/form/SelectContainer/interaction.test.tsx +4 -0
  394. package/src/form/SingleCharacterInputs/SingleCharacterInput.stories.jsx +130 -0
  395. package/src/form/SingleCharacterInputs/index.test.tsx +4 -0
  396. package/src/form/TextArea/TextArea.stories.jsx +117 -0
  397. package/src/form/TextArea/index.test.tsx +4 -0
  398. package/src/form/TextArea/interaction.test.tsx +12 -0
  399. package/src/form/TextInput/TextInput.stories.jsx +125 -0
  400. package/src/form/TextInput/index.test.tsx +4 -0
  401. package/src/form/TextInput/interaction.test.tsx +8 -0
  402. package/src/govgr/GovGRLogo/index.tsx +17 -2
  403. package/src/layouts/Basic/__snapshots__/index.spec.tsx.snap +3 -3
  404. package/src/layouts/Basic/index.test.tsx +4 -0
  405. package/src/layouts/Grid/index.test.tsx +4 -0
  406. package/src/layouts/Screen/index.test.tsx +4 -0
  407. package/src/layouts/Stack/__stories__/AlignItems.tsx +1 -1
  408. package/src/layouts/Stack/__stories__/Default.tsx +1 -1
  409. package/src/layouts/Stack/__stories__/JustifyContent.tsx +1 -1
  410. package/src/layouts/Stack/__stories__/NoWrap.tsx +1 -1
  411. package/src/layouts/Stack/__stories__/Row.tsx +1 -1
  412. package/src/layouts/Stack/__stories__/Spacing.tsx +1 -1
  413. package/src/layouts/Stack/index.test.tsx +4 -0
  414. package/src/layouts/Stack/index.tsx +1 -0
  415. package/src/lazy.js +13 -2
  416. package/src/navigation/BackLink/doc.mdx +1 -1
  417. package/src/navigation/BackLink/index.test.tsx +4 -0
  418. package/src/navigation/BackLink/index.tsx +19 -2
  419. package/src/navigation/BackLink/interaction.test.tsx +4 -0
  420. package/src/navigation/BackToTopLink/index.test.tsx +4 -0
  421. package/src/navigation/Breadcrumbs/BreadcrumbsListItemLink.tsx +22 -0
  422. package/src/navigation/Breadcrumbs/index.test.tsx +4 -0
  423. package/src/navigation/Breadcrumbs/index.tsx +1 -1
  424. package/src/navigation/Breadcrumbs/interaction.test.tsx +12 -0
  425. package/src/navigation/Drawer/hooks.ts +6 -6
  426. package/src/navigation/Drawer/index.test.tsx +4 -0
  427. package/src/navigation/Dropdown/doc.mdx +13 -7
  428. package/src/navigation/Dropdown/index.test.tsx +4 -0
  429. package/src/navigation/Dropdown/interaction.test.tsx +20 -0
  430. package/src/navigation/Link/index.test.tsx +4 -0
  431. package/src/navigation/Link/index.tsx +10 -5
  432. package/src/navigation/Link/interaction.test.tsx +12 -0
  433. package/src/navigation/NavList/NavListAuto/index.tsx +10 -8
  434. package/src/navigation/NavList/NavListItemAction.tsx +69 -0
  435. package/src/navigation/NavList/NavListItemLink.tsx +22 -0
  436. package/src/navigation/NavList/__snapshots__/index.spec.tsx.snap +13 -3
  437. package/src/navigation/NavList/doc.mdx +17 -15
  438. package/src/navigation/NavList/index.test.tsx +4 -0
  439. package/src/navigation/NavList/index.tsx +3 -2
  440. package/src/navigation/NavList/interaction.test.tsx +12 -0
  441. package/src/navigation/Pagination/doc.mdx +13 -8
  442. package/src/navigation/Pagination/hooks.ts +2 -2
  443. package/src/navigation/Pagination/index.test.tsx +4 -0
  444. package/src/navigation/Pagination/interaction.test.tsx +4 -0
  445. package/src/navigation/SkipLink/index.test.tsx +4 -0
  446. package/src/navigation/Tabs/__stories__/Default.tsx +109 -39
  447. package/src/navigation/Tabs/__stories__/UsingAccordion.tsx +121 -31
  448. package/src/navigation/Tabs/hooks.ts +2 -2
  449. package/src/navigation/Tabs/index.test.tsx +4 -0
  450. package/src/navigation/Tabs/interaction.test.tsx +6 -0
  451. package/src/registry.js +99 -91
  452. package/src/typography/CodeBlock/doc.mdx +1 -1
  453. package/src/typography/CodeBlock/index.test.tsx +4 -0
  454. package/src/typography/CodeBlock/index.tsx +14 -12
  455. package/src/typography/Heading/index.test.tsx +4 -0
  456. package/src/typography/HeadingCaption/index.test.tsx +4 -0
  457. package/src/typography/Hint/index.test.tsx +4 -0
  458. package/src/typography/NormalText/index.test.tsx +4 -0
  459. package/src/typography/Paragraph/index.test.tsx +4 -0
  460. package/src/utils/Base/doc.mdx +56 -3
  461. package/src/utils/VisuallyHidden/index.test.tsx +4 -0
  462. package/src/utils/hooks/useDebounce.ts +1 -1
  463. package/typography/CodeBlock/index.d.ts +1 -1
  464. package/typography/CodeBlock/index.js +1 -2
  465. package/typography/CodeBlock/index.js.map +2 -2
  466. package/utils/hooks/useDebounce/index.js +1 -1
  467. package/utils/hooks/useDebounce.js.map +2 -2
  468. package/utils/hooks/useLatest.d.ts +1 -1
  469. package/src/app/Footer/Footer.stories.js +0 -18
  470. package/src/app/Header/Header.stories.js +0 -20
  471. package/src/content/Accordion/Accordion.stories.js +0 -14
  472. package/src/content/Card/Card.stories.js +0 -21
  473. package/src/content/List/List.stories.js +0 -15
  474. package/src/content/Table/Table.stories.js +0 -27
  475. package/src/feedback/CopyToClipboard/CopyToClipboard.stories.js +0 -9
  476. package/src/feedback/ErrorSummary/ErrorSummary.stories.js +0 -16
  477. package/src/feedback/PhaseBanner/PhaseBanner.stories.js +0 -11
  478. package/src/form/AutoComplete/AutoComplete.stories.js +0 -16
  479. package/src/form/Checkbox/Checkbox.stories.js +0 -19
  480. package/src/form/DateInputContainer/DateInputContainer.stories.js +0 -14
  481. package/src/form/ErrorMessage/ErrorMessage.stories.js +0 -12
  482. package/src/form/RadioContainer/RadioContainer.stories.js +0 -19
  483. package/src/form/SelectContainer/SelectContainer.stories.js +0 -13
  484. package/src/form/SingleCharacterInputs/SingleCharacterInput.stories.js +0 -13
  485. package/src/form/TextArea/TextArea.stories.js +0 -17
  486. package/src/form/TextInput/TextInput.stories.js +0 -19
@@ -7,6 +7,10 @@ import { Success } from '@digigov/ui/feedback/NotificationBanner/__stories__/Suc
7
7
  test('renders the Default Hover and click', async ({ mount, page }) => {
8
8
  await mount(<Default />);
9
9
  await page.evaluate(() => document.fonts.ready);
10
+
11
+ // Move the mouse to the top-left corner to avoid random hover issues
12
+ await page.mouse.move(0, 0);
13
+
10
14
  await page.locator('#root>div>div:nth-child(2)>h3>a').hover();
11
15
  await page.locator('#root>div>div:nth-child(2)>h3>a').click();
12
16
 
@@ -20,6 +24,10 @@ test('renders the Default Hover and click', async ({ mount, page }) => {
20
24
  test('renders the Success Hover and click', async ({ mount, page }) => {
21
25
  await mount(<Success />);
22
26
  await page.evaluate(() => document.fonts.ready);
27
+
28
+ // Move the mouse to the top-left corner to avoid random hover issues
29
+ await page.mouse.move(0, 0);
30
+
23
31
  await page.locator('#root>div>div:nth-child(2)>h3>a').hover();
24
32
  await page.locator('#root>div>div:nth-child(2)>h3>a').click();
25
33
 
@@ -0,0 +1,47 @@
1
+ import React from 'react';
2
+ import {
3
+ PhaseBanner,
4
+ PhaseBannerTag,
5
+ PhaseBannerText,
6
+ } from '@digigov/ui/feedback/PhaseBanner';
7
+ import { Link } from '@digigov/ui/navigation/Link';
8
+
9
+ export default {
10
+ title: 'Digigov UI/feedback/PhaseBanner',
11
+ description:
12
+ 'Use the phase banner component to show users your service is still being worked on.',
13
+ link: 'https://guide.services.gov.gr/docs/components/phase-banner',
14
+ component: PhaseBanner,
15
+ displayName: 'PhaseBanner',
16
+ };
17
+
18
+ export const WithControls = {
19
+ render: (args) => {
20
+ return (
21
+ <PhaseBanner underline={args.underline}>
22
+ <PhaseBannerTag>{args.tag}</PhaseBannerTag>
23
+ <PhaseBannerText>
24
+ Αυτή είναι μία νέα υπηρεσία – τα <Link href="#feedback">σχόλιά</Link>{' '}
25
+ σας θα μας βοηθήσουν να τη βελτιώσουμε.
26
+ </PhaseBannerText>
27
+ </PhaseBanner>
28
+ );
29
+ },
30
+ args: {
31
+ tag: 'ALPHA',
32
+ underline: true,
33
+ },
34
+ argTypes: {
35
+ underline: {
36
+ control: { type: 'boolean' },
37
+ },
38
+ tag: {
39
+ control: { type: 'text' },
40
+ },
41
+ },
42
+ parameters: {
43
+ controls: { exclude: ['ref'] },
44
+ },
45
+ };
46
+ export { Default } from '@digigov/ui/feedback/PhaseBanner/__stories__/Default';
47
+ export { Underlined } from '@digigov/ui/feedback/PhaseBanner/__stories__/Underlined';
@@ -18,6 +18,10 @@ test('renders the All PhaseBanner variants', async ({ mount, page }) => {
18
18
  )
19
19
  await page.evaluate(() => document.fonts.ready);
20
20
 
21
+ // Move the mouse to the top-left corner to avoid random hover issues
22
+ await page.mouse.move(0, 0);
23
+
24
+
21
25
  const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
22
26
  expect(screenshot).toMatchSnapshot();
23
27
  });
@@ -6,6 +6,10 @@ import { Default } from '@digigov/ui/feedback/PhaseBanner/__stories__/Default';
6
6
  test('renders the Default pressing Tab', async ({ mount, page }) => {
7
7
  await mount(<Default />);
8
8
  await page.evaluate(() => document.fonts.ready);
9
+
10
+ // Move the mouse to the top-left corner to avoid random hover issues
11
+ await page.mouse.move(0, 0);
12
+
9
13
  await page.keyboard.press('Tab');
10
14
  const screenshot = await page.screenshot({
11
15
  fullPage: true,
@@ -7,6 +7,30 @@ export default {
7
7
  component: WarningText,
8
8
  displayName: 'WarningText',
9
9
  };
10
+
11
+ export const WithControls = {
12
+ args: {
13
+ children:
14
+ 'Μπορεί να σας επιβληθεί πρόστιμο έως και 5.000 ευρώ εάν δεν εγγραφείτε.',
15
+ assistiveText: 'Σημαντικό',
16
+ dense: false,
17
+ },
18
+ argTypes: {
19
+ children: {
20
+ control: { type: 'text' },
21
+ },
22
+ assistiveText: {
23
+ control: { type: 'text' },
24
+ },
25
+ dense: {
26
+ control: { type: 'boolean' },
27
+ },
28
+ },
29
+ parameters: {
30
+ controls: { exclude: ['ref'] },
31
+ },
32
+ };
33
+
10
34
  export { Default } from '@digigov/ui/feedback/WarningText/__stories__/Default';
11
35
  export { AssistiveText } from '@digigov/ui/feedback/WarningText/__stories__/AssistiveText';
12
36
  export { Dense } from '@digigov/ui/feedback/WarningText/__stories__/Dense';
@@ -1,7 +1,17 @@
1
1
  // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
2
 
3
3
  exports[`renders the WarningText with sample data 1`] = `
4
- <ForwardRef(WarningText2)>
5
- this is some random warning text
6
- </ForwardRef(WarningText2)>
4
+ Object {
5
+ "$$typeof": Symbol(react.transitional.element),
6
+ "_owner": null,
7
+ "_store": Object {},
8
+ "key": null,
9
+ "props": Object {
10
+ "children": "this is some random warning text",
11
+ },
12
+ "type": Object {
13
+ "$$typeof": Symbol(react.forward_ref),
14
+ "render": [Function],
15
+ },
16
+ }
7
17
  `;
@@ -22,6 +22,10 @@ test('renders the All WarningText variants', async ({ mount, page }) => {
22
22
  )
23
23
  await page.evaluate(() => document.fonts.ready);
24
24
 
25
+ // Move the mouse to the top-left corner to avoid random hover issues
26
+ await page.mouse.move(0, 0);
27
+
28
+
25
29
  const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
26
30
  expect(screenshot).toMatchSnapshot();
27
31
  });
@@ -0,0 +1,91 @@
1
+ import React from 'react';
2
+ import AutoComplete from '@digigov/ui/form/AutoComplete';
3
+ import { suggest } from '@digigov/ui/form/AutoComplete/utils';
4
+
5
+ export default {
6
+ title: 'Digigov UI/form/AutoComplete',
7
+ component: AutoComplete,
8
+ displayName: 'AutoComplete',
9
+ };
10
+
11
+ export const WithControls = {
12
+ render: (args) => {
13
+ return (
14
+ <AutoComplete
15
+ key={args.multiple ? 'multiple' : 'single'}
16
+ id={args.id}
17
+ width={args.width}
18
+ multiple={args.multiple}
19
+ autoselect={args.autoselect}
20
+ minLength={args.minLength}
21
+ source={suggest}
22
+ />
23
+ );
24
+ },
25
+ args: {
26
+ width: 'full',
27
+ id: 'autocomplete-id',
28
+ multiple: false,
29
+ autoselect: false,
30
+ minLength: 2,
31
+ numberOfSelected: 2,
32
+ defaultValue: '',
33
+ },
34
+ argTypes: {
35
+ width: {
36
+ control: {
37
+ type: 'select',
38
+ options: ['25%', '33.3%', '50%', '66.6%', '75%', '100%', 'full'],
39
+ },
40
+ },
41
+ id: {
42
+ control: { type: 'text' },
43
+ },
44
+ multiple: {
45
+ control: { type: 'boolean' },
46
+ },
47
+ autoselect: {
48
+ control: { type: 'boolean' },
49
+ },
50
+ minLength: {
51
+ control: { type: 'number' },
52
+ },
53
+ numberOfSelected: {
54
+ control: { type: 'select', options: [2, 1, 3, 'all', undefined] },
55
+ if: { arg: 'multiple', eq: true },
56
+ },
57
+ defaultValue: {
58
+ control: { type: 'string' },
59
+ },
60
+ },
61
+ parameters: {
62
+ controls: {
63
+ exclude: [
64
+ 'tStatusResults',
65
+ 'tStatusNoResults',
66
+ 'tStatusQueryTooShort',
67
+ 'tStatusSelectedOption',
68
+ 'tNoResults',
69
+ 'tAssistiveHint',
70
+ 'templates',
71
+ 'name',
72
+ 'placeholder',
73
+ 'onConfirm',
74
+ 'confirmOnBlur',
75
+ 'required',
76
+ 'source',
77
+ ],
78
+ },
79
+ },
80
+ };
81
+
82
+ export { Default } from '@digigov/ui/form/AutoComplete/__stories__/Default';
83
+ export { Multiple } from '@digigov/ui/form/AutoComplete/__stories__/Multiple';
84
+ export { MultipleWithDefaultValues } from '@digigov/ui/form/AutoComplete/__stories__/MultipleWithDefaultValues';
85
+ export { MultipleShowingTwoSelected } from '@digigov/ui/form/AutoComplete/__stories__/MultipleShowingTwoSelected';
86
+ export { MultipleWithMinLength } from '@digigov/ui/form/AutoComplete/__stories__/MultipleWithMinLength';
87
+ export { WithAutoSelect } from '@digigov/ui/form/AutoComplete/__stories__/WithAutoSelect';
88
+ export { WithDefaultValue } from '@digigov/ui/form/AutoComplete/__stories__/WithDefaultValue';
89
+ export { WithPlaceHolder } from '@digigov/ui/form/AutoComplete/__stories__/WithPlaceHolder';
90
+ export { WithShowAllValues } from '@digigov/ui/form/AutoComplete/__stories__/WithShowAllValues';
91
+ export { WithMinLength } from '@digigov/ui/form/AutoComplete/__stories__/WithMinLength';
@@ -1,4 +1,4 @@
1
- import React, { Component } from 'react';
1
+ import React, { Component, type JSX } from 'react';
2
2
  import AutoCompleteStatus from '@digigov/react-core/AutoCompleteStatus';
3
3
  import AutoCompleteStatusContainer from '@digigov/react-core/AutoCompleteStatusContainer';
4
4
 
@@ -50,6 +50,10 @@ test('renders the All AutoComplete variants', async ({ mount, page }) => {
50
50
  )
51
51
  await page.evaluate(() => document.fonts.ready);
52
52
 
53
+ // Move the mouse to the top-left corner to avoid random hover issues
54
+ await page.mouse.move(0, 0);
55
+
56
+
53
57
  const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
54
58
  expect(screenshot).toMatchSnapshot();
55
59
  });
@@ -1,4 +1,4 @@
1
- import React, { Component } from 'react';
1
+ import React, { Component, type JSX } from 'react';
2
2
  import { AutoCompleteAssistiveHint } from '@digigov/react-core/AutoCompleteAssistiveHint';
3
3
  import { AutoCompleteContainer } from '@digigov/react-core/AutoCompleteContainer';
4
4
  import { AutoCompleteInputBase } from '@digigov/react-core/AutoCompleteInputBase';
@@ -6,6 +6,10 @@ import { Multiple } from '@digigov/ui/form/AutoComplete/__stories__/Multiple';
6
6
  test('renders the Multiple show chip', async ({ mount, page }) => {
7
7
  await mount(<Multiple />);
8
8
  await page.evaluate(() => document.fonts.ready);
9
+
10
+ // Move the mouse to the top-left corner to avoid random hover issues
11
+ await page.mouse.move(0, 0);
12
+
9
13
  await page
10
14
  .locator('#root>div>div>fieldset>div>div:nth-child(2)>button')
11
15
  .click();
@@ -1,11 +1,51 @@
1
- import Button from '@digigov/ui/form/Button';
1
+ import { Button } from '@digigov/ui/form/Button';
2
2
 
3
3
  export default {
4
+ displayName: 'Button',
4
5
  title: 'Digigov UI/form/Button',
5
6
  description: 'Use the button component to help users carry out an action',
6
7
  link: 'https://guide.services.gov.gr/docs/components/button',
7
8
  component: Button,
8
- displayName: 'Button',
9
+ };
10
+
11
+ export const WithControls = {
12
+ args: {
13
+ variant: 'button',
14
+ color: 'primary',
15
+ children: 'Συνέχεια',
16
+ dense: false,
17
+ printHidden: true,
18
+ 'aria-label': 'Συνεχίστε στην επόμενη σελίδα',
19
+ },
20
+ argTypes: {
21
+ variant: {
22
+ options: ['button', 'link'],
23
+ control: { type: 'radio' },
24
+ },
25
+ color: {
26
+ options: ['primary', 'secondary', 'warning'],
27
+ control: { type: 'select' },
28
+ if: { arg: 'variant', eq: 'button' },
29
+ },
30
+ dense: {
31
+ control: { type: 'boolean' },
32
+ if: { arg: 'variant', eq: 'button' },
33
+ },
34
+ printHidden: {
35
+ control: { type: 'boolean' },
36
+ },
37
+ children: {
38
+ control: { type: 'text' },
39
+ },
40
+ 'aria-label': {
41
+ control: { type: 'text' },
42
+ },
43
+ },
44
+ parameters: {
45
+ controls: {
46
+ exclude: ['ref'],
47
+ },
48
+ },
9
49
  };
10
50
 
11
51
  export { Primary } from '@digigov/ui/form/Button/__stories__/Primary';
@@ -1,4 +1,20 @@
1
- import ButtonLink from '@digigov/react-core/ButtonLink';
1
+ export * from '@digigov/react-core/ButtonLinkBase';
2
+ import React from 'react';
3
+ import {
4
+ ButtonLinkBase,
5
+ ButtonLinkBaseProps,
6
+ } from '@digigov/react-core/ButtonLinkBase';
7
+ import { Link } from '@digigov/ui/navigation/Link';
2
8
 
3
- export * from '@digigov/react-core/ButtonLink';
9
+ export interface ButtonLinkProps extends ButtonLinkBaseProps {}
10
+
11
+ export const ButtonLink = React.forwardRef<HTMLAnchorElement, ButtonLinkProps>(
12
+ function ButtonLink({ children, ...props }, ref) {
13
+ return (
14
+ <ButtonLinkBase as={Link} ref={ref} {...props}>
15
+ {children}
16
+ </ButtonLinkBase>
17
+ );
18
+ }
19
+ );
4
20
  export default ButtonLink;
@@ -1,4 +1,22 @@
1
- import CallToAction from '@digigov/react-core/CallToAction';
1
+ export * from '@digigov/react-core/CallToActionBase';
2
+ import React from 'react';
3
+ import {
4
+ CallToActionBase,
5
+ CallToActionBaseProps,
6
+ } from '@digigov/react-core/CallToActionBase';
7
+ import { Link } from '@digigov/ui/navigation/Link';
8
+
9
+ export interface CallToActionProps extends CallToActionBaseProps {}
10
+
11
+ export const CallToAction = React.forwardRef<
12
+ HTMLAnchorElement,
13
+ CallToActionProps
14
+ >(function CallToAction({ children, ...props }, ref) {
15
+ return (
16
+ <CallToActionBase as={Link} ref={ref} {...props}>
17
+ {children}
18
+ </CallToActionBase>
19
+ );
20
+ });
2
21
 
3
- export * from '@digigov/react-core/CallToAction';
4
22
  export default CallToAction;
@@ -2,7 +2,29 @@ import React from 'react';
2
2
 
3
3
  import { Button } from '@digigov/ui/form/Button';
4
4
 
5
- export const Primary = () => (
6
- <Button aria-label="Συνεχίστε στην επόμενη σελίδα">Συνέχεια</Button>
5
+ export const Primary = ({
6
+ variant = 'button',
7
+ color = 'primary',
8
+ children = 'Συνέχεια',
9
+ dense = false,
10
+ printHidden = true,
11
+ 'aria-label': ariaLabel = 'Συνεχίστε στην επόμενη σελίδα',
12
+ }: {
13
+ variant?: 'button' | 'link';
14
+ color?: 'primary' | 'secondary' | 'warning';
15
+ children?: React.ReactNode;
16
+ dense?: boolean;
17
+ printHidden?: boolean;
18
+ 'aria-label'?: string;
19
+ }) => (
20
+ <Button
21
+ variant={variant}
22
+ color={color}
23
+ dense={dense}
24
+ printHidden={printHidden}
25
+ aria-label={ariaLabel}
26
+ >
27
+ {children}
28
+ </Button>
7
29
  );
8
30
  export default Primary;
@@ -58,6 +58,10 @@ test('renders the All Button variants', async ({ mount, page }) => {
58
58
  )
59
59
  await page.evaluate(() => document.fonts.ready);
60
60
 
61
+ // Move the mouse to the top-left corner to avoid random hover issues
62
+ await page.mouse.move(0, 0);
63
+
64
+
61
65
  const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
62
66
  expect(screenshot).toMatchSnapshot();
63
67
  });
@@ -13,6 +13,10 @@ test('renders the GroupingButtonsAndLinks Keyboard navigation', async ({
13
13
  }) => {
14
14
  await mount(<GroupingButtonsAndLinks />);
15
15
  await page.evaluate(() => document.fonts.ready);
16
+
17
+ // Move the mouse to the top-left corner to avoid random hover issues
18
+ await page.mouse.move(0, 0);
19
+
16
20
  await page.keyboard.press('Tab');
17
21
  await page.keyboard.press('Tab');
18
22
 
@@ -26,6 +30,10 @@ test('renders the GroupingButtonsAndLinks Keyboard navigation', async ({
26
30
  test('renders the Primary Hover and click', async ({ mount, page }) => {
27
31
  await mount(<Primary />);
28
32
  await page.evaluate(() => document.fonts.ready);
33
+
34
+ // Move the mouse to the top-left corner to avoid random hover issues
35
+ await page.mouse.move(0, 0);
36
+
29
37
  await page.locator('#root>button').hover();
30
38
  await page.locator('#root>button').click();
31
39
 
@@ -39,6 +47,10 @@ test('renders the Primary Hover and click', async ({ mount, page }) => {
39
47
  test('renders the Secondary Hover and click', async ({ mount, page }) => {
40
48
  await mount(<Secondary />);
41
49
  await page.evaluate(() => document.fonts.ready);
50
+
51
+ // Move the mouse to the top-left corner to avoid random hover issues
52
+ await page.mouse.move(0, 0);
53
+
42
54
  await page.locator('#root>button').hover();
43
55
  await page.locator('#root>button').click();
44
56
 
@@ -52,6 +64,10 @@ test('renders the Secondary Hover and click', async ({ mount, page }) => {
52
64
  test('renders the ThemeToggle change theme', async ({ mount, page }) => {
53
65
  await mount(<ThemeToggle />);
54
66
  await page.evaluate(() => document.fonts.ready);
67
+
68
+ // Move the mouse to the top-left corner to avoid random hover issues
69
+ await page.mouse.move(0, 0);
70
+
55
71
  await page.locator('#root>button').click();
56
72
  const screenshot = await page.screenshot({
57
73
  fullPage: true,
@@ -63,6 +79,10 @@ test('renders the ThemeToggle change theme', async ({ mount, page }) => {
63
79
  test('renders the Warning Hover and click', async ({ mount, page }) => {
64
80
  await mount(<Warning />);
65
81
  await page.evaluate(() => document.fonts.ready);
82
+
83
+ // Move the mouse to the top-left corner to avoid random hover issues
84
+ await page.mouse.move(0, 0);
85
+
66
86
  await page.locator('#root>button').hover();
67
87
  await page.locator('#root>button').click();
68
88
 
@@ -0,0 +1,150 @@
1
+ import React from 'react';
2
+ import { Checkbox, CheckboxItem } from '@digigov/ui/form/Checkbox';
3
+
4
+ import {
5
+ FieldContainer,
6
+ Fieldset,
7
+ FieldsetLegend,
8
+ } from '@digigov/ui/form/FieldContainer';
9
+ import { Hint } from '@digigov/ui/typography/Hint';
10
+ import { ErrorMessage } from '@digigov/ui/form/ErrorMessage';
11
+ import { VisuallyHidden } from '@digigov/ui/utils/VisuallyHidden';
12
+
13
+ export default {
14
+ title: 'Digigov UI/form/Checkbox',
15
+ description:
16
+ 'Let users select one or more options by using the checkboxes component.',
17
+ link: 'https://guide.services.gov.gr/docs/components/checkboxes',
18
+ component: Checkbox,
19
+ displayName: 'Checkbox',
20
+ };
21
+ export const WithControls = {
22
+ render: (args) => {
23
+ return (
24
+ <FieldContainer error={args.error}>
25
+ <Fieldset aria-describedby={[`${args.hintId} ${args.errorId}`]}>
26
+ <FieldsetLegend
27
+ size={args.legendSize}
28
+ heading={args.singleQuestionInPage}
29
+ >
30
+ {args.legend}
31
+ </FieldsetLegend>
32
+ {args.hint && <Hint id={args.hintId}>{args.hintMessage}</Hint>}
33
+ {args.error && (
34
+ <ErrorMessage id={args.errorId}>
35
+ <VisuallyHidden>Λάθος:</VisuallyHidden>
36
+ {args.errorMessage}
37
+ </ErrorMessage>
38
+ )}
39
+ <Checkbox layout={args.layout} dense={args.dense}>
40
+ {args.items.map((item) => (
41
+ <CheckboxItem
42
+ key={item.value}
43
+ name={args.fieldsetName}
44
+ value={item.value}
45
+ dividerText={item.dividerText}
46
+ >
47
+ {item.label}
48
+ </CheckboxItem>
49
+ ))}
50
+ </Checkbox>
51
+ </Fieldset>
52
+ </FieldContainer>
53
+ );
54
+ },
55
+ args: {
56
+ legend: 'Πώς αισθάνεται αυτή τη στιγμή;',
57
+ legendSize: 'lg',
58
+ singleQuestionInPage: true,
59
+ fieldsetName: 'feeling',
60
+ hint: true,
61
+ hintMessage:
62
+ 'Πείτε μας σχετικά με πρόσφατες αλλαγές. Επιλέξτε ό,τι ισχύει.',
63
+ hintId: 'feeling-hint',
64
+ error: false,
65
+ errorMessage: 'Επιλέξτε μία ή παραπάνω επιλογές.',
66
+ errorId: 'feeling-error',
67
+ layout: 'vertical',
68
+ dense: false,
69
+ items: [
70
+ {
71
+ value: 'cold',
72
+ label: 'Έχω συνάχι',
73
+ dividerText: undefined,
74
+ },
75
+ {
76
+ value: 'fever',
77
+ label: 'Έχω πυρετό',
78
+ dividerText: undefined,
79
+ },
80
+ {
81
+ value: 'good',
82
+ label: 'Αισθάνομαι καλά',
83
+ dividerText: 'ή',
84
+ },
85
+ ],
86
+ },
87
+ argTypes: {
88
+ legend: {
89
+ control: { type: 'text' },
90
+ },
91
+ legendSize: {
92
+ options: ['sm', 'md', 'lg'],
93
+ control: { type: 'radio' },
94
+ },
95
+ singleQuestionInPage: {
96
+ control: { type: 'boolean' },
97
+ },
98
+ fieldsetName: {
99
+ control: { type: 'text' },
100
+ },
101
+ hint: {
102
+ control: { type: 'boolean' },
103
+ },
104
+ hintMessage: {
105
+ control: { type: 'text' },
106
+ if: { arg: 'hint', eq: true },
107
+ },
108
+ hintId: {
109
+ control: { type: 'text' },
110
+ if: { arg: 'hint', eq: true },
111
+ },
112
+ error: {
113
+ control: { type: 'boolean' },
114
+ },
115
+ errorMessage: {
116
+ control: { type: 'text' },
117
+ if: { arg: 'error', eq: true },
118
+ },
119
+ errorId: {
120
+ control: { type: 'text' },
121
+ if: { arg: 'error', eq: true },
122
+ },
123
+ layout: {
124
+ options: ['horizontal', 'vertical'],
125
+ control: { type: 'radio' },
126
+ },
127
+ dense: {
128
+ control: { type: 'boolean' },
129
+ },
130
+ items: {
131
+ control: { type: 'array' },
132
+ },
133
+ },
134
+ parameters: {
135
+ controls: {
136
+ exclude: ['ref'],
137
+ },
138
+ },
139
+ };
140
+
141
+ export { Default } from '@digigov/ui/form/Checkbox/__stories__/Default';
142
+ export { Inline } from '@digigov/ui/form/Checkbox/__stories__/Inline';
143
+ export { InlineWithDivider } from '@digigov/ui/form/Checkbox/__stories__/InlineWithDivider';
144
+ export { MultipleQuestions } from '@digigov/ui/form/Checkbox/__stories__/MultipleQuestions';
145
+ export { WithHint } from '@digigov/ui/form/Checkbox/__stories__/WithHint';
146
+ export { NoneAnswer } from '@digigov/ui/form/Checkbox/__stories__/NoneAnswer';
147
+ export { NoneAnswerWithError } from '@digigov/ui/form/Checkbox/__stories__/NoneAnswerWithError';
148
+ export { WithErrorMessage } from '@digigov/ui/form/Checkbox/__stories__/WithErrorMessage';
149
+ export { ConditionalReveal } from '@digigov/ui/form/Checkbox/__stories__/ConditionalReveal';
150
+ export { Dense } from '@digigov/ui/form/Checkbox/__stories__/Dense';
@@ -50,6 +50,10 @@ test('renders the All Checkbox variants', async ({ mount, page }) => {
50
50
  )
51
51
  await page.evaluate(() => document.fonts.ready);
52
52
 
53
+ // Move the mouse to the top-left corner to avoid random hover issues
54
+ await page.mouse.move(0, 0);
55
+
56
+
53
57
  const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
54
58
  expect(screenshot).toMatchSnapshot();
55
59
  });
@@ -10,6 +10,10 @@ test('renders the MultipleQuestions check first box', async ({
10
10
  }) => {
11
11
  await mount(<MultipleQuestions />);
12
12
  await page.evaluate(() => document.fonts.ready);
13
+
14
+ // Move the mouse to the top-left corner to avoid random hover issues
15
+ await page.mouse.move(0, 0);
16
+
13
17
  await page
14
18
  .locator('#root>div>fieldset>div>div:nth-child(1)>label>input')
15
19
  .click();
@@ -23,6 +27,10 @@ test('renders the MultipleQuestions check first box', async ({
23
27
  test('renders the WithHint click first option', async ({ mount, page }) => {
24
28
  await mount(<WithHint />);
25
29
  await page.evaluate(() => document.fonts.ready);
30
+
31
+ // Move the mouse to the top-left corner to avoid random hover issues
32
+ await page.mouse.move(0, 0);
33
+
26
34
  await page
27
35
  .locator('#root>div>fieldset>div>div:nth-child(1)>label>input')
28
36
  .click();