@digigov/ui 1.2.0-a7ffb5dc → 2.0.0-4be8f7cc

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 (431) hide show
  1. package/app/Footer/index.mdx +18 -5
  2. package/app/Header/index.mdx +7 -5
  3. package/app/Masthead/index.mdx +9 -4
  4. package/app/Modal/auto.d.ts +2 -2
  5. package/app/Modal/index.d.ts +2 -2
  6. package/app/Modal/index.js +1 -1
  7. package/app/Modal/index.mdx +11 -4
  8. package/app/NotFound/index.mdx +2 -0
  9. package/app/Panel/index.mdx +9 -4
  10. package/app/PhaseBannerHeader/index.mdx +4 -4
  11. package/app/QrCodeViewer/QRCode.stories.d.ts +1 -0
  12. package/app/QrCodeViewer/index.d.ts +1 -0
  13. package/app/QrCodeViewer/index.js +2 -1
  14. package/app/QrCodeViewer/index.mdx +4 -4
  15. package/app/Skeleton/Skeleton.stories/index.js +16 -0
  16. package/{utils/Kitchensink/AllComponents → app/Skeleton/Skeleton.stories}/package.json +1 -1
  17. package/app/Skeleton/Skeleton.stories.d.ts +17 -0
  18. package/app/Skeleton/__stories__/Button/index.js +9 -0
  19. package/{utils/Kitchensink/KitchensinkByLetter → app/Skeleton/__stories__/Button}/package.json +1 -1
  20. package/app/Skeleton/__stories__/Button.d.ts +3 -0
  21. package/app/Skeleton/__stories__/Circular/index.js +11 -0
  22. package/{utils/Kitchensink/KitchensinkComponent → app/Skeleton/__stories__/Circular}/package.json +1 -1
  23. package/app/Skeleton/__stories__/Circular.d.ts +3 -0
  24. package/app/Skeleton/__stories__/Default/index.js +7 -0
  25. package/app/Skeleton/__stories__/Default/package.json +6 -0
  26. package/app/Skeleton/__stories__/Default.d.ts +3 -0
  27. package/app/Skeleton/__stories__/NoAnimation/index.js +9 -0
  28. package/{utils/Kitchensink/KitchensinkByCategory → app/Skeleton/__stories__/NoAnimation}/package.json +1 -1
  29. package/app/Skeleton/__stories__/NoAnimation.d.ts +3 -0
  30. package/app/Skeleton/__stories__/Rectangular/index.js +10 -0
  31. package/app/Skeleton/__stories__/Rectangular/package.json +6 -0
  32. package/app/Skeleton/__stories__/Rectangular.d.ts +3 -0
  33. package/app/Skeleton/__stories__/SpecificWidthAndHeight/index.js +10 -0
  34. package/app/Skeleton/__stories__/SpecificWidthAndHeight/package.json +6 -0
  35. package/app/Skeleton/__stories__/SpecificWidthAndHeight.d.ts +3 -0
  36. package/app/Skeleton/__stories__/UnderTypography/index.js +10 -0
  37. package/{form/AutoComplete/__stories__/WithInLine → app/Skeleton/__stories__/UnderTypography}/package.json +1 -1
  38. package/app/Skeleton/__stories__/UnderTypography.d.ts +3 -0
  39. package/app/Skeleton/__stories__/WithChildren/index.js +8 -0
  40. package/app/Skeleton/__stories__/WithChildren/package.json +6 -0
  41. package/app/Skeleton/__stories__/WithChildren.d.ts +3 -0
  42. package/app/Skeleton/index.d.ts +3 -0
  43. package/app/Skeleton/index.js +3 -0
  44. package/{misc/KitchenSink → app/Skeleton}/package.json +1 -1
  45. package/app/ThemeOptions/index.d.ts +2 -2
  46. package/cjs/app/Footer/index.mdx +18 -5
  47. package/cjs/app/Header/index.mdx +7 -5
  48. package/cjs/app/Masthead/index.mdx +9 -4
  49. package/cjs/app/Modal/index.js +1 -1
  50. package/cjs/app/Modal/index.mdx +11 -4
  51. package/cjs/app/NotFound/index.mdx +2 -0
  52. package/cjs/app/Panel/index.mdx +9 -4
  53. package/cjs/app/PhaseBannerHeader/index.mdx +4 -4
  54. package/cjs/app/QrCodeViewer/index.js +3 -2
  55. package/cjs/app/QrCodeViewer/index.mdx +4 -4
  56. package/cjs/app/Skeleton/Skeleton.stories/index.js +111 -0
  57. package/cjs/app/Skeleton/__stories__/Button/index.js +16 -0
  58. package/cjs/app/Skeleton/__stories__/Circular/index.js +18 -0
  59. package/cjs/app/Skeleton/__stories__/Default/index.js +14 -0
  60. package/cjs/app/Skeleton/__stories__/NoAnimation/index.js +16 -0
  61. package/cjs/app/Skeleton/__stories__/Rectangular/index.js +17 -0
  62. package/cjs/app/Skeleton/__stories__/SpecificWidthAndHeight/index.js +17 -0
  63. package/cjs/app/Skeleton/__stories__/UnderTypography/index.js +17 -0
  64. package/cjs/app/Skeleton/__stories__/WithChildren/index.js +15 -0
  65. package/cjs/app/Skeleton/index.js +23 -0
  66. package/cjs/content/Accordion/__stories__/Auto/index.js +2 -3
  67. package/cjs/content/Accordion/hooks/index.js +0 -1
  68. package/cjs/content/Accordion/index.mdx +9 -5
  69. package/cjs/content/Blockquote/index.mdx +3 -5
  70. package/cjs/content/Card/index.mdx +3 -5
  71. package/cjs/content/Chip/index.mdx +4 -5
  72. package/cjs/content/Details/index.mdx +3 -5
  73. package/cjs/content/List/__stories__/Default/index.js +1 -2
  74. package/cjs/content/List/index.mdx +3 -5
  75. package/cjs/content/SafeHTML/index.js +5 -8
  76. package/cjs/content/StepNav/index.mdx +28 -5
  77. package/cjs/content/SummaryList/index.mdx +10 -5
  78. package/cjs/content/Table/index.js +2 -2
  79. package/cjs/content/Table/index.mdx +13 -14
  80. package/cjs/content/TaskList/index.mdx +9 -5
  81. package/cjs/content/Timeline/index.mdx +10 -5
  82. package/cjs/feedback/CopyToClipboard/index.mdx +3 -5
  83. package/cjs/feedback/ErrorSummary/index.mdx +3 -5
  84. package/cjs/feedback/NotificationBanner/index.mdx +14 -5
  85. package/cjs/feedback/PhaseBanner/index.mdx +8 -5
  86. package/cjs/feedback/WarningText/index.mdx +5 -5
  87. package/cjs/form/AutoComplete/AutoComplete.stories/index.js +44 -8
  88. package/cjs/form/AutoComplete/AutoComplete.stories.playwright.json +33 -0
  89. package/cjs/form/AutoComplete/Status/index.js +12 -5
  90. package/cjs/form/AutoComplete/__stories__/Multiple/index.js +24 -0
  91. package/cjs/form/AutoComplete/__stories__/{WithInLine → MultipleShowingTwoSelected}/index.js +7 -6
  92. package/cjs/form/AutoComplete/__stories__/MultipleWithDefaultValues/index.js +23 -0
  93. package/cjs/form/AutoComplete/__stories__/MultipleWithMinLength/index.js +26 -0
  94. package/cjs/form/AutoComplete/__stories__/WithShowAllValues/index.js +0 -1
  95. package/cjs/form/AutoComplete/index.js +312 -202
  96. package/cjs/form/AutoComplete/index.mdx +13 -20
  97. package/cjs/form/AutoComplete/utils/index.js +2 -1
  98. package/cjs/form/Button/index.mdx +3 -5
  99. package/cjs/form/Checkbox/index.mdx +3 -5
  100. package/cjs/form/DateInputContainer/index.mdx +3 -5
  101. package/cjs/form/ErrorMessage/index.mdx +3 -5
  102. package/cjs/form/FileUpload/index.mdx +3 -5
  103. package/cjs/form/RadioContainer/index.mdx +2 -14
  104. package/cjs/form/SelectContainer/index.mdx +3 -1
  105. package/cjs/form/SingleCharacterInputs/index.mdx +3 -5
  106. package/cjs/form/TextArea/index.mdx +3 -5
  107. package/cjs/form/TextInput/TextInput.stories/index.js +12 -0
  108. package/cjs/form/TextInput/__stories__/DisabledInputWithValue/index.js +31 -0
  109. package/cjs/form/TextInput/index.mdx +3 -5
  110. package/cjs/govgr/Footer/index.mdx +1 -1
  111. package/cjs/i18n/locales/el/index.js +2 -2
  112. package/cjs/i18n/locales/en/index.js +2 -2
  113. package/cjs/layouts/Basic/Bottom/__stories__/Default/index.js +22 -0
  114. package/cjs/layouts/Basic/Bottom/index.mdx +9 -28
  115. package/cjs/layouts/Basic/Container/__stories__/Default/index.js +20 -0
  116. package/cjs/layouts/Basic/Container/index.mdx +23 -0
  117. package/cjs/layouts/Basic/Main/__stories__/Default/index.js +20 -0
  118. package/cjs/layouts/Basic/Main/index.mdx +10 -47
  119. package/cjs/layouts/Basic/Top/__stories__/Default/index.js +20 -0
  120. package/cjs/layouts/Basic/Top/index.mdx +10 -55
  121. package/cjs/layouts/Basic/index.mdx +27 -25
  122. package/cjs/layouts/Grid/index.mdx +39 -0
  123. package/cjs/lazy/index.js +152 -134
  124. package/cjs/navigation/BackLink/index.mdx +4 -5
  125. package/cjs/navigation/Breadcrumbs/index.mdx +6 -5
  126. package/cjs/navigation/Drawer/index.mdx +4 -10
  127. package/cjs/navigation/Dropdown/Dropdown.stories/index.js +12 -0
  128. package/cjs/navigation/Dropdown/Dropdown.stories.playwright.json +16 -0
  129. package/cjs/navigation/Dropdown/__stories__/ScrollableContent/index.js +68 -0
  130. package/cjs/navigation/Dropdown/index.mdx +3 -5
  131. package/cjs/navigation/Link/index.mdx +5 -15
  132. package/cjs/navigation/NavList/__stories__/Default/index.js +14 -2
  133. package/cjs/navigation/NavList/__stories__/HorizontalWithDrawer/index.js +35 -2
  134. package/cjs/navigation/NavList/__stories__/HorizontalWithoutDrawer/index.js +35 -2
  135. package/cjs/navigation/NavList/__stories__/NavListWithoutNav/index.js +14 -2
  136. package/cjs/navigation/NavList/__stories__/UsingNavListAuto/index.js +37 -4
  137. package/cjs/navigation/NavList/__stories__/Vertical/index.js +14 -2
  138. package/cjs/navigation/NavList/__stories__/VerticalWithoutDrawer/index.js +35 -2
  139. package/cjs/navigation/NavList/index.mdx +23 -7
  140. package/cjs/navigation/Pagination/__stories__/PaginationWithSmallFont/index.js +2 -2
  141. package/cjs/navigation/Pagination/__stories__/WithResultsPerPage/index.js +2 -2
  142. package/cjs/navigation/Pagination/index.mdx +9 -5
  143. package/cjs/navigation/Tabs/index.mdx +9 -5
  144. package/cjs/registry/index.js +6 -12
  145. package/cjs/typography/Heading/index.mdx +3 -5
  146. package/cjs/typography/HeadingCaption/index.mdx +3 -5
  147. package/cjs/typography/Hint/index.mdx +3 -5
  148. package/cjs/typography/NormalText/index.mdx +3 -5
  149. package/cjs/typography/Paragraph/index.mdx +9 -30
  150. package/cjs/typography/Typography/index.js +23 -0
  151. package/cjs/typography/Typography/index.mdx +12 -0
  152. package/cjs/typography/index.js +11 -0
  153. package/cjs/utils/Base/index.mdx +13 -0
  154. package/cjs/utils/VisuallyHidden/index.mdx +10 -5
  155. package/content/Accordion/__stories__/Auto/index.js +2 -3
  156. package/content/Accordion/auto.d.ts +3 -3
  157. package/content/Accordion/hooks/index.js +0 -1
  158. package/content/Accordion/index.mdx +9 -5
  159. package/content/Blockquote/index.mdx +3 -5
  160. package/content/Card/index.mdx +3 -5
  161. package/content/Chip/index.mdx +4 -5
  162. package/content/Details/index.mdx +3 -5
  163. package/content/List/__stories__/Default/index.js +1 -2
  164. package/content/List/index.mdx +3 -5
  165. package/content/SafeHTML/index.d.ts +1 -1
  166. package/content/SafeHTML/index.js +5 -8
  167. package/content/StepNav/auto.d.ts +3 -3
  168. package/content/StepNav/index.mdx +28 -5
  169. package/content/SummaryList/index.mdx +10 -5
  170. package/content/Table/index.d.ts +1 -1
  171. package/content/Table/index.js +2 -2
  172. package/content/Table/index.mdx +13 -14
  173. package/content/TaskList/index.mdx +9 -5
  174. package/content/Timeline/index.mdx +10 -5
  175. package/feedback/CopyToClipboard/index.d.ts +1 -1
  176. package/feedback/CopyToClipboard/index.mdx +3 -5
  177. package/feedback/ErrorSummary/index.mdx +3 -5
  178. package/feedback/NotificationBanner/index.mdx +14 -5
  179. package/feedback/PhaseBanner/index.mdx +8 -5
  180. package/feedback/WarningText/index.mdx +5 -5
  181. package/form/AutoComplete/AutoComplete.stories/index.js +4 -1
  182. package/form/AutoComplete/AutoComplete.stories.d.ts +4 -1
  183. package/form/AutoComplete/AutoComplete.stories.playwright.json +33 -0
  184. package/form/AutoComplete/Status/index.d.ts +4 -2
  185. package/form/AutoComplete/Status/index.js +11 -4
  186. package/form/AutoComplete/__stories__/Multiple/index.js +17 -0
  187. package/form/AutoComplete/__stories__/Multiple/package.json +6 -0
  188. package/form/AutoComplete/__stories__/Multiple.d.ts +3 -0
  189. package/form/AutoComplete/__stories__/{WithInLine → MultipleShowingTwoSelected}/index.js +6 -5
  190. package/form/AutoComplete/__stories__/MultipleShowingTwoSelected/package.json +6 -0
  191. package/form/AutoComplete/__stories__/MultipleShowingTwoSelected.d.ts +3 -0
  192. package/form/AutoComplete/__stories__/MultipleWithDefaultValues/index.js +16 -0
  193. package/form/AutoComplete/__stories__/MultipleWithDefaultValues/package.json +6 -0
  194. package/form/AutoComplete/__stories__/MultipleWithDefaultValues.d.ts +3 -0
  195. package/form/AutoComplete/__stories__/MultipleWithMinLength/index.js +19 -0
  196. package/form/AutoComplete/__stories__/MultipleWithMinLength/package.json +6 -0
  197. package/form/AutoComplete/__stories__/MultipleWithMinLength.d.ts +3 -0
  198. package/form/AutoComplete/__stories__/WithShowAllValues/index.js +0 -1
  199. package/form/AutoComplete/index.d.ts +12 -18
  200. package/form/AutoComplete/index.js +295 -197
  201. package/form/AutoComplete/index.mdx +13 -20
  202. package/form/AutoComplete/utils/index.js +2 -1
  203. package/form/AutoComplete/utils.d.ts +1 -0
  204. package/form/Button/index.mdx +3 -5
  205. package/form/Checkbox/index.mdx +3 -5
  206. package/form/DateInputContainer/index.mdx +3 -5
  207. package/form/ErrorMessage/index.mdx +3 -5
  208. package/form/FileUpload/index.mdx +3 -5
  209. package/form/RadioContainer/index.mdx +2 -14
  210. package/form/SelectContainer/index.mdx +3 -1
  211. package/form/SingleCharacterInputs/index.mdx +3 -5
  212. package/form/TextArea/index.mdx +3 -5
  213. package/form/TextInput/TextInput.stories/index.js +1 -0
  214. package/form/TextInput/TextInput.stories.d.ts +1 -0
  215. package/form/TextInput/__stories__/DisabledInputWithValue/index.js +25 -0
  216. package/form/TextInput/__stories__/DisabledInputWithValue/package.json +6 -0
  217. package/form/TextInput/__stories__/DisabledInputWithValue.d.ts +3 -0
  218. package/form/TextInput/index.mdx +3 -5
  219. package/govgr/Footer/index.mdx +1 -1
  220. package/i18n/locales/el/index.js +2 -2
  221. package/i18n/locales/en/index.js +2 -2
  222. package/index.js +1 -1
  223. package/layouts/Basic/Bottom/__stories__/Default/index.js +15 -0
  224. package/layouts/Basic/Bottom/__stories__/Default/package.json +6 -0
  225. package/layouts/Basic/Bottom/__stories__/Default.d.ts +3 -0
  226. package/layouts/Basic/Bottom/index.mdx +9 -28
  227. package/layouts/Basic/Container/__stories__/Default/index.js +13 -0
  228. package/layouts/Basic/Container/__stories__/Default/package.json +6 -0
  229. package/layouts/Basic/Container/__stories__/Default.d.ts +3 -0
  230. package/layouts/Basic/Container/index.mdx +23 -0
  231. package/layouts/Basic/Main/__stories__/Default/index.js +13 -0
  232. package/layouts/Basic/Main/__stories__/Default/package.json +6 -0
  233. package/layouts/Basic/Main/__stories__/Default.d.ts +3 -0
  234. package/layouts/Basic/Main/index.mdx +10 -47
  235. package/layouts/Basic/Top/__stories__/Default/index.js +13 -0
  236. package/layouts/Basic/Top/__stories__/Default/package.json +6 -0
  237. package/layouts/Basic/Top/__stories__/Default.d.ts +3 -0
  238. package/layouts/Basic/Top/index.mdx +10 -55
  239. package/layouts/Basic/index.mdx +27 -25
  240. package/layouts/Grid/index.mdx +39 -0
  241. package/lazy/index.js +120 -106
  242. package/lazy.d.ts +269 -267
  243. package/navigation/BackLink/index.mdx +4 -5
  244. package/navigation/Breadcrumbs/index.mdx +6 -5
  245. package/navigation/Drawer/auto.d.ts +3 -3
  246. package/navigation/Drawer/index.mdx +4 -10
  247. package/navigation/Dropdown/Dropdown.stories/index.js +1 -0
  248. package/navigation/Dropdown/Dropdown.stories.d.ts +1 -0
  249. package/navigation/Dropdown/Dropdown.stories.playwright.json +16 -0
  250. package/navigation/Dropdown/__stories__/ScrollableContent/index.js +61 -0
  251. package/navigation/Dropdown/__stories__/ScrollableContent/package.json +6 -0
  252. package/navigation/Dropdown/__stories__/ScrollableContent.d.ts +3 -0
  253. package/navigation/Dropdown/index.d.ts +1 -1
  254. package/navigation/Dropdown/index.mdx +3 -5
  255. package/navigation/Link/index.mdx +5 -15
  256. package/navigation/NavList/__stories__/Default/index.js +13 -1
  257. package/navigation/NavList/__stories__/HorizontalWithDrawer/index.js +34 -1
  258. package/navigation/NavList/__stories__/HorizontalWithoutDrawer/index.js +34 -1
  259. package/navigation/NavList/__stories__/NavListWithoutNav/index.js +13 -1
  260. package/navigation/NavList/__stories__/UsingNavListAuto/index.js +35 -2
  261. package/navigation/NavList/__stories__/Vertical/index.js +13 -1
  262. package/navigation/NavList/__stories__/VerticalWithoutDrawer/index.js +34 -1
  263. package/navigation/NavList/index.mdx +23 -7
  264. package/navigation/NavList/types.d.ts +1 -2
  265. package/navigation/Pagination/__stories__/PaginationWithSmallFont/index.js +1 -1
  266. package/navigation/Pagination/__stories__/WithResultsPerPage/index.js +1 -1
  267. package/navigation/Pagination/auto.d.ts +4 -4
  268. package/navigation/Pagination/index.d.ts +2 -2
  269. package/navigation/Pagination/index.mdx +9 -5
  270. package/navigation/Tabs/auto.d.ts +2 -2
  271. package/navigation/Tabs/index.mdx +9 -5
  272. package/package.json +4 -6
  273. package/registry/index.js +6 -12
  274. package/registry.d.ts +4 -6
  275. package/src/app/Footer/index.mdx +18 -5
  276. package/src/app/Header/index.mdx +7 -5
  277. package/src/app/Masthead/index.mdx +9 -4
  278. package/src/app/Modal/index.mdx +11 -4
  279. package/src/app/Modal/index.tsx +1 -1
  280. package/src/app/NotFound/index.mdx +2 -0
  281. package/src/app/Panel/index.mdx +9 -4
  282. package/src/app/PhaseBannerHeader/index.mdx +4 -4
  283. package/src/app/QrCodeViewer/index.mdx +4 -4
  284. package/src/app/QrCodeViewer/index.tsx +2 -0
  285. package/src/app/Skeleton/Skeleton.stories.js +18 -0
  286. package/src/app/Skeleton/__stories__/Button.tsx +6 -0
  287. package/src/app/Skeleton/__stories__/Circular.tsx +8 -0
  288. package/src/app/Skeleton/__stories__/Default.tsx +6 -0
  289. package/src/app/Skeleton/__stories__/NoAnimation.tsx +6 -0
  290. package/src/app/Skeleton/__stories__/Rectangular.tsx +8 -0
  291. package/src/app/Skeleton/__stories__/SpecificWidthAndHeight.tsx +8 -0
  292. package/src/app/Skeleton/__stories__/UnderTypography.tsx +17 -0
  293. package/src/app/Skeleton/__stories__/WithChildren.tsx +11 -0
  294. package/src/app/Skeleton/index.tsx +4 -0
  295. package/src/app/ThemeOptions/index.tsx +1 -1
  296. package/src/content/Accordion/__stories__/Auto.tsx +2 -2
  297. package/src/content/Accordion/auto.tsx +1 -1
  298. package/src/content/Accordion/hooks.ts +0 -1
  299. package/src/content/Accordion/index.mdx +9 -5
  300. package/src/content/Blockquote/index.mdx +3 -5
  301. package/src/content/Card/index.mdx +3 -5
  302. package/src/content/Chip/index.mdx +4 -5
  303. package/src/content/Details/index.mdx +3 -5
  304. package/src/content/List/__stories__/Default.tsx +3 -4
  305. package/src/content/List/index.mdx +3 -5
  306. package/src/content/SafeHTML/index.tsx +3 -4
  307. package/src/content/StepNav/index.mdx +28 -5
  308. package/src/content/SummaryList/index.mdx +10 -5
  309. package/src/content/Table/index.mdx +13 -14
  310. package/src/content/Table/index.tsx +2 -2
  311. package/src/content/TaskList/index.mdx +9 -5
  312. package/src/content/Timeline/index.mdx +10 -5
  313. package/src/feedback/CopyToClipboard/index.mdx +3 -5
  314. package/src/feedback/ErrorSummary/index.mdx +3 -5
  315. package/src/feedback/NotificationBanner/index.mdx +14 -5
  316. package/src/feedback/PhaseBanner/index.mdx +8 -5
  317. package/src/feedback/WarningText/index.mdx +5 -5
  318. package/src/form/AutoComplete/AutoComplete.stories.js +4 -1
  319. package/src/form/AutoComplete/AutoComplete.stories.playwright.json +33 -0
  320. package/src/form/AutoComplete/Status/index.tsx +10 -6
  321. package/src/form/AutoComplete/__stories__/Multiple.tsx +18 -0
  322. package/src/form/AutoComplete/__stories__/{WithInLine.tsx → MultipleShowingTwoSelected.tsx} +3 -8
  323. package/src/form/AutoComplete/__stories__/MultipleWithDefaultValues.tsx +16 -0
  324. package/src/form/AutoComplete/__stories__/MultipleWithMinLength.tsx +29 -0
  325. package/src/form/AutoComplete/__stories__/WithShowAllValues.tsx +0 -1
  326. package/src/form/AutoComplete/index.mdx +13 -20
  327. package/src/form/AutoComplete/index.tsx +351 -213
  328. package/src/form/AutoComplete/utils.ts +3 -2
  329. package/src/form/Button/index.mdx +3 -5
  330. package/src/form/Checkbox/index.mdx +3 -5
  331. package/src/form/DateInputContainer/index.mdx +3 -5
  332. package/src/form/ErrorMessage/index.mdx +3 -5
  333. package/src/form/FileUpload/index.mdx +3 -5
  334. package/src/form/RadioContainer/index.mdx +2 -14
  335. package/src/form/SelectContainer/index.mdx +3 -1
  336. package/src/form/SingleCharacterInputs/index.mdx +3 -5
  337. package/src/form/TextArea/index.mdx +3 -5
  338. package/src/form/TextInput/TextInput.stories.js +1 -0
  339. package/src/form/TextInput/__stories__/DisabledInputWithValue.tsx +27 -0
  340. package/src/form/TextInput/index.mdx +3 -5
  341. package/src/govgr/Footer/index.mdx +1 -1
  342. package/src/i18n/locales/el.ts +2 -2
  343. package/src/i18n/locales/en.ts +2 -2
  344. package/src/layouts/Basic/Bottom/__stories__/Default.tsx +35 -0
  345. package/src/layouts/Basic/Bottom/index.mdx +9 -28
  346. package/src/layouts/Basic/Container/__stories__/Default.tsx +30 -0
  347. package/src/layouts/Basic/Container/index.mdx +23 -0
  348. package/src/layouts/Basic/Main/__stories__/Default.tsx +30 -0
  349. package/src/layouts/Basic/Main/index.mdx +10 -47
  350. package/src/layouts/Basic/Top/__stories__/Default.tsx +28 -0
  351. package/src/layouts/Basic/Top/index.mdx +10 -55
  352. package/src/layouts/Basic/index.mdx +27 -25
  353. package/src/layouts/Grid/index.mdx +39 -0
  354. package/src/lazy.js +18 -16
  355. package/src/navigation/BackLink/index.mdx +4 -5
  356. package/src/navigation/Breadcrumbs/index.mdx +6 -5
  357. package/src/navigation/Drawer/index.mdx +4 -10
  358. package/src/navigation/Dropdown/Dropdown.stories.js +1 -0
  359. package/src/navigation/Dropdown/Dropdown.stories.playwright.json +16 -0
  360. package/src/navigation/Dropdown/__stories__/ScrollableContent.tsx +82 -0
  361. package/src/navigation/Dropdown/index.mdx +3 -5
  362. package/src/navigation/Link/index.mdx +5 -15
  363. package/src/navigation/NavList/__stories__/Default.tsx +18 -1
  364. package/src/navigation/NavList/__stories__/HorizontalWithDrawer.tsx +37 -1
  365. package/src/navigation/NavList/__stories__/HorizontalWithoutDrawer.tsx +37 -1
  366. package/src/navigation/NavList/__stories__/NavListWithoutNav.tsx +18 -1
  367. package/src/navigation/NavList/__stories__/UsingNavListAuto.tsx +39 -2
  368. package/src/navigation/NavList/__stories__/Vertical.tsx +18 -1
  369. package/src/navigation/NavList/__stories__/VerticalWithoutDrawer.tsx +37 -1
  370. package/src/navigation/NavList/index.mdx +23 -7
  371. package/src/navigation/NavList/types.tsx +1 -2
  372. package/src/navigation/Pagination/__stories__/PaginationWithSmallFont.tsx +1 -1
  373. package/src/navigation/Pagination/__stories__/WithResultsPerPage.tsx +1 -1
  374. package/src/navigation/Pagination/index.mdx +9 -5
  375. package/src/navigation/Tabs/index.mdx +9 -5
  376. package/src/registry.js +6 -12
  377. package/src/typography/Heading/index.mdx +3 -5
  378. package/src/typography/HeadingCaption/index.mdx +3 -5
  379. package/src/typography/Hint/index.mdx +3 -5
  380. package/src/typography/NormalText/index.mdx +3 -5
  381. package/src/typography/Paragraph/index.mdx +9 -30
  382. package/src/typography/Typography/index.mdx +12 -0
  383. package/src/typography/Typography/index.tsx +4 -0
  384. package/src/typography/index.ts +1 -0
  385. package/src/utils/Base/index.mdx +13 -0
  386. package/src/utils/VisuallyHidden/index.mdx +10 -5
  387. package/typography/Heading/index.mdx +3 -5
  388. package/typography/HeadingCaption/index.mdx +3 -5
  389. package/typography/Hint/index.mdx +3 -5
  390. package/typography/NormalText/index.mdx +3 -5
  391. package/typography/Paragraph/index.mdx +9 -30
  392. package/typography/Typography/index.d.ts +3 -0
  393. package/typography/Typography/index.js +3 -0
  394. package/typography/Typography/index.mdx +12 -0
  395. package/typography/Typography/package.json +6 -0
  396. package/typography/index.d.ts +1 -0
  397. package/typography/index.js +2 -1
  398. package/utils/Base/index.mdx +13 -0
  399. package/utils/VisuallyHidden/index.mdx +10 -5
  400. package/cjs/content/List/List.stories.playwright.json +0 -27
  401. package/cjs/layouts/Basic/Masthead/index.mdx +0 -65
  402. package/cjs/misc/KitchenSink/index.js +0 -93
  403. package/cjs/utils/Kitchensink/AllComponents/index.js +0 -16
  404. package/cjs/utils/Kitchensink/KitchensinkByCategory/index.js +0 -39
  405. package/cjs/utils/Kitchensink/KitchensinkByLetter/index.js +0 -26
  406. package/cjs/utils/Kitchensink/KitchensinkComponent/index.js +0 -55
  407. package/cjs/utils/Kitchensink/KitchensinkDashboard/index.js +0 -47
  408. package/content/List/List.stories.playwright.json +0 -27
  409. package/form/AutoComplete/__stories__/WithInLine.d.ts +0 -3
  410. package/layouts/Basic/Masthead/index.mdx +0 -65
  411. package/misc/KitchenSink/index.d.ts +0 -8
  412. package/misc/KitchenSink/index.js +0 -8
  413. package/src/content/List/List.stories.playwright.json +0 -27
  414. package/src/layouts/Basic/Masthead/index.mdx +0 -65
  415. package/src/misc/KitchenSink/index.tsx +0 -8
  416. package/src/utils/Kitchensink/AllComponents.tsx +0 -6
  417. package/src/utils/Kitchensink/KitchensinkByCategory.tsx +0 -56
  418. package/src/utils/Kitchensink/KitchensinkByLetter.tsx +0 -35
  419. package/src/utils/Kitchensink/KitchensinkComponent.tsx +0 -70
  420. package/src/utils/Kitchensink/KitchensinkDashboard.tsx +0 -56
  421. package/utils/Kitchensink/AllComponents/index.js +0 -9
  422. package/utils/Kitchensink/AllComponents.d.ts +0 -2
  423. package/utils/Kitchensink/KitchensinkByCategory/index.js +0 -32
  424. package/utils/Kitchensink/KitchensinkByCategory.d.ts +0 -6
  425. package/utils/Kitchensink/KitchensinkByLetter/index.js +0 -19
  426. package/utils/Kitchensink/KitchensinkByLetter.d.ts +0 -6
  427. package/utils/Kitchensink/KitchensinkComponent/index.js +0 -45
  428. package/utils/Kitchensink/KitchensinkComponent.d.ts +0 -10
  429. package/utils/Kitchensink/KitchensinkDashboard/index.js +0 -40
  430. package/utils/Kitchensink/KitchensinkDashboard/package.json +0 -6
  431. package/utils/Kitchensink/KitchensinkDashboard.d.ts +0 -5
@@ -12,6 +12,12 @@ Object.defineProperty(exports, "AutoCompleteAssistiveHint", {
12
12
  return _AutoCompleteAssistiveHint["default"];
13
13
  }
14
14
  });
15
+ Object.defineProperty(exports, "AutoCompleteContainer", {
16
+ enumerable: true,
17
+ get: function get() {
18
+ return _AutoCompleteContainer["default"];
19
+ }
20
+ });
15
21
  Object.defineProperty(exports, "AutoCompleteInput", {
16
22
  enumerable: true,
17
23
  get: function get() {
@@ -24,22 +30,28 @@ Object.defineProperty(exports, "AutoCompleteInputTypeahead", {
24
30
  return _AutoCompleteInputTypeahead["default"];
25
31
  }
26
32
  });
27
- Object.defineProperty(exports, "AutoCompleteResultList", {
33
+ Object.defineProperty(exports, "AutoCompleteMultipleInput", {
28
34
  enumerable: true,
29
35
  get: function get() {
30
- return _AutoCompleteResultList["default"];
36
+ return _AutoCompleteMultipleInput["default"];
31
37
  }
32
38
  });
33
- Object.defineProperty(exports, "AutoCompleteResultListItem", {
39
+ Object.defineProperty(exports, "AutoCompleteMultipleInputContainer", {
34
40
  enumerable: true,
35
41
  get: function get() {
36
- return _AutoCompleteResultListItem["default"];
42
+ return _AutoCompleteMultipleInputContainer["default"];
37
43
  }
38
44
  });
39
- Object.defineProperty(exports, "AutoCompleteWrapper", {
45
+ Object.defineProperty(exports, "AutoCompleteResultList", {
46
+ enumerable: true,
47
+ get: function get() {
48
+ return _AutoCompleteResultList["default"];
49
+ }
50
+ });
51
+ Object.defineProperty(exports, "AutoCompleteResultListItem", {
40
52
  enumerable: true,
41
53
  get: function get() {
42
- return _AutoCompleteWrapper["default"];
54
+ return _AutoCompleteResultListItem["default"];
43
55
  }
44
56
  });
45
57
  exports["default"] = void 0;
@@ -56,14 +68,28 @@ var _AutoCompleteInput = _interopRequireDefault(require("@digigov/react-core/cjs
56
68
  var _AutoCompleteInputTypeahead = _interopRequireDefault(require("@digigov/react-core/cjs/AutoCompleteInputTypeahead"));
57
69
  var _AutoCompleteResultList = _interopRequireDefault(require("@digigov/react-core/cjs/AutoCompleteResultList"));
58
70
  var _AutoCompleteResultListItem = _interopRequireDefault(require("@digigov/react-core/cjs/AutoCompleteResultListItem"));
59
- var _AutoCompleteWrapper = _interopRequireDefault(require("@digigov/react-core/cjs/AutoCompleteWrapper"));
71
+ var _AutoCompleteContainer = _interopRequireDefault(require("@digigov/react-core/cjs/AutoCompleteContainer"));
72
+ var _AutoCompleteMultipleInputContainer = _interopRequireDefault(require("@digigov/react-core/cjs/AutoCompleteMultipleInputContainer"));
73
+ var _AutoCompleteMultipleInput = _interopRequireDefault(require("@digigov/react-core/cjs/AutoCompleteMultipleInput"));
60
74
  var _CaretIcon = require("@digigov/react-icons/cjs/CaretIcon");
61
75
  var _Status = _interopRequireDefault(require("@digigov/ui/form/AutoComplete/Status"));
62
76
  var _utils = require("@digigov/ui/form/AutoComplete/utils");
77
+ var _Checkbox = _interopRequireWildcard(require("../Checkbox"));
78
+ var _Chip = require("@digigov/ui/content/Chip");
79
+ var _Button = _interopRequireDefault(require("@digigov/ui/form/Button"));
80
+ var _NormalText = require("@digigov/ui/typography/NormalText");
63
81
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
64
82
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
65
83
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
66
84
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
85
+ var _ref2 = /*#__PURE__*/_react["default"].createElement(_CaretIcon.CaretIcon, {
86
+ direction: "down",
87
+ size: "md"
88
+ });
89
+ var _ref3 = /*#__PURE__*/_react["default"].createElement(_CaretIcon.CaretIcon, {
90
+ direction: "down",
91
+ size: "md"
92
+ });
67
93
  var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/function (_Component) {
68
94
  (0, _inherits2["default"])(AutoComplete, _Component);
69
95
  function AutoComplete(props) {
@@ -72,32 +98,41 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
72
98
  _this = _callSuper(this, AutoComplete, [props]);
73
99
  _this.elementReferences = {};
74
100
  _this.$pollInput = void 0;
75
- _this.state = {
101
+ var customState = {};
102
+ if (Array.isArray(props.defaultValue)) {
103
+ customState.selectedValues = props.defaultValue;
104
+ } else if (props.defaultValue) {
105
+ customState.selectedValues = [props.defaultValue];
106
+ }
107
+ _this.state = (0, _extends2["default"])({
76
108
  focused: null,
77
109
  hovered: null,
78
110
  menuOpen: false,
79
- options: props.defaultValue ? [props.defaultValue] : [],
80
- query: props.defaultValue,
111
+ options: [],
112
+ query: _this.props.multiple ? '' : props.defaultValue || '',
113
+ selectedValues: [],
81
114
  validChoiceMade: false,
82
115
  selected: null,
83
116
  ariaHint: true
84
- };
117
+ }, customState);
85
118
  _this.handleComponentBlur = _this.handleComponentBlur.bind((0, _assertThisInitialized2["default"])(_this));
119
+ _this.handleAutoCompleteBlur = _this.handleAutoCompleteBlur.bind((0, _assertThisInitialized2["default"])(_this));
86
120
  _this.handleKeyDown = _this.handleKeyDown.bind((0, _assertThisInitialized2["default"])(_this));
87
121
  _this.handleUpArrow = _this.handleUpArrow.bind((0, _assertThisInitialized2["default"])(_this));
88
122
  _this.handleDownArrow = _this.handleDownArrow.bind((0, _assertThisInitialized2["default"])(_this));
89
123
  _this.handleEnter = _this.handleEnter.bind((0, _assertThisInitialized2["default"])(_this));
90
124
  _this.handlePrintableKey = _this.handlePrintableKey.bind((0, _assertThisInitialized2["default"])(_this));
91
125
  _this.handleListMouseLeave = _this.handleListMouseLeave.bind((0, _assertThisInitialized2["default"])(_this));
92
- _this.handleOptionBlur = _this.handleOptionBlur.bind((0, _assertThisInitialized2["default"])(_this));
93
- _this.handleOptionClick = _this.handleOptionClick.bind((0, _assertThisInitialized2["default"])(_this));
126
+ if (_this.props.multiple) {
127
+ _this.handleOptionClick = _this.handleOptionClickMultiple.bind((0, _assertThisInitialized2["default"])(_this));
128
+ } else {
129
+ _this.handleOptionClick = _this.handleOptionClick.bind((0, _assertThisInitialized2["default"])(_this));
130
+ }
94
131
  _this.handleOptionFocus = _this.handleOptionFocus.bind((0, _assertThisInitialized2["default"])(_this));
95
132
  _this.handleOptionMouseDown = _this.handleOptionMouseDown.bind((0, _assertThisInitialized2["default"])(_this));
96
133
  _this.handleOptionMouseEnter = _this.handleOptionMouseEnter.bind((0, _assertThisInitialized2["default"])(_this));
97
- _this.handleInputBlur = _this.handleInputBlur.bind((0, _assertThisInitialized2["default"])(_this));
98
134
  _this.handleInputChange = _this.handleInputChange.bind((0, _assertThisInitialized2["default"])(_this));
99
135
  _this.handleInputFocus = _this.handleInputFocus.bind((0, _assertThisInitialized2["default"])(_this));
100
- _this.pollInputElement = _this.pollInputElement.bind((0, _assertThisInitialized2["default"])(_this));
101
136
  _this.getDirectInputChanges = _this.getDirectInputChanges.bind((0, _assertThisInitialized2["default"])(_this));
102
137
  return _this;
103
138
  }
@@ -112,32 +147,14 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
112
147
  }, {
113
148
  key: "componentDidMount",
114
149
  value: function componentDidMount() {
115
- this.pollInputElement();
116
- }
117
- }, {
118
- key: "componentWillUnmount",
119
- value: function componentWillUnmount() {
120
- clearTimeout(this.$pollInput);
121
- }
122
-
123
- // Applications like Dragon NaturallySpeaking will modify the
124
- // `input` field by directly changing its `.value`. These events
125
- // don't trigger our JavaScript event listeners, so we need to poll
126
- // to handle when and if they occur.
127
- }, {
128
- key: "pollInputElement",
129
- value: function pollInputElement() {
130
- var _this3 = this;
131
150
  this.getDirectInputChanges();
132
- this.$pollInput = setTimeout(function () {
133
- _this3.pollInputElement();
134
- }, 100);
135
151
  }
136
152
  }, {
137
153
  key: "getDirectInputChanges",
138
154
  value: function getDirectInputChanges() {
155
+ var _this$state$query;
139
156
  var inputReference = this.elementReferences[-1];
140
- var queryHasChanged = inputReference && inputReference.value !== this.state.query;
157
+ var queryHasChanged = inputReference && inputReference.value !== ((_this$state$query = this.state.query) !== null && _this$state$query !== void 0 ? _this$state$query : '');
141
158
  if (queryHasChanged) {
142
159
  this.handleInputChange({
143
160
  target: {
@@ -183,7 +200,7 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
183
200
  key: "templateSuggestion",
184
201
  value: function templateSuggestion(value) {
185
202
  var suggestionTemplate = this.props.templates && this.props.templates.suggestion;
186
- return suggestionTemplate ? suggestionTemplate(value) : value;
203
+ return suggestionTemplate ? suggestionTemplate(value, this.state.query) : value;
187
204
  }
188
205
  }, {
189
206
  key: "handleComponentBlur",
@@ -195,14 +212,14 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
195
212
  var newQuery;
196
213
  if (this.props.confirmOnBlur) {
197
214
  var _this$props$onConfirm, _this$props;
198
- newQuery = newState.query || query;
215
+ newQuery = (newState === null || newState === void 0 ? void 0 : newState.query) || query;
199
216
  (_this$props$onConfirm = (_this$props = this.props).onConfirm) === null || _this$props$onConfirm === void 0 ? void 0 : _this$props$onConfirm.call(_this$props, options[selected]);
200
217
  } else {
201
218
  newQuery = query;
202
219
  }
203
220
  this.setState({
204
221
  focused: null,
205
- menuOpen: newState.menuOpen || false,
222
+ menuOpen: (newState === null || newState === void 0 ? void 0 : newState.menuOpen) || false,
206
223
  query: newQuery,
207
224
  selected: null,
208
225
  validChoiceMade: this.isQueryAnOption(newQuery, options)
@@ -216,40 +233,33 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
216
233
  });
217
234
  }
218
235
  }, {
219
- key: "handleOptionBlur",
220
- value: function handleOptionBlur(event, index) {
236
+ key: "handleAutoCompleteBlur",
237
+ value: function handleAutoCompleteBlur(event, index) {
221
238
  var _this$state2 = this.state,
222
239
  focused = _this$state2.focused,
223
- menuOpen = _this$state2.menuOpen,
224
240
  options = _this$state2.options,
241
+ query = _this$state2.query,
225
242
  selected = _this$state2.selected;
226
- var focusingOutsideComponent = event.relatedTarget === null;
243
+ var focusingOutsideComponent = false;
244
+ if (event.relatedTarget === null) {
245
+ focusingOutsideComponent = true;
246
+ } else {
247
+ // This affects if we have multiple autocompletes in same page and we click the first button-arrow and then another button-arrow
248
+ focusingOutsideComponent = this.elementReferences['button-arrow'] !== event.relatedTarget;
249
+ }
227
250
  var focusingInput = event.relatedTarget === this.elementReferences[-1];
228
- var focusingAnotherOption = focused !== index && focused !== -1;
229
- var blurComponent = !focusingAnotherOption && focusingOutsideComponent || !(focusingAnotherOption || focusingInput);
230
- if (blurComponent) {
231
- var keepMenuOpen = menuOpen && (0, _utils.isIosDevice)();
232
- this.handleComponentBlur({
233
- menuOpen: keepMenuOpen,
234
- query: this.templateInputValue(options[selected])
235
- });
251
+ var focusingButtonArrow = this.elementReferences['button-arrow'] === event.relatedTarget || false;
252
+ var focusingAnotherOption = focused !== null && focused !== -1;
253
+ if (index !== undefined) {
254
+ focusingAnotherOption = focused !== index && focused !== -1;
236
255
  }
237
- }
238
- }, {
239
- key: "handleInputBlur",
240
- value: function handleInputBlur() {
241
- var _this$state3 = this.state,
242
- focused = _this$state3.focused,
243
- menuOpen = _this$state3.menuOpen,
244
- options = _this$state3.options,
245
- query = _this$state3.query,
246
- selected = _this$state3.selected;
247
- var focusingAnOption = focused !== -1;
248
- if (!focusingAnOption) {
249
- var keepMenuOpen = menuOpen && (0, _utils.isIosDevice)();
256
+ // Check if the user clicks outside and not either on option, either on input or on button arrow
257
+ var blurComponent = focusingOutsideComponent && !(focusingAnotherOption || focusingInput || focusingButtonArrow);
258
+ if (blurComponent) {
259
+ // In handleInputBlur:
250
260
  var newQuery = (0, _utils.isIosDevice)() ? query : this.templateInputValue(options[selected]);
251
261
  this.handleComponentBlur({
252
- menuOpen: keepMenuOpen,
262
+ menuOpen: false,
253
263
  query: newQuery
254
264
  });
255
265
  }
@@ -257,37 +267,27 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
257
267
  }, {
258
268
  key: "handleInputChange",
259
269
  value: function handleInputChange(event) {
260
- var _this4 = this;
270
+ var _this3 = this;
261
271
  var _this$props2 = this.props,
262
- minLength = _this$props2.minLength,
263
272
  source = _this$props2.source,
264
- showAllValues = _this$props2.showAllValues;
273
+ minLength = _this$props2.minLength;
265
274
  var autoselect = this.hasAutoselect();
266
275
  var query = event.target.value;
267
276
  var queryEmpty = query.length === 0;
268
- var queryChanged = this.state.query.length !== query.length;
269
- var queryLongEnough = query.length >= minLength;
270
277
  this.setState({
271
278
  query: query,
272
279
  ariaHint: queryEmpty
273
280
  });
274
- var searchForOptions = showAllValues || !queryEmpty && queryChanged && queryLongEnough;
275
- if (searchForOptions) {
276
- source(query, function (options) {
277
- var optionsAvailable = options.length > 0;
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: []
281
+ var minLengthQuery = minLength != undefined && minLength > query.length ? '' : query;
282
+ source(minLengthQuery, function (options) {
283
+ var optionsAvailable = options.length > 0;
284
+ _this3.setState({
285
+ menuOpen: optionsAvailable,
286
+ options: options,
287
+ selected: autoselect && optionsAvailable ? 0 : -1,
288
+ validChoiceMade: false
289
289
  });
290
- }
290
+ });
291
291
  }
292
292
  }, {
293
293
  key: "handleInputClick",
@@ -297,10 +297,12 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
297
297
  }, {
298
298
  key: "handleInputFocus",
299
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;
300
+ var _this4 = this;
301
+ var source = this.props.source;
302
+ var _this$state3 = this.state,
303
+ query = _this$state3.query,
304
+ validChoiceMade = _this$state3.validChoiceMade,
305
+ options = _this$state3.options;
304
306
  var minLength = this.props.minLength;
305
307
  var shouldReopenMenu = !validChoiceMade && query.length >= minLength && options.length > 0;
306
308
  if (shouldReopenMenu) {
@@ -313,8 +315,11 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
313
315
  };
314
316
  });
315
317
  } else {
316
- this.setState({
317
- focused: -1
318
+ source(query, function (options) {
319
+ _this4.setState({
320
+ focused: -1,
321
+ options: options
322
+ });
318
323
  });
319
324
  }
320
325
  }
@@ -338,18 +343,43 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
338
343
  });
339
344
  }
340
345
  }
346
+ }, {
347
+ key: "handleOptionClickMultiple",
348
+ value: function handleOptionClickMultiple(index) {
349
+ var _this$props$onConfirm2, _this$props3;
350
+ var selectedOption = this.state.options[index];
351
+ var selectedValues = this.state.selectedValues;
352
+ if (this.state.selectedValues.indexOf(selectedOption) === -1) {
353
+ selectedValues = selectedValues.concat([selectedOption]);
354
+ } else {
355
+ selectedValues.splice(this.state.selectedValues.indexOf(selectedOption), 1);
356
+ }
357
+ (_this$props$onConfirm2 = (_this$props3 = this.props).onConfirm) === null || _this$props$onConfirm2 === void 0 ? void 0 : _this$props$onConfirm2.call(_this$props3, selectedValues);
358
+ this.setState({
359
+ focused: index,
360
+ hovered: null,
361
+ menuOpen: true,
362
+ query: '',
363
+ selectedValues: selectedValues,
364
+ selected: index,
365
+ validChoiceMade: true
366
+ });
367
+ this.forceUpdate();
368
+ }
341
369
  }, {
342
370
  key: "handleOptionClick",
343
371
  value: function handleOptionClick(index) {
344
- var _this$props$onConfirm2, _this$props3;
372
+ var _this$props$onConfirm3, _this$props4;
345
373
  var selectedOption = this.state.options[index];
346
374
  var newQuery = this.templateInputValue(selectedOption);
347
- (_this$props$onConfirm2 = (_this$props3 = this.props).onConfirm) === null || _this$props$onConfirm2 === void 0 ? void 0 : _this$props$onConfirm2.call(_this$props3, selectedOption);
375
+ (_this$props$onConfirm3 = (_this$props4 = this.props).onConfirm) === null || _this$props$onConfirm3 === void 0 ? void 0 : _this$props$onConfirm3.call(_this$props4, selectedOption);
376
+ var selectedValues = this.props.multiple ? this.state.selectedValues.concat(selectedOption) : [selectedOption];
348
377
  this.setState({
349
378
  focused: -1,
350
379
  hovered: null,
351
380
  menuOpen: false,
352
381
  query: newQuery,
382
+ selectedValues: selectedValues,
353
383
  selected: -1,
354
384
  validChoiceMade: true
355
385
  });
@@ -370,9 +400,9 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
370
400
  key: "handleUpArrow",
371
401
  value: function handleUpArrow(event) {
372
402
  event.preventDefault();
373
- var _this$state5 = this.state,
374
- menuOpen = _this$state5.menuOpen,
375
- selected = _this$state5.selected;
403
+ var _this$state4 = this.state,
404
+ menuOpen = _this$state4.menuOpen,
405
+ selected = _this$state4.selected;
376
406
  var isNotAtTop = selected !== -1;
377
407
  var allowMoveUp = isNotAtTop && menuOpen;
378
408
  if (allowMoveUp) {
@@ -385,7 +415,7 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
385
415
  var _this5 = this;
386
416
  event.preventDefault();
387
417
  // if not open, open
388
- if (this.props.showAllValues && this.state.menuOpen === false) {
418
+ if (this.state.menuOpen === false) {
389
419
  event.preventDefault();
390
420
  this.props.source('', function (options) {
391
421
  _this5.setState({
@@ -397,10 +427,10 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
397
427
  });
398
428
  });
399
429
  } else if (this.state.menuOpen === true) {
400
- var _this$state6 = this.state,
401
- menuOpen = _this$state6.menuOpen,
402
- _options = _this$state6.options,
403
- selected = _this$state6.selected;
430
+ var _this$state5 = this.state,
431
+ menuOpen = _this$state5.menuOpen,
432
+ _options = _this$state5.options,
433
+ selected = _this$state5.selected;
404
434
  var isNotAtBottom = selected !== _options.length - 1;
405
435
  var allowMoveDown = isNotAtBottom && menuOpen;
406
436
  if (allowMoveDown) {
@@ -413,7 +443,7 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
413
443
  value: function handleSpace(event) {
414
444
  var _this6 = this;
415
445
  // if not open, open
416
- if (this.props.showAllValues && this.state.menuOpen === false && this.state.query === '') {
446
+ if (this.state.menuOpen === false && this.state.query === '') {
417
447
  event.preventDefault();
418
448
  this.props.source('', function (options) {
419
449
  _this6.setState({
@@ -436,6 +466,12 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
436
466
  var hasSelectedOption = this.state.selected >= 0;
437
467
  if (hasSelectedOption) {
438
468
  this.handleOptionClick(this.state.selected);
469
+ if (this.props.multiple) {
470
+ this.setState({
471
+ menuOpen: false,
472
+ focused: -1
473
+ });
474
+ }
439
475
  }
440
476
  }
441
477
  }
@@ -472,6 +508,15 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
472
508
  query: this.state.query
473
509
  });
474
510
  break;
511
+ case 'backspace':
512
+ if (this.props.multiple) {
513
+ if (this.state.query.length === 0) {
514
+ this.setState({
515
+ selectedValues: this.state.selectedValues.slice(0, -1)
516
+ });
517
+ break;
518
+ }
519
+ }
475
520
  default:
476
521
  if ((0, _utils.isPrintableKeyCode)(event.keyCode)) {
477
522
  this.handlePrintableKey(event);
@@ -482,40 +527,39 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
482
527
  }, {
483
528
  key: "render",
484
529
  value: function render() {
485
- var _this7 = this;
486
- var _this$props4 = this.props,
487
- id = _this$props4.id,
488
- width = _this$props4.width,
489
- displayMenu = _this$props4.displayMenu,
490
- minLength = _this$props4.minLength,
491
- name = _this$props4.name,
492
- placeholder = _this$props4.placeholder,
493
- required = _this$props4.required,
494
- showAllValues = _this$props4.showAllValues,
495
- tNoResults = _this$props4.tNoResults,
496
- tStatusQueryTooShort = _this$props4.tStatusQueryTooShort,
497
- tStatusNoResults = _this$props4.tStatusNoResults,
498
- tStatusSelectedOption = _this$props4.tStatusSelectedOption,
499
- tStatusResults = _this$props4.tStatusResults,
500
- tAssistiveHint = _this$props4.tAssistiveHint,
501
- DropdownArrow = _this$props4.dropdownArrow;
502
- var _this$state7 = this.state,
503
- focused = _this$state7.focused,
504
- hovered = _this$state7.hovered,
505
- menuOpen = _this$state7.menuOpen,
506
- options = _this$state7.options,
507
- query = _this$state7.query,
508
- selected = _this$state7.selected,
509
- ariaHint = _this$state7.ariaHint,
510
- validChoiceMade = _this$state7.validChoiceMade;
530
+ var _this$state$query2,
531
+ _this7 = this;
532
+ var _this$props5 = this.props,
533
+ id = _this$props5.id,
534
+ width = _this$props5.width,
535
+ minLength = _this$props5.minLength,
536
+ name = _this$props5.name,
537
+ placeholder = _this$props5.placeholder,
538
+ required = _this$props5.required,
539
+ tNoResults = _this$props5.tNoResults,
540
+ tStatusQueryTooShort = _this$props5.tStatusQueryTooShort,
541
+ tStatusNoResults = _this$props5.tStatusNoResults,
542
+ tStatusSelectedOption = _this$props5.tStatusSelectedOption,
543
+ tStatusResults = _this$props5.tStatusResults,
544
+ tAssistiveHint = _this$props5.tAssistiveHint,
545
+ multiple = _this$props5.multiple,
546
+ source = _this$props5.source;
547
+ var _this$state6 = this.state,
548
+ focused = _this$state6.focused,
549
+ hovered = _this$state6.hovered,
550
+ menuOpen = _this$state6.menuOpen,
551
+ options = _this$state6.options,
552
+ selected = _this$state6.selected,
553
+ ariaHint = _this$state6.ariaHint,
554
+ validChoiceMade = _this$state6.validChoiceMade;
511
555
  var autoselect = this.hasAutoselect();
556
+ var query = (_this$state$query2 = this.state.query) !== null && _this$state$query2 !== void 0 ? _this$state$query2 : '';
512
557
  var inputFocused = focused === -1;
513
558
  var noOptionsAvailable = options.length === 0;
514
559
  var queryNotEmpty = query.length !== 0;
515
560
  var queryLongEnough = query.length >= minLength;
516
- var showNoOptionsFound = this.props.showNoOptionsFound && inputFocused && noOptionsAvailable && queryNotEmpty && queryLongEnough;
561
+ var showNoOptionsFound = inputFocused && noOptionsAvailable && queryNotEmpty && queryLongEnough;
517
562
  var componentIsFocused = focused !== null;
518
- var dropdownArrowClassName = "ds-autocomplete__dropdown-arrow-down";
519
563
  var optionFocused = focused !== -1 && focused !== null;
520
564
  var menuIsVisible = menuOpen || showNoOptionsFound;
521
565
  var selectedOptionText = this.templateInputValue(options[selected]);
@@ -525,7 +569,57 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
525
569
  var ariaDescribedProp = ariaHint ? {
526
570
  'aria-describedby': assistiveHintID
527
571
  } : null;
528
- return /*#__PURE__*/_react["default"].createElement(_AutoCompleteWrapper["default"], {
572
+ var showAutoCompleteResultListItems = function showAutoCompleteResultListItems(options, multiple) {
573
+ {
574
+ return options.map(function (option, index) {
575
+ var showFocused = focused === -1 ? selected === index : focused === index;
576
+ var iosPosinsetHtml = (0, _utils.isIosDevice)() ? /*#__PURE__*/_react["default"].createElement("span", {
577
+ id: "".concat(id, "__option-suffix--").concat(index),
578
+ style: {
579
+ border: '0',
580
+ clip: 'rect(0 0 0 0)',
581
+ height: '1px',
582
+ marginBottom: '-1px',
583
+ marginRight: '-1px',
584
+ overflow: 'hidden',
585
+ padding: '0',
586
+ position: 'absolute',
587
+ whiteSpace: 'nowrap',
588
+ width: '1px'
589
+ }
590
+ }, index + 1, " \u03B1\u03C0\u03CC ", options.length) : '';
591
+ return /*#__PURE__*/_react["default"].createElement(_AutoCompleteResultListItem["default"], {
592
+ isFocused: showFocused,
593
+ isHovered: hovered,
594
+ index: index,
595
+ "aria-selected": focused === index ? 'true' : 'false',
596
+ key: index,
597
+ onBlur: function onBlur(event) {
598
+ return _this7.handleAutoCompleteBlur(event, index);
599
+ },
600
+ onClick: function onClick() {
601
+ return _this7.handleOptionClick(index);
602
+ },
603
+ onMouseDown: _this7.handleOptionMouseDown,
604
+ onMouseEnter: function onMouseEnter() {
605
+ return _this7.handleOptionMouseEnter(index);
606
+ },
607
+ ref: function ref(optionEl) {
608
+ _this7.elementReferences[index] = optionEl;
609
+ },
610
+ role: "option",
611
+ tabIndex: -1,
612
+ "aria-posinset": index + 1,
613
+ "aria-setsize": options.length
614
+ }, multiple ? /*#__PURE__*/_react["default"].createElement(_Checkbox.CheckboxItem, {
615
+ value: option,
616
+ checked: _this7.state.selectedValues.includes(option),
617
+ onChange: function onChange() {}
618
+ }, _this7.templateSuggestion(option)) : _this7.templateSuggestion(option), iosPosinsetHtml);
619
+ });
620
+ }
621
+ };
622
+ return /*#__PURE__*/_react["default"].createElement(_AutoCompleteContainer["default"], {
529
623
  onKeyDown: this.handleKeyDown,
530
624
  width: width
531
625
  }, /*#__PURE__*/_react["default"].createElement(_Status["default"], {
@@ -541,22 +635,41 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
541
635
  tNoResults: tStatusNoResults,
542
636
  tSelectedOption: tStatusSelectedOption,
543
637
  tResults: tStatusResults
544
- }), hintValue && /*#__PURE__*/_react["default"].createElement(_AutoCompleteInputTypeahead["default"], {
638
+ }), hintValue && (placeholder === '' || !placeholder) && /*#__PURE__*/_react["default"].createElement(_AutoCompleteInputTypeahead["default"], {
545
639
  value: hintValue
546
- }), /*#__PURE__*/_react["default"].createElement(_AutoCompleteInput["default"], (0, _extends2["default"])({
640
+ }), multiple ? /*#__PURE__*/_react["default"].createElement(_AutoCompleteMultipleInputContainer["default"], {
641
+ isFocused: componentIsFocused,
642
+ numberOfSelected: this.props.numberOfSelected
643
+ }, /*#__PURE__*/_react["default"].createElement(_Chip.ChipContainer, null, this.state.selectedValues.map(function (value) {
644
+ return /*#__PURE__*/_react["default"].createElement(_Chip.Chip, {
645
+ key: value,
646
+ onDelete: function onDelete() {
647
+ _this7.setState({
648
+ selectedValues: _this7.state.selectedValues.filter(function (v) {
649
+ return v !== value;
650
+ })
651
+ });
652
+ }
653
+ }, value);
654
+ }), !componentIsFocused && typeof this.props.numberOfSelected === 'number' && this.state.selectedValues.length > this.props.numberOfSelected && /*#__PURE__*/_react["default"].createElement(_NormalText.NormalText, {
655
+ fontWeight: "bold",
656
+ margin: 0
657
+ }, "+", this.state.selectedValues.length - this.props.numberOfSelected)), /*#__PURE__*/_react["default"].createElement(_AutoCompleteMultipleInput["default"], (0, _extends2["default"])({
547
658
  "aria-expanded": menuOpen ? 'true' : 'false',
548
659
  "aria-activedescendant": optionFocused ? "".concat(id, "__option--").concat(focused) : '',
549
660
  "aria-owns": "".concat(id, "__listbox"),
550
661
  "aria-autocomplete": this.hasAutoselect() ? 'both' : 'list'
551
662
  }, ariaDescribedProp, {
552
- autoComplete: "off",
553
- isFocused: componentIsFocused,
554
- showAllValues: this.props.showAllValues,
663
+ autoComplete: "off"
664
+ // isFocused={componentIsFocused}
665
+ ,
555
666
  id: id,
556
667
  onClick: function onClick(event) {
557
668
  return _this7.handleInputClick(event);
558
669
  },
559
- onBlur: this.handleInputBlur,
670
+ onBlur: function onBlur(event) {
671
+ return _this7.handleAutoCompleteBlur(event);
672
+ },
560
673
  onChange: this.handleInputChange,
561
674
  onFocus: this.handleInputFocus,
562
675
  name: name,
@@ -567,80 +680,85 @@ var AutoComplete = exports.AutoComplete = exports["default"] = /*#__PURE__*/func
567
680
  role: "combobox",
568
681
  required: required,
569
682
  value: query
570
- })), showNoOptionsFound || showAllValues && !menuOpen && DropdownArrow && /*#__PURE__*/_react["default"].createElement(DropdownArrow, {
571
- type: "button",
683
+ })), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
684
+ ref: function ref(buttonElement) {
685
+ _this7.elementReferences['button-arrow'] = buttonElement;
686
+ },
687
+ variant: "link",
572
688
  onClick: function onClick() {
573
- _this7.elementReferences[-1].focus();
574
- _this7.handleInputChange({
575
- target: {
576
- value: query
577
- }
578
- });
689
+ if (!_this7.state.menuOpen) {
690
+ source(query, function (options) {
691
+ var optionsAvailable = options.length > 0;
692
+ _this7.setState({
693
+ menuOpen: optionsAvailable,
694
+ options: options,
695
+ selected: autoselect && optionsAvailable ? 0 : -1,
696
+ validChoiceMade: false
697
+ });
698
+ });
699
+ } else {
700
+ _this7.setState({
701
+ menuOpen: false,
702
+ focused: null
703
+ });
704
+ }
579
705
  },
580
- className: dropdownArrowClassName
581
- }), /*#__PURE__*/_react["default"].createElement(_AutoCompleteResultList["default"], {
582
- displayMenu: displayMenu,
706
+ onBlur: function onBlur(event) {
707
+ return _this7.handleAutoCompleteBlur(event);
708
+ }
709
+ }, _ref2), /*#__PURE__*/_react["default"].createElement(_AutoCompleteResultList["default"], {
583
710
  isVisible: menuIsVisible,
584
711
  onMouseLeave: function onMouseLeave() {
585
712
  return _this7.handleListMouseLeave();
586
713
  },
587
714
  id: "".concat(id, "__listbox"),
588
715
  role: "listbox"
589
- }, options.map(function (option, index) {
590
- var showFocused = focused === -1 ? selected === index : focused === index;
591
- var iosPosinsetHtml = (0, _utils.isIosDevice)() ? /*#__PURE__*/_react["default"].createElement("span", {
592
- id: "".concat(id, "__option-suffix--").concat(index),
593
- style: {
594
- border: '0',
595
- clip: 'rect(0 0 0 0)',
596
- height: '1px',
597
- marginBottom: '-1px',
598
- marginRight: '-1px',
599
- overflow: 'hidden',
600
- padding: '0',
601
- position: 'absolute',
602
- whiteSpace: 'nowrap',
603
- width: '1px'
604
- }
605
- }, index + 1, " \u03B1\u03C0\u03CC ", options.length) : '';
606
- return /*#__PURE__*/_react["default"].createElement(_AutoCompleteResultListItem["default"], {
607
- isFocused: showFocused,
608
- isHovered: hovered,
609
- index: index,
610
- "aria-selected": focused === index ? 'true' : 'false',
611
- key: index,
612
- onBlur: function onBlur(event) {
613
- return _this7.handleOptionBlur(event, index);
614
- },
615
- onClick: function onClick() {
616
- return _this7.handleOptionClick(index);
617
- },
618
- onMouseDown: _this7.handleOptionMouseDown,
619
- onMouseEnter: function onMouseEnter() {
620
- return _this7.handleOptionMouseEnter(index);
621
- },
622
- ref: function ref(optionEl) {
623
- _this7.elementReferences[index] = optionEl;
624
- },
625
- role: "option",
626
- tabIndex: -1,
627
- "aria-posinset": index + 1,
628
- "aria-setsize": options.length
629
- }, _this7.templateSuggestion(option), " ", iosPosinsetHtml);
630
- }), showNoOptionsFound && /*#__PURE__*/_react["default"].createElement(_AutoCompleteResultListItem["default"], {
716
+ }, /*#__PURE__*/_react["default"].createElement(_Checkbox["default"], null, showAutoCompleteResultListItems(options, multiple)), showNoOptionsFound && /*#__PURE__*/_react["default"].createElement(_AutoCompleteResultListItem["default"], {
717
+ empty: true
718
+ }, tNoResults === null || tNoResults === void 0 ? void 0 : tNoResults())), /*#__PURE__*/_react["default"].createElement(_AutoCompleteAssistiveHint["default"], {
719
+ id: assistiveHintID
720
+ }, tAssistiveHint === null || tAssistiveHint === void 0 ? void 0 : tAssistiveHint())) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_AutoCompleteInput["default"], (0, _extends2["default"])({
721
+ "aria-expanded": menuOpen ? 'true' : 'false',
722
+ "aria-activedescendant": optionFocused ? "".concat(id, "__option--").concat(focused) : '',
723
+ "aria-owns": "".concat(id, "__listbox"),
724
+ "aria-autocomplete": this.hasAutoselect() ? 'both' : 'list'
725
+ }, ariaDescribedProp, {
726
+ autoComplete: "off",
727
+ isFocused: componentIsFocused,
728
+ id: id,
729
+ onClick: function onClick(event) {
730
+ return _this7.handleInputClick(event);
731
+ },
732
+ onBlur: this.handleAutoCompleteBlur,
733
+ onChange: this.handleInputChange,
734
+ onFocus: this.handleInputFocus,
735
+ name: name,
736
+ placeholder: placeholder,
737
+ ref: function ref(inputElement) {
738
+ _this7.elementReferences[-1] = inputElement;
739
+ },
740
+ role: "combobox",
741
+ required: required,
742
+ value: query
743
+ })), _ref3, /*#__PURE__*/_react["default"].createElement(_AutoCompleteResultList["default"], {
744
+ isVisible: menuIsVisible,
745
+ onMouseLeave: function onMouseLeave() {
746
+ return _this7.handleListMouseLeave();
747
+ },
748
+ id: "".concat(id, "__listbox"),
749
+ role: "listbox"
750
+ }, showAutoCompleteResultListItems(options, false), showNoOptionsFound && /*#__PURE__*/_react["default"].createElement(_AutoCompleteResultListItem["default"], {
631
751
  empty: true
632
752
  }, tNoResults === null || tNoResults === void 0 ? void 0 : tNoResults())), /*#__PURE__*/_react["default"].createElement(_AutoCompleteAssistiveHint["default"], {
633
753
  id: assistiveHintID
634
- }, tAssistiveHint === null || tAssistiveHint === void 0 ? void 0 : tAssistiveHint()));
754
+ }, tAssistiveHint === null || tAssistiveHint === void 0 ? void 0 : tAssistiveHint())));
635
755
  }
636
756
  }]);
637
757
  return AutoComplete;
638
758
  }(_react.Component);
639
759
  AutoComplete.defaultProps = {
640
- width: '33.3%',
760
+ width: 'full',
641
761
  autoselect: false,
642
- defaultValue: '',
643
- displayMenu: 'overlay',
644
762
  minLength: 0,
645
763
  name: 'ds-input-autocomplete',
646
764
  placeholder: '',
@@ -648,19 +766,11 @@ AutoComplete.defaultProps = {
648
766
  return;
649
767
  },
650
768
  confirmOnBlur: false,
651
- showNoOptionsFound: true,
652
- showAllValues: false,
653
769
  required: false,
654
770
  tNoResults: function tNoResults() {
655
771
  return 'No results found';
656
772
  },
657
773
  tAssistiveHint: function tAssistiveHint() {
658
774
  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.';
659
- },
660
- dropdownArrow: function dropdownArrow(props) {
661
- return /*#__PURE__*/_react["default"].createElement(_CaretIcon.CaretIcon, (0, _extends2["default"])({
662
- direction: "down",
663
- size: "sm"
664
- }, props));
665
775
  }
666
776
  };