@dnb/eufemia 10.75.2 → 10.75.3

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 (368) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/cjs/components/accordion/Accordion.js +2 -3
  3. package/cjs/components/accordion/Accordion.js.map +1 -1
  4. package/cjs/components/accordion/AccordionContext.d.ts +0 -4
  5. package/cjs/components/accordion/AccordionContext.js.map +1 -1
  6. package/cjs/components/accordion/AccordionGroup.js +1 -3
  7. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  8. package/cjs/components/accordion/AccordionProviderContext.d.ts +0 -4
  9. package/cjs/components/accordion/AccordionProviderContext.js +3 -1
  10. package/cjs/components/accordion/AccordionProviderContext.js.map +1 -1
  11. package/cjs/components/accordion/AccordionStore.js +1 -2
  12. package/cjs/components/accordion/AccordionStore.js.map +1 -1
  13. package/cjs/components/accordion/style/dnb-accordion.css +0 -6
  14. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  15. package/cjs/components/accordion/style/dnb-accordion.scss +0 -5
  16. package/cjs/components/autocomplete/Autocomplete.d.ts +1 -1
  17. package/cjs/components/autocomplete/Autocomplete.js +2 -2
  18. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  19. package/cjs/components/autocomplete/AutocompleteDocs.js +1 -1
  20. package/cjs/components/autocomplete/AutocompleteDocs.js.map +1 -1
  21. package/cjs/components/button/Button.js +8 -7
  22. package/cjs/components/button/Button.js.map +1 -1
  23. package/cjs/components/date-picker/DatePickerDocs.js +3 -3
  24. package/cjs/components/date-picker/DatePickerDocs.js.map +1 -1
  25. package/cjs/components/date-picker/DatePickerInput.js +2 -2
  26. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  27. package/cjs/components/date-picker/style/dnb-date-picker.css +0 -1
  28. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  29. package/cjs/components/dialog/style/dnb-dialog.css +0 -4
  30. package/cjs/components/dialog/style/dnb-dialog.min.css +1 -1
  31. package/cjs/components/dialog/style/dnb-dialog.scss +0 -5
  32. package/cjs/components/drawer/DrawerDocs.js +2 -2
  33. package/cjs/components/drawer/DrawerDocs.js.map +1 -1
  34. package/cjs/components/drawer/style/dnb-drawer.css +0 -4
  35. package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
  36. package/cjs/components/drawer/style/dnb-drawer.scss +0 -5
  37. package/cjs/components/form-label/style/dnb-form-label.css +0 -1
  38. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  39. package/cjs/components/form-row/FormRow.d.ts +1 -1
  40. package/cjs/components/form-row/FormRowDocs.js +1 -1
  41. package/cjs/components/form-row/FormRowDocs.js.map +1 -1
  42. package/cjs/components/input-masked/style/dnb-input-masked.css +0 -1
  43. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  44. package/cjs/components/list-format/ListFormatDocs.js +2 -2
  45. package/cjs/components/list-format/ListFormatDocs.js.map +1 -1
  46. package/cjs/components/modal/style/dnb-modal.css +0 -4
  47. package/cjs/components/modal/style/dnb-modal.min.css +1 -1
  48. package/cjs/components/modal/style/dnb-modal.scss +0 -5
  49. package/cjs/components/pagination/PaginationDocs.js +2 -2
  50. package/cjs/components/pagination/PaginationDocs.js.map +1 -1
  51. package/cjs/components/slider/SliderDocs.js +1 -1
  52. package/cjs/components/slider/SliderDocs.js.map +1 -1
  53. package/cjs/components/step-indicator/StepIndicatorDocs.js +4 -4
  54. package/cjs/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  55. package/cjs/components/timeline/TimelineItem.js +5 -5
  56. package/cjs/components/timeline/TimelineItem.js.map +1 -1
  57. package/cjs/components/toggle-button/ToggleButtonDocs.js +1 -1
  58. package/cjs/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  59. package/cjs/components/upload/style/dnb-upload.css +0 -1
  60. package/cjs/components/upload/style/dnb-upload.min.css +1 -1
  61. package/cjs/core/jest/jestSetupScreenshots.css +6 -0
  62. package/cjs/extensions/forms/Field/Date/Date.js +10 -4
  63. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  64. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js +4 -2
  65. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  66. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.d.ts +1 -0
  67. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js +12 -5
  68. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  69. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +1 -1
  70. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  71. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js +1 -1
  72. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  73. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  74. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  75. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  76. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  77. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  78. package/cjs/extensions/forms/constants/locales/en-GB.js +2 -1
  79. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  80. package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -0
  81. package/cjs/extensions/forms/constants/locales/index.d.ts +2 -0
  82. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  83. package/cjs/extensions/forms/constants/locales/nb-NO.js +2 -1
  84. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  85. package/cjs/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  86. package/cjs/extensions/forms/constants/locales/sv-SE.js +2 -1
  87. package/cjs/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  88. package/cjs/extensions/forms/hooks/useFieldProps.js +3 -3
  89. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  90. package/cjs/extensions/payment-card/PaymentCard.js +8 -1
  91. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  92. package/cjs/shared/AlignmentHelper.d.ts +14 -8
  93. package/cjs/shared/AlignmentHelper.js +4 -8
  94. package/cjs/shared/AlignmentHelper.js.map +1 -1
  95. package/cjs/shared/BuildInfo.d.cts +2 -0
  96. package/cjs/shared/BuildInfo.js +5 -0
  97. package/cjs/shared/BuildInfo.js.map +1 -0
  98. package/cjs/shared/Eufemia.d.ts +14 -1
  99. package/cjs/shared/Eufemia.js +31 -3
  100. package/cjs/shared/Eufemia.js.map +1 -1
  101. package/cjs/shared/helpers/runCssVersionMismatchWarning.d.ts +0 -7
  102. package/cjs/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  103. package/cjs/shared/useMedia.js +66 -55
  104. package/cjs/shared/useMedia.js.map +1 -1
  105. package/cjs/style/core/helper-classes/helper-classes.scss +3 -0
  106. package/cjs/style/core/scopes.scss +1 -1
  107. package/cjs/style/core/utilities.scss +3 -1
  108. package/cjs/style/dnb-ui-basis.css +13 -2
  109. package/cjs/style/dnb-ui-basis.min.css +1 -1
  110. package/cjs/style/dnb-ui-body.css +1 -2
  111. package/cjs/style/dnb-ui-body.min.css +1 -1
  112. package/cjs/style/dnb-ui-components.css +0 -22
  113. package/cjs/style/dnb-ui-components.min.css +3 -3
  114. package/cjs/style/dnb-ui-core.css +13 -3
  115. package/cjs/style/dnb-ui-core.min.css +1 -1
  116. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +0 -22
  117. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  118. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +0 -22
  119. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  120. package/cjs/style/themes/theme-ui/ui-theme-components.css +0 -22
  121. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  122. package/components/accordion/Accordion.js +2 -3
  123. package/components/accordion/Accordion.js.map +1 -1
  124. package/components/accordion/AccordionContext.d.ts +0 -4
  125. package/components/accordion/AccordionContext.js.map +1 -1
  126. package/components/accordion/AccordionGroup.js +1 -3
  127. package/components/accordion/AccordionGroup.js.map +1 -1
  128. package/components/accordion/AccordionProviderContext.d.ts +0 -4
  129. package/components/accordion/AccordionProviderContext.js +3 -1
  130. package/components/accordion/AccordionProviderContext.js.map +1 -1
  131. package/components/accordion/AccordionStore.js +1 -2
  132. package/components/accordion/AccordionStore.js.map +1 -1
  133. package/components/accordion/style/dnb-accordion.css +0 -6
  134. package/components/accordion/style/dnb-accordion.min.css +1 -1
  135. package/components/accordion/style/dnb-accordion.scss +0 -5
  136. package/components/autocomplete/Autocomplete.d.ts +1 -1
  137. package/components/autocomplete/Autocomplete.js +2 -2
  138. package/components/autocomplete/Autocomplete.js.map +1 -1
  139. package/components/autocomplete/AutocompleteDocs.js +1 -1
  140. package/components/autocomplete/AutocompleteDocs.js.map +1 -1
  141. package/components/button/Button.js +8 -7
  142. package/components/button/Button.js.map +1 -1
  143. package/components/date-picker/DatePickerDocs.js +3 -3
  144. package/components/date-picker/DatePickerDocs.js.map +1 -1
  145. package/components/date-picker/DatePickerInput.js +2 -2
  146. package/components/date-picker/DatePickerInput.js.map +1 -1
  147. package/components/date-picker/style/dnb-date-picker.css +0 -1
  148. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  149. package/components/dialog/style/dnb-dialog.css +0 -4
  150. package/components/dialog/style/dnb-dialog.min.css +1 -1
  151. package/components/dialog/style/dnb-dialog.scss +0 -5
  152. package/components/drawer/DrawerDocs.js +2 -2
  153. package/components/drawer/DrawerDocs.js.map +1 -1
  154. package/components/drawer/style/dnb-drawer.css +0 -4
  155. package/components/drawer/style/dnb-drawer.min.css +1 -1
  156. package/components/drawer/style/dnb-drawer.scss +0 -5
  157. package/components/form-label/style/dnb-form-label.css +0 -1
  158. package/components/form-label/style/dnb-form-label.min.css +1 -1
  159. package/components/form-row/FormRow.d.ts +1 -1
  160. package/components/form-row/FormRowDocs.js +1 -1
  161. package/components/form-row/FormRowDocs.js.map +1 -1
  162. package/components/input-masked/style/dnb-input-masked.css +0 -1
  163. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  164. package/components/list-format/ListFormatDocs.js +2 -2
  165. package/components/list-format/ListFormatDocs.js.map +1 -1
  166. package/components/modal/style/dnb-modal.css +0 -4
  167. package/components/modal/style/dnb-modal.min.css +1 -1
  168. package/components/modal/style/dnb-modal.scss +0 -5
  169. package/components/pagination/PaginationDocs.js +2 -2
  170. package/components/pagination/PaginationDocs.js.map +1 -1
  171. package/components/slider/SliderDocs.js +1 -1
  172. package/components/slider/SliderDocs.js.map +1 -1
  173. package/components/step-indicator/StepIndicatorDocs.js +4 -4
  174. package/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  175. package/components/timeline/TimelineItem.js +5 -5
  176. package/components/timeline/TimelineItem.js.map +1 -1
  177. package/components/toggle-button/ToggleButtonDocs.js +1 -1
  178. package/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  179. package/components/upload/style/dnb-upload.css +0 -1
  180. package/components/upload/style/dnb-upload.min.css +1 -1
  181. package/core/jest/jestSetupScreenshots.css +6 -0
  182. package/es/components/accordion/Accordion.js +2 -3
  183. package/es/components/accordion/Accordion.js.map +1 -1
  184. package/es/components/accordion/AccordionContext.d.ts +0 -4
  185. package/es/components/accordion/AccordionContext.js.map +1 -1
  186. package/es/components/accordion/AccordionGroup.js +1 -3
  187. package/es/components/accordion/AccordionGroup.js.map +1 -1
  188. package/es/components/accordion/AccordionProviderContext.d.ts +0 -4
  189. package/es/components/accordion/AccordionProviderContext.js +3 -1
  190. package/es/components/accordion/AccordionProviderContext.js.map +1 -1
  191. package/es/components/accordion/AccordionStore.js +1 -2
  192. package/es/components/accordion/AccordionStore.js.map +1 -1
  193. package/es/components/accordion/style/dnb-accordion.css +0 -6
  194. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  195. package/es/components/accordion/style/dnb-accordion.scss +0 -5
  196. package/es/components/autocomplete/Autocomplete.d.ts +1 -1
  197. package/es/components/autocomplete/Autocomplete.js +2 -2
  198. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  199. package/es/components/autocomplete/AutocompleteDocs.js +1 -1
  200. package/es/components/autocomplete/AutocompleteDocs.js.map +1 -1
  201. package/es/components/button/Button.js +8 -7
  202. package/es/components/button/Button.js.map +1 -1
  203. package/es/components/date-picker/DatePickerDocs.js +3 -3
  204. package/es/components/date-picker/DatePickerDocs.js.map +1 -1
  205. package/es/components/date-picker/DatePickerInput.js +2 -2
  206. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  207. package/es/components/date-picker/style/dnb-date-picker.css +0 -1
  208. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  209. package/es/components/dialog/style/dnb-dialog.css +0 -4
  210. package/es/components/dialog/style/dnb-dialog.min.css +1 -1
  211. package/es/components/dialog/style/dnb-dialog.scss +0 -5
  212. package/es/components/drawer/DrawerDocs.js +2 -2
  213. package/es/components/drawer/DrawerDocs.js.map +1 -1
  214. package/es/components/drawer/style/dnb-drawer.css +0 -4
  215. package/es/components/drawer/style/dnb-drawer.min.css +1 -1
  216. package/es/components/drawer/style/dnb-drawer.scss +0 -5
  217. package/es/components/form-label/style/dnb-form-label.css +0 -1
  218. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  219. package/es/components/form-row/FormRow.d.ts +1 -1
  220. package/es/components/form-row/FormRowDocs.js +1 -1
  221. package/es/components/form-row/FormRowDocs.js.map +1 -1
  222. package/es/components/input-masked/style/dnb-input-masked.css +0 -1
  223. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  224. package/es/components/list-format/ListFormatDocs.js +2 -2
  225. package/es/components/list-format/ListFormatDocs.js.map +1 -1
  226. package/es/components/modal/style/dnb-modal.css +0 -4
  227. package/es/components/modal/style/dnb-modal.min.css +1 -1
  228. package/es/components/modal/style/dnb-modal.scss +0 -5
  229. package/es/components/pagination/PaginationDocs.js +2 -2
  230. package/es/components/pagination/PaginationDocs.js.map +1 -1
  231. package/es/components/slider/SliderDocs.js +1 -1
  232. package/es/components/slider/SliderDocs.js.map +1 -1
  233. package/es/components/step-indicator/StepIndicatorDocs.js +4 -4
  234. package/es/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  235. package/es/components/timeline/TimelineItem.js +5 -5
  236. package/es/components/timeline/TimelineItem.js.map +1 -1
  237. package/es/components/toggle-button/ToggleButtonDocs.js +1 -1
  238. package/es/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  239. package/es/components/upload/style/dnb-upload.css +0 -1
  240. package/es/components/upload/style/dnb-upload.min.css +1 -1
  241. package/es/core/jest/jestSetupScreenshots.css +6 -0
  242. package/es/extensions/forms/Field/Date/Date.js +10 -4
  243. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  244. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js +4 -2
  245. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  246. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.d.ts +1 -0
  247. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js +12 -5
  248. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  249. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +1 -1
  250. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  251. package/es/extensions/forms/Form/Isolation/IsolationDocs.js +1 -1
  252. package/es/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  253. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  254. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  255. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  256. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  257. package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  258. package/es/extensions/forms/constants/locales/en-GB.js +2 -1
  259. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  260. package/es/extensions/forms/constants/locales/en-US.d.ts +1 -0
  261. package/es/extensions/forms/constants/locales/index.d.ts +2 -0
  262. package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  263. package/es/extensions/forms/constants/locales/nb-NO.js +2 -1
  264. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  265. package/es/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  266. package/es/extensions/forms/constants/locales/sv-SE.js +2 -1
  267. package/es/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  268. package/es/extensions/forms/hooks/useFieldProps.js +3 -3
  269. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  270. package/es/extensions/payment-card/PaymentCard.js +1 -0
  271. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  272. package/es/shared/AlignmentHelper.d.ts +14 -8
  273. package/es/shared/AlignmentHelper.js +4 -8
  274. package/es/shared/AlignmentHelper.js.map +1 -1
  275. package/es/shared/BuildInfo.cjs +6 -0
  276. package/es/shared/BuildInfo.d.cts +2 -0
  277. package/es/shared/Eufemia.d.ts +14 -1
  278. package/es/shared/Eufemia.js +27 -2
  279. package/es/shared/Eufemia.js.map +1 -1
  280. package/es/shared/helpers/runCssVersionMismatchWarning.d.ts +0 -7
  281. package/es/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  282. package/es/shared/useMedia.js +66 -55
  283. package/es/shared/useMedia.js.map +1 -1
  284. package/es/style/core/helper-classes/helper-classes.scss +3 -0
  285. package/es/style/core/scopes.scss +1 -1
  286. package/es/style/core/utilities.scss +3 -1
  287. package/es/style/dnb-ui-basis.css +13 -2
  288. package/es/style/dnb-ui-basis.min.css +1 -1
  289. package/es/style/dnb-ui-body.css +1 -2
  290. package/es/style/dnb-ui-body.min.css +1 -1
  291. package/es/style/dnb-ui-components.css +0 -22
  292. package/es/style/dnb-ui-components.min.css +3 -3
  293. package/es/style/dnb-ui-core.css +13 -3
  294. package/es/style/dnb-ui-core.min.css +1 -1
  295. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +0 -22
  296. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  297. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +0 -22
  298. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  299. package/es/style/themes/theme-ui/ui-theme-components.css +0 -22
  300. package/es/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  301. package/esm/dnb-ui-components.min.mjs +1 -1
  302. package/esm/dnb-ui-elements.min.mjs +1 -1
  303. package/esm/dnb-ui-extensions.min.mjs +1 -1
  304. package/esm/dnb-ui-lib.min.mjs +1 -1
  305. package/extensions/forms/Field/Date/Date.js +10 -4
  306. package/extensions/forms/Field/Date/Date.js.map +1 -1
  307. package/extensions/forms/Field/Indeterminate/Indeterminate.js +4 -2
  308. package/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  309. package/extensions/forms/Field/Indeterminate/useDependencePaths.d.ts +1 -0
  310. package/extensions/forms/Field/Indeterminate/useDependencePaths.js +12 -5
  311. package/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  312. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +1 -1
  313. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  314. package/extensions/forms/Form/Isolation/IsolationDocs.js +1 -1
  315. package/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  316. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  317. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  318. package/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  319. package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  320. package/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  321. package/extensions/forms/constants/locales/en-GB.js +2 -1
  322. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  323. package/extensions/forms/constants/locales/en-US.d.ts +1 -0
  324. package/extensions/forms/constants/locales/index.d.ts +2 -0
  325. package/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  326. package/extensions/forms/constants/locales/nb-NO.js +2 -1
  327. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  328. package/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  329. package/extensions/forms/constants/locales/sv-SE.js +2 -1
  330. package/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  331. package/extensions/forms/hooks/useFieldProps.js +3 -3
  332. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  333. package/extensions/payment-card/PaymentCard.js +1 -0
  334. package/extensions/payment-card/PaymentCard.js.map +1 -1
  335. package/package.json +1 -1
  336. package/shared/AlignmentHelper.d.ts +14 -8
  337. package/shared/AlignmentHelper.js +4 -8
  338. package/shared/AlignmentHelper.js.map +1 -1
  339. package/shared/BuildInfo.cjs +6 -0
  340. package/shared/BuildInfo.d.cts +2 -0
  341. package/shared/Eufemia.d.ts +14 -1
  342. package/shared/Eufemia.js +27 -2
  343. package/shared/Eufemia.js.map +1 -1
  344. package/shared/helpers/runCssVersionMismatchWarning.d.ts +0 -7
  345. package/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  346. package/shared/useMedia.js +67 -56
  347. package/shared/useMedia.js.map +1 -1
  348. package/style/core/helper-classes/helper-classes.scss +3 -0
  349. package/style/core/scopes.scss +1 -1
  350. package/style/core/utilities.scss +3 -1
  351. package/style/dnb-ui-basis.css +13 -2
  352. package/style/dnb-ui-basis.min.css +1 -1
  353. package/style/dnb-ui-body.css +1 -2
  354. package/style/dnb-ui-body.min.css +1 -1
  355. package/style/dnb-ui-components.css +0 -22
  356. package/style/dnb-ui-components.min.css +3 -3
  357. package/style/dnb-ui-core.css +13 -3
  358. package/style/dnb-ui-core.min.css +1 -1
  359. package/style/themes/theme-eiendom/eiendom-theme-components.css +0 -22
  360. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  361. package/style/themes/theme-sbanken/sbanken-theme-components.css +0 -22
  362. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  363. package/style/themes/theme-ui/ui-theme-components.css +0 -22
  364. package/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  365. package/umd/dnb-ui-components.min.js +1 -1
  366. package/umd/dnb-ui-elements.min.js +1 -1
  367. package/umd/dnb-ui-extensions.min.js +1 -1
  368. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Autocomplete.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_componentHelper","_helpers","_AlignmentHelper2","_SpacingHelper","_filterValidProps","_Suffix","_AriaLive","_FormLabel","_FormStatus","_IconPrimary2","_Input","_interopRequireWildcard","_ProgressIndicator","_DrawerList","_DrawerListItem","_DrawerListContext","_DrawerListProvider","_DrawerListHelpers","_IconPrimary","_AlignmentHelper","_excluded","_excluded2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","length","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_extends","assign","bind","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","Autocomplete","React","PureComponent","constructor","props","_id","id","makeUniqueId","render","createElement","data","children","opened","tagName","ignore_events","prevent_focus","skip_keysearch","AutocompleteInstance","exports","mode","title","placeholder","no_options","show_all","aria_live_options","indicator_label","show_options_sr","selected_sr","submit_button_title","submit_button_icon","input_ref","icon","icon_size","icon_position","triangle_position","input_icon","label","label_direction","label_sr_only","keep_value","keep_selection","keep_value_and_selection","show_clear_button","status","status_state","status_props","status_no_animation","globalStatus","suffix","disable_filter","disable_reorder","scrollable","focusable","disable_highlighting","max_height","direction","skip_portal","no_animation","no_scroll_animation","show_submit_button","submit_element","prevent_selection","size","align_autocomplete","options_render","search_in_word_index","search_numbers","default_value","input_value","autoComplete","open_on_focus","prevent_close","keep_open","disabled","stretch","skeleton","portal_class","drawer_class","page_offset","observer_element","enable_body_lock","className","on_show","on_hide","on_type","on_focus","on_blur","on_change","on_select","on_state_update","input_element","process","env","NODE_ENV","propTypes","spacingPropTypes","drawerListPropTypes","PropTypes","string","oneOf","oneOfType","node","func","object","bool","shape","message","number","arrayOf","selectedKey","selected_key","selected_value","suffix_value","content","class","array","parseDataItem","dataItem","searchWord","parseContentTitle","search_content","separator","Array","isArray","createSearchIndex","map","contentChunk","getCurrentDataTitle","selected_item","currentData","getCurrentData","preferSelectedValue","getDerivedStateFromProps","state","_listenForPropChanges","_props$input_value","_props$data","_state$prevData","disableHighlighting","isTrue","inputValue","prevData","selectedItem","normalizeData","updateData","context","_this","this","args","undefined","onStateComplete","drawerList","setWrapperElement","_ref","current","setVisible","setHidden","setState","hasFocus","hasBlur","hasFilter","hidden","isOpen","setVisibleByContext","toggleVisible","isVisible","focusDrawerList","options","skipFilter","showAllNextTime","runFilterToHighlight","fillDataIfEmpty","event","typedInputValue","dispatchCustomElementEvent","getEventObjects","trim","runFilterWithSideEffects","runFilter","count","countData","showNoOptionsItem","setData","wrapWithShowAll","cache_hash","active_item","__id","totalReset","resetSelectedItem","showAllItems","_ref2","possibleTitle","original_data","hasFilterActive","lastItem","slice","lastActiveItem","class_name","Fragment","_props","_cacheMemory","clearInputValue","setSearchIndex","overwriteSearchIndex","resetActiveItem","overwriteOriginalData","clearTimeout","_selectTimeout","setTimeout","hasSelectedItem","setInputValue","ignoreEvents","visibleIndicator","getCurrentIndex","rawData","parseFloat","newItem","oldItem","hasChanged","hasDatasetChanged","revalidateSelectedItem","revalidateInputValue","newData","filteredData","_ref3","key","keycode","preventDefault","showAll","hasValidData","hasActiveItem","target","skipFocusDuringChange","__preventFiringBlurEvent","Boolean","currentTarget","getPreviousSibling","DrawerList","blurDelay","hasFocusOnElement","existingValue","resetInputValue","resetAfterClose","resetFilter","_blurTimeout","focusInput","_refUl","focus","preventScroll","_refInput","warn","attributes","dataList","emptyData","showIndicatorItem","showIndicator","hideIndicator","setMode","debounce","wait","dbf","hasInjectedDataItem","first","includes","showAllTimeout","setActiveItemAndScrollToIt","scrollTo","hasHadValue","searchIndex","searchNumbers","inWordIndex","skipReorder","searchWords","split","wordCond","findSearchWords","word","wordIndex","_ref4","replace","escapeRegexChars","regexWord","RegExp","test","_ref5","wordScore","match","isFirstWord","strS","strE","tagS","tagE","item","listOfFoundWords","_children2","_children2$props","cacheHash","isComponent","isValidElement","originalChild","segment","convertJsxToString","_ref6","idx","char","result","__html","dangerouslySetInnerHTML","_originalChild$props","Comp","cloneElement","totalScore","_ref7","sort","_ref8","_ref9","b","_ref10","res","setFocusOnInput","hasSelectedText","_ref11","_args$data","current_title","createRef","_refShell","isTouchDevice","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","_focusTimeout","cb","getAriaLiveUpdate","newString","getVoiceOverActiveItem","currentDataItem","IS_MAC","priority","delay","ItemContent","_this$context","_this$context2","extendPropsWithContextInClassComponent","defaultProps","getTranslation","pickFormElementProps","FormRow","formElement","fixed_position","CustomInput","independent_width","_mode","_data","_children","_direction","_opened","_value","_input_value","showStatus","getStatusState","isExpanded","onBlur","validateDOMAttributes","mainParams","classnames","createSpacingClasses","shellParams","ref","inputParams","autoCapitalize","spellCheck","autoCorrect","role","onMouseDown","onInputClickHandler","onKeyDown","onInputKeyDownHandler","onChange","onInputChangeHandler","onFocus","onInputFocusHandler","onBlurHandler","inner_ref","IS_WIN","IS_EDGE","combineDescribedBy","submitButton","triggerParams","onTriggerKeyDownHandler","onSubmit","reserveActivityHandler","tooltip","SubmitButton","variant","type","innerId","forId","text","labelDirection","srOnly","onClick","show","text_id","width_selector","inner_element","setVisibleAndFocusOnInput","input_state","clear","tabIndex","toggleVisibleAndFocusOptions","list_class","align_drawer","onChangeHandler","onSelectHandler","onHideHandler","on_pre_change","onPreChangeHandler","on_key_down","DrawerListContext","HorizontalItem","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/autocomplete/Autocomplete.js"],"sourcesContent":["/**\n * Web Autocomplete Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n warn,\n isTrue,\n isTouchDevice,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n getStatusState,\n combineDescribedBy,\n convertJsxToString,\n escapeRegexChars,\n getPreviousSibling,\n keycode,\n} from '../../shared/component-helper'\nimport {\n IS_MAC,\n IS_WIN,\n IS_EDGE,\n debounce,\n hasSelectedText,\n} from '../../shared/helpers'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nimport Suffix from '../../shared/helpers/Suffix'\nimport AriaLive from '../aria-live/AriaLive'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport IconPrimary from '../icon-primary/IconPrimary'\nimport Input, { SubmitButton } from '../input/Input'\nimport ProgressIndicator from '../progress-indicator/ProgressIndicator'\nimport DrawerList from '../../fragments/drawer-list/DrawerList'\nimport { ItemContent } from '../../fragments/drawer-list/DrawerListItem'\nimport DrawerListContext from '../../fragments/drawer-list/DrawerListContext'\nimport DrawerListProvider from '../../fragments/drawer-list/DrawerListProvider'\nimport {\n drawerListPropTypes,\n parseContentTitle,\n getCurrentData,\n getCurrentIndex,\n normalizeData,\n} from '../../fragments/drawer-list/DrawerListHelpers'\n\nexport default class Autocomplete extends React.PureComponent {\n static propTypes = {\n ...spacingPropTypes,\n ...drawerListPropTypes,\n\n id: PropTypes.string,\n mode: PropTypes.oneOf(['sync', 'async']),\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n placeholder: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n no_options: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n show_all: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n aria_live_options: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n indicator_label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n show_options_sr: PropTypes.string,\n selected_sr: PropTypes.string,\n submit_button_title: PropTypes.string,\n submit_button_icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n input_ref: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n icon_size: PropTypes.string,\n icon_position: PropTypes.oneOf(['left', 'right']),\n triangle_position: PropTypes.oneOf(['left', 'right']),\n input_icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_value: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n keep_value_and_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n show_clear_button: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n disable_filter: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n disable_reorder: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n scrollable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n focusable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disable_highlighting: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n direction: PropTypes.oneOf(['auto', 'top', 'bottom']),\n max_height: PropTypes.number,\n skip_portal: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_scroll_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n show_submit_button: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n submit_element: PropTypes.node,\n prevent_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n align_autocomplete: PropTypes.oneOf(['left', 'right']),\n options_render: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.func,\n PropTypes.node,\n ]),\n input_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n data: PropTypes.oneOfType([\n PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n ]),\n PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n PropTypes.shape({\n selectedKey: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n /** @deprecated use `selectedKey` */\n selected_key: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n suffix_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n ])\n ),\n ]),\n search_in_word_index: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n search_numbers: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n default_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n input_value: PropTypes.string,\n open_on_focus: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n prevent_close: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_open: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n opened: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n portal_class: PropTypes.string,\n drawer_class: PropTypes.string,\n page_offset: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n observer_element: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n enable_body_lock: PropTypes.bool,\n\n class: PropTypes.string,\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n PropTypes.array,\n ]),\n\n on_show: PropTypes.func,\n on_type: PropTypes.func,\n on_focus: PropTypes.func,\n on_blur: PropTypes.func,\n on_hide: PropTypes.func,\n on_change: PropTypes.func,\n on_select: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n mode: 'sync',\n title: 'Option Menu',\n placeholder: null,\n no_options: null,\n show_all: null,\n aria_live_options: null,\n indicator_label: null,\n show_options_sr: null,\n selected_sr: null,\n submit_button_title: null,\n submit_button_icon: 'chevron_down',\n input_ref: null,\n icon: null,\n icon_size: null,\n icon_position: 'left',\n triangle_position: null,\n input_icon: 'loupe',\n label: null,\n label_direction: null,\n label_sr_only: null,\n keep_value: null,\n keep_selection: null,\n keep_value_and_selection: null,\n show_clear_button: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n disable_filter: false,\n disable_reorder: false,\n scrollable: true,\n focusable: false,\n disable_highlighting: false,\n max_height: null,\n direction: 'auto',\n skip_portal: null,\n no_animation: false,\n no_scroll_animation: false,\n show_submit_button: false,\n submit_element: null,\n prevent_selection: false,\n size: 'default',\n align_autocomplete: null,\n options_render: null,\n data: null,\n search_in_word_index: 3,\n search_numbers: null,\n default_value: null,\n value: 'initval',\n input_value: 'initval',\n autoComplete: 'off',\n open_on_focus: false,\n prevent_close: false,\n keep_open: false,\n opened: null,\n disabled: null,\n stretch: null,\n skeleton: null,\n portal_class: null,\n drawer_class: null,\n page_offset: null,\n observer_element: null,\n enable_body_lock: false,\n\n className: null,\n children: null,\n\n on_show: null,\n on_hide: null,\n on_type: null,\n on_focus: null,\n on_blur: null,\n on_change: null,\n on_select: null,\n on_state_update: null,\n input_element: null,\n }\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n }\n render() {\n return (\n <DrawerListProvider\n {...this.props}\n id={this._id}\n data={this.props.data || this.props.children}\n opened={null}\n tagName=\"dnb-autocomplete\"\n ignore_events={false}\n prevent_focus\n skip_keysearch\n >\n <AutocompleteInstance id={this._id} {...this.props} />\n </DrawerListProvider>\n )\n }\n}\n\nclass AutocompleteInstance extends React.PureComponent {\n static propTypes = Autocomplete.propTypes\n static defaultProps = Autocomplete.defaultProps\n static contextType = DrawerListContext\n\n static parseDataItem(dataItem) {\n const searchWord = parseContentTitle(\n dataItem.search_content || dataItem,\n {\n separator: ' ',\n }\n )\n if (typeof searchWord !== 'string' && Array.isArray(searchWord)) {\n return AutocompleteInstance.parseDataItem(searchWord)\n }\n return searchWord\n }\n\n static createSearchIndex(data) {\n return data.map((dataItem) => {\n const contentChunk = AutocompleteInstance.parseDataItem(dataItem)\n return { dataItem, contentChunk }\n })\n }\n\n static getCurrentDataTitle(selected_item, data) {\n const currentData = getCurrentData(selected_item, data)\n return parseContentTitle(currentData, {\n separator: ' ',\n preferSelectedValue: true,\n })\n }\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n state.disableHighlighting = isTrue(props.disable_highlighting)\n\n if (\n props.input_value !== 'initval' &&\n props.input_value?.length > 0\n ) {\n state.inputValue = props.input_value\n }\n\n if (props?.data?.length > 0 && state?.prevData?.length === 0) {\n let selectedItem = state.selected_item\n\n if (props.default_value) {\n selectedItem = props.default_value\n }\n\n if (\n !props.default_value &&\n props.value &&\n props.value !== 'initval'\n ) {\n selectedItem = props.value\n }\n\n const currentData = getCurrentData(\n selectedItem,\n normalizeData(props.data)\n )\n\n state.inputValue = parseContentTitle(currentData, {\n separator: ' ',\n preferSelectedValue: true,\n })\n }\n\n if (props.data !== state.prevData) {\n state.updateData(props.data)\n state.prevData = props.data\n }\n }\n\n state._listenForPropChanges = true\n\n return state\n }\n\n constructor(props, context) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n\n this.attributes = {}\n this.state = this.state || {}\n this.state._listenForPropChanges = true\n this.state.mode = props.mode\n this.state.prevData = props.data // only to compare against new data\n this.state.updateData = this.updateData // only so we can call setData\n\n if (context.drawerList && context.drawerList.current_title) {\n this.state.inputValue = context.drawerList.current_title\n }\n\n this._ref = React.createRef()\n this._refShell = React.createRef()\n this._refInput = React.createRef()\n\n this.isTouchDevice = isTouchDevice()\n\n this.skipFilter = isTrue(props.disable_filter)\n this.skipReorder = isTrue(props.disable_reorder)\n }\n\n componentDidMount() {\n if (isTrue(this.props.opened)) {\n this.runFilterToHighlight({ fillDataIfEmpty: true })\n this.setVisible()\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.setSearchIndex({ overwriteSearchIndex: true }, () => {\n this.runFilterWithSideEffects(this.state.inputValue)\n })\n }\n if (prevProps.value !== this.props.value) {\n this.revalidateSelectedItem()\n this.revalidateInputValue()\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._selectTimeout)\n clearTimeout(this._focusTimeout)\n clearTimeout(this._blurTimeout)\n }\n\n setVisible = (args = null, onStateComplete = null) => {\n this.context.drawerList\n .setWrapperElement(this._ref.current)\n .setVisible(args, onStateComplete)\n }\n\n setHidden = (args = null, onStateComplete = null) => {\n this.context.drawerList.setHidden(args, onStateComplete)\n this.setState({\n hasFocus: false,\n hasBlur: false,\n })\n }\n\n toggleVisible = (args = null, onStateComplete = null) => {\n args = args || {}\n if (typeof args.hasFilter === 'undefined') {\n args.hasFilter = false\n }\n if (isTrue(this.props.disabled)) {\n return // stop here\n }\n if (\n !args.hasFilter &&\n !isTrue(this.props.prevent_close) &&\n !this.context.drawerList.hidden &&\n this.context.drawerList.isOpen\n ) {\n this.setHidden(null, onStateComplete)\n } else {\n this.setVisibleByContext(null, onStateComplete)\n }\n }\n\n toggleVisibleAndFocusOptions = () => {\n this.context.drawerList.toggleVisible(null, (isVisible) => {\n if (isVisible) {\n this.focusDrawerList()\n }\n })\n }\n\n setVisibleByContext = (options = {}, onStateComplete = null) => {\n const skipFilter = this.state.showAllNextTime\n if (skipFilter) {\n this.setState({\n showAllNextTime: false,\n _listenForPropChanges: false,\n })\n }\n\n this.runFilterToHighlight({\n fillDataIfEmpty: true,\n skipFilter,\n ...options,\n })\n\n this.setVisible(null, onStateComplete)\n }\n\n onInputChangeHandler = ({ value, event }) => {\n this.setState({\n typedInputValue: value,\n inputValue: value,\n _listenForPropChanges: false,\n })\n\n dispatchCustomElementEvent(this, 'on_type', {\n value,\n event,\n ...this.getEventObjects('on_type'),\n })\n\n value = String(value).trim()\n if (value !== this.state.inputValue) {\n this.runFilterWithSideEffects(value)\n }\n }\n\n runFilterWithSideEffects = (value, options = {}) => {\n // run the filter also on invalid values, so we reset the highlight\n const data = this.runFilter(value, options)\n const count = this.countData(data)\n\n const { keep_value, keep_selection, keep_value_and_selection } =\n this.props\n\n if (value?.length > 0) {\n // show the \"no_options\" message\n if (count === 0) {\n this.showNoOptionsItem()\n } else if (count > 0) {\n this.context.drawerList.setData(this.wrapWithShowAll(data))\n this.context.drawerList.setState({\n cache_hash: value + count,\n })\n\n if (count === 1) {\n this.context.drawerList.setState({\n active_item: data[0].__id,\n })\n }\n }\n } else {\n if (\n !isTrue(keep_value) &&\n !isTrue(keep_selection) &&\n !isTrue(keep_value_and_selection)\n ) {\n this.totalReset()\n } else if (isTrue(keep_value)) {\n this.resetSelectedItem()\n }\n\n this.showAllItems()\n }\n\n // Opens the drawer, also when pressing on the clear button\n if (this.state.hasFocus) {\n this.setVisible()\n }\n\n return data\n }\n\n runFilterToHighlight = (\n { fillDataIfEmpty = false, ...options } = {},\n value = this.state.inputValue\n ) => {\n // do not filter or highlight if the current selected item is the same as the input value\n const possibleTitle = AutocompleteInstance.getCurrentDataTitle(\n this.context.drawerList.selected_item,\n this.context.drawerList.original_data\n )\n\n if (value === possibleTitle) {\n return // stop here\n }\n\n value = String(value || '').trim()\n\n this.setState({\n disableHighlighting: false,\n _listenForPropChanges: false,\n })\n\n let data = this.runFilter(value, options) // do not skip the filter here\n\n // this is a backup, in case everything is empty, we fill the data\n if (fillDataIfEmpty && data.length === 0 && value === '') {\n data = this.context.drawerList.original_data\n }\n\n this.context.drawerList.setData(this.wrapWithShowAll(data))\n this.context.drawerList.setState({\n cache_hash: value + this.countData(data),\n })\n\n return data\n }\n\n wrapWithShowAll = (data) => {\n if (!data || !this.hasFilterActive(data)) {\n return data\n }\n\n const lastItem = this.context.drawerList.original_data.slice(-1)[0]\n if (lastItem && !lastItem.show_all) {\n const lastActiveItem = data.slice(-1)[0]\n if (lastActiveItem) {\n // NB: here we could use unshift, but this has to be implemented different places as well\n data.push({\n __id: lastItem.__id + 1,\n lastActiveItem: lastActiveItem.__id,\n class_name: 'dnb-autocomplete__show-all',\n show_all: true,\n active_item: false,\n selected_item: false,\n content: (\n <>\n <IconPrimary icon=\"arrow_down\" />\n {this._props.show_all}\n </>\n ),\n })\n }\n }\n\n return data\n }\n\n setInputValue = (inputValue) => {\n this.setState({\n inputValue,\n _listenForPropChanges: false,\n })\n }\n\n emptyData = () => {\n this._cacheMemory = {}\n\n this.clearInputValue()\n\n this.context.drawerList.setData(\n () => [],\n () => {\n this.setSearchIndex({ overwriteSearchIndex: true })\n this.resetActiveItem()\n this.totalReset()\n },\n {\n overwriteOriginalData: true,\n }\n )\n }\n\n clearInputValue = () => {\n this.setState({\n inputValue: '',\n typedInputValue: null,\n _listenForPropChanges: false,\n })\n }\n\n resetInputValue = () => {\n const { input_value, keep_value, keep_value_and_selection } =\n this.props\n\n if (\n isTrue(keep_value) ||\n isTrue(keep_value_and_selection) ||\n (input_value !== 'initval' && input_value.length > 0)\n ) {\n return // stop here\n }\n\n clearTimeout(this._selectTimeout)\n this._selectTimeout = setTimeout(() => {\n if (this.hasSelectedItem()) {\n const inputValue = AutocompleteInstance.getCurrentDataTitle(\n this.context.drawerList.selected_item,\n this.context.drawerList.original_data\n )\n this.setInputValue(inputValue)\n } else {\n this.clearInputValue()\n }\n }, 1) // to make sure we actually are after the Input state handling -> \"input placeholder reset\"\n }\n\n showNoOptionsItem = () => {\n if (this.state.mode === 'async') {\n return\n }\n this.resetActiveItem()\n this.ignoreEvents()\n this.context.drawerList.setData([\n {\n class_name: 'dnb-autocomplete__no-options',\n content: this._props.no_options,\n ignore_events: true,\n __id: 'no_options',\n },\n ])\n this.context.drawerList.setState({\n cache_hash: 'no_options',\n })\n this.setVisible()\n }\n\n showIndicatorItem = () => {\n this.resetActiveItem()\n this.ignoreEvents()\n this.context.drawerList.setData([\n {\n class_name: 'dnb-autocomplete__indicator',\n content: <ProgressIndicator label={this._props.indicator_label} />,\n ignore_events: true,\n __id: 'indicator',\n },\n ])\n this.context.drawerList.setState({\n cache_hash: 'indicator',\n })\n this.setVisible()\n }\n\n showIndicator = () => {\n if (!this.state.visibleIndicator) {\n this.setState({\n visibleIndicator: true,\n _listenForPropChanges: false,\n })\n }\n }\n\n hideIndicator = () => {\n this.setState({\n visibleIndicator: false,\n _listenForPropChanges: false,\n })\n }\n\n setMode = (mode) => {\n this.setState({\n mode,\n _listenForPropChanges: false,\n })\n }\n\n revalidateInputValue = () => {\n const { input_value, value } = this.props\n if (input_value && input_value !== 'initval') {\n return // stop here\n }\n const selected_item = getCurrentIndex(\n value,\n this.context.drawerList.original_data\n )\n const inputValue = AutocompleteInstance.getCurrentDataTitle(\n selected_item,\n this.context.drawerList.original_data\n )\n this.setInputValue(inputValue)\n }\n\n revalidateSelectedItem = () => {\n const selected_item = getCurrentIndex(\n this.props.value,\n this.context.drawerList.original_data\n )\n\n this.context.drawerList.setState({\n selected_item,\n })\n }\n\n hasDatasetChanged = (rawData) => {\n const { selected_item } = this.context.drawerList\n if (parseFloat(selected_item) > -1) {\n const newItem = rawData?.[selected_item]\n const oldItem = this.context.drawerList.original_data[selected_item]\n if (\n typeof newItem?.selectedKey !== 'undefined'\n ? newItem?.selectedKey !== oldItem?.selectedKey\n : newItem?.selected_key !== oldItem?.selected_key\n ) {\n return true\n }\n }\n return false\n }\n\n updateData = (rawData) => {\n const hasChanged = this.hasDatasetChanged(rawData)\n\n // invalidate the local cache now,\n // because we get else the same after we show the new result\n this.context.drawerList.setState(\n {\n cache_hash: 'updateData',\n },\n () => {\n // If the \"selected_key\" has changed in comparison to the existing data,\n // invalidated our selected_item\n // Also, ensure to run it after a state update, because the \"selected_item\" (value prop) can have changed,\n // and should match the new data\n if (hasChanged) {\n const { value } = this.props\n if (value && value !== 'initval') {\n this.revalidateSelectedItem()\n this.revalidateInputValue()\n } else {\n this.resetSelectedItem()\n }\n }\n }\n )\n\n this.context.drawerList.setData(\n () => rawData, // set data as a function, so it gets re-evaluated with normalizeData\n (newData) => {\n this.setSearchIndex(\n { overwriteSearchIndex: true, data: newData },\n () => {\n const { typedInputValue } = this.state\n\n if (typedInputValue?.length > 0) {\n // run with side effects, to get preselection of active_item\n const filteredData =\n this.runFilterWithSideEffects(typedInputValue)\n if (this.countData(filteredData) === 0) {\n this.showNoOptionsItem()\n }\n } else {\n this.resetActiveItem()\n\n if (this.context.drawerList.opened) {\n this.showAllItems()\n }\n }\n }\n )\n },\n {\n overwriteOriginalData: true,\n }\n )\n\n return this\n }\n\n onInputKeyDownHandler = ({ event: e }) => {\n const key = keycode(e)\n\n switch (key) {\n case 'page up':\n case 'page down':\n case 'home':\n case 'end':\n case 'down':\n case 'up':\n e.preventDefault() // has to be there for VO, one the drawer is closed\n break\n }\n\n switch (key) {\n case 'up':\n case 'down':\n if (!this.context.drawerList.opened) {\n this.setVisible()\n }\n\n break\n\n case 'esc':\n this.setState({\n showAllNextTime: true,\n _listenForPropChanges: false,\n })\n\n break\n\n case 'enter':\n e.preventDefault()\n\n if (!this.context.drawerList.opened && this.hasFilterActive()) {\n this.ignoreEvents()\n this.showAll()\n }\n\n if (\n (!this.hasValidData() || !this.hasSelectedItem()) &&\n !this.hasActiveItem()\n ) {\n this.toggleVisible()\n } else {\n this.setVisible()\n }\n\n break\n }\n }\n\n onInputClickHandler = (e) => {\n // Show the entire list when an item is selected\n if (!this.context.drawerList.opened && this.hasFilterActive()) {\n this.ignoreEvents()\n this.showAll()\n }\n\n const { value } = e.target\n this.setVisibleByContext({ value })\n }\n\n onInputFocusHandler = (event) => {\n if (this.state.skipFocusDuringChange) {\n return // stop here\n }\n\n const { open_on_focus, keep_value_and_selection } = this.props\n\n if (!this.state.hasFocus) {\n if (isTrue(open_on_focus) && this.hasValidData()) {\n const { value } = event.target\n this.setVisibleByContext({ value })\n } else {\n this.setSearchIndex()\n }\n\n if (isTrue(keep_value_and_selection)) {\n this.showAll()\n }\n\n dispatchCustomElementEvent(this, 'on_focus', {\n event,\n ...this.getEventObjects('on_focus'),\n })\n\n this.setState({\n hasFocus: true,\n hasBlur: false,\n })\n }\n }\n\n reserveActivityHandler = (event = null) => {\n this.__preventFiringBlurEvent = Boolean(\n event.key === 'enter' ||\n (event?.currentTarget\n ? getPreviousSibling('dnb-drawer-list', event.currentTarget) ||\n getPreviousSibling(\n 'dnb-input__submit-button__button',\n event.currentTarget\n )\n : false)\n )\n\n if (this.__preventFiringBlurEvent) {\n setTimeout(\n () => {\n this.__preventFiringBlurEvent = false\n },\n isTrue(this.props.no_animation) ? 1 : DrawerList.blurDelay\n )\n }\n }\n\n onBlurHandler = (event) => {\n if (\n this.__preventFiringBlurEvent ||\n this.context.drawerList.hasFocusOnElement ||\n this.state.hasBlur\n ) {\n this.__preventFiringBlurEvent = null\n return false\n }\n\n const {\n open_on_focus,\n keep_value,\n keep_value_and_selection,\n prevent_selection,\n no_animation,\n } = this.props\n\n this.setState({\n hasBlur: true,\n hasFocus: false,\n })\n\n if (!isTrue(keep_value) && !isTrue(keep_value_and_selection)) {\n this.setState({\n typedInputValue: null,\n _listenForPropChanges: false,\n })\n }\n\n if (!isTrue(prevent_selection)) {\n const existingValue = this.state.inputValue\n\n this.resetInputValue()\n\n const resetAfterClose = () => {\n if (\n !isTrue(keep_value) ||\n !existingValue ||\n this.hasSelectedItem()\n ) {\n this.resetActiveItem()\n }\n this.resetFilter()\n }\n\n if (isTrue(no_animation)) {\n resetAfterClose()\n } else {\n clearTimeout(this._blurTimeout)\n this._blurTimeout = setTimeout(\n resetAfterClose,\n DrawerList.blurDelay\n ) // only to let the animation pass, before we make the effect. Else this would be a visible change\n }\n }\n\n if (isTrue(open_on_focus)) {\n this.setHidden()\n }\n\n dispatchCustomElementEvent(this, 'on_blur', {\n event,\n ...this.getEventObjects('on_blur'),\n })\n }\n\n onTriggerKeyDownHandler = (e) => {\n const key = keycode(e)\n\n switch (key) {\n case 'space':\n case 'enter':\n {\n this.setVisible()\n }\n break\n }\n\n switch (key) {\n case 'space':\n case 'enter':\n case 'page up':\n case 'page down':\n case 'down':\n case 'up':\n {\n e.preventDefault()\n this.focusInput()\n }\n break\n }\n }\n\n focusDrawerList = () => {\n try {\n this.context.drawerList._refUl.current.focus({\n preventScroll: true,\n })\n } catch (e) {\n // do nothing\n }\n }\n\n focusInput = () => {\n try {\n this._refInput.current._ref.current.focus({\n preventScroll: true,\n })\n } catch (e) {\n warn(e)\n }\n }\n\n getEventObjects = (key) => {\n const attributes = this.attributes\n\n return {\n attributes,\n dataList: this.context.drawerList.data,\n updateData: this.updateData,\n revalidateSelectedItem: this.revalidateSelectedItem,\n revalidateInputValue: this.revalidateInputValue,\n resetSelectedItem: this.resetSelectedItem,\n clearInputValue: this.clearInputValue,\n showAllItems: this.showAllItems,\n setVisible: this.setVisible,\n resetInputValue: this.resetInputValue,\n setHidden: this.setHidden,\n emptyData: this.emptyData,\n focusInput: this.focusInput,\n setInputValue: this.setInputValue,\n showNoOptionsItem: this.showNoOptionsItem,\n showIndicatorItem: this.showIndicatorItem,\n showIndicator: this.showIndicator,\n hideIndicator: this.hideIndicator,\n setMode: this.setMode,\n debounce: (func, props = {}, wait = 250) => {\n this.dbf = this.dbf || {}\n return (\n this.dbf[key] ||\n (this.dbf[key] = debounce(func, wait, { context: this }))\n )(props)\n },\n }\n }\n\n hasInjectedDataItem = (data = this.context.drawerList.data) => {\n const lastItem = data.slice(-1)[0]\n return lastItem\n ? lastItem.show_all || lastItem.__id === 'no_options'\n : false\n }\n\n countData = (data = this.context.drawerList.data) => {\n const count = data.length\n return count > 0 && this.hasInjectedDataItem(data) ? count - 1 : count\n }\n\n hasValidData = (data = this.context.drawerList.data) => {\n if (this.countData(data) > 0) {\n const first = data[0]\n if (\n !first.show_all &&\n !['no_options', 'indicator'].includes(first.__id)\n ) {\n return true\n }\n }\n return false\n }\n\n hasSelectedItem = () => {\n return parseFloat(this.context.drawerList.selected_item) > -1\n }\n\n hasActiveItem = () => {\n return parseFloat(this.context.drawerList.active_item) > -1\n }\n\n hasFilterActive = (data = this.context.drawerList.data) => {\n return !(\n this.context.drawerList.original_data &&\n this.context.drawerList.original_data.length === this.countData(data)\n )\n }\n\n setSearchIndex(\n {\n overwriteSearchIndex = false,\n data = this.context.drawerList.original_data,\n } = {},\n cb\n ) {\n this._cacheMemory = {}\n\n if (!overwriteSearchIndex && this.state.searchIndex) {\n return this.state.searchIndex\n }\n\n const searchIndex = AutocompleteInstance.createSearchIndex(data)\n\n this.setState(\n {\n searchIndex,\n _listenForPropChanges: false,\n },\n cb\n )\n\n return searchIndex\n }\n\n ignoreEvents = () => {\n clearTimeout(this.showAllTimeout)\n this.context.drawerList.setState(\n {\n ignore_events: true, // we also have to reset this one\n },\n () => {\n // but we reset it right after the rerender\n this.showAllTimeout = setTimeout(() => {\n this.context &&\n this.context.drawerList &&\n this.context.drawerList.setState({\n ignore_events: false, // we also have to reset this one\n })\n }, 10) // make sure we reset once the rerender of DrawerList is done, because then we keep the active_item at it's position by using key=\"down\"\n }\n )\n }\n\n showAll = () => {\n this.resetFilter()\n\n this.context.drawerList.setState({\n cache_hash: 'all',\n })\n\n this.runFilterToHighlight({ skipFilter: true, fillDataIfEmpty: true })\n }\n\n showAllItems = () => {\n this.resetFilter()\n this.context.drawerList.setState({\n cache_hash: 'all',\n })\n this.context.drawerList.setActiveItemAndScrollToIt(\n this.context.drawerList.selected_item,\n {\n scrollTo: false,\n }\n )\n }\n\n totalReset = () => {\n this.setState({\n inputValue: null,\n typedInputValue: null,\n _listenForPropChanges: false,\n })\n this.resetActiveItem()\n this.resetSelectedItem()\n }\n\n resetActiveItem = () => {\n this.context.drawerList.setState({\n active_item: null,\n })\n }\n\n resetSelectedItem = () => {\n const hasHadValue = this.hasSelectedItem()\n this.context.drawerList.setState(\n {\n selected_item: null,\n },\n () => {\n if (hasHadValue) {\n dispatchCustomElementEvent(this, 'on_change', {\n ...this.getEventObjects('on_change'),\n })\n }\n }\n )\n }\n\n resetFilter = () => {\n this.context.drawerList.setData(this.context.drawerList.original_data)\n }\n\n runFilter = (\n value,\n {\n data = null, // rawData\n searchIndex = this.state.searchIndex,\n searchNumbers = isTrue(this.props.search_numbers),\n inWordIndex = (parseFloat(this.props.search_in_word_index) || 3) - 2,\n disableHighlighting = false,\n skipFilter = false,\n skipReorder = false,\n } = {}\n ) => {\n if (data) {\n searchIndex = this.setSearchIndex({ data })\n }\n // get the search index\n else if (!searchIndex) {\n searchIndex = this.setSearchIndex()\n }\n\n if (typeof searchIndex === 'undefined') {\n return []\n }\n\n const searchWords = value?.split(/\\s+/g).filter(Boolean) || []\n const wordCond = '^|\\\\s'\n\n const findSearchWords = (contentChunk) => {\n if (typeof contentChunk !== 'string') {\n return []\n }\n\n return searchWords\n .map((word, wordIndex) => ({ word, wordIndex }))\n .filter(({ word, wordIndex }) => {\n if (searchNumbers) {\n // Remove all other chars, except numbers, so we can compare\n word = word.replace(/[^\\p{L}\\p{N}]+/gu, '')\n } else {\n // To ensure we escape regex chars\n word = escapeRegexChars(word)\n }\n\n if (searchNumbers) {\n // This will make it possible to search with one letter less\n word = word.replace(/(\\d)/g, '$1+')\n }\n\n // if the uses reached word 3, then we go inside words as well\n const regexWord = new RegExp(\n wordIndex > inWordIndex ? `${word}` : `(${wordCond})${word}`,\n 'i'\n )\n\n if (regexWord.test(contentChunk)) {\n return true\n }\n\n if (\n searchNumbers &&\n regexWord.test(contentChunk.replace(/[^0-9]/g, ''))\n ) {\n return true\n }\n\n return false\n })\n .map(({ word, wordIndex }) => {\n // Use 1 to ensure we never have 0, because we filter out words with 0 later\n let wordScore = 0\n\n // Check how ofter the current written word is inside the content,\n // and give a score for each one\n wordScore += (\n contentChunk.match(\n new RegExp(`(${wordCond})${escapeRegexChars(word)}`, 'ig')\n ) || []\n ).length\n\n // Give the first word extra points\n if (wordIndex === 0) {\n // Check if the first chunk starts the first written word\n const isFirstWord = new RegExp(\n `^${escapeRegexChars(searchWords[0])}`,\n 'i'\n ).test(contentChunk.split(' ')[0])\n\n // If yes, add the amount of possible words + 1\n if (isFirstWord) {\n wordScore += searchWords.length + 1\n }\n }\n\n return {\n word,\n wordIndex,\n wordScore,\n }\n })\n }\n\n const strS = '\\uFFFE'\n const strE = '\\uFFFF'\n const tagS = '<span class=\"dnb-drawer-list__option__item--highlight\">'\n const tagE = '</span>'\n\n searchIndex = searchIndex.map((item, i) => {\n const listOfFoundWords = findSearchWords(item.contentChunk, i)\n\n if (typeof item.dataItem === 'string') {\n item.dataItem = { content: item.dataItem }\n }\n\n // Only make a copy if render is not set\n // If we don't make a copy of the item, we risk that we manipulate data outside\n if (!item.dataItem.render) {\n item.dataItem = { ...item.dataItem }\n }\n\n // this function gets called once the items are rendered / in view\n // this part is used for the highlighting\n item.dataItem.render = (children, id) => {\n if (disableHighlighting || this.state.disableHighlighting) {\n return children\n }\n\n // if the ID and the content is the same, use the cached version\n const cacheHash = id + value\n this._cacheMemory = this._cacheMemory || {}\n if (this._cacheMemory[cacheHash]) {\n return this._cacheMemory[cacheHash]\n }\n\n const isComponent =\n typeof children !== 'string' && React.isValidElement(children)\n\n if (isComponent && Array.isArray(children?.props?.children)) {\n children = children.props.children\n } else if (!Array.isArray(children)) {\n children = [children] // for a while we had split this into separate words children.split(' ') but this is not needed anymore\n }\n\n // make string out of it\n children = children.map((originalChild) => ({\n originalChild,\n segment: convertJsxToString(originalChild, ' '),\n }))\n\n children = children.map(({ originalChild, segment }, idx) => {\n // This way, the user can get highlights that do not match\n searchWords.forEach((word, wordIndex) => {\n // Can be empty string\n if (segment) {\n // To ensure we escape regex chars\n word = escapeRegexChars(word)\n\n if (searchNumbers) {\n word.split('').forEach((char) => {\n if (/[\\p{L}\\p{N}]/u.test(char)) {\n segment = segment.replace(\n new RegExp(`(${char})`, 'gi'),\n `${strS}$1${strE}`\n )\n }\n })\n } else {\n if (wordIndex > inWordIndex) {\n segment = segment.replace(\n new RegExp(`(${word})`, 'gi'),\n `${strS}$1${strE}`\n )\n } else {\n segment = segment.replace(\n new RegExp(`(${wordCond})(${word})`, 'gi'),\n `$1${strS}$2${strE}`\n )\n }\n }\n }\n })\n\n let result = segment\n\n if (segment.includes(strS)) {\n // to make sure we don't have several in a row\n const __html = segment\n .replace(new RegExp(`(${strS})+`, 'g'), strS)\n .replace(new RegExp(`(${strE})+`, 'g'), strE)\n .replace(new RegExp(`(${strE}${strS})`, 'g'), '')\n .replace(new RegExp(strS, 'g'), tagS)\n .replace(new RegExp(strE, 'g'), tagE)\n\n result = (\n <span\n key={cacheHash + idx}\n dangerouslySetInnerHTML={{\n __html,\n }}\n />\n )\n } else {\n result = <span key={cacheHash + idx}>{segment}</span>\n }\n\n // If we get a component, replace the one we use as the string comparison\n // This way we can still have an icon before or after\n if (isComponent) {\n if (Array.isArray(originalChild?.props?.children)) {\n result = originalChild.props.children.map((Comp) => {\n return Comp === originalChild ||\n (Comp.props && Comp.props.children === originalChild)\n ? result\n : Comp\n })\n } else if (typeof originalChild === 'string') {\n result = originalChild\n }\n\n if (React.isValidElement(originalChild)) {\n result = React.cloneElement(\n originalChild,\n { key: 'clone' + cacheHash + idx },\n result\n )\n }\n }\n\n return result\n })\n\n return (this._cacheMemory[cacheHash] = children)\n }\n\n if (this.skipFilter || skipFilter) {\n return item.dataItem\n }\n\n /**\n * This prioritizes the first written words (score)\n * along with who many matches are in the content item (listOfFoundWords)\n */\n let totalScore = listOfFoundWords.length // Include the found words\n for (const { wordScore } of listOfFoundWords) {\n totalScore += wordScore\n }\n\n return {\n totalScore,\n item,\n }\n })\n\n if (!this.skipFilter && !skipFilter) {\n // This removes items with 0 totalScore\n searchIndex = searchIndex.filter(({ totalScore }) => totalScore)\n\n if (!this.skipReorder && !skipReorder) {\n searchIndex = searchIndex.sort(\n ({ totalScore: a }, { totalScore: b }) => b - a\n )\n }\n\n searchIndex = searchIndex.map(({ item }) => item.dataItem)\n }\n\n return searchIndex\n }\n\n onHideHandler = (args = {}) => {\n const res = dispatchCustomElementEvent(this, 'on_hide', {\n ...args,\n ...this.getEventObjects('on_hide'),\n })\n\n if (res !== false) {\n this.setFocusOnInput()\n }\n\n return res\n }\n\n setVisibleAndFocusOnInput = () => {\n if (!this.state.hasFocus && !hasSelectedText()) {\n this.setFocusOnInput()\n this.setVisible()\n }\n }\n\n setFocusOnInput() {\n this.setState(\n {\n hasFocus: true,\n },\n () => {\n this.focusInput()\n this.setState({\n hasFocus: false,\n })\n }\n )\n }\n\n onSelectHandler = (args) => {\n if (parseFloat(args.active_item) > -1) {\n dispatchCustomElementEvent(this, 'on_select', {\n ...args,\n ...this.getEventObjects('on_select'),\n })\n }\n }\n\n onPreChangeHandler = ({ data }) => {\n if (data && data.show_all) {\n this.showAll()\n\n const active_item = data.lastActiveItem\n if (parseFloat(active_item) > -1) {\n this.context.drawerList.setActiveItemAndScrollToIt(active_item, {\n scrollTo: false,\n })\n }\n\n this.setFocusOnInput()\n\n return false\n }\n }\n\n onChangeHandler = (args) => {\n const selected_item = args.selected_item\n\n const { prevent_selection, keep_open } = this.props\n\n if (!isTrue(prevent_selection)) {\n if (!isTrue(keep_open)) {\n this.setState({\n skipFocusDuringChange: true,\n disableHighlighting: true,\n _listenForPropChanges: false,\n })\n\n this.setHidden()\n\n // Do this, so screen readers get a NEW focus later on\n // So we first need a blur of the input basically\n this.focusDrawerList()\n\n this.setState(\n {\n skipFocusDuringChange: false,\n _listenForPropChanges: false,\n },\n () => this.setFocusOnInput()\n )\n }\n\n const inputValue = AutocompleteInstance.getCurrentDataTitle(\n selected_item,\n this.context.drawerList.data\n )\n this.setInputValue(inputValue)\n }\n\n if (typeof args.data?.render === 'function') {\n delete args.data.render\n }\n\n dispatchCustomElementEvent(this, 'on_change', {\n ...args,\n ...this.getEventObjects('on_change'),\n })\n }\n\n getAriaLiveUpdate() {\n const { opened } = this.context.drawerList\n\n // this is only to make a better screen reader ux\n if (opened) {\n const { aria_live_options, no_options } = this._props\n const count = this.countData()\n\n let newString = null\n\n if (count > 0) {\n newString = String(aria_live_options).replace('%s', count)\n } else {\n newString = no_options\n }\n\n return newString\n }\n\n return ''\n }\n\n getVoiceOverActiveItem(selected_sr) {\n // Add VoiceOver support to read the \"selected\" item\n const { active_item, selected_item } = this.context.drawerList\n const currentDataItem = getCurrentData(\n active_item,\n this.context.drawerList.data\n )\n\n return (\n <AriaLive hidden={!IS_MAC} priority=\"high\" delay={0}>\n {currentDataItem && (\n <>\n {active_item === selected_item ? <>{selected_sr} </> : null}\n <ItemContent>{currentDataItem}</ItemContent>\n </>\n )}\n </AriaLive>\n )\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = (this._props = extendPropsWithContextInClassComponent(\n this.props,\n Autocomplete.defaultProps,\n this.context.getTranslation(this.props).Autocomplete,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Autocomplete\n ))\n\n const {\n title,\n placeholder,\n label,\n label_direction,\n label_sr_only,\n icon, // eslint-disable-line\n icon_size,\n input_icon,\n size,\n align_autocomplete,\n fixed_position,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n scrollable,\n focusable,\n keep_open,\n keep_value, // eslint-disable-line\n keep_value_and_selection, // eslint-disable-line\n show_clear_button,\n prevent_close,\n no_animation,\n no_scroll_animation,\n show_submit_button,\n submit_element,\n input_element: CustomInput,\n options_render,\n prevent_selection,\n max_height,\n default_value,\n search_numbers, // eslint-disable-line\n search_in_word_index, // eslint-disable-line\n show_options_sr, // eslint-disable-line\n selected_sr,\n submit_button_title,\n submit_button_icon,\n portal_class,\n drawer_class,\n input_ref, // eslint-disable-line\n className,\n disabled,\n stretch,\n skeleton,\n triangle_position,\n icon_position,\n skip_portal,\n independent_width,\n autoComplete,\n\n mode: _mode, // eslint-disable-line\n data: _data, // eslint-disable-line\n children: _children, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n id: _id, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n input_value: _input_value, // eslint-disable-line\n\n indicator_label, // eslint-disable-line\n no_options, // eslint-disable-line\n show_all, // eslint-disable-line\n aria_live_options, // eslint-disable-line\n disable_highlighting, // eslint-disable-line\n\n ...attributes\n } = props\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const { inputValue, visibleIndicator } = this.state\n\n const { hidden, selected_item, active_item, direction, opened } =\n this.context.drawerList\n\n const isExpanded = Boolean(opened) && this.hasValidData()\n\n // In case a developer is using onBlur\n // it would blur uncontrolled – so we relay on \"on_blur\".\n // But the \"onBlur\" will still function, now just as expected.\n delete attributes.onBlur\n\n // make it possible to grab the rest attributes and return it with all events\n this.attributes = validateDOMAttributes(null, attributes)\n Object.assign(this.context.drawerList.attributes, this.attributes)\n\n const mainParams = {\n className: classnames(\n 'dnb-autocomplete',\n direction && `dnb-autocomplete--${direction}`,\n disabled && 'dnb-autocomplete--disabled',\n opened && 'dnb-autocomplete--opened',\n label_direction && `dnb-autocomplete--${label_direction}`,\n icon_position &&\n `dnb-autocomplete--icon-position-${icon_position}`,\n align_autocomplete && `dnb-autocomplete--${align_autocomplete}`,\n visibleIndicator && 'dnb-autocomplete--show-indicator',\n size && `dnb-autocomplete--${size}`,\n isTrue(stretch) && `dnb-autocomplete--stretch`,\n status && `dnb-autocomplete__status--${status_state}`,\n showStatus && 'dnb-autocomplete__form-status',\n 'dnb-form-component',\n createSpacingClasses(props),\n className\n ),\n }\n\n const shellParams = {\n className: 'dnb-autocomplete__shell dnb-no-focus',\n ref: this._refShell,\n }\n\n const inputParams = {\n className: 'dnb-autocomplete__input',\n id,\n value: inputValue,\n autoCapitalize: 'none',\n spellCheck: 'false',\n autoCorrect: 'off',\n autoComplete,\n\n // ARIA\n role: 'combobox', // we need combobox twice to make it properly work on VO\n 'aria-autocomplete': 'both', // list, both\n 'aria-controls': isExpanded ? `${id}-ul` : undefined,\n 'aria-haspopup': 'listbox',\n 'aria-expanded': isExpanded, // is needed for semantics\n // 'aria-roledescription': 'autocomplete', // is not needed by now\n\n onMouseDown: this.onInputClickHandler,\n onKeyDown: this.onInputKeyDownHandler,\n onChange: this.onInputChangeHandler,\n onFocus: this.onInputFocusHandler,\n onBlur: this.onBlurHandler,\n icon_position,\n inner_ref: input_ref,\n disabled,\n skeleton,\n ...attributes,\n }\n\n if (!(parseFloat(selected_item) > -1)) {\n inputParams.placeholder = placeholder || title\n if (!(IS_WIN && IS_EDGE)) {\n inputParams['aria-placeholder'] = undefined\n }\n }\n\n // Handling of activedescendant – required by NVDA\n if (isExpanded) {\n if (parseFloat(active_item) > -1) {\n inputParams[\n 'aria-activedescendant'\n ] = `option-${id}-${active_item}`\n } else if (\n !isTrue(prevent_selection) &&\n parseFloat(selected_item) > -1\n ) {\n inputParams[\n 'aria-activedescendant'\n ] = `option-${id}-${selected_item}`\n }\n }\n\n if (showStatus || suffix) {\n inputParams['aria-describedby'] = combineDescribedBy(\n inputParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n\n let submitButton = false\n const triggerParams = {\n id: id + '-submit-button',\n disabled,\n status: !opened && status ? status_state : null,\n onKeyDown: this.onTriggerKeyDownHandler,\n onSubmit: this.toggleVisible,\n onMouseDown: this.reserveActivityHandler,\n 'aria-haspopup': 'listbox',\n 'aria-expanded': isExpanded,\n 'aria-label': !hidden ? submit_button_title : undefined,\n tooltip: show_submit_button ? submit_button_title : null,\n className: opened ? 'dnb-button--active' : null,\n }\n\n if (submit_element && React.isValidElement(submit_element)) {\n submitButton = React.cloneElement(submit_element, triggerParams)\n } else if (isTrue(show_submit_button)) {\n submitButton = (\n <SubmitButton\n icon={submit_button_icon}\n icon_size={\n icon_size || (size === 'large' ? 'medium' : 'default')\n }\n variant=\"secondary\"\n size={size === 'default' ? 'medium' : size}\n type=\"button\"\n status={status}\n status_state={status_state}\n status_props={status_props}\n {...triggerParams}\n />\n )\n }\n\n const currentDataItem = getCurrentData(\n selected_item,\n this.context.drawerList.original_data\n )\n\n const innerId =\n currentDataItem?.suffix_value && showStatus ? `${id}-inner` : null\n\n // also used for code markup simulation\n validateDOMAttributes(null, mainParams)\n validateDOMAttributes(null, shellParams)\n return (\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n forId={id}\n text={label}\n labelDirection={label_direction}\n srOnly={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n onClick={this.toggleVisible}\n />\n )}\n\n <span\n className=\"dnb-autocomplete__inner\"\n ref={this._ref}\n id={innerId}\n >\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n width_selector={innerId}\n {...status_props}\n />\n\n <span className=\"dnb-autocomplete__row\">\n <span {...shellParams}>\n {CustomInput ? (\n <CustomInput {...inputParams} />\n ) : (\n <Input\n icon={\n visibleIndicator ? (\n <ProgressIndicator\n size={size === 'large' ? 'medium' : 'small'}\n />\n ) : (\n input_icon\n )\n }\n icon_size={\n icon_size || (size === 'large' ? 'medium' : 'default')\n }\n size={size}\n status={status ? status_state : null}\n status_state={status_state}\n type={null}\n inner_element={\n currentDataItem?.suffix_value && (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\n <span\n onClick={\n disabled ? null : this.setVisibleAndFocusOnInput\n }\n className=\"dnb-autocomplete__suffix_value\"\n >\n {currentDataItem?.suffix_value}\n </span>\n )\n }\n submit_element={submitButton}\n input_state={\n this.state.skipFocusDuringChange ? 'focus' : undefined\n } // because of the short blur / focus during select\n clear={isTrue(show_clear_button)}\n ref={this._refInput}\n {...inputParams}\n {...status_props}\n />\n )}\n\n {!submitButton && (\n <span className=\"dnb-sr-only\">\n <button\n tabIndex=\"-1\"\n type=\"button\" // is needed, else a form will submit\n onClick={this.toggleVisibleAndFocusOptions}\n >\n {show_options_sr}\n </button>\n </span>\n )}\n\n <DrawerList\n id={id}\n className={classnames(\n 'dnb-autocomplete__root',\n drawer_class\n )}\n portal_class={portal_class}\n list_class=\"dnb-autocomplete__list\"\n value={selected_item}\n default_value={default_value}\n scrollable={scrollable}\n focusable={focusable}\n no_animation={no_animation}\n no_scroll_animation={no_scroll_animation}\n skip_portal={skip_portal}\n prevent_selection={prevent_selection}\n triangle_position={triangle_position || icon_position}\n keep_open={keep_open}\n prevent_close={prevent_close}\n align_drawer={align_autocomplete}\n fixed_position={fixed_position}\n disabled={disabled}\n max_height={max_height}\n direction={direction}\n size={size}\n options_render={options_render}\n on_change={this.onChangeHandler}\n on_select={this.onSelectHandler}\n on_hide={this.onHideHandler}\n on_pre_change={this.onPreChangeHandler}\n on_key_down={this.reserveActivityHandler}\n onMouseDown={this.reserveActivityHandler}\n independent_width={independent_width}\n />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-autocomplete__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n\n {/* Add VoiceOver support to read the \"selected\" item */}\n {this.getVoiceOverActiveItem(selected_sr)}\n\n <AriaLive priority=\"high\">{this.getAriaLiveUpdate()}</AriaLive>\n </span>\n )\n }\n}\n\nAutocomplete.HorizontalItem = DrawerList.HorizontalItem\nAutocomplete._formElement = true\nAutocomplete._supportsSpacingProps = true\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Autocomplete.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_componentHelper","_helpers","_AlignmentHelper2","_SpacingHelper","_filterValidProps","_Suffix","_AriaLive","_FormLabel","_FormStatus","_IconPrimary2","_Input","_interopRequireWildcard","_ProgressIndicator","_DrawerList","_DrawerListItem","_DrawerListContext","_DrawerListProvider","_DrawerListHelpers","_IconPrimary","_AlignmentHelper","_excluded","_excluded2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","length","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_extends","assign","bind","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","Autocomplete","React","PureComponent","constructor","props","_id","id","makeUniqueId","render","createElement","data","children","opened","tagName","ignore_events","prevent_focus","skip_keysearch","AutocompleteInstance","exports","mode","title","placeholder","no_options","show_all","aria_live_options","indicator_label","show_options_sr","selected_sr","submit_button_title","submit_button_icon","input_ref","icon","icon_size","icon_position","triangle_position","input_icon","label","label_direction","label_sr_only","keep_value","keep_selection","keep_value_and_selection","show_clear_button","status","status_state","status_props","status_no_animation","globalStatus","suffix","disable_filter","disable_reorder","scrollable","focusable","disable_highlighting","max_height","direction","skip_portal","no_animation","no_scroll_animation","show_submit_button","submit_element","prevent_selection","size","align_autocomplete","options_render","search_in_word_index","search_numbers","default_value","input_value","autoComplete","open_on_focus","prevent_close","keep_open","disabled","stretch","skeleton","portal_class","drawer_class","page_offset","observer_element","enable_body_lock","className","on_show","on_hide","on_type","on_focus","on_blur","on_change","on_select","on_state_update","input_element","process","env","NODE_ENV","propTypes","spacingPropTypes","drawerListPropTypes","PropTypes","string","oneOf","oneOfType","node","func","object","bool","shape","message","number","arrayOf","selectedKey","selected_key","selected_value","suffix_value","content","class","array","parseDataItem","dataItem","searchWord","parseContentTitle","search_content","separator","Array","isArray","createSearchIndex","map","contentChunk","getCurrentDataTitle","selected_item","currentData","getCurrentData","preferSelectedValue","getDerivedStateFromProps","state","_listenForPropChanges","_props$data","_state$prevData","disableHighlighting","isTrue","inputValue","prevData","selectedItem","normalizeData","updateData","context","_this","this","args","undefined","onStateComplete","drawerList","setWrapperElement","_ref","current","setVisible","setHidden","setState","hasFocus","hasBlur","hasFilter","hidden","isOpen","setVisibleByContext","toggleVisible","isVisible","focusDrawerList","options","skipFilter","showAllNextTime","runFilterToHighlight","fillDataIfEmpty","event","typedInputValue","dispatchCustomElementEvent","getEventObjects","trim","runFilterWithSideEffects","runFilter","count","countData","showNoOptionsItem","setData","wrapWithShowAll","cache_hash","active_item","__id","totalReset","resetSelectedItem","showAllItems","_ref2","possibleTitle","original_data","hasFilterActive","lastItem","slice","lastActiveItem","class_name","Fragment","_props","_cacheMemory","clearInputValue","setSearchIndex","overwriteSearchIndex","resetActiveItem","overwriteOriginalData","clearTimeout","_selectTimeout","setTimeout","hasSelectedItem","setInputValue","ignoreEvents","visibleIndicator","getCurrentIndex","rawData","parseFloat","newItem","oldItem","hasChanged","hasDatasetChanged","revalidateSelectedItem","revalidateInputValue","newData","filteredData","_ref3","key","keycode","preventDefault","showAll","hasValidData","hasActiveItem","target","skipFocusDuringChange","__preventFiringBlurEvent","Boolean","currentTarget","getPreviousSibling","DrawerList","blurDelay","hasFocusOnElement","existingValue","resetInputValue","resetAfterClose","resetFilter","_blurTimeout","focusInput","_refUl","focus","preventScroll","_refInput","warn","attributes","dataList","emptyData","showIndicatorItem","showIndicator","hideIndicator","setMode","debounce","wait","dbf","hasInjectedDataItem","first","includes","showAllTimeout","setActiveItemAndScrollToIt","scrollTo","hasHadValue","searchIndex","searchNumbers","inWordIndex","skipReorder","searchWords","split","wordCond","findSearchWords","word","wordIndex","_ref4","replace","escapeRegexChars","regexWord","RegExp","test","_ref5","wordScore","match","isFirstWord","strS","strE","tagS","tagE","item","listOfFoundWords","_children2","_children2$props","cacheHash","isComponent","isValidElement","originalChild","segment","convertJsxToString","_ref6","idx","char","result","__html","dangerouslySetInnerHTML","_originalChild$props","Comp","cloneElement","totalScore","_ref7","sort","_ref8","_ref9","b","_ref10","res","setFocusOnInput","hasSelectedText","_ref11","_args$data","current_title","createRef","_refShell","isTouchDevice","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","_focusTimeout","cb","getAriaLiveUpdate","newString","getVoiceOverActiveItem","currentDataItem","IS_MAC","priority","delay","ItemContent","_this$context","_this$context2","extendPropsWithContextInClassComponent","defaultProps","getTranslation","pickFormElementProps","FormRow","formElement","fixed_position","CustomInput","independent_width","_mode","_data","_children","_direction","_opened","_value","_input_value","showStatus","getStatusState","isExpanded","onBlur","validateDOMAttributes","mainParams","classnames","createSpacingClasses","shellParams","ref","inputParams","autoCapitalize","spellCheck","autoCorrect","role","onMouseDown","onInputClickHandler","onKeyDown","onInputKeyDownHandler","onChange","onInputChangeHandler","onFocus","onInputFocusHandler","onBlurHandler","inner_ref","IS_WIN","IS_EDGE","combineDescribedBy","submitButton","triggerParams","onTriggerKeyDownHandler","onSubmit","reserveActivityHandler","tooltip","SubmitButton","variant","type","innerId","forId","text","labelDirection","srOnly","onClick","show","text_id","width_selector","inner_element","setVisibleAndFocusOnInput","input_state","clear","tabIndex","toggleVisibleAndFocusOptions","list_class","align_drawer","onChangeHandler","onSelectHandler","onHideHandler","on_pre_change","onPreChangeHandler","on_key_down","DrawerListContext","HorizontalItem","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/autocomplete/Autocomplete.js"],"sourcesContent":["/**\n * Web Autocomplete Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n warn,\n isTrue,\n isTouchDevice,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n getStatusState,\n combineDescribedBy,\n convertJsxToString,\n escapeRegexChars,\n getPreviousSibling,\n keycode,\n} from '../../shared/component-helper'\nimport {\n IS_MAC,\n IS_WIN,\n IS_EDGE,\n debounce,\n hasSelectedText,\n} from '../../shared/helpers'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nimport Suffix from '../../shared/helpers/Suffix'\nimport AriaLive from '../aria-live/AriaLive'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport IconPrimary from '../icon-primary/IconPrimary'\nimport Input, { SubmitButton } from '../input/Input'\nimport ProgressIndicator from '../progress-indicator/ProgressIndicator'\nimport DrawerList from '../../fragments/drawer-list/DrawerList'\nimport { ItemContent } from '../../fragments/drawer-list/DrawerListItem'\nimport DrawerListContext from '../../fragments/drawer-list/DrawerListContext'\nimport DrawerListProvider from '../../fragments/drawer-list/DrawerListProvider'\nimport {\n drawerListPropTypes,\n parseContentTitle,\n getCurrentData,\n getCurrentIndex,\n normalizeData,\n} from '../../fragments/drawer-list/DrawerListHelpers'\n\nexport default class Autocomplete extends React.PureComponent {\n static propTypes = {\n ...spacingPropTypes,\n ...drawerListPropTypes,\n\n id: PropTypes.string,\n mode: PropTypes.oneOf(['sync', 'async']),\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n placeholder: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n no_options: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n show_all: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n aria_live_options: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n indicator_label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n show_options_sr: PropTypes.string,\n selected_sr: PropTypes.string,\n submit_button_title: PropTypes.string,\n submit_button_icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n input_ref: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n icon_size: PropTypes.string,\n icon_position: PropTypes.oneOf(['left', 'right']),\n triangle_position: PropTypes.oneOf(['left', 'right']),\n input_icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_value: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n keep_value_and_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n show_clear_button: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n disable_filter: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n disable_reorder: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n scrollable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n focusable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disable_highlighting: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n direction: PropTypes.oneOf(['auto', 'top', 'bottom']),\n max_height: PropTypes.number,\n skip_portal: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_scroll_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n show_submit_button: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n submit_element: PropTypes.node,\n prevent_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n align_autocomplete: PropTypes.oneOf(['left', 'right']),\n options_render: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.func,\n PropTypes.node,\n ]),\n input_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n data: PropTypes.oneOfType([\n PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n ]),\n PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n PropTypes.shape({\n selectedKey: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n /** @deprecated use `selectedKey` */\n selected_key: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n suffix_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n ])\n ),\n ]),\n search_in_word_index: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n search_numbers: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n default_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n input_value: PropTypes.string,\n open_on_focus: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n prevent_close: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_open: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n opened: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n portal_class: PropTypes.string,\n drawer_class: PropTypes.string,\n page_offset: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n observer_element: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n enable_body_lock: PropTypes.bool,\n\n class: PropTypes.string,\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n PropTypes.array,\n ]),\n\n on_show: PropTypes.func,\n on_type: PropTypes.func,\n on_focus: PropTypes.func,\n on_blur: PropTypes.func,\n on_hide: PropTypes.func,\n on_change: PropTypes.func,\n on_select: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n mode: 'sync',\n title: 'Option Menu',\n placeholder: null,\n no_options: null,\n show_all: null,\n aria_live_options: null,\n indicator_label: null,\n show_options_sr: null,\n selected_sr: null,\n submit_button_title: null,\n submit_button_icon: 'chevron_down',\n input_ref: null,\n icon: null,\n icon_size: null,\n icon_position: 'left',\n triangle_position: null,\n input_icon: 'loupe',\n label: null,\n label_direction: null,\n label_sr_only: null,\n keep_value: null,\n keep_selection: null,\n keep_value_and_selection: null,\n show_clear_button: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n disable_filter: false,\n disable_reorder: false,\n scrollable: true,\n focusable: false,\n disable_highlighting: false,\n max_height: null,\n direction: 'auto',\n skip_portal: null,\n no_animation: false,\n no_scroll_animation: false,\n show_submit_button: false,\n submit_element: null,\n prevent_selection: false,\n size: 'default',\n align_autocomplete: null,\n options_render: null,\n data: null,\n search_in_word_index: 3,\n search_numbers: null,\n default_value: null,\n value: 'initval',\n input_value: 'initval',\n autoComplete: 'off',\n open_on_focus: false,\n prevent_close: false,\n keep_open: false,\n opened: null,\n disabled: null,\n stretch: null,\n skeleton: null,\n portal_class: null,\n drawer_class: null,\n page_offset: null,\n observer_element: null,\n enable_body_lock: false,\n\n className: null,\n children: null,\n\n on_show: null,\n on_hide: null,\n on_type: null,\n on_focus: null,\n on_blur: null,\n on_change: null,\n on_select: null,\n on_state_update: null,\n input_element: null,\n }\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n }\n render() {\n return (\n <DrawerListProvider\n {...this.props}\n id={this._id}\n data={this.props.data || this.props.children}\n opened={null}\n tagName=\"dnb-autocomplete\"\n ignore_events={false}\n prevent_focus\n skip_keysearch\n >\n <AutocompleteInstance id={this._id} {...this.props} />\n </DrawerListProvider>\n )\n }\n}\n\nclass AutocompleteInstance extends React.PureComponent {\n static propTypes = Autocomplete.propTypes\n static defaultProps = Autocomplete.defaultProps\n static contextType = DrawerListContext\n\n static parseDataItem(dataItem) {\n const searchWord = parseContentTitle(\n dataItem.search_content || dataItem,\n {\n separator: ' ',\n }\n )\n if (typeof searchWord !== 'string' && Array.isArray(searchWord)) {\n return AutocompleteInstance.parseDataItem(searchWord)\n }\n return searchWord\n }\n\n static createSearchIndex(data) {\n return data.map((dataItem) => {\n const contentChunk = AutocompleteInstance.parseDataItem(dataItem)\n return { dataItem, contentChunk }\n })\n }\n\n static getCurrentDataTitle(selected_item, data) {\n const currentData = getCurrentData(selected_item, data)\n return parseContentTitle(currentData, {\n separator: ' ',\n preferSelectedValue: true,\n })\n }\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n state.disableHighlighting = isTrue(props.disable_highlighting)\n\n if (props.input_value !== 'initval') {\n state.inputValue = props.input_value\n }\n\n if (props?.data?.length > 0 && state?.prevData?.length === 0) {\n let selectedItem = state.selected_item\n\n if (props.default_value) {\n selectedItem = props.default_value\n }\n\n if (\n !props.default_value &&\n props.value &&\n props.value !== 'initval'\n ) {\n selectedItem = props.value\n }\n\n const currentData = getCurrentData(\n selectedItem,\n normalizeData(props.data)\n )\n\n state.inputValue = parseContentTitle(currentData, {\n separator: ' ',\n preferSelectedValue: true,\n })\n }\n\n if (props.data !== state.prevData) {\n state.updateData(props.data)\n state.prevData = props.data\n }\n }\n\n state._listenForPropChanges = true\n\n return state\n }\n\n constructor(props, context) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n\n this.attributes = {}\n this.state = this.state || {}\n this.state._listenForPropChanges = true\n this.state.mode = props.mode\n this.state.prevData = props.data // only to compare against new data\n this.state.updateData = this.updateData // only so we can call setData\n\n if (context.drawerList && context.drawerList.current_title) {\n this.state.inputValue = context.drawerList.current_title\n }\n\n this._ref = React.createRef()\n this._refShell = React.createRef()\n this._refInput = React.createRef()\n\n this.isTouchDevice = isTouchDevice()\n\n this.skipFilter = isTrue(props.disable_filter)\n this.skipReorder = isTrue(props.disable_reorder)\n }\n\n componentDidMount() {\n if (isTrue(this.props.opened)) {\n this.runFilterToHighlight({ fillDataIfEmpty: true })\n this.setVisible()\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.setSearchIndex({ overwriteSearchIndex: true }, () => {\n this.runFilterWithSideEffects(this.state.inputValue)\n })\n }\n if (prevProps.value !== this.props.value) {\n this.revalidateSelectedItem()\n this.revalidateInputValue()\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._selectTimeout)\n clearTimeout(this._focusTimeout)\n clearTimeout(this._blurTimeout)\n }\n\n setVisible = (args = null, onStateComplete = null) => {\n this.context.drawerList\n .setWrapperElement(this._ref.current)\n .setVisible(args, onStateComplete)\n }\n\n setHidden = (args = null, onStateComplete = null) => {\n this.context.drawerList.setHidden(args, onStateComplete)\n this.setState({\n hasFocus: false,\n hasBlur: false,\n })\n }\n\n toggleVisible = (args = null, onStateComplete = null) => {\n args = args || {}\n if (typeof args.hasFilter === 'undefined') {\n args.hasFilter = false\n }\n if (isTrue(this.props.disabled)) {\n return // stop here\n }\n if (\n !args.hasFilter &&\n !isTrue(this.props.prevent_close) &&\n !this.context.drawerList.hidden &&\n this.context.drawerList.isOpen\n ) {\n this.setHidden(null, onStateComplete)\n } else {\n this.setVisibleByContext(null, onStateComplete)\n }\n }\n\n toggleVisibleAndFocusOptions = () => {\n this.context.drawerList.toggleVisible(null, (isVisible) => {\n if (isVisible) {\n this.focusDrawerList()\n }\n })\n }\n\n setVisibleByContext = (options = {}, onStateComplete = null) => {\n const skipFilter = this.state.showAllNextTime\n if (skipFilter) {\n this.setState({\n showAllNextTime: false,\n _listenForPropChanges: false,\n })\n }\n\n this.runFilterToHighlight({\n fillDataIfEmpty: true,\n skipFilter,\n ...options,\n })\n\n this.setVisible(null, onStateComplete)\n }\n\n onInputChangeHandler = ({ value, event }) => {\n this.setState({\n typedInputValue: value,\n inputValue: value,\n _listenForPropChanges: false,\n })\n\n dispatchCustomElementEvent(this, 'on_type', {\n value,\n event,\n ...this.getEventObjects('on_type'),\n })\n\n value = String(value).trim()\n if (value !== this.state.inputValue) {\n this.runFilterWithSideEffects(value)\n }\n }\n\n runFilterWithSideEffects = (value, options = {}) => {\n // run the filter also on invalid values, so we reset the highlight\n const data = this.runFilter(value, options)\n const count = this.countData(data)\n\n const { keep_value, keep_selection, keep_value_and_selection } =\n this.props\n\n if (value?.length > 0) {\n // show the \"no_options\" message\n if (count === 0) {\n this.showNoOptionsItem()\n } else if (count > 0) {\n this.context.drawerList.setData(this.wrapWithShowAll(data))\n this.context.drawerList.setState({\n cache_hash: value + count,\n })\n\n if (count === 1) {\n this.context.drawerList.setState({\n active_item: data[0].__id,\n })\n }\n }\n } else {\n if (\n !isTrue(keep_value) &&\n !isTrue(keep_selection) &&\n !isTrue(keep_value_and_selection)\n ) {\n this.totalReset()\n } else if (isTrue(keep_value)) {\n this.resetSelectedItem()\n }\n\n this.showAllItems()\n }\n\n // Opens the drawer, also when pressing on the clear button\n if (this.state.hasFocus) {\n this.setVisible()\n }\n\n return data\n }\n\n runFilterToHighlight = (\n { fillDataIfEmpty = false, ...options } = {},\n value = this.state.inputValue\n ) => {\n // do not filter or highlight if the current selected item is the same as the input value\n const possibleTitle = AutocompleteInstance.getCurrentDataTitle(\n this.context.drawerList.selected_item,\n this.context.drawerList.original_data\n )\n\n if (value === possibleTitle) {\n return // stop here\n }\n\n value = String(value || '').trim()\n\n this.setState({\n disableHighlighting: false,\n _listenForPropChanges: false,\n })\n\n let data = this.runFilter(value, options) // do not skip the filter here\n\n // this is a backup, in case everything is empty, we fill the data\n if (fillDataIfEmpty && data.length === 0 && value === '') {\n data = this.context.drawerList.original_data\n }\n\n this.context.drawerList.setData(this.wrapWithShowAll(data))\n this.context.drawerList.setState({\n cache_hash: value + this.countData(data),\n })\n\n return data\n }\n\n wrapWithShowAll = (data) => {\n if (!data || !this.hasFilterActive(data)) {\n return data\n }\n\n const lastItem = this.context.drawerList.original_data.slice(-1)[0]\n if (lastItem && !lastItem.show_all) {\n const lastActiveItem = data.slice(-1)[0]\n if (lastActiveItem) {\n // NB: here we could use unshift, but this has to be implemented different places as well\n data.push({\n __id: lastItem.__id + 1,\n lastActiveItem: lastActiveItem.__id,\n class_name: 'dnb-autocomplete__show-all',\n show_all: true,\n active_item: false,\n selected_item: false,\n content: (\n <>\n <IconPrimary icon=\"arrow_down\" />\n {this._props.show_all}\n </>\n ),\n })\n }\n }\n\n return data\n }\n\n setInputValue = (inputValue) => {\n this.setState({\n inputValue,\n _listenForPropChanges: false,\n })\n }\n\n emptyData = () => {\n this._cacheMemory = {}\n\n this.clearInputValue()\n\n this.context.drawerList.setData(\n () => [],\n () => {\n this.setSearchIndex({ overwriteSearchIndex: true })\n this.resetActiveItem()\n this.totalReset()\n },\n {\n overwriteOriginalData: true,\n }\n )\n }\n\n clearInputValue = () => {\n this.setState({\n inputValue: '',\n typedInputValue: null,\n _listenForPropChanges: false,\n })\n }\n\n resetInputValue = () => {\n const { input_value, keep_value, keep_value_and_selection } =\n this.props\n\n if (\n isTrue(keep_value) ||\n isTrue(keep_value_and_selection) ||\n (input_value !== 'initval' && input_value.length > 0)\n ) {\n return // stop here\n }\n\n clearTimeout(this._selectTimeout)\n this._selectTimeout = setTimeout(() => {\n if (this.hasSelectedItem()) {\n const inputValue = AutocompleteInstance.getCurrentDataTitle(\n this.context.drawerList.selected_item,\n this.context.drawerList.original_data\n )\n this.setInputValue(inputValue)\n } else {\n this.clearInputValue()\n }\n }, 1) // to make sure we actually are after the Input state handling -> \"input placeholder reset\"\n }\n\n showNoOptionsItem = () => {\n if (this.state.mode === 'async') {\n return\n }\n this.resetActiveItem()\n this.ignoreEvents()\n this.context.drawerList.setData([\n {\n class_name: 'dnb-autocomplete__no-options',\n content: this._props.no_options,\n ignore_events: true,\n __id: 'no_options',\n },\n ])\n this.context.drawerList.setState({\n cache_hash: 'no_options',\n })\n this.setVisible()\n }\n\n showIndicatorItem = () => {\n this.resetActiveItem()\n this.ignoreEvents()\n this.context.drawerList.setData([\n {\n class_name: 'dnb-autocomplete__indicator',\n content: <ProgressIndicator label={this._props.indicator_label} />,\n ignore_events: true,\n __id: 'indicator',\n },\n ])\n this.context.drawerList.setState({\n cache_hash: 'indicator',\n })\n this.setVisible()\n }\n\n showIndicator = () => {\n if (!this.state.visibleIndicator) {\n this.setState({\n visibleIndicator: true,\n _listenForPropChanges: false,\n })\n }\n }\n\n hideIndicator = () => {\n this.setState({\n visibleIndicator: false,\n _listenForPropChanges: false,\n })\n }\n\n setMode = (mode) => {\n this.setState({\n mode,\n _listenForPropChanges: false,\n })\n }\n\n revalidateInputValue = () => {\n const { input_value, value } = this.props\n if (input_value && input_value !== 'initval') {\n return // stop here\n }\n const selected_item = getCurrentIndex(\n value,\n this.context.drawerList.original_data\n )\n const inputValue = AutocompleteInstance.getCurrentDataTitle(\n selected_item,\n this.context.drawerList.original_data\n )\n this.setInputValue(inputValue)\n }\n\n revalidateSelectedItem = () => {\n const selected_item = getCurrentIndex(\n this.props.value,\n this.context.drawerList.original_data\n )\n\n this.context.drawerList.setState({\n selected_item,\n })\n }\n\n hasDatasetChanged = (rawData) => {\n const { selected_item } = this.context.drawerList\n if (parseFloat(selected_item) > -1) {\n const newItem = rawData?.[selected_item]\n const oldItem = this.context.drawerList.original_data[selected_item]\n if (\n typeof newItem?.selectedKey !== 'undefined'\n ? newItem?.selectedKey !== oldItem?.selectedKey\n : newItem?.selected_key !== oldItem?.selected_key\n ) {\n return true\n }\n }\n return false\n }\n\n updateData = (rawData) => {\n const hasChanged = this.hasDatasetChanged(rawData)\n\n // invalidate the local cache now,\n // because we get else the same after we show the new result\n this.context.drawerList.setState(\n {\n cache_hash: 'updateData',\n },\n () => {\n // If the \"selected_key\" has changed in comparison to the existing data,\n // invalidated our selected_item\n // Also, ensure to run it after a state update, because the \"selected_item\" (value prop) can have changed,\n // and should match the new data\n if (hasChanged) {\n const { value } = this.props\n if (value && value !== 'initval') {\n this.revalidateSelectedItem()\n this.revalidateInputValue()\n } else {\n this.resetSelectedItem()\n }\n }\n }\n )\n\n this.context.drawerList.setData(\n () => rawData, // set data as a function, so it gets re-evaluated with normalizeData\n (newData) => {\n this.setSearchIndex(\n { overwriteSearchIndex: true, data: newData },\n () => {\n const { typedInputValue } = this.state\n\n if (typedInputValue?.length > 0) {\n // run with side effects, to get preselection of active_item\n const filteredData =\n this.runFilterWithSideEffects(typedInputValue)\n if (this.countData(filteredData) === 0) {\n this.showNoOptionsItem()\n }\n } else {\n this.resetActiveItem()\n\n if (this.context.drawerList.opened) {\n this.showAllItems()\n }\n }\n }\n )\n },\n {\n overwriteOriginalData: true,\n }\n )\n\n return this\n }\n\n onInputKeyDownHandler = ({ event: e }) => {\n const key = keycode(e)\n\n switch (key) {\n case 'page up':\n case 'page down':\n case 'home':\n case 'end':\n case 'down':\n case 'up':\n e.preventDefault() // has to be there for VO, one the drawer is closed\n break\n }\n\n switch (key) {\n case 'up':\n case 'down':\n if (!this.context.drawerList.opened) {\n this.setVisible()\n }\n\n break\n\n case 'esc':\n this.setState({\n showAllNextTime: true,\n _listenForPropChanges: false,\n })\n\n break\n\n case 'enter':\n e.preventDefault()\n\n if (!this.context.drawerList.opened && this.hasFilterActive()) {\n this.ignoreEvents()\n this.showAll()\n }\n\n if (\n (!this.hasValidData() || !this.hasSelectedItem()) &&\n !this.hasActiveItem()\n ) {\n this.toggleVisible()\n } else {\n this.setVisible()\n }\n\n break\n }\n }\n\n onInputClickHandler = (e) => {\n // Show the entire list when an item is selected\n if (!this.context.drawerList.opened && this.hasFilterActive()) {\n this.ignoreEvents()\n this.showAll()\n }\n\n const { value } = e.target\n this.setVisibleByContext({ value })\n }\n\n onInputFocusHandler = (event) => {\n if (this.state.skipFocusDuringChange) {\n return // stop here\n }\n\n const { open_on_focus, keep_value_and_selection } = this.props\n\n if (!this.state.hasFocus) {\n if (isTrue(open_on_focus) && this.hasValidData()) {\n const { value } = event.target\n this.setVisibleByContext({ value })\n } else {\n this.setSearchIndex()\n }\n\n if (isTrue(keep_value_and_selection)) {\n this.showAll()\n }\n\n dispatchCustomElementEvent(this, 'on_focus', {\n event,\n ...this.getEventObjects('on_focus'),\n })\n\n this.setState({\n hasFocus: true,\n hasBlur: false,\n })\n }\n }\n\n reserveActivityHandler = (event = null) => {\n this.__preventFiringBlurEvent = Boolean(\n event.key === 'enter' ||\n (event?.currentTarget\n ? getPreviousSibling('dnb-drawer-list', event.currentTarget) ||\n getPreviousSibling(\n 'dnb-input__submit-button__button',\n event.currentTarget\n )\n : false)\n )\n\n if (this.__preventFiringBlurEvent) {\n setTimeout(\n () => {\n this.__preventFiringBlurEvent = false\n },\n isTrue(this.props.no_animation) ? 1 : DrawerList.blurDelay\n )\n }\n }\n\n onBlurHandler = (event) => {\n if (\n this.__preventFiringBlurEvent ||\n this.context.drawerList.hasFocusOnElement ||\n this.state.hasBlur\n ) {\n this.__preventFiringBlurEvent = null\n return false\n }\n\n const {\n open_on_focus,\n keep_value,\n keep_value_and_selection,\n prevent_selection,\n no_animation,\n } = this.props\n\n this.setState({\n hasBlur: true,\n hasFocus: false,\n })\n\n if (!isTrue(keep_value) && !isTrue(keep_value_and_selection)) {\n this.setState({\n typedInputValue: null,\n _listenForPropChanges: false,\n })\n }\n\n if (!isTrue(prevent_selection)) {\n const existingValue = this.state.inputValue\n\n this.resetInputValue()\n\n const resetAfterClose = () => {\n if (\n !isTrue(keep_value) ||\n !existingValue ||\n this.hasSelectedItem()\n ) {\n this.resetActiveItem()\n }\n this.resetFilter()\n }\n\n if (isTrue(no_animation)) {\n resetAfterClose()\n } else {\n clearTimeout(this._blurTimeout)\n this._blurTimeout = setTimeout(\n resetAfterClose,\n DrawerList.blurDelay\n ) // only to let the animation pass, before we make the effect. Else this would be a visible change\n }\n }\n\n if (isTrue(open_on_focus)) {\n this.setHidden()\n }\n\n dispatchCustomElementEvent(this, 'on_blur', {\n event,\n ...this.getEventObjects('on_blur'),\n })\n }\n\n onTriggerKeyDownHandler = (e) => {\n const key = keycode(e)\n\n switch (key) {\n case 'space':\n case 'enter':\n {\n this.setVisible()\n }\n break\n }\n\n switch (key) {\n case 'space':\n case 'enter':\n case 'page up':\n case 'page down':\n case 'down':\n case 'up':\n {\n e.preventDefault()\n this.focusInput()\n }\n break\n }\n }\n\n focusDrawerList = () => {\n try {\n this.context.drawerList._refUl.current.focus({\n preventScroll: true,\n })\n } catch (e) {\n // do nothing\n }\n }\n\n focusInput = () => {\n try {\n this._refInput.current._ref.current.focus({\n preventScroll: true,\n })\n } catch (e) {\n warn(e)\n }\n }\n\n getEventObjects = (key) => {\n const attributes = this.attributes\n\n return {\n attributes,\n dataList: this.context.drawerList.data,\n updateData: this.updateData,\n revalidateSelectedItem: this.revalidateSelectedItem,\n revalidateInputValue: this.revalidateInputValue,\n resetSelectedItem: this.resetSelectedItem,\n clearInputValue: this.clearInputValue,\n showAllItems: this.showAllItems,\n setVisible: this.setVisible,\n resetInputValue: this.resetInputValue,\n setHidden: this.setHidden,\n emptyData: this.emptyData,\n focusInput: this.focusInput,\n setInputValue: this.setInputValue,\n showNoOptionsItem: this.showNoOptionsItem,\n showIndicatorItem: this.showIndicatorItem,\n showIndicator: this.showIndicator,\n hideIndicator: this.hideIndicator,\n setMode: this.setMode,\n debounce: (func, props = {}, wait = 250) => {\n this.dbf = this.dbf || {}\n return (\n this.dbf[key] ||\n (this.dbf[key] = debounce(func, wait, { context: this }))\n )(props)\n },\n }\n }\n\n hasInjectedDataItem = (data = this.context.drawerList.data) => {\n const lastItem = data.slice(-1)[0]\n return lastItem\n ? lastItem.show_all || lastItem.__id === 'no_options'\n : false\n }\n\n countData = (data = this.context.drawerList.data) => {\n const count = data.length\n return count > 0 && this.hasInjectedDataItem(data) ? count - 1 : count\n }\n\n hasValidData = (data = this.context.drawerList.data) => {\n if (this.countData(data) > 0) {\n const first = data[0]\n if (\n !first.show_all &&\n !['no_options', 'indicator'].includes(first.__id)\n ) {\n return true\n }\n }\n return false\n }\n\n hasSelectedItem = () => {\n return parseFloat(this.context.drawerList.selected_item) > -1\n }\n\n hasActiveItem = () => {\n return parseFloat(this.context.drawerList.active_item) > -1\n }\n\n hasFilterActive = (data = this.context.drawerList.data) => {\n return !(\n this.context.drawerList.original_data &&\n this.context.drawerList.original_data.length === this.countData(data)\n )\n }\n\n setSearchIndex(\n {\n overwriteSearchIndex = false,\n data = this.context.drawerList.original_data,\n } = {},\n cb\n ) {\n this._cacheMemory = {}\n\n if (!overwriteSearchIndex && this.state.searchIndex) {\n return this.state.searchIndex\n }\n\n const searchIndex = AutocompleteInstance.createSearchIndex(data)\n\n this.setState(\n {\n searchIndex,\n _listenForPropChanges: false,\n },\n cb\n )\n\n return searchIndex\n }\n\n ignoreEvents = () => {\n clearTimeout(this.showAllTimeout)\n this.context.drawerList.setState(\n {\n ignore_events: true, // we also have to reset this one\n },\n () => {\n // but we reset it right after the rerender\n this.showAllTimeout = setTimeout(() => {\n this.context &&\n this.context.drawerList &&\n this.context.drawerList.setState({\n ignore_events: false, // we also have to reset this one\n })\n }, 10) // make sure we reset once the rerender of DrawerList is done, because then we keep the active_item at it's position by using key=\"down\"\n }\n )\n }\n\n showAll = () => {\n this.resetFilter()\n\n this.context.drawerList.setState({\n cache_hash: 'all',\n })\n\n this.runFilterToHighlight({ skipFilter: true, fillDataIfEmpty: true })\n }\n\n showAllItems = () => {\n this.resetFilter()\n this.context.drawerList.setState({\n cache_hash: 'all',\n })\n this.context.drawerList.setActiveItemAndScrollToIt(\n this.context.drawerList.selected_item,\n {\n scrollTo: false,\n }\n )\n }\n\n totalReset = () => {\n this.setState({\n inputValue: null,\n typedInputValue: null,\n _listenForPropChanges: false,\n })\n this.resetActiveItem()\n this.resetSelectedItem()\n }\n\n resetActiveItem = () => {\n this.context.drawerList.setState({\n active_item: null,\n })\n }\n\n resetSelectedItem = () => {\n const hasHadValue = this.hasSelectedItem()\n this.context.drawerList.setState(\n {\n selected_item: null,\n },\n () => {\n if (hasHadValue) {\n dispatchCustomElementEvent(this, 'on_change', {\n ...this.getEventObjects('on_change'),\n })\n }\n }\n )\n }\n\n resetFilter = () => {\n this.context.drawerList.setData(this.context.drawerList.original_data)\n }\n\n runFilter = (\n value,\n {\n data = null, // rawData\n searchIndex = this.state.searchIndex,\n searchNumbers = isTrue(this.props.search_numbers),\n inWordIndex = (parseFloat(this.props.search_in_word_index) || 3) - 2,\n disableHighlighting = false,\n skipFilter = false,\n skipReorder = false,\n } = {}\n ) => {\n if (data) {\n searchIndex = this.setSearchIndex({ data })\n }\n // get the search index\n else if (!searchIndex) {\n searchIndex = this.setSearchIndex()\n }\n\n if (typeof searchIndex === 'undefined') {\n return []\n }\n\n const searchWords = value?.split(/\\s+/g).filter(Boolean) || []\n const wordCond = '^|\\\\s'\n\n const findSearchWords = (contentChunk) => {\n if (typeof contentChunk !== 'string') {\n return []\n }\n\n return searchWords\n .map((word, wordIndex) => ({ word, wordIndex }))\n .filter(({ word, wordIndex }) => {\n if (searchNumbers) {\n // Remove all other chars, except numbers, so we can compare\n word = word.replace(/[^\\p{L}\\p{N}]+/gu, '')\n } else {\n // To ensure we escape regex chars\n word = escapeRegexChars(word)\n }\n\n if (searchNumbers) {\n // This will make it possible to search with one letter less\n word = word.replace(/(\\d)/g, '$1+')\n }\n\n // if the uses reached word 3, then we go inside words as well\n const regexWord = new RegExp(\n wordIndex > inWordIndex ? `${word}` : `(${wordCond})${word}`,\n 'i'\n )\n\n if (regexWord.test(contentChunk)) {\n return true\n }\n\n if (\n searchNumbers &&\n regexWord.test(contentChunk.replace(/[^0-9]/g, ''))\n ) {\n return true\n }\n\n return false\n })\n .map(({ word, wordIndex }) => {\n // Use 1 to ensure we never have 0, because we filter out words with 0 later\n let wordScore = 0\n\n // Check how ofter the current written word is inside the content,\n // and give a score for each one\n wordScore += (\n contentChunk.match(\n new RegExp(`(${wordCond})${escapeRegexChars(word)}`, 'ig')\n ) || []\n ).length\n\n // Give the first word extra points\n if (wordIndex === 0) {\n // Check if the first chunk starts the first written word\n const isFirstWord = new RegExp(\n `^${escapeRegexChars(searchWords[0])}`,\n 'i'\n ).test(contentChunk.split(' ')[0])\n\n // If yes, add the amount of possible words + 1\n if (isFirstWord) {\n wordScore += searchWords.length + 1\n }\n }\n\n return {\n word,\n wordIndex,\n wordScore,\n }\n })\n }\n\n const strS = '\\uFFFE'\n const strE = '\\uFFFF'\n const tagS = '<span class=\"dnb-drawer-list__option__item--highlight\">'\n const tagE = '</span>'\n\n searchIndex = searchIndex.map((item, i) => {\n const listOfFoundWords = findSearchWords(item.contentChunk, i)\n\n if (typeof item.dataItem === 'string') {\n item.dataItem = { content: item.dataItem }\n }\n\n // Only make a copy if render is not set\n // If we don't make a copy of the item, we risk that we manipulate data outside\n if (!item.dataItem.render) {\n item.dataItem = { ...item.dataItem }\n }\n\n // this function gets called once the items are rendered / in view\n // this part is used for the highlighting\n item.dataItem.render = (children, id) => {\n if (disableHighlighting || this.state.disableHighlighting) {\n return children\n }\n\n // if the ID and the content is the same, use the cached version\n const cacheHash = id + value\n this._cacheMemory = this._cacheMemory || {}\n if (this._cacheMemory[cacheHash]) {\n return this._cacheMemory[cacheHash]\n }\n\n const isComponent =\n typeof children !== 'string' && React.isValidElement(children)\n\n if (isComponent && Array.isArray(children?.props?.children)) {\n children = children.props.children\n } else if (!Array.isArray(children)) {\n children = [children] // for a while we had split this into separate words children.split(' ') but this is not needed anymore\n }\n\n // make string out of it\n children = children.map((originalChild) => ({\n originalChild,\n segment: convertJsxToString(originalChild, ' '),\n }))\n\n children = children.map(({ originalChild, segment }, idx) => {\n // This way, the user can get highlights that do not match\n searchWords.forEach((word, wordIndex) => {\n // Can be empty string\n if (segment) {\n // To ensure we escape regex chars\n word = escapeRegexChars(word)\n\n if (searchNumbers) {\n word.split('').forEach((char) => {\n if (/[\\p{L}\\p{N}]/u.test(char)) {\n segment = segment.replace(\n new RegExp(`(${char})`, 'gi'),\n `${strS}$1${strE}`\n )\n }\n })\n } else {\n if (wordIndex > inWordIndex) {\n segment = segment.replace(\n new RegExp(`(${word})`, 'gi'),\n `${strS}$1${strE}`\n )\n } else {\n segment = segment.replace(\n new RegExp(`(${wordCond})(${word})`, 'gi'),\n `$1${strS}$2${strE}`\n )\n }\n }\n }\n })\n\n let result = segment\n\n if (segment.includes(strS)) {\n // to make sure we don't have several in a row\n const __html = segment\n .replace(new RegExp(`(${strS})+`, 'g'), strS)\n .replace(new RegExp(`(${strE})+`, 'g'), strE)\n .replace(new RegExp(`(${strE}${strS})`, 'g'), '')\n .replace(new RegExp(strS, 'g'), tagS)\n .replace(new RegExp(strE, 'g'), tagE)\n\n result = (\n <span\n key={cacheHash + idx}\n dangerouslySetInnerHTML={{\n __html,\n }}\n />\n )\n } else {\n result = <span key={cacheHash + idx}>{segment}</span>\n }\n\n // If we get a component, replace the one we use as the string comparison\n // This way we can still have an icon before or after\n if (isComponent) {\n if (Array.isArray(originalChild?.props?.children)) {\n result = originalChild.props.children.map((Comp) => {\n return Comp === originalChild ||\n (Comp.props && Comp.props.children === originalChild)\n ? result\n : Comp\n })\n } else if (typeof originalChild === 'string') {\n result = originalChild\n }\n\n if (React.isValidElement(originalChild)) {\n result = React.cloneElement(\n originalChild,\n { key: 'clone' + cacheHash + idx },\n result\n )\n }\n }\n\n return result\n })\n\n return (this._cacheMemory[cacheHash] = children)\n }\n\n if (this.skipFilter || skipFilter) {\n return item.dataItem\n }\n\n /**\n * This prioritizes the first written words (score)\n * along with who many matches are in the content item (listOfFoundWords)\n */\n let totalScore = listOfFoundWords.length // Include the found words\n for (const { wordScore } of listOfFoundWords) {\n totalScore += wordScore\n }\n\n return {\n totalScore,\n item,\n }\n })\n\n if (!this.skipFilter && !skipFilter) {\n // This removes items with 0 totalScore\n searchIndex = searchIndex.filter(({ totalScore }) => totalScore)\n\n if (!this.skipReorder && !skipReorder) {\n searchIndex = searchIndex.sort(\n ({ totalScore: a }, { totalScore: b }) => b - a\n )\n }\n\n searchIndex = searchIndex.map(({ item }) => item.dataItem)\n }\n\n return searchIndex\n }\n\n onHideHandler = (args = {}) => {\n const res = dispatchCustomElementEvent(this, 'on_hide', {\n ...args,\n ...this.getEventObjects('on_hide'),\n })\n\n if (res !== false) {\n this.setFocusOnInput()\n }\n\n return res\n }\n\n setVisibleAndFocusOnInput = () => {\n if (!this.state.hasFocus && !hasSelectedText()) {\n this.setFocusOnInput()\n this.setVisible()\n }\n }\n\n setFocusOnInput() {\n this.setState(\n {\n hasFocus: true,\n },\n () => {\n this.focusInput()\n this.setState({\n hasFocus: false,\n })\n }\n )\n }\n\n onSelectHandler = (args) => {\n if (parseFloat(args.active_item) > -1) {\n dispatchCustomElementEvent(this, 'on_select', {\n ...args,\n ...this.getEventObjects('on_select'),\n })\n }\n }\n\n onPreChangeHandler = ({ data }) => {\n if (data && data.show_all) {\n this.showAll()\n\n const active_item = data.lastActiveItem\n if (parseFloat(active_item) > -1) {\n this.context.drawerList.setActiveItemAndScrollToIt(active_item, {\n scrollTo: false,\n })\n }\n\n this.setFocusOnInput()\n\n return false\n }\n }\n\n onChangeHandler = (args) => {\n const selected_item = args.selected_item\n\n const { prevent_selection, keep_open } = this.props\n\n if (!isTrue(prevent_selection)) {\n if (!isTrue(keep_open)) {\n this.setState({\n skipFocusDuringChange: true,\n disableHighlighting: true,\n _listenForPropChanges: false,\n })\n\n this.setHidden()\n\n // Do this, so screen readers get a NEW focus later on\n // So we first need a blur of the input basically\n this.focusDrawerList()\n\n this.setState(\n {\n skipFocusDuringChange: false,\n _listenForPropChanges: false,\n },\n () => this.setFocusOnInput()\n )\n }\n\n const inputValue = AutocompleteInstance.getCurrentDataTitle(\n selected_item,\n this.context.drawerList.data\n )\n this.setInputValue(inputValue)\n }\n\n if (typeof args.data?.render === 'function') {\n delete args.data.render\n }\n\n dispatchCustomElementEvent(this, 'on_change', {\n ...args,\n ...this.getEventObjects('on_change'),\n })\n }\n\n getAriaLiveUpdate() {\n const { opened } = this.context.drawerList\n\n // this is only to make a better screen reader ux\n if (opened) {\n const { aria_live_options, no_options } = this._props\n const count = this.countData()\n\n let newString = null\n\n if (count > 0) {\n newString = String(aria_live_options).replace('%s', count)\n } else {\n newString = no_options\n }\n\n return newString\n }\n\n return ''\n }\n\n getVoiceOverActiveItem(selected_sr) {\n // Add VoiceOver support to read the \"selected\" item\n const { active_item, selected_item } = this.context.drawerList\n const currentDataItem = getCurrentData(\n active_item,\n this.context.drawerList.data\n )\n\n return (\n <AriaLive hidden={!IS_MAC} priority=\"high\" delay={0}>\n {currentDataItem && (\n <>\n {active_item === selected_item ? <>{selected_sr} </> : null}\n <ItemContent>{currentDataItem}</ItemContent>\n </>\n )}\n </AriaLive>\n )\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = (this._props = extendPropsWithContextInClassComponent(\n this.props,\n Autocomplete.defaultProps,\n this.context.getTranslation(this.props).Autocomplete,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Autocomplete\n ))\n\n const {\n title,\n placeholder,\n label,\n label_direction,\n label_sr_only,\n icon, // eslint-disable-line\n icon_size,\n input_icon,\n size,\n align_autocomplete,\n fixed_position,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n scrollable,\n focusable,\n keep_open,\n keep_value, // eslint-disable-line\n keep_value_and_selection, // eslint-disable-line\n show_clear_button,\n prevent_close,\n no_animation,\n no_scroll_animation,\n show_submit_button,\n submit_element,\n input_element: CustomInput,\n options_render,\n prevent_selection,\n max_height,\n default_value,\n search_numbers, // eslint-disable-line\n search_in_word_index, // eslint-disable-line\n show_options_sr, // eslint-disable-line\n selected_sr,\n submit_button_title,\n submit_button_icon,\n portal_class,\n drawer_class,\n input_ref, // eslint-disable-line\n className,\n disabled,\n stretch,\n skeleton,\n triangle_position,\n icon_position,\n skip_portal,\n independent_width,\n autoComplete,\n\n mode: _mode, // eslint-disable-line\n data: _data, // eslint-disable-line\n children: _children, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n id: _id, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n input_value: _input_value, // eslint-disable-line\n\n indicator_label, // eslint-disable-line\n no_options, // eslint-disable-line\n show_all, // eslint-disable-line\n aria_live_options, // eslint-disable-line\n disable_highlighting, // eslint-disable-line\n\n ...attributes\n } = props\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const { inputValue, visibleIndicator } = this.state\n\n const { hidden, selected_item, active_item, direction, opened } =\n this.context.drawerList\n\n const isExpanded = Boolean(opened) && this.hasValidData()\n\n // In case a developer is using onBlur\n // it would blur uncontrolled – so we relay on \"on_blur\".\n // But the \"onBlur\" will still function, now just as expected.\n delete attributes.onBlur\n\n // make it possible to grab the rest attributes and return it with all events\n this.attributes = validateDOMAttributes(null, attributes)\n Object.assign(this.context.drawerList.attributes, this.attributes)\n\n const mainParams = {\n className: classnames(\n 'dnb-autocomplete',\n direction && `dnb-autocomplete--${direction}`,\n disabled && 'dnb-autocomplete--disabled',\n opened && 'dnb-autocomplete--opened',\n label_direction && `dnb-autocomplete--${label_direction}`,\n icon_position &&\n `dnb-autocomplete--icon-position-${icon_position}`,\n align_autocomplete && `dnb-autocomplete--${align_autocomplete}`,\n visibleIndicator && 'dnb-autocomplete--show-indicator',\n size && `dnb-autocomplete--${size}`,\n isTrue(stretch) && `dnb-autocomplete--stretch`,\n status && `dnb-autocomplete__status--${status_state}`,\n showStatus && 'dnb-autocomplete__form-status',\n 'dnb-form-component',\n createSpacingClasses(props),\n className\n ),\n }\n\n const shellParams = {\n className: 'dnb-autocomplete__shell dnb-no-focus',\n ref: this._refShell,\n }\n\n const inputParams = {\n className: 'dnb-autocomplete__input',\n id,\n value: inputValue,\n autoCapitalize: 'none',\n spellCheck: 'false',\n autoCorrect: 'off',\n autoComplete,\n\n // ARIA\n role: 'combobox', // we need combobox twice to make it properly work on VO\n 'aria-autocomplete': 'both', // list, both\n 'aria-controls': isExpanded ? `${id}-ul` : undefined,\n 'aria-haspopup': 'listbox',\n 'aria-expanded': isExpanded, // is needed for semantics\n // 'aria-roledescription': 'autocomplete', // is not needed by now\n\n onMouseDown: this.onInputClickHandler,\n onKeyDown: this.onInputKeyDownHandler,\n onChange: this.onInputChangeHandler,\n onFocus: this.onInputFocusHandler,\n onBlur: this.onBlurHandler,\n icon_position,\n inner_ref: input_ref,\n disabled,\n skeleton,\n ...attributes,\n }\n\n if (!(parseFloat(selected_item) > -1)) {\n inputParams.placeholder = placeholder || title\n if (!(IS_WIN && IS_EDGE)) {\n inputParams['aria-placeholder'] = undefined\n }\n }\n\n // Handling of activedescendant – required by NVDA\n if (isExpanded) {\n if (parseFloat(active_item) > -1) {\n inputParams[\n 'aria-activedescendant'\n ] = `option-${id}-${active_item}`\n } else if (\n !isTrue(prevent_selection) &&\n parseFloat(selected_item) > -1\n ) {\n inputParams[\n 'aria-activedescendant'\n ] = `option-${id}-${selected_item}`\n }\n }\n\n if (showStatus || suffix) {\n inputParams['aria-describedby'] = combineDescribedBy(\n inputParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n\n let submitButton = false\n const triggerParams = {\n id: id + '-submit-button',\n disabled,\n status: !opened && status ? status_state : null,\n onKeyDown: this.onTriggerKeyDownHandler,\n onSubmit: this.toggleVisible,\n onMouseDown: this.reserveActivityHandler,\n 'aria-haspopup': 'listbox',\n 'aria-expanded': isExpanded,\n 'aria-label': !hidden ? submit_button_title : undefined,\n tooltip: show_submit_button ? submit_button_title : null,\n className: opened ? 'dnb-button--active' : null,\n }\n\n if (submit_element && React.isValidElement(submit_element)) {\n submitButton = React.cloneElement(submit_element, triggerParams)\n } else if (isTrue(show_submit_button)) {\n submitButton = (\n <SubmitButton\n icon={submit_button_icon}\n icon_size={\n icon_size || (size === 'large' ? 'medium' : 'default')\n }\n variant=\"secondary\"\n size={size === 'default' ? 'medium' : size}\n type=\"button\"\n status={status}\n status_state={status_state}\n status_props={status_props}\n {...triggerParams}\n />\n )\n }\n\n const currentDataItem = getCurrentData(\n selected_item,\n this.context.drawerList.original_data\n )\n\n const innerId =\n currentDataItem?.suffix_value && showStatus ? `${id}-inner` : null\n\n // also used for code markup simulation\n validateDOMAttributes(null, mainParams)\n validateDOMAttributes(null, shellParams)\n return (\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n forId={id}\n text={label}\n labelDirection={label_direction}\n srOnly={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n onClick={this.toggleVisible}\n />\n )}\n\n <span\n className=\"dnb-autocomplete__inner\"\n ref={this._ref}\n id={innerId}\n >\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n width_selector={innerId}\n {...status_props}\n />\n\n <span className=\"dnb-autocomplete__row\">\n <span {...shellParams}>\n {CustomInput ? (\n <CustomInput {...inputParams} />\n ) : (\n <Input\n icon={\n visibleIndicator ? (\n <ProgressIndicator\n size={size === 'large' ? 'medium' : 'small'}\n />\n ) : (\n input_icon\n )\n }\n icon_size={\n icon_size || (size === 'large' ? 'medium' : 'default')\n }\n size={size}\n status={status ? status_state : null}\n status_state={status_state}\n type={null}\n inner_element={\n currentDataItem?.suffix_value && (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\n <span\n onClick={\n disabled ? null : this.setVisibleAndFocusOnInput\n }\n className=\"dnb-autocomplete__suffix_value\"\n >\n {currentDataItem?.suffix_value}\n </span>\n )\n }\n submit_element={submitButton}\n input_state={\n this.state.skipFocusDuringChange ? 'focus' : undefined\n } // because of the short blur / focus during select\n clear={isTrue(show_clear_button)}\n ref={this._refInput}\n {...inputParams}\n {...status_props}\n />\n )}\n\n {!submitButton && (\n <span className=\"dnb-sr-only\">\n <button\n tabIndex=\"-1\"\n type=\"button\" // is needed, else a form will submit\n onClick={this.toggleVisibleAndFocusOptions}\n >\n {show_options_sr}\n </button>\n </span>\n )}\n\n <DrawerList\n id={id}\n className={classnames(\n 'dnb-autocomplete__root',\n drawer_class\n )}\n portal_class={portal_class}\n list_class=\"dnb-autocomplete__list\"\n value={selected_item}\n default_value={default_value}\n scrollable={scrollable}\n focusable={focusable}\n no_animation={no_animation}\n no_scroll_animation={no_scroll_animation}\n skip_portal={skip_portal}\n prevent_selection={prevent_selection}\n triangle_position={triangle_position || icon_position}\n keep_open={keep_open}\n prevent_close={prevent_close}\n align_drawer={align_autocomplete}\n fixed_position={fixed_position}\n disabled={disabled}\n max_height={max_height}\n direction={direction}\n size={size}\n options_render={options_render}\n on_change={this.onChangeHandler}\n on_select={this.onSelectHandler}\n on_hide={this.onHideHandler}\n on_pre_change={this.onPreChangeHandler}\n on_key_down={this.reserveActivityHandler}\n onMouseDown={this.reserveActivityHandler}\n independent_width={independent_width}\n />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-autocomplete__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n\n {/* Add VoiceOver support to read the \"selected\" item */}\n {this.getVoiceOverActiveItem(selected_sr)}\n\n <AriaLive priority=\"high\">{this.getAriaLiveUpdate()}</AriaLive>\n </span>\n )\n }\n}\n\nAutocomplete.HorizontalItem = DrawerList.HorizontalItem\nAutocomplete._formElement = true\nAutocomplete._supportsSpacingProps = true\n"],"mappings":"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","ignoreList":[]}