@digigov/ui 0.21.3 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (383) hide show
  1. package/CHANGELOG.md +15 -1
  2. package/admin/AutoComplete/AccesibleAutoComplete/index.d.ts +5 -0
  3. package/admin/AutoComplete/AccesibleAutoComplete/index.js +106 -0
  4. package/admin/AutoComplete/AutoComplete.stories.d.ts +13 -0
  5. package/admin/AutoComplete/AutoComplete.stories.js +115 -0
  6. package/admin/AutoComplete/Status/index.d.ts +40 -0
  7. package/admin/AutoComplete/Status/index.js +184 -0
  8. package/admin/AutoComplete/__stories__/Default.d.ts +3 -0
  9. package/admin/AutoComplete/__stories__/Default.js +34 -0
  10. package/admin/AutoComplete/__stories__/WithAutoSelect.d.ts +3 -0
  11. package/admin/AutoComplete/__stories__/WithAutoSelect.js +35 -0
  12. package/admin/AutoComplete/__stories__/WithDefaultValue.d.ts +3 -0
  13. package/admin/AutoComplete/__stories__/WithDefaultValue.js +33 -0
  14. package/admin/AutoComplete/__stories__/WithInLine.d.ts +3 -0
  15. package/admin/AutoComplete/__stories__/WithInLine.js +33 -0
  16. package/admin/AutoComplete/__stories__/WithMinLength.d.ts +3 -0
  17. package/admin/AutoComplete/__stories__/WithMinLength.js +35 -0
  18. package/admin/AutoComplete/__stories__/WithPlaceHolder.d.ts +3 -0
  19. package/admin/AutoComplete/__stories__/WithPlaceHolder.js +33 -0
  20. package/admin/AutoComplete/__stories__/WithShowAllValues.d.ts +3 -0
  21. package/admin/AutoComplete/__stories__/WithShowAllValues.js +33 -0
  22. package/admin/AutoComplete/index.d.ts +101 -0
  23. package/admin/AutoComplete/index.js +744 -0
  24. package/admin/AutoComplete/index.mdx +46 -0
  25. package/admin/AutoComplete/utils.d.ts +1 -0
  26. package/admin/AutoComplete/utils.js +13 -0
  27. package/admin/Drawer/__stories__/Default.js +1 -1
  28. package/admin/Drawer/index.mdx +12 -0
  29. package/admin/FilterSection/index.d.ts +1 -0
  30. package/admin/FilterSection/index.js +14 -0
  31. package/admin/Pagination/__stories__/Default.js +38 -14
  32. package/admin/Pagination/index.mdx +12 -0
  33. package/admin/index.d.ts +1 -0
  34. package/admin/index.js +13 -0
  35. package/app/Confirmation/Confirmation.mdx +9 -0
  36. package/app/CopyToClipboard/CopyToClipboard.stories.d.ts +2 -0
  37. package/app/CopyToClipboard/CopyToClipboard.stories.js +28 -0
  38. package/app/CopyToClipboard/__stories__/Banner.d.ts +3 -0
  39. package/app/CopyToClipboard/__stories__/Banner.js +30 -0
  40. package/app/CopyToClipboard/__stories__/Default.js +4 -114
  41. package/app/CopyToClipboard/__stories__/MultipleCopies.d.ts +3 -0
  42. package/app/CopyToClipboard/__stories__/MultipleCopies.js +142 -0
  43. package/app/CopyToClipboard/index.mdx +22 -0
  44. package/app/Footer/Footer.mdx +27 -0
  45. package/app/Header/index.mdx +18 -0
  46. package/app/I18nText.js +7 -7
  47. package/app/NotFound/index.mdx +12 -0
  48. package/app/PhaseBannerHeader/index.mdx +12 -0
  49. package/core/Accordion/index.mdx +13 -86
  50. package/core/BackLink/index.mdx +16 -0
  51. package/core/Blockquote/index.mdx +17 -2
  52. package/core/Breadcrumbs/__stories__/Default.js +9 -1
  53. package/core/Breadcrumbs/breadcrumbs.mdx +22 -0
  54. package/core/Button/Button.mdx +37 -2
  55. package/core/Button/Button.stories.d.ts +2 -0
  56. package/core/Button/Button.stories.js +28 -0
  57. package/core/Button/__stories__/CallToActionButton.d.ts +3 -0
  58. package/core/Button/__stories__/CallToActionButton.js +22 -0
  59. package/core/Button/__stories__/Disabled.d.ts +6 -0
  60. package/core/Button/__stories__/Disabled.js +27 -0
  61. package/core/Button/__stories__/Warning.d.ts +1 -0
  62. package/core/Button/__stories__/Warning.js +4 -2
  63. package/core/Card/Card.stories.d.ts +1 -0
  64. package/core/Card/Card.stories.js +14 -0
  65. package/core/Card/__stories__/WithClickableLink.js +1 -3
  66. package/core/Card/__stories__/WithGroupButton.d.ts +3 -0
  67. package/core/Card/__stories__/WithGroupButton.js +32 -0
  68. package/core/Card/card.mdx +78 -0
  69. package/core/Checkboxes/Checkbox.stories.d.ts +1 -0
  70. package/core/Checkboxes/Checkbox.stories.js +14 -0
  71. package/core/Checkboxes/__stories__/NoneAnswerWithError.d.ts +3 -0
  72. package/core/Checkboxes/__stories__/NoneAnswerWithError.js +51 -0
  73. package/core/Checkboxes/checkboxes.mdx +54 -0
  74. package/core/Confirmation/confirmation.mdx +19 -0
  75. package/core/DateInput/DateInput.stories.d.ts +1 -0
  76. package/core/DateInput/DateInput.stories.js +14 -0
  77. package/core/DateInput/__stories__/Default.js +3 -1
  78. package/core/DateInput/__stories__/MultipleQuestions.d.ts +3 -0
  79. package/core/DateInput/__stories__/MultipleQuestions.js +41 -0
  80. package/core/DateInput/index.mdx +34 -0
  81. package/core/Details/index.mdx +9 -25
  82. package/core/ErrorMessage/__stories__/Default.js +1 -1
  83. package/core/ErrorMessage/index.mdx +21 -0
  84. package/core/ErrorSummary/__stories__/LinkedToCheckbox.js +1 -1
  85. package/core/ErrorSummary/index.mdx +21 -38
  86. package/core/FileUpload/__stories__/Default.d.ts +1 -0
  87. package/core/FileUpload/__stories__/Default.js +4 -2
  88. package/core/FileUpload/index.mdx +22 -0
  89. package/core/Link/__stories__/DarkBackground.js +1 -1
  90. package/core/Link/__stories__/DarkBackgroundNoUnderline.js +1 -1
  91. package/core/Link/link.mdx +30 -0
  92. package/core/List/index.mdx +22 -3
  93. package/core/Masthead/masthead.mdx +14 -0
  94. package/core/NavList/NavList.d.ts +1 -14
  95. package/core/NavList/NavList.js +11 -70
  96. package/core/NavList/NavListBase.d.ts +4 -0
  97. package/core/NavList/NavListBase.js +74 -0
  98. package/core/NavList/NavListSubMenu.d.ts +1 -1
  99. package/core/NavList/NavListSubMenu.js +2 -2
  100. package/core/NavList/types.d.ts +13 -0
  101. package/core/NavList/types.js +5 -0
  102. package/core/NotificationBanner/index.mdx +13 -60
  103. package/core/PhaseBanner/PhaseBanner.stories.d.ts +1 -0
  104. package/core/PhaseBanner/PhaseBanner.stories.js +14 -0
  105. package/core/PhaseBanner/__stories__/Underlined.d.ts +3 -0
  106. package/core/PhaseBanner/__stories__/Underlined.js +34 -0
  107. package/core/PhaseBanner/index.mdx +24 -0
  108. package/core/Radios/__stories__/Default.js +1 -3
  109. package/core/Radios/__stories__/MultipleQuestions.js +1 -1
  110. package/core/Radios/index.mdx +56 -0
  111. package/core/Select/Select.stories.d.ts +1 -0
  112. package/core/Select/Select.stories.js +14 -0
  113. package/core/Select/__stories__/WithHint.d.ts +3 -0
  114. package/core/Select/__stories__/WithHint.js +45 -0
  115. package/core/Select/index.mdx +36 -0
  116. package/core/SummaryList/SummaryList.stories.d.ts +2 -2
  117. package/core/SummaryList/SummaryList.stories.js +8 -8
  118. package/core/SummaryList/__stories__/Default.js +1 -1
  119. package/core/SummaryList/__stories__/WithActions.d.ts +3 -0
  120. package/core/SummaryList/__stories__/{SummaryListWithActions.js → WithActions.js} +10 -12
  121. package/core/SummaryList/__stories__/WithoutBorders.d.ts +3 -0
  122. package/core/SummaryList/__stories__/{SummaryListWithoutBorders.js → WithoutBorders.js} +5 -5
  123. package/core/SummaryList/index.mdx +17 -65
  124. package/core/Table/Table.stories.d.ts +1 -0
  125. package/core/Table/Table.stories.js +14 -0
  126. package/core/Table/__stories__/DarkVariant.js +1 -1
  127. package/core/Table/__stories__/Default.js +1 -1
  128. package/core/Table/__stories__/TableCaptions.d.ts +3 -0
  129. package/core/Table/__stories__/TableCaptions.js +30 -0
  130. package/core/Table/index.mdx +52 -0
  131. package/core/Tabs/__stories__/Default.d.ts +1 -0
  132. package/core/Tabs/__stories__/Default.js +6 -2
  133. package/core/Tabs/index.mdx +10 -2
  134. package/core/TextArea/index.mdx +50 -0
  135. package/core/TextInput/index.mdx +59 -0
  136. package/core/VisuallyHidden/__stories__/Default.js +14 -2
  137. package/core/VisuallyHidden/index.mdx +17 -0
  138. package/core/WarningText/index.mdx +10 -35
  139. package/es/admin/AutoComplete/AccesibleAutoComplete/index.js +87 -0
  140. package/es/admin/AutoComplete/AutoComplete.stories.js +13 -0
  141. package/es/admin/AutoComplete/Status/index.js +153 -0
  142. package/es/admin/AutoComplete/__stories__/Default.js +19 -0
  143. package/es/admin/AutoComplete/__stories__/WithAutoSelect.js +20 -0
  144. package/es/admin/AutoComplete/__stories__/WithDefaultValue.js +18 -0
  145. package/es/admin/AutoComplete/__stories__/WithInLine.js +18 -0
  146. package/es/admin/AutoComplete/__stories__/WithMinLength.js +19 -0
  147. package/es/admin/AutoComplete/__stories__/WithPlaceHolder.js +18 -0
  148. package/es/admin/AutoComplete/__stories__/WithShowAllValues.js +18 -0
  149. package/es/admin/AutoComplete/index.js +676 -0
  150. package/es/admin/AutoComplete/index.mdx +46 -0
  151. package/es/admin/AutoComplete/utils.js +6 -0
  152. package/es/admin/Drawer/__stories__/Default.js +1 -1
  153. package/es/admin/Drawer/index.mdx +12 -0
  154. package/es/admin/FilterSection/index.js +1 -0
  155. package/es/admin/Pagination/__stories__/Default.js +37 -14
  156. package/es/admin/Pagination/index.mdx +12 -0
  157. package/es/admin/index.js +2 -1
  158. package/es/app/Confirmation/Confirmation.mdx +9 -0
  159. package/es/app/CopyToClipboard/CopyToClipboard.stories.js +3 -1
  160. package/es/app/CopyToClipboard/__stories__/Banner.js +16 -0
  161. package/es/app/CopyToClipboard/__stories__/Default.js +5 -107
  162. package/es/app/CopyToClipboard/__stories__/MultipleCopies.js +120 -0
  163. package/es/app/CopyToClipboard/index.mdx +22 -0
  164. package/es/app/Footer/Footer.mdx +27 -0
  165. package/es/app/Header/index.mdx +18 -0
  166. package/es/app/I18nText.js +7 -6
  167. package/es/app/NotFound/index.mdx +12 -0
  168. package/es/app/PhaseBannerHeader/index.mdx +12 -0
  169. package/es/core/Accordion/index.mdx +13 -86
  170. package/es/core/BackLink/index.mdx +16 -0
  171. package/es/core/Blockquote/index.mdx +17 -2
  172. package/es/core/Breadcrumbs/__stories__/Default.js +9 -1
  173. package/es/core/Breadcrumbs/breadcrumbs.mdx +22 -0
  174. package/es/core/Button/Button.mdx +37 -2
  175. package/es/core/Button/Button.stories.js +3 -1
  176. package/es/core/Button/__stories__/CallToActionButton.js +9 -0
  177. package/es/core/Button/__stories__/Disabled.js +14 -0
  178. package/es/core/Button/__stories__/Warning.js +2 -1
  179. package/es/core/Card/Card.stories.js +2 -1
  180. package/es/core/Card/__stories__/WithClickableLink.js +2 -3
  181. package/es/core/Card/__stories__/WithGroupButton.js +11 -0
  182. package/es/core/Card/card.mdx +78 -0
  183. package/es/core/Checkboxes/Checkbox.stories.js +1 -0
  184. package/es/core/Checkboxes/__stories__/NoneAnswerWithError.js +28 -0
  185. package/es/core/Checkboxes/checkboxes.mdx +54 -0
  186. package/es/core/Confirmation/confirmation.mdx +19 -0
  187. package/es/core/DateInput/DateInput.stories.js +1 -0
  188. package/es/core/DateInput/__stories__/Default.js +3 -1
  189. package/es/core/DateInput/__stories__/MultipleQuestions.js +20 -0
  190. package/es/core/DateInput/index.mdx +34 -0
  191. package/es/core/Details/index.mdx +9 -25
  192. package/es/core/ErrorMessage/__stories__/Default.js +1 -1
  193. package/es/core/ErrorMessage/index.mdx +21 -0
  194. package/es/core/ErrorSummary/__stories__/LinkedToCheckbox.js +1 -1
  195. package/es/core/ErrorSummary/index.mdx +21 -38
  196. package/es/core/FileUpload/__stories__/Default.js +2 -1
  197. package/es/core/FileUpload/index.mdx +22 -0
  198. package/es/core/Link/__stories__/DarkBackground.js +1 -1
  199. package/es/core/Link/__stories__/DarkBackgroundNoUnderline.js +1 -1
  200. package/es/core/Link/link.mdx +30 -0
  201. package/es/core/List/index.mdx +22 -3
  202. package/es/core/Masthead/masthead.mdx +14 -0
  203. package/es/core/NavList/NavList.js +8 -63
  204. package/es/core/NavList/NavListBase.js +58 -0
  205. package/es/core/NavList/NavListSubMenu.js +1 -1
  206. package/es/core/NavList/types.js +1 -0
  207. package/es/core/NotificationBanner/index.mdx +13 -60
  208. package/es/core/PhaseBanner/PhaseBanner.stories.js +2 -1
  209. package/es/core/PhaseBanner/__stories__/Underlined.js +14 -0
  210. package/es/core/PhaseBanner/index.mdx +24 -0
  211. package/es/core/Radios/__stories__/Default.js +1 -2
  212. package/es/core/Radios/__stories__/MultipleQuestions.js +1 -1
  213. package/es/core/Radios/index.mdx +56 -0
  214. package/es/core/Select/Select.stories.js +2 -1
  215. package/es/core/Select/__stories__/WithHint.js +22 -0
  216. package/es/core/Select/index.mdx +36 -0
  217. package/es/core/SummaryList/SummaryList.stories.js +2 -2
  218. package/es/core/SummaryList/__stories__/Default.js +1 -1
  219. package/es/core/SummaryList/__stories__/WithActions.js +20 -0
  220. package/es/core/SummaryList/__stories__/WithoutBorders.js +11 -0
  221. package/es/core/SummaryList/index.mdx +17 -65
  222. package/es/core/Table/Table.stories.js +1 -0
  223. package/es/core/Table/__stories__/DarkVariant.js +1 -1
  224. package/es/core/Table/__stories__/Default.js +1 -1
  225. package/es/core/Table/__stories__/TableCaptions.js +17 -0
  226. package/es/core/Table/index.mdx +52 -0
  227. package/es/core/Tabs/__stories__/Default.js +3 -2
  228. package/es/core/Tabs/index.mdx +10 -2
  229. package/es/core/TextArea/index.mdx +50 -0
  230. package/es/core/TextInput/index.mdx +59 -0
  231. package/es/core/VisuallyHidden/__stories__/Default.js +9 -5
  232. package/es/core/VisuallyHidden/index.mdx +17 -0
  233. package/es/core/WarningText/index.mdx +10 -35
  234. package/es/govgr/Footer/index.mdx +4 -4
  235. package/es/introduction.md +4 -1
  236. package/es/layouts/Grid/Grid.stories.js +2 -1
  237. package/es/layouts/Grid/__stories__/Inline.js +55 -0
  238. package/es/layouts/Grid/index.js +1 -0
  239. package/es/layouts/index.js +2 -0
  240. package/es/registry.js +57 -17
  241. package/es/typography/Caption/index.mdx +16 -0
  242. package/es/typography/Hint/index.mdx +16 -0
  243. package/es/typography/NormalText/index.mdx +26 -0
  244. package/es/typography/Paragraph/index.mdx +30 -0
  245. package/es/typography/Title/index.mdx +12 -0
  246. package/esm/admin/AutoComplete/AccesibleAutoComplete/index.js +87 -0
  247. package/esm/admin/AutoComplete/AutoComplete.stories.js +13 -0
  248. package/esm/admin/AutoComplete/Status/index.js +153 -0
  249. package/esm/admin/AutoComplete/__stories__/Default.js +19 -0
  250. package/esm/admin/AutoComplete/__stories__/WithAutoSelect.js +20 -0
  251. package/esm/admin/AutoComplete/__stories__/WithDefaultValue.js +18 -0
  252. package/esm/admin/AutoComplete/__stories__/WithInLine.js +18 -0
  253. package/esm/admin/AutoComplete/__stories__/WithMinLength.js +19 -0
  254. package/esm/admin/AutoComplete/__stories__/WithPlaceHolder.js +18 -0
  255. package/esm/admin/AutoComplete/__stories__/WithShowAllValues.js +18 -0
  256. package/esm/admin/AutoComplete/index.js +676 -0
  257. package/esm/admin/AutoComplete/index.mdx +46 -0
  258. package/esm/admin/AutoComplete/utils.js +6 -0
  259. package/esm/admin/Drawer/__stories__/Default.js +1 -1
  260. package/esm/admin/Drawer/index.mdx +12 -0
  261. package/esm/admin/FilterSection/index.js +1 -0
  262. package/esm/admin/Pagination/__stories__/Default.js +37 -14
  263. package/esm/admin/Pagination/index.mdx +12 -0
  264. package/esm/admin/index.js +2 -1
  265. package/esm/app/Confirmation/Confirmation.mdx +9 -0
  266. package/esm/app/CopyToClipboard/CopyToClipboard.stories.js +3 -1
  267. package/esm/app/CopyToClipboard/__stories__/Banner.js +16 -0
  268. package/esm/app/CopyToClipboard/__stories__/Default.js +5 -107
  269. package/esm/app/CopyToClipboard/__stories__/MultipleCopies.js +120 -0
  270. package/esm/app/CopyToClipboard/index.mdx +22 -0
  271. package/esm/app/Footer/Footer.mdx +27 -0
  272. package/esm/app/Header/index.mdx +18 -0
  273. package/esm/app/I18nText.js +7 -6
  274. package/esm/app/NotFound/index.mdx +12 -0
  275. package/esm/app/PhaseBannerHeader/index.mdx +12 -0
  276. package/esm/core/Accordion/index.mdx +13 -86
  277. package/esm/core/BackLink/index.mdx +16 -0
  278. package/esm/core/Blockquote/index.mdx +17 -2
  279. package/esm/core/Breadcrumbs/__stories__/Default.js +9 -1
  280. package/esm/core/Breadcrumbs/breadcrumbs.mdx +22 -0
  281. package/esm/core/Button/Button.mdx +37 -2
  282. package/esm/core/Button/Button.stories.js +3 -1
  283. package/esm/core/Button/__stories__/CallToActionButton.js +9 -0
  284. package/esm/core/Button/__stories__/Disabled.js +14 -0
  285. package/esm/core/Button/__stories__/Warning.js +2 -1
  286. package/esm/core/Card/Card.stories.js +2 -1
  287. package/esm/core/Card/__stories__/WithClickableLink.js +2 -3
  288. package/esm/core/Card/__stories__/WithGroupButton.js +11 -0
  289. package/esm/core/Card/card.mdx +78 -0
  290. package/esm/core/Checkboxes/Checkbox.stories.js +1 -0
  291. package/esm/core/Checkboxes/__stories__/NoneAnswerWithError.js +28 -0
  292. package/esm/core/Checkboxes/checkboxes.mdx +54 -0
  293. package/esm/core/Confirmation/confirmation.mdx +19 -0
  294. package/esm/core/DateInput/DateInput.stories.js +1 -0
  295. package/esm/core/DateInput/__stories__/Default.js +3 -1
  296. package/esm/core/DateInput/__stories__/MultipleQuestions.js +20 -0
  297. package/esm/core/DateInput/index.mdx +34 -0
  298. package/esm/core/Details/index.mdx +9 -25
  299. package/esm/core/ErrorMessage/__stories__/Default.js +1 -1
  300. package/esm/core/ErrorMessage/index.mdx +21 -0
  301. package/esm/core/ErrorSummary/__stories__/LinkedToCheckbox.js +1 -1
  302. package/esm/core/ErrorSummary/index.mdx +21 -38
  303. package/esm/core/FileUpload/__stories__/Default.js +2 -1
  304. package/esm/core/FileUpload/index.mdx +22 -0
  305. package/esm/core/Link/__stories__/DarkBackground.js +1 -1
  306. package/esm/core/Link/__stories__/DarkBackgroundNoUnderline.js +1 -1
  307. package/esm/core/Link/link.mdx +30 -0
  308. package/esm/core/List/index.mdx +22 -3
  309. package/esm/core/Masthead/masthead.mdx +14 -0
  310. package/esm/core/NavList/NavList.js +8 -63
  311. package/esm/core/NavList/NavListBase.js +58 -0
  312. package/esm/core/NavList/NavListSubMenu.js +1 -1
  313. package/esm/core/NavList/types.js +1 -0
  314. package/esm/core/NotificationBanner/index.mdx +13 -60
  315. package/esm/core/PhaseBanner/PhaseBanner.stories.js +2 -1
  316. package/esm/core/PhaseBanner/__stories__/Underlined.js +14 -0
  317. package/esm/core/PhaseBanner/index.mdx +24 -0
  318. package/esm/core/Radios/__stories__/Default.js +1 -2
  319. package/esm/core/Radios/__stories__/MultipleQuestions.js +1 -1
  320. package/esm/core/Radios/index.mdx +56 -0
  321. package/esm/core/Select/Select.stories.js +2 -1
  322. package/esm/core/Select/__stories__/WithHint.js +22 -0
  323. package/esm/core/Select/index.mdx +36 -0
  324. package/esm/core/SummaryList/SummaryList.stories.js +2 -2
  325. package/esm/core/SummaryList/__stories__/Default.js +1 -1
  326. package/esm/core/SummaryList/__stories__/WithActions.js +20 -0
  327. package/esm/core/SummaryList/__stories__/WithoutBorders.js +11 -0
  328. package/esm/core/SummaryList/index.mdx +17 -65
  329. package/esm/core/Table/Table.stories.js +1 -0
  330. package/esm/core/Table/__stories__/DarkVariant.js +1 -1
  331. package/esm/core/Table/__stories__/Default.js +1 -1
  332. package/esm/core/Table/__stories__/TableCaptions.js +17 -0
  333. package/esm/core/Table/index.mdx +52 -0
  334. package/esm/core/Tabs/__stories__/Default.js +3 -2
  335. package/esm/core/Tabs/index.mdx +10 -2
  336. package/esm/core/TextArea/index.mdx +50 -0
  337. package/esm/core/TextInput/index.mdx +59 -0
  338. package/esm/core/VisuallyHidden/__stories__/Default.js +9 -5
  339. package/esm/core/VisuallyHidden/index.mdx +17 -0
  340. package/esm/core/WarningText/index.mdx +10 -35
  341. package/esm/govgr/Footer/index.mdx +4 -4
  342. package/esm/index.js +1 -1
  343. package/esm/introduction.md +4 -1
  344. package/esm/layouts/Grid/Grid.stories.js +2 -1
  345. package/esm/layouts/Grid/__stories__/Inline.js +55 -0
  346. package/esm/layouts/Grid/index.js +1 -0
  347. package/esm/layouts/index.js +2 -0
  348. package/esm/registry.js +57 -17
  349. package/esm/typography/Caption/index.mdx +16 -0
  350. package/esm/typography/Hint/index.mdx +16 -0
  351. package/esm/typography/NormalText/index.mdx +26 -0
  352. package/esm/typography/Paragraph/index.mdx +30 -0
  353. package/esm/typography/Title/index.mdx +12 -0
  354. package/govgr/Footer/index.mdx +4 -4
  355. package/introduction.md +4 -1
  356. package/layouts/Grid/Grid.stories.d.ts +1 -0
  357. package/layouts/Grid/Grid.stories.js +14 -0
  358. package/layouts/Grid/__stories__/Inline.d.ts +3 -0
  359. package/layouts/Grid/__stories__/Inline.js +68 -0
  360. package/layouts/Grid/index.d.ts +1 -0
  361. package/layouts/Grid/index.js +6 -0
  362. package/layouts/index.d.ts +2 -0
  363. package/layouts/index.js +22 -1
  364. package/package.json +3 -3
  365. package/registry.d.ts +28 -8
  366. package/registry.js +85 -25
  367. package/typography/Caption/index.mdx +16 -0
  368. package/typography/Hint/index.mdx +16 -0
  369. package/typography/NormalText/index.mdx +26 -0
  370. package/typography/Paragraph/index.mdx +30 -0
  371. package/typography/Title/index.mdx +12 -0
  372. package/app/NotFound/NotFound.mdx +0 -5
  373. package/app/QrCodeScanner/index.mdx +0 -7
  374. package/core/SummaryList/__stories__/SummaryListWithActions.d.ts +0 -3
  375. package/core/SummaryList/__stories__/SummaryListWithoutBorders.d.ts +0 -3
  376. package/es/app/NotFound/NotFound.mdx +0 -5
  377. package/es/app/QrCodeScanner/index.mdx +0 -7
  378. package/es/core/SummaryList/__stories__/SummaryListWithActions.js +0 -21
  379. package/es/core/SummaryList/__stories__/SummaryListWithoutBorders.js +0 -11
  380. package/esm/app/NotFound/NotFound.mdx +0 -5
  381. package/esm/app/QrCodeScanner/index.mdx +0 -7
  382. package/esm/core/SummaryList/__stories__/SummaryListWithActions.js +0 -21
  383. package/esm/core/SummaryList/__stories__/SummaryListWithoutBorders.js +0 -11
@@ -0,0 +1,676 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
+ import _createClass from "@babel/runtime/helpers/createClass";
4
+ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
5
+ import _inherits from "@babel/runtime/helpers/inherits";
6
+ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
7
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
8
+
9
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
10
+
11
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
12
+
13
+ import React from 'react';
14
+ import AutoCompleteInput from '@digigov/react-extensions/admin/AutoCompleteInput';
15
+ import AutoCompleteInputTypeahead from '@digigov/react-extensions/admin/AutoCompleteInputTypeahead';
16
+ import AutoCompleteNoResult from '@digigov/react-extensions/admin/AutoCompleteNoResult';
17
+ import AutoCompleteResultList from '@digigov/react-extensions/admin/AutoCompleteResultList';
18
+ import AutoCompleteResultListItem from '@digigov/react-extensions/admin/AutoCompleteResultListItem';
19
+ import AutoCompleteWrapper from '@digigov/react-extensions/admin/AutoCompleteWrapper';
20
+ import AutoCompleteAssistiveHint from '@digigov/react-extensions/admin/AutoCompleteAssistiveHint';
21
+ import { Component } from 'react';
22
+ import Status from '@digigov/ui/admin/AutoComplete/Status';
23
+ import DropdownArrowDown from '@digigov/react-extensions/admin/DropdownArrowDown';
24
+ /* const IS_PREACT = process.env.COMPONENT_LIBRARY === 'PREACT'; */
25
+
26
+ /* const IS_REACT = process.env.COMPONENT_LIBRARY === 'REACT'; */
27
+
28
+ var keyCodes = {
29
+ 13: 'enter',
30
+ 27: 'escape',
31
+ 32: 'space',
32
+ 38: 'up',
33
+ 40: 'down'
34
+ };
35
+
36
+ function isIosDevice() {
37
+ return typeof navigator !== 'undefined' && !!(navigator.userAgent.match(/(iPod|iPhone|iPad)/g) && navigator.userAgent.match(/AppleWebKit/g));
38
+ }
39
+
40
+ function isPrintableKeyCode(keyCode) {
41
+ return keyCode > 47 && keyCode < 58 || // number keys
42
+ keyCode === 32 || keyCode === 8 || // spacebar or backspace
43
+ keyCode > 64 && keyCode < 91 || // letter keys
44
+ keyCode > 95 && keyCode < 112 || // numpad keys
45
+ keyCode > 185 && keyCode < 193 || // ;=,-./` (in order)
46
+ keyCode > 218 && keyCode < 223 // [\]' (in order)
47
+ ;
48
+ }
49
+
50
+ var AutoComplete = /*#__PURE__*/function (_Component) {
51
+ _inherits(AutoComplete, _Component);
52
+
53
+ var _super = _createSuper(AutoComplete);
54
+
55
+ function AutoComplete(props) {
56
+ var _this;
57
+
58
+ _classCallCheck(this, AutoComplete);
59
+
60
+ _this = _super.call(this, props);
61
+ _this.elementReferences = {};
62
+ _this.$pollInput = void 0;
63
+ _this.state = {
64
+ focused: null,
65
+ hovered: null,
66
+ menuOpen: false,
67
+ options: props.defaultValue ? [props.defaultValue] : [],
68
+ query: props.defaultValue,
69
+ validChoiceMade: false,
70
+ selected: null,
71
+ ariaHint: true
72
+ };
73
+ _this.handleComponentBlur = _this.handleComponentBlur.bind(_assertThisInitialized(_this));
74
+ _this.handleKeyDown = _this.handleKeyDown.bind(_assertThisInitialized(_this));
75
+ _this.handleUpArrow = _this.handleUpArrow.bind(_assertThisInitialized(_this));
76
+ _this.handleDownArrow = _this.handleDownArrow.bind(_assertThisInitialized(_this));
77
+ _this.handleEnter = _this.handleEnter.bind(_assertThisInitialized(_this));
78
+ _this.handlePrintableKey = _this.handlePrintableKey.bind(_assertThisInitialized(_this));
79
+ _this.handleListMouseLeave = _this.handleListMouseLeave.bind(_assertThisInitialized(_this));
80
+ _this.handleOptionBlur = _this.handleOptionBlur.bind(_assertThisInitialized(_this));
81
+ _this.handleOptionClick = _this.handleOptionClick.bind(_assertThisInitialized(_this));
82
+ _this.handleOptionFocus = _this.handleOptionFocus.bind(_assertThisInitialized(_this));
83
+ _this.handleOptionMouseDown = _this.handleOptionMouseDown.bind(_assertThisInitialized(_this));
84
+ _this.handleOptionMouseEnter = _this.handleOptionMouseEnter.bind(_assertThisInitialized(_this));
85
+ _this.handleInputBlur = _this.handleInputBlur.bind(_assertThisInitialized(_this));
86
+ _this.handleInputChange = _this.handleInputChange.bind(_assertThisInitialized(_this));
87
+ _this.handleInputFocus = _this.handleInputFocus.bind(_assertThisInitialized(_this));
88
+ _this.pollInputElement = _this.pollInputElement.bind(_assertThisInitialized(_this));
89
+ _this.getDirectInputChanges = _this.getDirectInputChanges.bind(_assertThisInitialized(_this));
90
+ return _this;
91
+ }
92
+
93
+ _createClass(AutoComplete, [{
94
+ key: "isQueryAnOption",
95
+ value: function isQueryAnOption(query, options) {
96
+ var _this2 = this;
97
+
98
+ return options.map(function (entry) {
99
+ return _this2.templateInputValue(entry).toLowerCase();
100
+ }).indexOf(query.toLowerCase()) !== -1;
101
+ }
102
+ }, {
103
+ key: "componentDidMount",
104
+ value: function componentDidMount() {
105
+ this.pollInputElement();
106
+ }
107
+ }, {
108
+ key: "componentWillUnmount",
109
+ value: function componentWillUnmount() {
110
+ clearTimeout(this.$pollInput);
111
+ } // Applications like Dragon NaturallySpeaking will modify the
112
+ // `input` field by directly changing its `.value`. These events
113
+ // don't trigger our JavaScript event listeners, so we need to poll
114
+ // to handle when and if they occur.
115
+
116
+ }, {
117
+ key: "pollInputElement",
118
+ value: function pollInputElement() {
119
+ var _this3 = this;
120
+
121
+ this.getDirectInputChanges();
122
+ this.$pollInput = setTimeout(function () {
123
+ _this3.pollInputElement();
124
+ }, 100);
125
+ }
126
+ }, {
127
+ key: "getDirectInputChanges",
128
+ value: function getDirectInputChanges() {
129
+ var inputReference = this.elementReferences[-1];
130
+ var queryHasChanged = inputReference && inputReference.value !== this.state.query;
131
+
132
+ if (queryHasChanged) {
133
+ this.handleInputChange({
134
+ target: {
135
+ value: inputReference.value
136
+ }
137
+ });
138
+ }
139
+ }
140
+ }, {
141
+ key: "componentDidUpdate",
142
+ value: function componentDidUpdate(prevState) {
143
+ var focused = this.state.focused;
144
+ var componentLostFocus = focused === null;
145
+ var focusedChanged = prevState.focused !== focused;
146
+ var focusDifferentElement = focusedChanged && !componentLostFocus;
147
+
148
+ if (focusDifferentElement) {
149
+ this.elementReferences[focused].focus();
150
+ }
151
+
152
+ var focusedInput = focused === -1;
153
+ var componentGainedFocus = focusedChanged && prevState.focused === null;
154
+ var selectAllText = focusedInput && componentGainedFocus;
155
+
156
+ if (selectAllText) {
157
+ var inputElement = this.elementReferences[focused];
158
+ inputElement.setSelectionRange(0, inputElement.value.length);
159
+ }
160
+ }
161
+ }, {
162
+ key: "hasAutoselect",
163
+ value: function hasAutoselect() {
164
+ return isIosDevice() ? false : this.props.autoselect;
165
+ } // This template is used when converting from a state.options object into a state.query.
166
+
167
+ }, {
168
+ key: "templateInputValue",
169
+ value: function templateInputValue(value) {
170
+ var inputValueTemplate = this.props.templates && this.props.templates.inputValue;
171
+ return inputValueTemplate ? inputValueTemplate(value) : value;
172
+ } // This template is used when displaying results / suggestions.
173
+
174
+ }, {
175
+ key: "templateSuggestion",
176
+ value: function templateSuggestion(value) {
177
+ var suggestionTemplate = this.props.templates && this.props.templates.suggestion;
178
+ return suggestionTemplate ? suggestionTemplate(value) : value;
179
+ }
180
+ }, {
181
+ key: "handleComponentBlur",
182
+ value: function handleComponentBlur(newState) {
183
+ var _this$state = this.state,
184
+ options = _this$state.options,
185
+ query = _this$state.query,
186
+ selected = _this$state.selected;
187
+ var newQuery;
188
+
189
+ if (this.props.confirmOnBlur) {
190
+ var _this$props$onConfirm, _this$props;
191
+
192
+ newQuery = newState.query || query;
193
+ (_this$props$onConfirm = (_this$props = this.props).onConfirm) === null || _this$props$onConfirm === void 0 ? void 0 : _this$props$onConfirm.call(_this$props, options[selected]);
194
+ } else {
195
+ newQuery = query;
196
+ }
197
+
198
+ this.setState({
199
+ focused: null,
200
+ menuOpen: newState.menuOpen || false,
201
+ query: newQuery,
202
+ selected: null,
203
+ validChoiceMade: this.isQueryAnOption(newQuery, options)
204
+ });
205
+ }
206
+ }, {
207
+ key: "handleListMouseLeave",
208
+ value: function handleListMouseLeave() {
209
+ this.setState({
210
+ hovered: null
211
+ });
212
+ }
213
+ }, {
214
+ key: "handleOptionBlur",
215
+ value: function handleOptionBlur(event, index) {
216
+ var _this$state2 = this.state,
217
+ focused = _this$state2.focused,
218
+ menuOpen = _this$state2.menuOpen,
219
+ options = _this$state2.options,
220
+ selected = _this$state2.selected;
221
+ var focusingOutsideComponent = event.relatedTarget === null;
222
+ var focusingInput = event.relatedTarget === this.elementReferences[-1];
223
+ var focusingAnotherOption = focused !== index && focused !== -1;
224
+ var blurComponent = !focusingAnotherOption && focusingOutsideComponent || !(focusingAnotherOption || focusingInput);
225
+
226
+ if (blurComponent) {
227
+ var keepMenuOpen = menuOpen && isIosDevice();
228
+ this.handleComponentBlur({
229
+ menuOpen: keepMenuOpen,
230
+ query: this.templateInputValue(options[selected])
231
+ });
232
+ }
233
+ }
234
+ }, {
235
+ key: "handleInputBlur",
236
+ value: function handleInputBlur() {
237
+ var _this$state3 = this.state,
238
+ focused = _this$state3.focused,
239
+ menuOpen = _this$state3.menuOpen,
240
+ options = _this$state3.options,
241
+ query = _this$state3.query,
242
+ selected = _this$state3.selected;
243
+ var focusingAnOption = focused !== -1;
244
+
245
+ if (!focusingAnOption) {
246
+ var keepMenuOpen = menuOpen && isIosDevice();
247
+ var newQuery = isIosDevice() ? query : this.templateInputValue(options[selected]);
248
+ this.handleComponentBlur({
249
+ menuOpen: keepMenuOpen,
250
+ query: newQuery
251
+ });
252
+ }
253
+ }
254
+ }, {
255
+ key: "handleInputChange",
256
+ value: function handleInputChange(event) {
257
+ var _this4 = this;
258
+
259
+ var _this$props2 = this.props,
260
+ minLength = _this$props2.minLength,
261
+ source = _this$props2.source,
262
+ showAllValues = _this$props2.showAllValues;
263
+ var autoselect = this.hasAutoselect();
264
+ var query = event.target.value;
265
+ var queryEmpty = query.length === 0;
266
+ var queryChanged = this.state.query.length !== query.length;
267
+ var queryLongEnough = query.length >= minLength;
268
+ this.setState({
269
+ query: query,
270
+ ariaHint: queryEmpty
271
+ });
272
+ var searchForOptions = showAllValues || !queryEmpty && queryChanged && queryLongEnough;
273
+
274
+ if (searchForOptions) {
275
+ source(query, function (options) {
276
+ var optionsAvailable = options.length > 0;
277
+
278
+ _this4.setState({
279
+ menuOpen: optionsAvailable,
280
+ options: options,
281
+ selected: autoselect && optionsAvailable ? 0 : -1,
282
+ validChoiceMade: false
283
+ });
284
+ });
285
+ } else if (queryEmpty || !queryLongEnough) {
286
+ this.setState({
287
+ menuOpen: false,
288
+ options: []
289
+ });
290
+ }
291
+ }
292
+ }, {
293
+ key: "handleInputClick",
294
+ value: function handleInputClick(event) {
295
+ this.handleInputChange(event);
296
+ }
297
+ }, {
298
+ key: "handleInputFocus",
299
+ value: function handleInputFocus() {
300
+ var _this$state4 = this.state,
301
+ query = _this$state4.query,
302
+ validChoiceMade = _this$state4.validChoiceMade,
303
+ options = _this$state4.options;
304
+ var minLength = this.props.minLength;
305
+ var shouldReopenMenu = !validChoiceMade && query.length >= minLength && options.length > 0;
306
+
307
+ if (shouldReopenMenu) {
308
+ this.setState(function (_ref) {
309
+ var menuOpen = _ref.menuOpen;
310
+ return {
311
+ focused: -1,
312
+ menuOpen: shouldReopenMenu || menuOpen,
313
+ selected: -1
314
+ };
315
+ });
316
+ } else {
317
+ this.setState({
318
+ focused: -1
319
+ });
320
+ }
321
+ }
322
+ }, {
323
+ key: "handleOptionFocus",
324
+ value: function handleOptionFocus(index) {
325
+ this.setState({
326
+ focused: index,
327
+ hovered: null,
328
+ selected: index
329
+ });
330
+ }
331
+ }, {
332
+ key: "handleOptionMouseEnter",
333
+ value: function handleOptionMouseEnter(index) {
334
+ // iOS Safari prevents click event if mouseenter adds hover background colour
335
+ // See: https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html#//apple_ref/doc/uid/TP40006511-SW4
336
+ if (!isIosDevice()) {
337
+ this.setState({
338
+ hovered: index
339
+ });
340
+ }
341
+ }
342
+ }, {
343
+ key: "handleOptionClick",
344
+ value: function handleOptionClick(index) {
345
+ var _this$props$onConfirm2, _this$props3;
346
+
347
+ var selectedOption = this.state.options[index];
348
+ var newQuery = this.templateInputValue(selectedOption);
349
+ (_this$props$onConfirm2 = (_this$props3 = this.props).onConfirm) === null || _this$props$onConfirm2 === void 0 ? void 0 : _this$props$onConfirm2.call(_this$props3, selectedOption);
350
+ this.setState({
351
+ focused: -1,
352
+ hovered: null,
353
+ menuOpen: false,
354
+ query: newQuery,
355
+ selected: -1,
356
+ validChoiceMade: true
357
+ });
358
+ this.forceUpdate();
359
+ }
360
+ }, {
361
+ key: "handleOptionMouseDown",
362
+ value: function handleOptionMouseDown(event) {
363
+ // Safari triggers focusOut before click, but if you
364
+ // preventDefault on mouseDown, you can stop that from happening.
365
+ // If this is removed, clicking on an option in Safari will trigger
366
+ // `handleOptionBlur`, which closes the menu, and the click will
367
+ // trigger on the element underneath instead.
368
+ // See: http://stackoverflow.com/questions/7621711/how-to-prevent-blur-running-when-clicking-a-link-in-jquery
369
+ event.preventDefault();
370
+ }
371
+ }, {
372
+ key: "handleUpArrow",
373
+ value: function handleUpArrow(event) {
374
+ event.preventDefault();
375
+ var _this$state5 = this.state,
376
+ menuOpen = _this$state5.menuOpen,
377
+ selected = _this$state5.selected;
378
+ var isNotAtTop = selected !== -1;
379
+ var allowMoveUp = isNotAtTop && menuOpen;
380
+
381
+ if (allowMoveUp) {
382
+ this.handleOptionFocus(selected - 1);
383
+ }
384
+ }
385
+ }, {
386
+ key: "handleDownArrow",
387
+ value: function handleDownArrow(event) {
388
+ var _this5 = this;
389
+
390
+ event.preventDefault(); // if not open, open
391
+
392
+ if (this.props.showAllValues && this.state.menuOpen === false) {
393
+ event.preventDefault();
394
+ this.props.source('', function (options) {
395
+ _this5.setState({
396
+ menuOpen: true,
397
+ options: options,
398
+ selected: 0,
399
+ focused: 0,
400
+ hovered: null
401
+ });
402
+ });
403
+ } else if (this.state.menuOpen === true) {
404
+ var _this$state6 = this.state,
405
+ menuOpen = _this$state6.menuOpen,
406
+ _options = _this$state6.options,
407
+ selected = _this$state6.selected;
408
+ var isNotAtBottom = selected !== _options.length - 1;
409
+ var allowMoveDown = isNotAtBottom && menuOpen;
410
+
411
+ if (allowMoveDown) {
412
+ this.handleOptionFocus(selected + 1);
413
+ }
414
+ }
415
+ }
416
+ }, {
417
+ key: "handleSpace",
418
+ value: function handleSpace(event) {
419
+ var _this6 = this;
420
+
421
+ // if not open, open
422
+ if (this.props.showAllValues && this.state.menuOpen === false && this.state.query === '') {
423
+ event.preventDefault();
424
+ this.props.source('', function (options) {
425
+ _this6.setState({
426
+ menuOpen: true,
427
+ options: options
428
+ });
429
+ });
430
+ }
431
+
432
+ var focusIsOnOption = this.state.focused !== -1;
433
+
434
+ if (focusIsOnOption) {
435
+ event.preventDefault();
436
+ this.handleOptionClick(this.state.focused);
437
+ }
438
+ }
439
+ }, {
440
+ key: "handleEnter",
441
+ value: function handleEnter(event) {
442
+ if (this.state.menuOpen) {
443
+ event.preventDefault();
444
+ var hasSelectedOption = this.state.selected >= 0;
445
+
446
+ if (hasSelectedOption) {
447
+ this.handleOptionClick(this.state.selected);
448
+ }
449
+ }
450
+ }
451
+ }, {
452
+ key: "handlePrintableKey",
453
+ value: function handlePrintableKey(event) {
454
+ var inputElement = this.elementReferences[-1];
455
+ var eventIsOnInput = event.target === inputElement;
456
+
457
+ if (!eventIsOnInput) {
458
+ // FIXME: This would be better if it was in componentDidUpdate,
459
+ // but using setState to trigger that seems to not work correctly
460
+ // in preact@8.1.0.
461
+ inputElement.focus();
462
+ }
463
+ }
464
+ }, {
465
+ key: "handleKeyDown",
466
+ value: function handleKeyDown(event) {
467
+ switch (keyCodes[event.keyCode]) {
468
+ case 'up':
469
+ this.handleUpArrow(event);
470
+ break;
471
+
472
+ case 'down':
473
+ this.handleDownArrow(event);
474
+ break;
475
+
476
+ case 'space':
477
+ this.handleSpace(event);
478
+ break;
479
+
480
+ case 'enter':
481
+ this.handleEnter(event);
482
+ break;
483
+
484
+ case 'escape':
485
+ this.handleComponentBlur({
486
+ query: this.state.query
487
+ });
488
+ break;
489
+
490
+ default:
491
+ if (isPrintableKeyCode(event.keyCode)) {
492
+ this.handlePrintableKey(event);
493
+ }
494
+
495
+ break;
496
+ }
497
+ }
498
+ }, {
499
+ key: "render",
500
+ value: function render() {
501
+ var _this7 = this;
502
+
503
+ var _this$props4 = this.props,
504
+ id = _this$props4.id,
505
+ cellWidth = _this$props4.cellWidth,
506
+ displayMenu = _this$props4.displayMenu,
507
+ minLength = _this$props4.minLength,
508
+ name = _this$props4.name,
509
+ placeholder = _this$props4.placeholder,
510
+ required = _this$props4.required,
511
+ showAllValues = _this$props4.showAllValues,
512
+ tNoResults = _this$props4.tNoResults,
513
+ tStatusQueryTooShort = _this$props4.tStatusQueryTooShort,
514
+ tStatusNoResults = _this$props4.tStatusNoResults,
515
+ tStatusSelectedOption = _this$props4.tStatusSelectedOption,
516
+ tStatusResults = _this$props4.tStatusResults,
517
+ tAssistiveHint = _this$props4.tAssistiveHint,
518
+ dropdownArrowFactory = _this$props4.dropdownArrow;
519
+ var _this$state7 = this.state,
520
+ focused = _this$state7.focused,
521
+ hovered = _this$state7.hovered,
522
+ menuOpen = _this$state7.menuOpen,
523
+ options = _this$state7.options,
524
+ query = _this$state7.query,
525
+ selected = _this$state7.selected,
526
+ ariaHint = _this$state7.ariaHint,
527
+ validChoiceMade = _this$state7.validChoiceMade;
528
+ var autoselect = this.hasAutoselect();
529
+ var inputFocused = focused === -1;
530
+ var noOptionsAvailable = options.length === 0;
531
+ var queryNotEmpty = query.length !== 0;
532
+ var queryLongEnough = query.length >= minLength;
533
+ var showNoOptionsFound = this.props.showNoOptionsFound && inputFocused && noOptionsAvailable && queryNotEmpty && queryLongEnough;
534
+ var componentIsFocused = focused !== null;
535
+ var dropdownArrowClassName = "govgr-autocomplete__dropdown-arrow-down";
536
+ var optionFocused = focused !== -1 && focused !== null;
537
+ var menuIsVisible = menuOpen || showNoOptionsFound;
538
+ var selectedOptionText = this.templateInputValue(options[selected]);
539
+ var optionBeginsWithQuery = selectedOptionText && selectedOptionText.toLowerCase().indexOf(query.toLowerCase()) === 0;
540
+ var hintValue = optionBeginsWithQuery && autoselect ? query + selectedOptionText.substr(query.length) : '';
541
+ var assistiveHintID = id + '__assistiveHint';
542
+ var ariaDescribedProp = ariaHint ? {
543
+ 'aria-describedby': assistiveHintID
544
+ } : null;
545
+ var dropdownArrow; // we only need a dropdown arrow if showAllValues is set to a truthy value
546
+
547
+ if (showAllValues) {
548
+ dropdownArrow = dropdownArrowFactory({
549
+ className: dropdownArrowClassName
550
+ }); // if the factory returns a string we'll render this as HTML (usage w/o (P)React)
551
+
552
+ if (typeof dropdownArrow === 'string') {
553
+ dropdownArrow = /*#__PURE__*/React.createElement("div", {
554
+ className: "autocomplete__dropdown-arrow-down-wrapper",
555
+ dangerouslySetInnerHTML: {
556
+ __html: dropdownArrow
557
+ }
558
+ });
559
+ }
560
+ }
561
+
562
+ return /*#__PURE__*/React.createElement(AutoCompleteWrapper, {
563
+ onKeyDown: this.handleKeyDown,
564
+ cellWidth: cellWidth
565
+ }, /*#__PURE__*/React.createElement(Status, {
566
+ id: id,
567
+ length: options.length,
568
+ queryLength: query.length,
569
+ minQueryLength: minLength,
570
+ selectedOption: this.templateInputValue(options[selected]),
571
+ selectedOptionIndex: selected,
572
+ validChoiceMade: validChoiceMade,
573
+ isInFocus: this.state.focused !== null,
574
+ tQueryTooShort: tStatusQueryTooShort,
575
+ tNoResults: tStatusNoResults,
576
+ tSelectedOption: tStatusSelectedOption,
577
+ tResults: tStatusResults
578
+ }), hintValue && /*#__PURE__*/React.createElement(AutoCompleteInputTypeahead, {
579
+ value: hintValue
580
+ }), /*#__PURE__*/React.createElement(AutoCompleteInput, _extends({
581
+ "aria-expanded": menuOpen ? 'true' : 'false',
582
+ "aria-activedescendant": optionFocused ? "".concat(id, "__option--").concat(focused) : '',
583
+ "aria-owns": "".concat(id, "__listbox"),
584
+ "aria-autocomplete": this.hasAutoselect() ? 'both' : 'list'
585
+ }, ariaDescribedProp, {
586
+ autoComplete: "off",
587
+ isFocused: componentIsFocused,
588
+ showAllValues: this.props.showAllValues,
589
+ id: id,
590
+ onClick: function onClick(event) {
591
+ return _this7.handleInputClick(event);
592
+ },
593
+ onBlur: this.handleInputBlur,
594
+ onChange: this.handleInputChange,
595
+ onFocus: this.handleInputFocus,
596
+ name: name,
597
+ placeholder: placeholder,
598
+ ref: function ref(inputElement) {
599
+ _this7.elementReferences[-1] = inputElement;
600
+ },
601
+ role: "combobox",
602
+ required: required,
603
+ value: query
604
+ })), dropdownArrow, /*#__PURE__*/React.createElement(AutoCompleteResultList, {
605
+ displayMenu: displayMenu,
606
+ isVisible: menuIsVisible,
607
+ onMouseLeave: function onMouseLeave() {
608
+ return _this7.handleListMouseLeave();
609
+ },
610
+ id: "".concat(id, "__listbox"),
611
+ role: "listbox"
612
+ }, options.map(function (option, index) {
613
+ var showFocused = focused === -1 ? selected === index : focused === index;
614
+ var iosPosinsetHtml = isIosDevice() ? "<span id=".concat(id, "__option-suffix--").concat(index, " style=\"border:0;clip:rect(0 0 0 0);height:1px;") + 'marginBottom:-1px;marginRight:-1px;overflow:hidden;padding:0;position:absolute;' + 'whiteSpace:nowrap;width:1px">' + " ".concat(index + 1, " of ").concat(options.length, "</span>") : '';
615
+ return /*#__PURE__*/React.createElement(AutoCompleteResultListItem, {
616
+ isFocused: showFocused,
617
+ isHovered: hovered,
618
+ index: index,
619
+ "aria-selected": focused === index ? 'true' : 'false',
620
+ dangerouslySetInnerHTML: {
621
+ __html: _this7.templateSuggestion(option) + iosPosinsetHtml
622
+ },
623
+ id: "".concat(id, "__option--").concat(index),
624
+ key: index,
625
+ onBlur: function onBlur(event) {
626
+ return _this7.handleOptionBlur(event, index);
627
+ },
628
+ onClick: function onClick() {
629
+ return _this7.handleOptionClick(index);
630
+ },
631
+ onMouseDown: _this7.handleOptionMouseDown,
632
+ onMouseEnter: function onMouseEnter() {
633
+ return _this7.handleOptionMouseEnter(index);
634
+ },
635
+ ref: function ref(optionEl) {
636
+ _this7.elementReferences[index] = optionEl;
637
+ },
638
+ role: "option",
639
+ tabIndex: -1,
640
+ "aria-posinset": index + 1,
641
+ "aria-setsize": options.length
642
+ });
643
+ }), showNoOptionsFound && /*#__PURE__*/React.createElement(AutoCompleteNoResult, null, tNoResults === null || tNoResults === void 0 ? void 0 : tNoResults())), /*#__PURE__*/React.createElement(AutoCompleteAssistiveHint, {
644
+ id: assistiveHintID
645
+ }, tAssistiveHint === null || tAssistiveHint === void 0 ? void 0 : tAssistiveHint()));
646
+ }
647
+ }]);
648
+
649
+ return AutoComplete;
650
+ }(Component);
651
+
652
+ AutoComplete.defaultProps = {
653
+ cellWidth: 'one-third',
654
+ autoselect: false,
655
+ defaultValue: '',
656
+ displayMenu: 'overlay',
657
+ minLength: 0,
658
+ name: 'govgr-input-autocomplete',
659
+ placeholder: '',
660
+ onConfirm: function onConfirm() {
661
+ return;
662
+ },
663
+ confirmOnBlur: false,
664
+ showNoOptionsFound: true,
665
+ showAllValues: false,
666
+ required: false,
667
+ tNoResults: function tNoResults() {
668
+ return 'No results found';
669
+ },
670
+ tAssistiveHint: function tAssistiveHint() {
671
+ return 'When autocomplete results are available use up and down arrows to review and enter to select. Touch device users, explore by touch or with swipe gestures.';
672
+ },
673
+ dropdownArrow: DropdownArrowDown
674
+ };
675
+ export { AutoComplete as default };
676
+ export { AutoCompleteInput, AutoCompleteInputTypeahead, AutoCompleteNoResult, AutoCompleteResultList, AutoCompleteResultListItem, AutoCompleteWrapper, AutoCompleteAssistiveHint };