@dnb/eufemia 10.13.0 → 10.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1416) hide show
  1. package/CHANGELOG.md +87 -0
  2. package/cjs/components/accordion/AccordionContent.js +1 -0
  3. package/cjs/components/accordion/AccordionContent.js.map +1 -1
  4. package/cjs/components/accordion/AccordionHeader.d.ts +2 -1
  5. package/cjs/components/accordion/AccordionHeader.js +3 -2
  6. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  7. package/cjs/components/accordion/style/dnb-accordion.css +13 -5
  8. package/cjs/components/accordion/style/dnb-accordion.min.css +3 -1
  9. package/cjs/components/accordion/style/dnb-accordion.scss +16 -5
  10. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -32
  11. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  12. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
  13. package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.css +149 -101
  14. package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
  15. package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
  16. package/cjs/components/anchor/Anchor.d.ts +1 -0
  17. package/cjs/components/anchor/Anchor.js +8 -5
  18. package/cjs/components/anchor/Anchor.js.map +1 -1
  19. package/cjs/components/autocomplete/Autocomplete.d.ts +4 -0
  20. package/cjs/components/autocomplete/Autocomplete.js +169 -148
  21. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  22. package/cjs/components/avatar/Avatar.js +1 -0
  23. package/cjs/components/avatar/Avatar.js.map +1 -1
  24. package/cjs/components/avatar/AvatarGroup.js +1 -0
  25. package/cjs/components/avatar/AvatarGroup.js.map +1 -1
  26. package/cjs/components/badge/Badge.js +1 -0
  27. package/cjs/components/badge/Badge.js.map +1 -1
  28. package/cjs/components/breadcrumb/BreadcrumbItem.js +1 -0
  29. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  30. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +4 -4
  31. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  32. package/cjs/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
  33. package/cjs/components/button/Button.d.ts +1 -1
  34. package/cjs/components/button/Button.js +11 -5
  35. package/cjs/components/button/Button.js.map +1 -1
  36. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
  37. package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  38. package/cjs/components/card/style/dnb-card.css +10 -0
  39. package/cjs/components/card/style/dnb-card.min.css +1 -1
  40. package/cjs/components/card/style/dnb-card.scss +8 -0
  41. package/cjs/components/checkbox/Checkbox.js +11 -3
  42. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  43. package/cjs/components/checkbox/style/dnb-checkbox.css +129 -0
  44. package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
  45. package/cjs/components/checkbox/style/dnb-checkbox.scss +199 -0
  46. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
  47. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
  48. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
  49. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
  50. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
  51. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
  52. package/cjs/components/date-picker/DatePicker.d.ts +1 -1
  53. package/cjs/components/date-picker/DatePicker.js +6 -1
  54. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  55. package/cjs/components/date-picker/DatePickerInput.d.ts +1 -1
  56. package/cjs/components/date-picker/DatePickerProvider.js +1 -0
  57. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  58. package/cjs/components/dropdown/Dropdown.js +3 -2
  59. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  60. package/cjs/components/flex/Container.js +3 -1
  61. package/cjs/components/flex/Container.js.map +1 -1
  62. package/cjs/components/flex/Flex.d.ts +1 -1
  63. package/cjs/components/flex/Flex.js +1 -1
  64. package/cjs/components/flex/Flex.js.map +1 -1
  65. package/cjs/components/flex/export.d.ts +5 -0
  66. package/cjs/components/flex/export.js +42 -0
  67. package/cjs/components/flex/export.js.map +1 -0
  68. package/cjs/components/flex/index.d.ts +2 -5
  69. package/cjs/components/flex/index.js +5 -36
  70. package/cjs/components/flex/index.js.map +1 -1
  71. package/cjs/components/flex/style/dnb-flex.css +1 -1
  72. package/cjs/components/flex/style/dnb-flex.min.css +1 -1
  73. package/cjs/components/flex/style/flex-container.scss +1 -1
  74. package/cjs/components/form-label/FormLabel.d.ts +9 -3
  75. package/cjs/components/form-label/FormLabel.js +16 -11
  76. package/cjs/components/form-label/FormLabel.js.map +1 -1
  77. package/cjs/components/form-label/style/dnb-form-label.css +0 -1
  78. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  79. package/cjs/components/form-label/style/dnb-form-label.scss +0 -5
  80. package/cjs/components/form-row/FormRow.js +1 -0
  81. package/cjs/components/form-row/FormRow.js.map +1 -1
  82. package/cjs/components/form-set/FormSet.js +1 -0
  83. package/cjs/components/form-set/FormSet.js.map +1 -1
  84. package/cjs/components/form-status/FormStatus.js +1 -0
  85. package/cjs/components/form-status/FormStatus.js.map +1 -1
  86. package/cjs/components/global-error/GlobalError.js +1 -0
  87. package/cjs/components/global-error/GlobalError.js.map +1 -1
  88. package/cjs/components/global-status/GlobalStatus.d.ts +1 -1
  89. package/cjs/components/global-status/GlobalStatus.js +4 -1
  90. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  91. package/cjs/components/global-status/style/dnb-global-status.css +0 -7
  92. package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
  93. package/cjs/components/global-status/style/dnb-global-status.scss +0 -11
  94. package/cjs/components/grid/Grid.d.ts +1 -1
  95. package/cjs/components/grid/Grid.js +1 -1
  96. package/cjs/components/grid/Grid.js.map +1 -1
  97. package/cjs/components/grid/export.d.ts +2 -0
  98. package/cjs/components/grid/export.js +21 -0
  99. package/cjs/components/grid/export.js.map +1 -0
  100. package/cjs/components/grid/index.d.ts +2 -2
  101. package/cjs/components/grid/index.js +5 -15
  102. package/cjs/components/grid/index.js.map +1 -1
  103. package/cjs/components/heading/Heading.js +1 -0
  104. package/cjs/components/heading/Heading.js.map +1 -1
  105. package/cjs/components/help-button/HelpButton.js +1 -0
  106. package/cjs/components/help-button/HelpButton.js.map +1 -1
  107. package/cjs/components/help-button/HelpButtonInstance.js +1 -0
  108. package/cjs/components/help-button/HelpButtonInstance.js.map +1 -1
  109. package/cjs/components/icon/Icon.js +1 -0
  110. package/cjs/components/icon/Icon.js.map +1 -1
  111. package/cjs/components/icon-primary/IconPrimary.js +1 -0
  112. package/cjs/components/icon-primary/IconPrimary.js.map +1 -1
  113. package/cjs/components/info-card/InfoCard.js +1 -0
  114. package/cjs/components/info-card/InfoCard.js.map +1 -1
  115. package/cjs/components/input/Input.d.ts +4 -0
  116. package/cjs/components/input/Input.js +12 -2
  117. package/cjs/components/input/Input.js.map +1 -1
  118. package/cjs/components/input/InputPassword.js +2 -0
  119. package/cjs/components/input/InputPassword.js.map +1 -1
  120. package/cjs/components/input/style/dnb-input.css +7 -3
  121. package/cjs/components/input/style/dnb-input.min.css +1 -1
  122. package/cjs/components/input/style/dnb-input.scss +14 -8
  123. package/cjs/components/input-masked/InputMasked.js +2 -0
  124. package/cjs/components/input-masked/InputMasked.js.map +1 -1
  125. package/cjs/components/input-masked/MultiInputMask.d.ts +14 -2
  126. package/cjs/components/input-masked/MultiInputMask.js +34 -23
  127. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  128. package/cjs/components/input-masked/TextMask.d.ts +1 -1
  129. package/cjs/components/input-masked/hooks/useHandleCursorPosition.js +1 -1
  130. package/cjs/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  131. package/cjs/components/input-masked/style/dnb-input-masked.css +3 -3
  132. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  133. package/cjs/components/input-masked/style/dnb-input-masked.scss +1 -1
  134. package/cjs/components/lib.d.ts +2 -0
  135. package/cjs/components/logo/Logo.js +1 -0
  136. package/cjs/components/logo/Logo.js.map +1 -1
  137. package/cjs/components/modal/Modal.js +1 -0
  138. package/cjs/components/modal/Modal.js.map +1 -1
  139. package/cjs/components/modal/ModalContent.js +1 -0
  140. package/cjs/components/modal/ModalContent.js.map +1 -1
  141. package/cjs/components/modal/parts/CloseButton.js +1 -0
  142. package/cjs/components/modal/parts/CloseButton.js.map +1 -1
  143. package/cjs/components/number-format/NumberFormat.js +1 -0
  144. package/cjs/components/number-format/NumberFormat.js.map +1 -1
  145. package/cjs/components/number-format/NumberUtils.d.ts +1 -1
  146. package/cjs/components/number-format/NumberUtils.js +1 -0
  147. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  148. package/cjs/components/pagination/PaginationHelpers.js +1 -0
  149. package/cjs/components/pagination/PaginationHelpers.js.map +1 -1
  150. package/cjs/components/pagination/PaginationInfinity.js +1 -0
  151. package/cjs/components/pagination/PaginationInfinity.js.map +1 -1
  152. package/cjs/components/pagination/PaginationProvider.js +1 -0
  153. package/cjs/components/pagination/PaginationProvider.js.map +1 -1
  154. package/cjs/components/progress-indicator/ProgressIndicator.js +1 -0
  155. package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
  156. package/cjs/components/radio/Radio.js +17 -9
  157. package/cjs/components/radio/Radio.js.map +1 -1
  158. package/cjs/components/radio/RadioGroup.js +8 -6
  159. package/cjs/components/radio/RadioGroup.js.map +1 -1
  160. package/cjs/components/radio/style/dnb-radio.css +132 -1
  161. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  162. package/cjs/components/radio/style/dnb-radio.scss +253 -1
  163. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.css +35 -0
  164. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -0
  165. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.scss +42 -0
  166. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.css +25 -86
  167. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  168. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +31 -143
  169. package/cjs/components/section/Section.d.ts +5 -0
  170. package/cjs/components/section/Section.js +4 -2
  171. package/cjs/components/section/Section.js.map +1 -1
  172. package/cjs/components/section/style/dnb-section.css +12 -0
  173. package/cjs/components/section/style/dnb-section.min.css +3 -3
  174. package/cjs/components/section/style/dnb-section.scss +10 -0
  175. package/cjs/components/skeleton/Skeleton.js +1 -0
  176. package/cjs/components/skeleton/Skeleton.js.map +1 -1
  177. package/cjs/components/skeleton/figures/Article.js +1 -0
  178. package/cjs/components/skeleton/figures/Article.js.map +1 -1
  179. package/cjs/components/skeleton/figures/Circle.js +1 -0
  180. package/cjs/components/skeleton/figures/Circle.js.map +1 -1
  181. package/cjs/components/skeleton/figures/Product.js +1 -0
  182. package/cjs/components/skeleton/figures/Product.js.map +1 -1
  183. package/cjs/components/skeleton/figures/Table.js +1 -0
  184. package/cjs/components/skeleton/figures/Table.js.map +1 -1
  185. package/cjs/components/slider/Slider.d.ts +1 -0
  186. package/cjs/components/slider/Slider.js +1 -0
  187. package/cjs/components/slider/Slider.js.map +1 -1
  188. package/cjs/components/slider/SliderInstance.js +1 -0
  189. package/cjs/components/slider/SliderInstance.js.map +1 -1
  190. package/cjs/components/slider/SliderProvider.js +1 -0
  191. package/cjs/components/slider/SliderProvider.js.map +1 -1
  192. package/cjs/components/space/Space.js +1 -0
  193. package/cjs/components/space/Space.js.map +1 -1
  194. package/cjs/components/switch/Switch.js +11 -3
  195. package/cjs/components/switch/Switch.js.map +1 -1
  196. package/cjs/components/switch/style/dnb-switch.css +43 -9
  197. package/cjs/components/switch/style/dnb-switch.min.css +1 -1
  198. package/cjs/components/switch/style/dnb-switch.scss +49 -22
  199. package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
  200. package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
  201. package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
  202. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
  203. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  204. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
  205. package/cjs/components/table/Table.js +1 -0
  206. package/cjs/components/table/Table.js.map +1 -1
  207. package/cjs/components/tabs/Tabs.js +1 -0
  208. package/cjs/components/tabs/Tabs.js.map +1 -1
  209. package/cjs/components/tag/Tag.d.ts +1 -0
  210. package/cjs/components/tag/Tag.js +2 -0
  211. package/cjs/components/tag/Tag.js.map +1 -1
  212. package/cjs/components/tag/TagGroup.js +1 -0
  213. package/cjs/components/tag/TagGroup.js.map +1 -1
  214. package/cjs/components/textarea/Textarea.js +6 -1
  215. package/cjs/components/textarea/Textarea.js.map +1 -1
  216. package/cjs/components/timeline/Timeline.js +1 -0
  217. package/cjs/components/timeline/Timeline.js.map +1 -1
  218. package/cjs/components/timeline/TimelineItem.js +1 -0
  219. package/cjs/components/timeline/TimelineItem.js.map +1 -1
  220. package/cjs/components/toggle-button/ToggleButton.js +2 -0
  221. package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
  222. package/cjs/components/toggle-button/ToggleButtonGroup.js +8 -6
  223. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  224. package/cjs/components/toggle-button/style/dnb-toggle-button.css +3 -7
  225. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  226. package/cjs/components/toggle-button/style/dnb-toggle-button.scss +4 -14
  227. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
  228. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
  229. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
  230. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
  231. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
  232. package/cjs/components/tooltip/Tooltip.js +1 -0
  233. package/cjs/components/tooltip/Tooltip.js.map +1 -1
  234. package/cjs/components/tooltip/TooltipPortal.js +1 -0
  235. package/cjs/components/tooltip/TooltipPortal.js.map +1 -1
  236. package/cjs/components/upload/Upload.d.ts +1 -0
  237. package/cjs/components/upload/Upload.js +2 -0
  238. package/cjs/components/upload/Upload.js.map +1 -1
  239. package/cjs/components/upload/useUpload.js +1 -0
  240. package/cjs/components/upload/useUpload.js.map +1 -1
  241. package/cjs/components/visually-hidden/VisuallyHidden.js +1 -0
  242. package/cjs/components/visually-hidden/VisuallyHidden.js.map +1 -1
  243. package/cjs/elements/Element.js +1 -0
  244. package/cjs/elements/Element.js.map +1 -1
  245. package/cjs/elements/hr/style/dnb-hr.scss +16 -30
  246. package/cjs/elements/hr/style/hr-mixins.scss +5 -7
  247. package/cjs/elements/typography/H.js +1 -0
  248. package/cjs/elements/typography/H.js.map +1 -1
  249. package/cjs/extensions/forms/DataContext/Context.d.ts +1 -1
  250. package/cjs/extensions/forms/DataContext/Context.js +1 -1
  251. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  252. package/cjs/extensions/forms/DataContext/Provider/Provider.js +59 -45
  253. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  254. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -6
  255. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  256. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
  257. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +8 -5
  258. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  259. package/cjs/extensions/forms/Field/Currency/Currency.d.ts +3 -1
  260. package/cjs/extensions/forms/Field/Currency/Currency.js +7 -2
  261. package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
  262. package/cjs/extensions/forms/Field/Email/Email.js +6 -4
  263. package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
  264. package/cjs/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
  265. package/cjs/extensions/forms/Field/Expiry/Expiry.js +101 -0
  266. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
  267. package/cjs/extensions/forms/Field/Expiry/index.d.ts +2 -0
  268. package/cjs/extensions/forms/Field/Expiry/index.js +27 -0
  269. package/cjs/extensions/forms/Field/Expiry/index.js.map +1 -0
  270. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.css +6 -0
  271. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
  272. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
  273. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +10 -6
  274. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  275. package/cjs/extensions/forms/Field/Number/Number.js +47 -26
  276. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  277. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +8 -5
  278. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  279. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
  280. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +149 -72
  281. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  282. package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
  283. package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
  284. package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
  285. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
  286. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
  287. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  288. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -15
  289. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  290. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -14
  291. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
  292. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +193 -19
  293. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  294. package/cjs/extensions/forms/Field/Selection/Selection.js +1 -0
  295. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  296. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
  297. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  298. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
  299. package/cjs/extensions/forms/Field/String/String.js +29 -20
  300. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  301. package/cjs/extensions/forms/Field/Toggle/Toggle.js +4 -2
  302. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  303. package/cjs/extensions/forms/Field/index.d.ts +1 -0
  304. package/cjs/extensions/forms/Field/index.js +7 -0
  305. package/cjs/extensions/forms/Field/index.js.map +1 -1
  306. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  307. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +47 -16
  308. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  309. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  310. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  311. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
  312. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  313. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
  314. package/cjs/extensions/forms/Form/Element/Element.js +1 -0
  315. package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
  316. package/cjs/extensions/forms/Form/Handler/Handler.js +1 -0
  317. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  318. package/cjs/extensions/forms/constants/countries.d.ts +9 -6
  319. package/cjs/extensions/forms/constants/countries.js +15 -7
  320. package/cjs/extensions/forms/constants/countries.js.map +1 -1
  321. package/cjs/extensions/forms/hooks/index.d.ts +3 -0
  322. package/cjs/extensions/forms/hooks/index.js +21 -0
  323. package/cjs/extensions/forms/hooks/index.js.map +1 -1
  324. package/cjs/extensions/forms/hooks/useDataValue.d.ts +2 -0
  325. package/cjs/extensions/forms/hooks/useDataValue.js +151 -75
  326. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  327. package/cjs/extensions/forms/hooks/useMountEffect.d.ts +5 -0
  328. package/cjs/extensions/forms/hooks/useMountEffect.js +14 -0
  329. package/cjs/extensions/forms/hooks/useMountEffect.js.map +1 -0
  330. package/cjs/extensions/forms/hooks/useProcessManager.d.ts +6 -0
  331. package/cjs/extensions/forms/hooks/useProcessManager.js +21 -0
  332. package/cjs/extensions/forms/hooks/useProcessManager.js.map +1 -0
  333. package/cjs/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
  334. package/cjs/extensions/forms/hooks/useUpdateEffect.js +19 -0
  335. package/cjs/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
  336. package/cjs/extensions/forms/index.d.ts +1 -1
  337. package/cjs/extensions/forms/index.js +12 -0
  338. package/cjs/extensions/forms/index.js.map +1 -1
  339. package/cjs/extensions/forms/style/dnb-forms.css +101 -116
  340. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  341. package/cjs/extensions/forms/style/dnb-forms.scss +1 -6
  342. package/cjs/extensions/forms/types.d.ts +14 -5
  343. package/cjs/extensions/forms/types.js +2 -0
  344. package/cjs/extensions/forms/types.js.map +1 -1
  345. package/cjs/extensions/forms/utils/ajv.js +25 -1
  346. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  347. package/cjs/extensions/forms/utils/errors.d.ts +2 -0
  348. package/cjs/extensions/forms/utils/errors.js +16 -0
  349. package/cjs/extensions/forms/utils/errors.js.map +1 -0
  350. package/cjs/extensions/forms/utils/index.d.ts +1 -0
  351. package/cjs/extensions/forms/utils/index.js +12 -0
  352. package/cjs/extensions/forms/utils/index.js.map +1 -1
  353. package/cjs/extensions/payment-card/PaymentCard.d.ts +3 -2
  354. package/cjs/extensions/payment-card/PaymentCard.js +17 -37
  355. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  356. package/cjs/extensions/payment-card/icons/index.js +3 -1
  357. package/cjs/extensions/payment-card/icons/index.js.map +1 -1
  358. package/cjs/extensions/style/index.d.ts +5 -1
  359. package/cjs/extensions/style/index.js +2 -0
  360. package/cjs/extensions/style/index.js.map +1 -1
  361. package/cjs/fragments/drawer-list/DrawerListProvider.js +1 -0
  362. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  363. package/cjs/fragments/scroll-view/ScrollView.js +1 -0
  364. package/cjs/fragments/scroll-view/ScrollView.js.map +1 -1
  365. package/cjs/icons/dnb/icons-meta.json +2 -2
  366. package/cjs/icons/icons-meta.json +2 -2
  367. package/cjs/shared/Eufemia.d.ts +1 -1
  368. package/cjs/shared/Eufemia.js +2 -2
  369. package/cjs/shared/Eufemia.js.map +1 -1
  370. package/cjs/shared/MediaQuery.js +1 -0
  371. package/cjs/shared/MediaQuery.js.map +1 -1
  372. package/cjs/shared/Provider.js +1 -0
  373. package/cjs/shared/Provider.js.map +1 -1
  374. package/cjs/shared/Theme.js +1 -0
  375. package/cjs/shared/Theme.js.map +1 -1
  376. package/cjs/shared/VisibilityByTheme.js +1 -0
  377. package/cjs/shared/VisibilityByTheme.js.map +1 -1
  378. package/cjs/shared/helpers/filterValidProps.d.ts +3 -7
  379. package/cjs/shared/helpers/filterValidProps.js +8 -4
  380. package/cjs/shared/helpers/filterValidProps.js.map +1 -1
  381. package/cjs/shared/helpers/withCamelCaseProps.d.ts +1 -0
  382. package/cjs/shared/helpers/withCamelCaseProps.js +6 -4
  383. package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
  384. package/cjs/shared/helpers/withSnakeCaseProps.js +5 -4
  385. package/cjs/shared/helpers/withSnakeCaseProps.js.map +1 -1
  386. package/cjs/shared/index.js +1 -0
  387. package/cjs/shared/index.js.map +1 -1
  388. package/cjs/shared/locales/en-GB.d.ts +12 -1
  389. package/cjs/shared/locales/en-GB.js +16 -5
  390. package/cjs/shared/locales/en-GB.js.map +1 -1
  391. package/cjs/shared/locales/en-US.d.ts +12 -1
  392. package/cjs/shared/locales/index.d.ts +24 -2
  393. package/cjs/shared/locales/nb-NO.d.ts +12 -1
  394. package/cjs/shared/locales/nb-NO.js +16 -5
  395. package/cjs/shared/locales/nb-NO.js.map +1 -1
  396. package/cjs/shared/useMedia.js +1 -0
  397. package/cjs/shared/useMedia.js.map +1 -1
  398. package/cjs/shared/useMediaQuery.js +1 -0
  399. package/cjs/shared/useMediaQuery.js.map +1 -1
  400. package/cjs/shared/useTheme.js +1 -0
  401. package/cjs/shared/useTheme.js.map +1 -1
  402. package/cjs/shared/useTranslation.js +1 -0
  403. package/cjs/shared/useTranslation.js.map +1 -1
  404. package/cjs/style/core/utilities.scss +1 -1
  405. package/cjs/style/dnb-ui-components.css +666 -106
  406. package/cjs/style/dnb-ui-components.min.css +6 -4
  407. package/cjs/style/dnb-ui-components.scss +2 -1
  408. package/cjs/style/dnb-ui-elements.css +19 -26
  409. package/cjs/style/dnb-ui-elements.min.css +1 -1
  410. package/cjs/style/dnb-ui-extensions.css +101 -116
  411. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  412. package/cjs/style/dnb-ui-forms.css +243 -0
  413. package/cjs/style/dnb-ui-forms.min.css +1 -0
  414. package/cjs/style/dnb-ui-forms.scss +19 -0
  415. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -26
  416. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  417. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +1164 -450
  418. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
  419. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  420. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +19 -26
  421. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  422. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +101 -116
  423. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  424. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +252 -0
  425. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
  426. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
  427. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +19 -26
  428. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  429. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +1311 -655
  430. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +16 -8
  431. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +5 -4
  432. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +19 -26
  433. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  434. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +101 -116
  435. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  436. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +252 -0
  437. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
  438. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
  439. package/cjs/style/themes/theme-ui/ui-theme-basis.css +19 -26
  440. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  441. package/cjs/style/themes/theme-ui/ui-theme-components.css +1164 -450
  442. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +35 -7
  443. package/cjs/style/themes/theme-ui/ui-theme-components.scss +1 -0
  444. package/cjs/style/themes/theme-ui/ui-theme-elements.css +19 -26
  445. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  446. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +101 -116
  447. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  448. package/cjs/style/themes/theme-ui/ui-theme-forms.css +252 -0
  449. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
  450. package/cjs/style/themes/theme-ui/ui-theme-forms.scss +15 -0
  451. package/cjs/style/themes/theme-ui/ui-theme-tags.css +8 -7
  452. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  453. package/components/accordion/AccordionContent.js +2 -0
  454. package/components/accordion/AccordionContent.js.map +1 -1
  455. package/components/accordion/AccordionHeader.d.ts +2 -1
  456. package/components/accordion/AccordionHeader.js +3 -2
  457. package/components/accordion/AccordionHeader.js.map +1 -1
  458. package/components/accordion/style/dnb-accordion.css +13 -5
  459. package/components/accordion/style/dnb-accordion.min.css +3 -1
  460. package/components/accordion/style/dnb-accordion.scss +16 -5
  461. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -32
  462. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  463. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
  464. package/components/accordion/style/themes/dnb-accordion-theme-ui.css +149 -101
  465. package/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
  466. package/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
  467. package/components/anchor/Anchor.d.ts +1 -0
  468. package/components/anchor/Anchor.js +7 -4
  469. package/components/anchor/Anchor.js.map +1 -1
  470. package/components/autocomplete/Autocomplete.d.ts +4 -0
  471. package/components/autocomplete/Autocomplete.js +169 -148
  472. package/components/autocomplete/Autocomplete.js.map +1 -1
  473. package/components/avatar/Avatar.js +2 -0
  474. package/components/avatar/Avatar.js.map +1 -1
  475. package/components/avatar/AvatarGroup.js +2 -0
  476. package/components/avatar/AvatarGroup.js.map +1 -1
  477. package/components/badge/Badge.js +2 -0
  478. package/components/badge/Badge.js.map +1 -1
  479. package/components/breadcrumb/BreadcrumbItem.js +2 -0
  480. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  481. package/components/breadcrumb/style/dnb-breadcrumb.css +4 -4
  482. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  483. package/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
  484. package/components/button/Button.d.ts +1 -1
  485. package/components/button/Button.js +13 -6
  486. package/components/button/Button.js.map +1 -1
  487. package/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
  488. package/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  489. package/components/card/style/dnb-card.css +10 -0
  490. package/components/card/style/dnb-card.min.css +1 -1
  491. package/components/card/style/dnb-card.scss +8 -0
  492. package/components/checkbox/Checkbox.js +12 -3
  493. package/components/checkbox/Checkbox.js.map +1 -1
  494. package/components/checkbox/style/dnb-checkbox.css +129 -0
  495. package/components/checkbox/style/dnb-checkbox.min.css +1 -1
  496. package/components/checkbox/style/dnb-checkbox.scss +199 -0
  497. package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
  498. package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
  499. package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
  500. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
  501. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
  502. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
  503. package/components/date-picker/DatePicker.d.ts +1 -1
  504. package/components/date-picker/DatePicker.js +7 -1
  505. package/components/date-picker/DatePicker.js.map +1 -1
  506. package/components/date-picker/DatePickerInput.d.ts +1 -1
  507. package/components/date-picker/DatePickerProvider.js +2 -0
  508. package/components/date-picker/DatePickerProvider.js.map +1 -1
  509. package/components/dropdown/Dropdown.js +3 -2
  510. package/components/dropdown/Dropdown.js.map +1 -1
  511. package/components/flex/Container.js +4 -1
  512. package/components/flex/Container.js.map +1 -1
  513. package/components/flex/Flex.d.ts +1 -1
  514. package/components/flex/Flex.js +1 -1
  515. package/components/flex/Flex.js.map +1 -1
  516. package/components/flex/export.d.ts +5 -0
  517. package/components/flex/export.js +6 -0
  518. package/components/flex/export.js.map +1 -0
  519. package/components/flex/index.d.ts +2 -5
  520. package/components/flex/index.js +2 -5
  521. package/components/flex/index.js.map +1 -1
  522. package/components/flex/style/dnb-flex.css +1 -1
  523. package/components/flex/style/dnb-flex.min.css +1 -1
  524. package/components/flex/style/flex-container.scss +1 -1
  525. package/components/form-label/FormLabel.d.ts +9 -3
  526. package/components/form-label/FormLabel.js +17 -11
  527. package/components/form-label/FormLabel.js.map +1 -1
  528. package/components/form-label/style/dnb-form-label.css +0 -1
  529. package/components/form-label/style/dnb-form-label.min.css +1 -1
  530. package/components/form-label/style/dnb-form-label.scss +0 -5
  531. package/components/form-row/FormRow.js +2 -0
  532. package/components/form-row/FormRow.js.map +1 -1
  533. package/components/form-set/FormSet.js +2 -0
  534. package/components/form-set/FormSet.js.map +1 -1
  535. package/components/form-status/FormStatus.js +2 -0
  536. package/components/form-status/FormStatus.js.map +1 -1
  537. package/components/global-error/GlobalError.js +2 -0
  538. package/components/global-error/GlobalError.js.map +1 -1
  539. package/components/global-status/GlobalStatus.d.ts +1 -1
  540. package/components/global-status/GlobalStatus.js +5 -1
  541. package/components/global-status/GlobalStatus.js.map +1 -1
  542. package/components/global-status/style/dnb-global-status.css +0 -7
  543. package/components/global-status/style/dnb-global-status.min.css +1 -1
  544. package/components/global-status/style/dnb-global-status.scss +0 -11
  545. package/components/grid/Grid.d.ts +1 -1
  546. package/components/grid/Grid.js +1 -1
  547. package/components/grid/Grid.js.map +1 -1
  548. package/components/grid/export.d.ts +2 -0
  549. package/components/grid/export.js +3 -0
  550. package/components/grid/export.js.map +1 -0
  551. package/components/grid/index.d.ts +2 -2
  552. package/components/grid/index.js +2 -2
  553. package/components/grid/index.js.map +1 -1
  554. package/components/heading/Heading.js +2 -0
  555. package/components/heading/Heading.js.map +1 -1
  556. package/components/help-button/HelpButton.js +2 -0
  557. package/components/help-button/HelpButton.js.map +1 -1
  558. package/components/help-button/HelpButtonInstance.js +2 -0
  559. package/components/help-button/HelpButtonInstance.js.map +1 -1
  560. package/components/icon/Icon.js +2 -0
  561. package/components/icon/Icon.js.map +1 -1
  562. package/components/icon-primary/IconPrimary.js +2 -0
  563. package/components/icon-primary/IconPrimary.js.map +1 -1
  564. package/components/info-card/InfoCard.js +2 -0
  565. package/components/info-card/InfoCard.js.map +1 -1
  566. package/components/input/Input.d.ts +4 -0
  567. package/components/input/Input.js +13 -2
  568. package/components/input/Input.js.map +1 -1
  569. package/components/input/InputPassword.js +3 -0
  570. package/components/input/InputPassword.js.map +1 -1
  571. package/components/input/style/dnb-input.css +7 -3
  572. package/components/input/style/dnb-input.min.css +1 -1
  573. package/components/input/style/dnb-input.scss +14 -8
  574. package/components/input-masked/InputMasked.js +3 -0
  575. package/components/input-masked/InputMasked.js.map +1 -1
  576. package/components/input-masked/MultiInputMask.d.ts +14 -2
  577. package/components/input-masked/MultiInputMask.js +35 -24
  578. package/components/input-masked/MultiInputMask.js.map +1 -1
  579. package/components/input-masked/TextMask.d.ts +1 -1
  580. package/components/input-masked/hooks/useHandleCursorPosition.js +1 -1
  581. package/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  582. package/components/input-masked/style/dnb-input-masked.css +3 -3
  583. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  584. package/components/input-masked/style/dnb-input-masked.scss +1 -1
  585. package/components/lib.d.ts +2 -0
  586. package/components/logo/Logo.js +2 -0
  587. package/components/logo/Logo.js.map +1 -1
  588. package/components/modal/Modal.js +2 -0
  589. package/components/modal/Modal.js.map +1 -1
  590. package/components/modal/ModalContent.js +2 -0
  591. package/components/modal/ModalContent.js.map +1 -1
  592. package/components/modal/parts/CloseButton.js +2 -0
  593. package/components/modal/parts/CloseButton.js.map +1 -1
  594. package/components/number-format/NumberFormat.js +2 -0
  595. package/components/number-format/NumberFormat.js.map +1 -1
  596. package/components/number-format/NumberUtils.d.ts +1 -1
  597. package/components/number-format/NumberUtils.js +2 -0
  598. package/components/number-format/NumberUtils.js.map +1 -1
  599. package/components/pagination/PaginationHelpers.js +2 -0
  600. package/components/pagination/PaginationHelpers.js.map +1 -1
  601. package/components/pagination/PaginationInfinity.js +2 -0
  602. package/components/pagination/PaginationInfinity.js.map +1 -1
  603. package/components/pagination/PaginationProvider.js +2 -0
  604. package/components/pagination/PaginationProvider.js.map +1 -1
  605. package/components/progress-indicator/ProgressIndicator.js +2 -0
  606. package/components/progress-indicator/ProgressIndicator.js.map +1 -1
  607. package/components/radio/Radio.js +18 -9
  608. package/components/radio/Radio.js.map +1 -1
  609. package/components/radio/RadioGroup.js +9 -6
  610. package/components/radio/RadioGroup.js.map +1 -1
  611. package/components/radio/style/dnb-radio.css +132 -1
  612. package/components/radio/style/dnb-radio.min.css +1 -1
  613. package/components/radio/style/dnb-radio.scss +253 -1
  614. package/components/radio/style/themes/dnb-radio-theme-sbanken.css +35 -0
  615. package/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -0
  616. package/components/radio/style/themes/dnb-radio-theme-sbanken.scss +42 -0
  617. package/components/radio/style/themes/dnb-radio-theme-ui.css +25 -86
  618. package/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  619. package/components/radio/style/themes/dnb-radio-theme-ui.scss +31 -143
  620. package/components/section/Section.d.ts +5 -0
  621. package/components/section/Section.js +5 -2
  622. package/components/section/Section.js.map +1 -1
  623. package/components/section/style/dnb-section.css +12 -0
  624. package/components/section/style/dnb-section.min.css +3 -3
  625. package/components/section/style/dnb-section.scss +10 -0
  626. package/components/skeleton/Skeleton.js +2 -0
  627. package/components/skeleton/Skeleton.js.map +1 -1
  628. package/components/skeleton/figures/Article.js +2 -0
  629. package/components/skeleton/figures/Article.js.map +1 -1
  630. package/components/skeleton/figures/Circle.js +2 -0
  631. package/components/skeleton/figures/Circle.js.map +1 -1
  632. package/components/skeleton/figures/Product.js +2 -0
  633. package/components/skeleton/figures/Product.js.map +1 -1
  634. package/components/skeleton/figures/Table.js +2 -0
  635. package/components/skeleton/figures/Table.js.map +1 -1
  636. package/components/slider/Slider.d.ts +1 -0
  637. package/components/slider/Slider.js +1 -0
  638. package/components/slider/Slider.js.map +1 -1
  639. package/components/slider/SliderInstance.js +2 -0
  640. package/components/slider/SliderInstance.js.map +1 -1
  641. package/components/slider/SliderProvider.js +2 -0
  642. package/components/slider/SliderProvider.js.map +1 -1
  643. package/components/space/Space.js +2 -0
  644. package/components/space/Space.js.map +1 -1
  645. package/components/switch/Switch.js +12 -3
  646. package/components/switch/Switch.js.map +1 -1
  647. package/components/switch/style/dnb-switch.css +43 -9
  648. package/components/switch/style/dnb-switch.min.css +1 -1
  649. package/components/switch/style/dnb-switch.scss +49 -22
  650. package/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
  651. package/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
  652. package/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
  653. package/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
  654. package/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  655. package/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
  656. package/components/table/Table.js +2 -0
  657. package/components/table/Table.js.map +1 -1
  658. package/components/tabs/Tabs.js +2 -0
  659. package/components/tabs/Tabs.js.map +1 -1
  660. package/components/tag/Tag.d.ts +1 -0
  661. package/components/tag/Tag.js +3 -0
  662. package/components/tag/Tag.js.map +1 -1
  663. package/components/tag/TagGroup.js +2 -0
  664. package/components/tag/TagGroup.js.map +1 -1
  665. package/components/textarea/Textarea.js +7 -1
  666. package/components/textarea/Textarea.js.map +1 -1
  667. package/components/timeline/Timeline.js +2 -0
  668. package/components/timeline/Timeline.js.map +1 -1
  669. package/components/timeline/TimelineItem.js +2 -0
  670. package/components/timeline/TimelineItem.js.map +1 -1
  671. package/components/toggle-button/ToggleButton.js +3 -0
  672. package/components/toggle-button/ToggleButton.js.map +1 -1
  673. package/components/toggle-button/ToggleButtonGroup.js +9 -6
  674. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  675. package/components/toggle-button/style/dnb-toggle-button.css +3 -7
  676. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  677. package/components/toggle-button/style/dnb-toggle-button.scss +4 -14
  678. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
  679. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
  680. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
  681. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
  682. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
  683. package/components/tooltip/Tooltip.js +2 -0
  684. package/components/tooltip/Tooltip.js.map +1 -1
  685. package/components/tooltip/TooltipPortal.js +2 -0
  686. package/components/tooltip/TooltipPortal.js.map +1 -1
  687. package/components/upload/Upload.d.ts +1 -0
  688. package/components/upload/Upload.js +3 -0
  689. package/components/upload/Upload.js.map +1 -1
  690. package/components/upload/useUpload.js +2 -0
  691. package/components/upload/useUpload.js.map +1 -1
  692. package/components/visually-hidden/VisuallyHidden.js +2 -0
  693. package/components/visually-hidden/VisuallyHidden.js.map +1 -1
  694. package/elements/Element.js +2 -0
  695. package/elements/Element.js.map +1 -1
  696. package/elements/hr/style/dnb-hr.scss +16 -30
  697. package/elements/hr/style/hr-mixins.scss +5 -7
  698. package/elements/typography/H.js +2 -0
  699. package/elements/typography/H.js.map +1 -1
  700. package/es/components/accordion/AccordionContent.js +2 -0
  701. package/es/components/accordion/AccordionContent.js.map +1 -1
  702. package/es/components/accordion/AccordionHeader.d.ts +2 -1
  703. package/es/components/accordion/AccordionHeader.js +3 -2
  704. package/es/components/accordion/AccordionHeader.js.map +1 -1
  705. package/es/components/accordion/style/dnb-accordion.css +13 -5
  706. package/es/components/accordion/style/dnb-accordion.min.css +3 -1
  707. package/es/components/accordion/style/dnb-accordion.scss +16 -5
  708. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -32
  709. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  710. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
  711. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.css +149 -101
  712. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
  713. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
  714. package/es/components/anchor/Anchor.d.ts +1 -0
  715. package/es/components/anchor/Anchor.js +7 -4
  716. package/es/components/anchor/Anchor.js.map +1 -1
  717. package/es/components/autocomplete/Autocomplete.d.ts +4 -0
  718. package/es/components/autocomplete/Autocomplete.js +164 -143
  719. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  720. package/es/components/avatar/Avatar.js +2 -0
  721. package/es/components/avatar/Avatar.js.map +1 -1
  722. package/es/components/avatar/AvatarGroup.js +2 -0
  723. package/es/components/avatar/AvatarGroup.js.map +1 -1
  724. package/es/components/badge/Badge.js +2 -0
  725. package/es/components/badge/Badge.js.map +1 -1
  726. package/es/components/breadcrumb/BreadcrumbItem.js +2 -0
  727. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  728. package/es/components/breadcrumb/style/dnb-breadcrumb.css +4 -4
  729. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  730. package/es/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
  731. package/es/components/button/Button.d.ts +1 -1
  732. package/es/components/button/Button.js +13 -6
  733. package/es/components/button/Button.js.map +1 -1
  734. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
  735. package/es/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  736. package/es/components/card/style/dnb-card.css +10 -0
  737. package/es/components/card/style/dnb-card.min.css +1 -1
  738. package/es/components/card/style/dnb-card.scss +8 -0
  739. package/es/components/checkbox/Checkbox.js +12 -3
  740. package/es/components/checkbox/Checkbox.js.map +1 -1
  741. package/es/components/checkbox/style/dnb-checkbox.css +129 -0
  742. package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
  743. package/es/components/checkbox/style/dnb-checkbox.scss +199 -0
  744. package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
  745. package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
  746. package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
  747. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
  748. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
  749. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
  750. package/es/components/date-picker/DatePicker.d.ts +1 -1
  751. package/es/components/date-picker/DatePicker.js +7 -1
  752. package/es/components/date-picker/DatePicker.js.map +1 -1
  753. package/es/components/date-picker/DatePickerInput.d.ts +1 -1
  754. package/es/components/date-picker/DatePickerProvider.js +2 -0
  755. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  756. package/es/components/dropdown/Dropdown.js +3 -2
  757. package/es/components/dropdown/Dropdown.js.map +1 -1
  758. package/es/components/flex/Container.js +4 -1
  759. package/es/components/flex/Container.js.map +1 -1
  760. package/es/components/flex/Flex.d.ts +1 -1
  761. package/es/components/flex/Flex.js +1 -1
  762. package/es/components/flex/Flex.js.map +1 -1
  763. package/es/components/flex/export.d.ts +5 -0
  764. package/es/components/flex/export.js +6 -0
  765. package/es/components/flex/export.js.map +1 -0
  766. package/es/components/flex/index.d.ts +2 -5
  767. package/es/components/flex/index.js +2 -5
  768. package/es/components/flex/index.js.map +1 -1
  769. package/es/components/flex/style/dnb-flex.css +1 -1
  770. package/es/components/flex/style/dnb-flex.min.css +1 -1
  771. package/es/components/flex/style/flex-container.scss +1 -1
  772. package/es/components/form-label/FormLabel.d.ts +9 -3
  773. package/es/components/form-label/FormLabel.js +17 -11
  774. package/es/components/form-label/FormLabel.js.map +1 -1
  775. package/es/components/form-label/style/dnb-form-label.css +0 -1
  776. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  777. package/es/components/form-label/style/dnb-form-label.scss +0 -5
  778. package/es/components/form-row/FormRow.js +2 -0
  779. package/es/components/form-row/FormRow.js.map +1 -1
  780. package/es/components/form-set/FormSet.js +2 -0
  781. package/es/components/form-set/FormSet.js.map +1 -1
  782. package/es/components/form-status/FormStatus.js +2 -0
  783. package/es/components/form-status/FormStatus.js.map +1 -1
  784. package/es/components/global-error/GlobalError.js +2 -0
  785. package/es/components/global-error/GlobalError.js.map +1 -1
  786. package/es/components/global-status/GlobalStatus.d.ts +1 -1
  787. package/es/components/global-status/GlobalStatus.js +5 -1
  788. package/es/components/global-status/GlobalStatus.js.map +1 -1
  789. package/es/components/global-status/style/dnb-global-status.css +0 -7
  790. package/es/components/global-status/style/dnb-global-status.min.css +1 -1
  791. package/es/components/global-status/style/dnb-global-status.scss +0 -11
  792. package/es/components/grid/Grid.d.ts +1 -1
  793. package/es/components/grid/Grid.js +1 -1
  794. package/es/components/grid/Grid.js.map +1 -1
  795. package/es/components/grid/export.d.ts +2 -0
  796. package/es/components/grid/export.js +3 -0
  797. package/es/components/grid/export.js.map +1 -0
  798. package/es/components/grid/index.d.ts +2 -2
  799. package/es/components/grid/index.js +2 -2
  800. package/es/components/grid/index.js.map +1 -1
  801. package/es/components/heading/Heading.js +2 -0
  802. package/es/components/heading/Heading.js.map +1 -1
  803. package/es/components/help-button/HelpButton.js +2 -0
  804. package/es/components/help-button/HelpButton.js.map +1 -1
  805. package/es/components/help-button/HelpButtonInstance.js +2 -0
  806. package/es/components/help-button/HelpButtonInstance.js.map +1 -1
  807. package/es/components/icon/Icon.js +2 -0
  808. package/es/components/icon/Icon.js.map +1 -1
  809. package/es/components/icon-primary/IconPrimary.js +2 -0
  810. package/es/components/icon-primary/IconPrimary.js.map +1 -1
  811. package/es/components/info-card/InfoCard.js +2 -0
  812. package/es/components/info-card/InfoCard.js.map +1 -1
  813. package/es/components/input/Input.d.ts +4 -0
  814. package/es/components/input/Input.js +13 -2
  815. package/es/components/input/Input.js.map +1 -1
  816. package/es/components/input/InputPassword.js +3 -0
  817. package/es/components/input/InputPassword.js.map +1 -1
  818. package/es/components/input/style/dnb-input.css +7 -3
  819. package/es/components/input/style/dnb-input.min.css +1 -1
  820. package/es/components/input/style/dnb-input.scss +14 -8
  821. package/es/components/input-masked/InputMasked.js +3 -0
  822. package/es/components/input-masked/InputMasked.js.map +1 -1
  823. package/es/components/input-masked/MultiInputMask.d.ts +14 -2
  824. package/es/components/input-masked/MultiInputMask.js +37 -25
  825. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  826. package/es/components/input-masked/TextMask.d.ts +1 -1
  827. package/es/components/input-masked/hooks/useHandleCursorPosition.js +1 -1
  828. package/es/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  829. package/es/components/input-masked/style/dnb-input-masked.css +3 -3
  830. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  831. package/es/components/input-masked/style/dnb-input-masked.scss +1 -1
  832. package/es/components/lib.d.ts +2 -0
  833. package/es/components/logo/Logo.js +2 -0
  834. package/es/components/logo/Logo.js.map +1 -1
  835. package/es/components/modal/Modal.js +2 -0
  836. package/es/components/modal/Modal.js.map +1 -1
  837. package/es/components/modal/ModalContent.js +2 -0
  838. package/es/components/modal/ModalContent.js.map +1 -1
  839. package/es/components/modal/parts/CloseButton.js +2 -0
  840. package/es/components/modal/parts/CloseButton.js.map +1 -1
  841. package/es/components/number-format/NumberFormat.js +2 -0
  842. package/es/components/number-format/NumberFormat.js.map +1 -1
  843. package/es/components/number-format/NumberUtils.d.ts +1 -1
  844. package/es/components/number-format/NumberUtils.js +2 -0
  845. package/es/components/number-format/NumberUtils.js.map +1 -1
  846. package/es/components/pagination/PaginationHelpers.js +2 -0
  847. package/es/components/pagination/PaginationHelpers.js.map +1 -1
  848. package/es/components/pagination/PaginationInfinity.js +2 -0
  849. package/es/components/pagination/PaginationInfinity.js.map +1 -1
  850. package/es/components/pagination/PaginationProvider.js +2 -0
  851. package/es/components/pagination/PaginationProvider.js.map +1 -1
  852. package/es/components/progress-indicator/ProgressIndicator.js +2 -0
  853. package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
  854. package/es/components/radio/Radio.js +18 -9
  855. package/es/components/radio/Radio.js.map +1 -1
  856. package/es/components/radio/RadioGroup.js +9 -6
  857. package/es/components/radio/RadioGroup.js.map +1 -1
  858. package/es/components/radio/style/dnb-radio.css +132 -1
  859. package/es/components/radio/style/dnb-radio.min.css +1 -1
  860. package/es/components/radio/style/dnb-radio.scss +253 -1
  861. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.css +35 -0
  862. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -0
  863. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.scss +42 -0
  864. package/es/components/radio/style/themes/dnb-radio-theme-ui.css +25 -86
  865. package/es/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  866. package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +31 -143
  867. package/es/components/section/Section.d.ts +5 -0
  868. package/es/components/section/Section.js +5 -2
  869. package/es/components/section/Section.js.map +1 -1
  870. package/es/components/section/style/dnb-section.css +12 -0
  871. package/es/components/section/style/dnb-section.min.css +3 -3
  872. package/es/components/section/style/dnb-section.scss +10 -0
  873. package/es/components/skeleton/Skeleton.js +2 -0
  874. package/es/components/skeleton/Skeleton.js.map +1 -1
  875. package/es/components/skeleton/figures/Article.js +2 -0
  876. package/es/components/skeleton/figures/Article.js.map +1 -1
  877. package/es/components/skeleton/figures/Circle.js +2 -0
  878. package/es/components/skeleton/figures/Circle.js.map +1 -1
  879. package/es/components/skeleton/figures/Product.js +2 -0
  880. package/es/components/skeleton/figures/Product.js.map +1 -1
  881. package/es/components/skeleton/figures/Table.js +2 -0
  882. package/es/components/skeleton/figures/Table.js.map +1 -1
  883. package/es/components/slider/Slider.d.ts +1 -0
  884. package/es/components/slider/Slider.js +1 -0
  885. package/es/components/slider/Slider.js.map +1 -1
  886. package/es/components/slider/SliderInstance.js +2 -0
  887. package/es/components/slider/SliderInstance.js.map +1 -1
  888. package/es/components/slider/SliderProvider.js +2 -0
  889. package/es/components/slider/SliderProvider.js.map +1 -1
  890. package/es/components/space/Space.js +2 -0
  891. package/es/components/space/Space.js.map +1 -1
  892. package/es/components/switch/Switch.js +12 -3
  893. package/es/components/switch/Switch.js.map +1 -1
  894. package/es/components/switch/style/dnb-switch.css +43 -9
  895. package/es/components/switch/style/dnb-switch.min.css +1 -1
  896. package/es/components/switch/style/dnb-switch.scss +49 -22
  897. package/es/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
  898. package/es/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
  899. package/es/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
  900. package/es/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
  901. package/es/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  902. package/es/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
  903. package/es/components/table/Table.js +2 -0
  904. package/es/components/table/Table.js.map +1 -1
  905. package/es/components/tabs/Tabs.js +2 -0
  906. package/es/components/tabs/Tabs.js.map +1 -1
  907. package/es/components/tag/Tag.d.ts +1 -0
  908. package/es/components/tag/Tag.js +3 -0
  909. package/es/components/tag/Tag.js.map +1 -1
  910. package/es/components/tag/TagGroup.js +2 -0
  911. package/es/components/tag/TagGroup.js.map +1 -1
  912. package/es/components/textarea/Textarea.js +7 -1
  913. package/es/components/textarea/Textarea.js.map +1 -1
  914. package/es/components/timeline/Timeline.js +2 -0
  915. package/es/components/timeline/Timeline.js.map +1 -1
  916. package/es/components/timeline/TimelineItem.js +2 -0
  917. package/es/components/timeline/TimelineItem.js.map +1 -1
  918. package/es/components/toggle-button/ToggleButton.js +3 -0
  919. package/es/components/toggle-button/ToggleButton.js.map +1 -1
  920. package/es/components/toggle-button/ToggleButtonGroup.js +9 -6
  921. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  922. package/es/components/toggle-button/style/dnb-toggle-button.css +3 -7
  923. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  924. package/es/components/toggle-button/style/dnb-toggle-button.scss +4 -14
  925. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
  926. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
  927. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
  928. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
  929. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
  930. package/es/components/tooltip/Tooltip.js +2 -0
  931. package/es/components/tooltip/Tooltip.js.map +1 -1
  932. package/es/components/tooltip/TooltipPortal.js +2 -0
  933. package/es/components/tooltip/TooltipPortal.js.map +1 -1
  934. package/es/components/upload/Upload.d.ts +1 -0
  935. package/es/components/upload/Upload.js +3 -0
  936. package/es/components/upload/Upload.js.map +1 -1
  937. package/es/components/upload/useUpload.js +2 -0
  938. package/es/components/upload/useUpload.js.map +1 -1
  939. package/es/components/visually-hidden/VisuallyHidden.js +2 -0
  940. package/es/components/visually-hidden/VisuallyHidden.js.map +1 -1
  941. package/es/elements/Element.js +2 -0
  942. package/es/elements/Element.js.map +1 -1
  943. package/es/elements/hr/style/dnb-hr.scss +16 -30
  944. package/es/elements/hr/style/hr-mixins.scss +5 -7
  945. package/es/elements/typography/H.js +2 -0
  946. package/es/elements/typography/H.js.map +1 -1
  947. package/es/extensions/forms/DataContext/Context.d.ts +1 -1
  948. package/es/extensions/forms/DataContext/Context.js +1 -1
  949. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  950. package/es/extensions/forms/DataContext/Provider/Provider.js +60 -46
  951. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  952. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -6
  953. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  954. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
  955. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +9 -6
  956. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  957. package/es/extensions/forms/Field/Currency/Currency.d.ts +3 -1
  958. package/es/extensions/forms/Field/Currency/Currency.js +8 -2
  959. package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
  960. package/es/extensions/forms/Field/Email/Email.js +7 -5
  961. package/es/extensions/forms/Field/Email/Email.js.map +1 -1
  962. package/es/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
  963. package/es/extensions/forms/Field/Expiry/Expiry.js +90 -0
  964. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
  965. package/es/extensions/forms/Field/Expiry/index.d.ts +2 -0
  966. package/es/extensions/forms/Field/Expiry/index.js +3 -0
  967. package/es/extensions/forms/Field/Expiry/index.js.map +1 -0
  968. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.css +6 -0
  969. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
  970. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
  971. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +11 -7
  972. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  973. package/es/extensions/forms/Field/Number/Number.js +48 -26
  974. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  975. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +9 -6
  976. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  977. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
  978. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +143 -63
  979. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  980. package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
  981. package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
  982. package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
  983. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
  984. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
  985. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  986. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -15
  987. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  988. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -14
  989. package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
  990. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +180 -20
  991. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  992. package/es/extensions/forms/Field/Selection/Selection.js +1 -0
  993. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  994. package/es/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
  995. package/es/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  996. package/es/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
  997. package/es/extensions/forms/Field/String/String.js +29 -20
  998. package/es/extensions/forms/Field/String/String.js.map +1 -1
  999. package/es/extensions/forms/Field/Toggle/Toggle.js +4 -2
  1000. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  1001. package/es/extensions/forms/Field/index.d.ts +1 -0
  1002. package/es/extensions/forms/Field/index.js +1 -0
  1003. package/es/extensions/forms/Field/index.js.map +1 -1
  1004. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  1005. package/es/extensions/forms/FieldBlock/FieldBlock.js +45 -15
  1006. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  1007. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  1008. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  1009. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
  1010. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  1011. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
  1012. package/es/extensions/forms/Form/Element/Element.js +2 -0
  1013. package/es/extensions/forms/Form/Element/Element.js.map +1 -1
  1014. package/es/extensions/forms/Form/Handler/Handler.js +2 -0
  1015. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  1016. package/es/extensions/forms/constants/countries.d.ts +9 -6
  1017. package/es/extensions/forms/constants/countries.js +13 -6
  1018. package/es/extensions/forms/constants/countries.js.map +1 -1
  1019. package/es/extensions/forms/hooks/index.d.ts +3 -0
  1020. package/es/extensions/forms/hooks/index.js +5 -1
  1021. package/es/extensions/forms/hooks/index.js.map +1 -1
  1022. package/es/extensions/forms/hooks/useDataValue.d.ts +2 -0
  1023. package/es/extensions/forms/hooks/useDataValue.js +147 -76
  1024. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  1025. package/es/extensions/forms/hooks/useMountEffect.d.ts +5 -0
  1026. package/es/extensions/forms/hooks/useMountEffect.js +9 -0
  1027. package/es/extensions/forms/hooks/useMountEffect.js.map +1 -0
  1028. package/es/extensions/forms/hooks/useProcessManager.d.ts +6 -0
  1029. package/es/extensions/forms/hooks/useProcessManager.js +16 -0
  1030. package/es/extensions/forms/hooks/useProcessManager.js.map +1 -0
  1031. package/es/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
  1032. package/es/extensions/forms/hooks/useUpdateEffect.js +14 -0
  1033. package/es/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
  1034. package/es/extensions/forms/index.d.ts +1 -1
  1035. package/es/extensions/forms/index.js +1 -0
  1036. package/es/extensions/forms/index.js.map +1 -1
  1037. package/es/extensions/forms/style/dnb-forms.css +101 -116
  1038. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  1039. package/es/extensions/forms/style/dnb-forms.scss +1 -6
  1040. package/es/extensions/forms/types.d.ts +14 -5
  1041. package/es/extensions/forms/types.js +2 -0
  1042. package/es/extensions/forms/types.js.map +1 -1
  1043. package/es/extensions/forms/utils/ajv.js +25 -1
  1044. package/es/extensions/forms/utils/ajv.js.map +1 -1
  1045. package/es/extensions/forms/utils/errors.d.ts +2 -0
  1046. package/es/extensions/forms/utils/errors.js +10 -0
  1047. package/es/extensions/forms/utils/errors.js.map +1 -0
  1048. package/es/extensions/forms/utils/index.d.ts +1 -0
  1049. package/es/extensions/forms/utils/index.js +1 -0
  1050. package/es/extensions/forms/utils/index.js.map +1 -1
  1051. package/es/extensions/payment-card/PaymentCard.d.ts +3 -2
  1052. package/es/extensions/payment-card/PaymentCard.js +18 -37
  1053. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  1054. package/es/extensions/payment-card/icons/index.js +4 -2
  1055. package/es/extensions/payment-card/icons/index.js.map +1 -1
  1056. package/es/extensions/style/index.d.ts +5 -1
  1057. package/es/extensions/style/index.js +4 -1
  1058. package/es/extensions/style/index.js.map +1 -1
  1059. package/es/fragments/drawer-list/DrawerListProvider.js +2 -0
  1060. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  1061. package/es/fragments/scroll-view/ScrollView.js +2 -0
  1062. package/es/fragments/scroll-view/ScrollView.js.map +1 -1
  1063. package/es/icons/dnb/icons-meta.json +2 -2
  1064. package/es/icons/icons-meta.json +2 -2
  1065. package/es/shared/Eufemia.d.ts +1 -1
  1066. package/es/shared/Eufemia.js +2 -2
  1067. package/es/shared/Eufemia.js.map +1 -1
  1068. package/es/shared/MediaQuery.js +2 -0
  1069. package/es/shared/MediaQuery.js.map +1 -1
  1070. package/es/shared/Provider.js +2 -0
  1071. package/es/shared/Provider.js.map +1 -1
  1072. package/es/shared/Theme.js +2 -0
  1073. package/es/shared/Theme.js.map +1 -1
  1074. package/es/shared/VisibilityByTheme.js +2 -0
  1075. package/es/shared/VisibilityByTheme.js.map +1 -1
  1076. package/es/shared/helpers/filterValidProps.d.ts +3 -7
  1077. package/es/shared/helpers/filterValidProps.js +9 -3
  1078. package/es/shared/helpers/filterValidProps.js.map +1 -1
  1079. package/es/shared/helpers/withCamelCaseProps.d.ts +1 -0
  1080. package/es/shared/helpers/withCamelCaseProps.js +6 -5
  1081. package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
  1082. package/es/shared/helpers/withSnakeCaseProps.js +5 -4
  1083. package/es/shared/helpers/withSnakeCaseProps.js.map +1 -1
  1084. package/es/shared/index.js +2 -0
  1085. package/es/shared/index.js.map +1 -1
  1086. package/es/shared/locales/en-GB.d.ts +12 -1
  1087. package/es/shared/locales/en-GB.js +16 -5
  1088. package/es/shared/locales/en-GB.js.map +1 -1
  1089. package/es/shared/locales/en-US.d.ts +12 -1
  1090. package/es/shared/locales/index.d.ts +24 -2
  1091. package/es/shared/locales/nb-NO.d.ts +12 -1
  1092. package/es/shared/locales/nb-NO.js +16 -5
  1093. package/es/shared/locales/nb-NO.js.map +1 -1
  1094. package/es/shared/useMedia.js +2 -0
  1095. package/es/shared/useMedia.js.map +1 -1
  1096. package/es/shared/useMediaQuery.js +2 -0
  1097. package/es/shared/useMediaQuery.js.map +1 -1
  1098. package/es/shared/useTheme.js +2 -0
  1099. package/es/shared/useTheme.js.map +1 -1
  1100. package/es/shared/useTranslation.js +2 -0
  1101. package/es/shared/useTranslation.js.map +1 -1
  1102. package/es/style/core/utilities.scss +1 -1
  1103. package/es/style/dnb-ui-components.css +666 -106
  1104. package/es/style/dnb-ui-components.min.css +6 -4
  1105. package/es/style/dnb-ui-components.scss +2 -1
  1106. package/es/style/dnb-ui-elements.css +19 -26
  1107. package/es/style/dnb-ui-elements.min.css +1 -1
  1108. package/es/style/dnb-ui-extensions.css +101 -116
  1109. package/es/style/dnb-ui-extensions.min.css +1 -1
  1110. package/es/style/dnb-ui-forms.css +243 -0
  1111. package/es/style/dnb-ui-forms.min.css +1 -0
  1112. package/es/style/dnb-ui-forms.scss +19 -0
  1113. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -26
  1114. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1115. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +1164 -450
  1116. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
  1117. package/es/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  1118. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +19 -26
  1119. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  1120. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +101 -116
  1121. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1122. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +252 -0
  1123. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
  1124. package/es/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
  1125. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +19 -26
  1126. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1127. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +1311 -655
  1128. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +16 -8
  1129. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +5 -4
  1130. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +19 -26
  1131. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  1132. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +101 -116
  1133. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1134. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +252 -0
  1135. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
  1136. package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
  1137. package/es/style/themes/theme-ui/ui-theme-basis.css +19 -26
  1138. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1139. package/es/style/themes/theme-ui/ui-theme-components.css +1164 -450
  1140. package/es/style/themes/theme-ui/ui-theme-components.min.css +35 -7
  1141. package/es/style/themes/theme-ui/ui-theme-components.scss +1 -0
  1142. package/es/style/themes/theme-ui/ui-theme-elements.css +19 -26
  1143. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1144. package/es/style/themes/theme-ui/ui-theme-extensions.css +101 -116
  1145. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1146. package/es/style/themes/theme-ui/ui-theme-forms.css +252 -0
  1147. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
  1148. package/es/style/themes/theme-ui/ui-theme-forms.scss +15 -0
  1149. package/es/style/themes/theme-ui/ui-theme-tags.css +8 -7
  1150. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1151. package/esm/dnb-ui-basis.min.mjs +1 -1
  1152. package/esm/dnb-ui-components.min.mjs +1 -1
  1153. package/esm/dnb-ui-elements.min.mjs +1 -1
  1154. package/esm/dnb-ui-extensions.min.mjs +3 -3
  1155. package/esm/dnb-ui-lib.min.mjs +1 -1
  1156. package/extensions/forms/DataContext/Context.d.ts +1 -1
  1157. package/extensions/forms/DataContext/Context.js +1 -1
  1158. package/extensions/forms/DataContext/Context.js.map +1 -1
  1159. package/extensions/forms/DataContext/Provider/Provider.js +60 -46
  1160. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  1161. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -6
  1162. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  1163. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
  1164. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +9 -6
  1165. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  1166. package/extensions/forms/Field/Currency/Currency.d.ts +3 -1
  1167. package/extensions/forms/Field/Currency/Currency.js +8 -2
  1168. package/extensions/forms/Field/Currency/Currency.js.map +1 -1
  1169. package/extensions/forms/Field/Email/Email.js +7 -5
  1170. package/extensions/forms/Field/Email/Email.js.map +1 -1
  1171. package/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
  1172. package/extensions/forms/Field/Expiry/Expiry.js +90 -0
  1173. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
  1174. package/extensions/forms/Field/Expiry/index.d.ts +2 -0
  1175. package/extensions/forms/Field/Expiry/index.js +3 -0
  1176. package/extensions/forms/Field/Expiry/index.js.map +1 -0
  1177. package/extensions/forms/Field/Expiry/style/dnb-expiry.css +6 -0
  1178. package/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
  1179. package/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
  1180. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +11 -7
  1181. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  1182. package/extensions/forms/Field/Number/Number.js +49 -27
  1183. package/extensions/forms/Field/Number/Number.js.map +1 -1
  1184. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +9 -6
  1185. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  1186. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
  1187. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +150 -73
  1188. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  1189. package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
  1190. package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
  1191. package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
  1192. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
  1193. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
  1194. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  1195. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -15
  1196. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  1197. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -14
  1198. package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
  1199. package/extensions/forms/Field/SelectCountry/SelectCountry.js +192 -20
  1200. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  1201. package/extensions/forms/Field/Selection/Selection.js +1 -0
  1202. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  1203. package/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
  1204. package/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  1205. package/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
  1206. package/extensions/forms/Field/String/String.js +30 -21
  1207. package/extensions/forms/Field/String/String.js.map +1 -1
  1208. package/extensions/forms/Field/Toggle/Toggle.js +4 -2
  1209. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  1210. package/extensions/forms/Field/index.d.ts +1 -0
  1211. package/extensions/forms/Field/index.js +1 -0
  1212. package/extensions/forms/Field/index.js.map +1 -1
  1213. package/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  1214. package/extensions/forms/FieldBlock/FieldBlock.js +47 -16
  1215. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  1216. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  1217. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  1218. package/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
  1219. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  1220. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
  1221. package/extensions/forms/Form/Element/Element.js +2 -0
  1222. package/extensions/forms/Form/Element/Element.js.map +1 -1
  1223. package/extensions/forms/Form/Handler/Handler.js +2 -0
  1224. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  1225. package/extensions/forms/constants/countries.d.ts +9 -6
  1226. package/extensions/forms/constants/countries.js +13 -6
  1227. package/extensions/forms/constants/countries.js.map +1 -1
  1228. package/extensions/forms/hooks/index.d.ts +3 -0
  1229. package/extensions/forms/hooks/index.js +5 -1
  1230. package/extensions/forms/hooks/index.js.map +1 -1
  1231. package/extensions/forms/hooks/useDataValue.d.ts +2 -0
  1232. package/extensions/forms/hooks/useDataValue.js +152 -76
  1233. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  1234. package/extensions/forms/hooks/useMountEffect.d.ts +5 -0
  1235. package/extensions/forms/hooks/useMountEffect.js +9 -0
  1236. package/extensions/forms/hooks/useMountEffect.js.map +1 -0
  1237. package/extensions/forms/hooks/useProcessManager.d.ts +6 -0
  1238. package/extensions/forms/hooks/useProcessManager.js +16 -0
  1239. package/extensions/forms/hooks/useProcessManager.js.map +1 -0
  1240. package/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
  1241. package/extensions/forms/hooks/useUpdateEffect.js +14 -0
  1242. package/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
  1243. package/extensions/forms/index.d.ts +1 -1
  1244. package/extensions/forms/index.js +1 -0
  1245. package/extensions/forms/index.js.map +1 -1
  1246. package/extensions/forms/style/dnb-forms.css +101 -116
  1247. package/extensions/forms/style/dnb-forms.min.css +1 -1
  1248. package/extensions/forms/style/dnb-forms.scss +1 -6
  1249. package/extensions/forms/types.d.ts +14 -5
  1250. package/extensions/forms/types.js +2 -0
  1251. package/extensions/forms/types.js.map +1 -1
  1252. package/extensions/forms/utils/ajv.js +25 -1
  1253. package/extensions/forms/utils/ajv.js.map +1 -1
  1254. package/extensions/forms/utils/errors.d.ts +2 -0
  1255. package/extensions/forms/utils/errors.js +10 -0
  1256. package/extensions/forms/utils/errors.js.map +1 -0
  1257. package/extensions/forms/utils/index.d.ts +1 -0
  1258. package/extensions/forms/utils/index.js +1 -0
  1259. package/extensions/forms/utils/index.js.map +1 -1
  1260. package/extensions/payment-card/PaymentCard.d.ts +3 -2
  1261. package/extensions/payment-card/PaymentCard.js +18 -37
  1262. package/extensions/payment-card/PaymentCard.js.map +1 -1
  1263. package/extensions/payment-card/icons/index.js +4 -2
  1264. package/extensions/payment-card/icons/index.js.map +1 -1
  1265. package/extensions/style/index.d.ts +5 -1
  1266. package/extensions/style/index.js +4 -1
  1267. package/extensions/style/index.js.map +1 -1
  1268. package/fragments/drawer-list/DrawerListProvider.js +2 -0
  1269. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  1270. package/fragments/scroll-view/ScrollView.js +2 -0
  1271. package/fragments/scroll-view/ScrollView.js.map +1 -1
  1272. package/icons/dnb/icons-meta.json +2 -2
  1273. package/icons/icons-meta.json +2 -2
  1274. package/package.json +1 -1
  1275. package/shared/Eufemia.d.ts +1 -1
  1276. package/shared/Eufemia.js +2 -2
  1277. package/shared/Eufemia.js.map +1 -1
  1278. package/shared/MediaQuery.js +2 -0
  1279. package/shared/MediaQuery.js.map +1 -1
  1280. package/shared/Provider.js +2 -0
  1281. package/shared/Provider.js.map +1 -1
  1282. package/shared/Theme.js +2 -0
  1283. package/shared/Theme.js.map +1 -1
  1284. package/shared/VisibilityByTheme.js +2 -0
  1285. package/shared/VisibilityByTheme.js.map +1 -1
  1286. package/shared/helpers/filterValidProps.d.ts +3 -7
  1287. package/shared/helpers/filterValidProps.js +9 -3
  1288. package/shared/helpers/filterValidProps.js.map +1 -1
  1289. package/shared/helpers/withCamelCaseProps.d.ts +1 -0
  1290. package/shared/helpers/withCamelCaseProps.js +6 -5
  1291. package/shared/helpers/withCamelCaseProps.js.map +1 -1
  1292. package/shared/helpers/withSnakeCaseProps.js +5 -4
  1293. package/shared/helpers/withSnakeCaseProps.js.map +1 -1
  1294. package/shared/index.js +2 -0
  1295. package/shared/index.js.map +1 -1
  1296. package/shared/locales/en-GB.d.ts +12 -1
  1297. package/shared/locales/en-GB.js +16 -5
  1298. package/shared/locales/en-GB.js.map +1 -1
  1299. package/shared/locales/en-US.d.ts +12 -1
  1300. package/shared/locales/index.d.ts +24 -2
  1301. package/shared/locales/nb-NO.d.ts +12 -1
  1302. package/shared/locales/nb-NO.js +16 -5
  1303. package/shared/locales/nb-NO.js.map +1 -1
  1304. package/shared/useMedia.js +2 -0
  1305. package/shared/useMedia.js.map +1 -1
  1306. package/shared/useMediaQuery.js +2 -0
  1307. package/shared/useMediaQuery.js.map +1 -1
  1308. package/shared/useTheme.js +2 -0
  1309. package/shared/useTheme.js.map +1 -1
  1310. package/shared/useTranslation.js +2 -0
  1311. package/shared/useTranslation.js.map +1 -1
  1312. package/style/core/utilities.scss +1 -1
  1313. package/style/dnb-ui-components.css +666 -106
  1314. package/style/dnb-ui-components.min.css +6 -4
  1315. package/style/dnb-ui-components.scss +2 -1
  1316. package/style/dnb-ui-elements.css +19 -26
  1317. package/style/dnb-ui-elements.min.css +1 -1
  1318. package/style/dnb-ui-extensions.css +101 -116
  1319. package/style/dnb-ui-extensions.min.css +1 -1
  1320. package/style/dnb-ui-forms.css +243 -0
  1321. package/style/dnb-ui-forms.min.css +1 -0
  1322. package/style/dnb-ui-forms.scss +19 -0
  1323. package/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -26
  1324. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1325. package/style/themes/theme-eiendom/eiendom-theme-components.css +1164 -450
  1326. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
  1327. package/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  1328. package/style/themes/theme-eiendom/eiendom-theme-elements.css +19 -26
  1329. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  1330. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +101 -116
  1331. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1332. package/style/themes/theme-eiendom/eiendom-theme-forms.css +252 -0
  1333. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
  1334. package/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
  1335. package/style/themes/theme-sbanken/sbanken-theme-basis.css +19 -26
  1336. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1337. package/style/themes/theme-sbanken/sbanken-theme-components.css +1311 -655
  1338. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +16 -8
  1339. package/style/themes/theme-sbanken/sbanken-theme-components.scss +5 -4
  1340. package/style/themes/theme-sbanken/sbanken-theme-elements.css +19 -26
  1341. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  1342. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +101 -116
  1343. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1344. package/style/themes/theme-sbanken/sbanken-theme-forms.css +252 -0
  1345. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
  1346. package/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
  1347. package/style/themes/theme-ui/ui-theme-basis.css +19 -26
  1348. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1349. package/style/themes/theme-ui/ui-theme-components.css +1164 -450
  1350. package/style/themes/theme-ui/ui-theme-components.min.css +35 -7
  1351. package/style/themes/theme-ui/ui-theme-components.scss +1 -0
  1352. package/style/themes/theme-ui/ui-theme-elements.css +19 -26
  1353. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1354. package/style/themes/theme-ui/ui-theme-extensions.css +101 -116
  1355. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1356. package/style/themes/theme-ui/ui-theme-forms.css +252 -0
  1357. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
  1358. package/style/themes/theme-ui/ui-theme-forms.scss +15 -0
  1359. package/style/themes/theme-ui/ui-theme-tags.css +8 -7
  1360. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1361. package/umd/dnb-ui-basis.min.js +1 -1
  1362. package/umd/dnb-ui-components.min.js +1 -1
  1363. package/umd/dnb-ui-elements.min.js +1 -1
  1364. package/umd/dnb-ui-extensions.min.js +3 -3
  1365. package/umd/dnb-ui-lib.min.js +1 -1
  1366. package/cjs/components/button/style/dnb-button--tertiary.css +0 -216
  1367. package/cjs/components/button/style/dnb-button--tertiary.min.css +0 -5
  1368. package/cjs/extensions/forms/Field/style/dnb-forms-field.css +0 -80
  1369. package/cjs/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
  1370. package/cjs/extensions/forms/Field/style/dnb-forms-field.scss +0 -4
  1371. package/cjs/extensions/forms/Form/style/dnb-forms-form.css +0 -33
  1372. package/cjs/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
  1373. package/cjs/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
  1374. package/cjs/extensions/forms/Form/style/index.d.ts +0 -5
  1375. package/cjs/extensions/forms/Form/style/index.js +0 -4
  1376. package/cjs/extensions/forms/Form/style/index.js.map +0 -1
  1377. package/cjs/extensions/forms/StepsLayout/style/index.scss +0 -1
  1378. package/cjs/extensions/forms/ValueBlock/style/index.scss +0 -1
  1379. package/cjs/extensions/forms/style/index.d.ts +0 -1
  1380. package/cjs/extensions/forms/style/index.js +0 -4
  1381. package/cjs/extensions/forms/style/index.js.map +0 -1
  1382. package/components/button/style/dnb-button--tertiary.css +0 -216
  1383. package/components/button/style/dnb-button--tertiary.min.css +0 -5
  1384. package/es/components/button/style/dnb-button--tertiary.css +0 -216
  1385. package/es/components/button/style/dnb-button--tertiary.min.css +0 -5
  1386. package/es/extensions/forms/Field/style/dnb-forms-field.css +0 -80
  1387. package/es/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
  1388. package/es/extensions/forms/Field/style/dnb-forms-field.scss +0 -4
  1389. package/es/extensions/forms/Form/style/dnb-forms-form.css +0 -33
  1390. package/es/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
  1391. package/es/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
  1392. package/es/extensions/forms/Form/style/index.d.ts +0 -5
  1393. package/es/extensions/forms/Form/style/index.js +0 -1
  1394. package/es/extensions/forms/Form/style/index.js.map +0 -1
  1395. package/es/extensions/forms/StepsLayout/style/index.scss +0 -1
  1396. package/es/extensions/forms/ValueBlock/style/index.scss +0 -1
  1397. package/es/extensions/forms/style/index.d.ts +0 -1
  1398. package/es/extensions/forms/style/index.js +0 -1
  1399. package/es/extensions/forms/style/index.js.map +0 -1
  1400. package/extensions/forms/Field/style/dnb-forms-field.css +0 -80
  1401. package/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
  1402. package/extensions/forms/Field/style/dnb-forms-field.scss +0 -4
  1403. package/extensions/forms/Form/style/dnb-forms-form.css +0 -33
  1404. package/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
  1405. package/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
  1406. package/extensions/forms/Form/style/index.d.ts +0 -5
  1407. package/extensions/forms/Form/style/index.js +0 -1
  1408. package/extensions/forms/Form/style/index.js.map +0 -1
  1409. package/extensions/forms/StepsLayout/style/index.scss +0 -1
  1410. package/extensions/forms/ValueBlock/style/index.scss +0 -1
  1411. package/extensions/forms/style/index.d.ts +0 -1
  1412. package/extensions/forms/style/index.js +0 -1
  1413. package/extensions/forms/style/index.js.map +0 -1
  1414. /package/cjs/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
  1415. /package/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
  1416. /package/es/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Autocomplete.js","names":["React","PropTypes","classnames","keycode","warn","isTrue","isTouchDevice","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","dispatchCustomElementEvent","getStatusState","combineDescribedBy","convertJsxToString","escapeRegexChars","getPreviousSibling","IS_MAC","IS_WIN","IS_EDGE","debounce","hasSelectedText","AlignmentHelper","spacingPropTypes","createSpacingClasses","pickFormElementProps","Suffix","FormLabel","FormStatus","IconPrimary","Input","SubmitButton","ProgressIndicator","DrawerList","ItemContent","DrawerListContext","DrawerListProvider","drawerListPropTypes","parseContentTitle","getCurrentData","getCurrentIndex","Autocomplete","PureComponent","constructor","props","_id","id","render","createElement","_extends","data","children","opened","tagName","ignore_events","prevent_focus","skip_keysearch","AutocompleteInstance","_defineProperty","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_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","value","input_value","open_on_focus","prevent_close","keep_open","disabled","stretch","skeleton","portal_class","drawer_class","page_offset","observer_element","enable_body_lock","class","className","ariaLiveDelay","on_show","on_hide","on_type","on_focus","on_blur","on_change","on_select","on_state_update","input_element","process","env","NODE_ENV","propTypes","_objectSpread","string","oneOf","oneOfType","node","func","object","bool","shape","message","number","arrayOf","selectedKey","selected_key","selected_value","suffix_value","content","array","parseDataItem","dataItem","searchWord","search_content","separator","Array","isArray","createSearchIndex","map","contentChunk","getCurrentDataTitle","selected_item","currentData","preferSelectedValue","getDerivedStateFromProps","state","_listenForPropChanges","disableHighlighting","inputValue","length","prevData","updateData","context","args","onStateComplete","drawerList","setWrapperElement","_ref","current","setVisible","setHidden","hasFilter","hidden","isOpen","setVisibleByContext","toggleVisible","isVisible","_refUl","focus","preventScroll","e","options","skipFilter","showAllNextTime","setState","runFilterToHighlight","fillDataIfEmpty","event","typedInputValue","getEventObjects","String","trim","runFilterWithSideEffects","runFilter","count","countData","showNoOptionsItem","setData","wrapWithShowAll","cache_hash","active_item","__id","totalReset","resetSelectedItem","showAllItems","setAriaLiveUpdate","_objectWithoutProperties","_excluded","possibleTitle","original_data","hasFilterActive","lastItem","slice","lastActiveItem","push","class_name","Fragment","_IconPrimary","_props","_cacheMemory","setSearchIndex","overwriteSearchIndex","resetActiveItem","overwriteOriginalData","ignoreEvents","visibleIndicator","rawData","parseFloat","newItem","oldItem","hasChanged","hasDatasetChanged","revalidateSelectedItem","newData","filteredData","key","preventDefault","target","skipFocusDuringChange","hasFocus","showAll","hasBlur","__preventFiringBlurEvent","hasFocusOnElement","existingValue","clearInputValue","resetAfterClose","hasSelectedItem","resetFilter","clearTimeout","_blurTimeout","setTimeout","blurDelay","_refInput","hasValidData","hasActiveItem","_toggleVisibleTimeout","attributes","dataList","emptyData","setInputValue","showIndicatorItem","showIndicator","hideIndicator","setMode","wait","dbf","hasInjectedDataItem","first","includes","showAllTimeout","setActiveItemAndScrollToIt","scrollTo","hasHadValue","_selectTimeout","searchIndex","searchNumbers","inWordIndex","skipReorder","searchWords","split","filter","Boolean","wordCond","findSearchWords","word","wordIndex","replace","regexWord","RegExp","test","wordScore","match","isFirstWord","strS","strE","tagS","tagE","item","i","listOfFoundWords","_children2","_children2$props","cacheHash","isComponent","isValidElement","originalChild","segment","idx","forEach","char","result","__html","dangerouslySetInnerHTML","_originalChild$props","Comp","cloneElement","totalScore","sort","a","b","res","setFocusOnInput","current_title","createRef","_refShell","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","_ariaLiveUpdateTimeout","_focusTimeout","cb","newString","ariaLiveUpdate","getVoiceOverActiveItem","currentDataItem","_this$context","_this$context2","defaultProps","getTranslation","FormRow","formElement","fixed_position","CustomInput","_className","independent_width","_mode","_data","_children","_direction","_opened","_value","_input_value","_excluded2","showStatus","isExpanded","onBlur","Object","assign","mainParams","shellParams","ref","onKeyDown","onShellKeyDownHandler","inputParams","autoCapitalize","spellCheck","autoCorrect","autoComplete","role","onMouseDown","onInputClickHandler","onInputKeyDownHandler","onChange","onInputChangeHandler","onFocus","onInputFocusHandler","onBlurHandler","inner_ref","undefined","submitButton","triggerParams","onTriggerKeyDownHandler","onSubmit","tooltip","variant","type","innerId","for_id","text","sr_only","onClick","_AlignmentHelper","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","onReserveActivityHandler","HorizontalItem","_supportsSpacingProps"],"sources":["../../../../src/components/autocomplete/Autocomplete.js"],"sourcesContent":["/**\n * Web Autocomplete Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\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} 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 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, {\n ItemContent,\n} from '../../fragments/drawer-list/DrawerList'\nimport DrawerListContext from '../../fragments/drawer-list/DrawerListContext'\nimport DrawerListProvider from '../../fragments/drawer-list/DrawerListProvider'\nimport {\n drawerListPropTypes,\n parseContentTitle,\n getCurrentData,\n getCurrentIndex,\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_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 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 /**\n * For internal use\n */\n ariaLiveDelay: PropTypes.number,\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_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 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 class: null,\n className: null,\n children: null,\n\n ariaLiveDelay: 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\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 typeof state.inputValue === 'undefined' &&\n props.input_value &&\n props.input_value.length > 0\n ) {\n state.inputValue = props.input_value\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.value !== this.props.value) {\n // Ensure we run getCurrentDataTitle after also data has been update,\n // in case data has changed\n this.setState({}, () => {\n const inputValue = AutocompleteInstance.getCurrentDataTitle(\n this.context.drawerList.selected_item,\n this.context.drawerList.original_data\n )\n this.setState({\n inputValue,\n })\n })\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._selectTimeout)\n clearTimeout(this._ariaLiveUpdateTimeout)\n clearTimeout(this._focusTimeout)\n clearTimeout(this._blurTimeout)\n clearTimeout(this._toggleVisibleTimeout)\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 }\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 try {\n this.context.drawerList._refUl.current.focus({\n preventScroll: true,\n })\n } catch (e) {\n // do nothing\n }\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 }, options = {}) => {\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, options)\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 if (value && value.length > 0) {\n // show the \"no_options\" message\n if (count === 0) {\n if (this.state.mode !== 'async') {\n this.showNoOptionsItem()\n }\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(this.props.keep_value) &&\n !isTrue(this.props.keep_value_and_selection)\n ) {\n // this will not remove selected_item\n this.totalReset()\n }\n\n if (isTrue(this.props.keep_value)) {\n this.resetSelectedItem()\n }\n\n this.showAllItems()\n }\n\n this.setVisible()\n this.setAriaLiveUpdate()\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 this.setAriaLiveUpdate()\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.setState({\n inputValue: '',\n typedInputValue: null,\n _listenForPropChanges: false,\n })\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 showNoOptionsItem = () => {\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 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 } 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 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\n onInputClickHandler = (e) => {\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)) {\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 onReserveActivityHandler = (event) => {\n // Prevent to happen the on_blur event during drawer-list activity\n this.__preventFiringBlurEvent =\n event.key === 'enter' ||\n event.key === 'space' ||\n (event.target && getPreviousSibling('dnb-drawer-list', event.target))\n }\n\n onBlurHandler = (event) => {\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 if (\n !this.state.hasBlur &&\n !this.__preventFiringBlurEvent &&\n !this.context.drawerList.hasFocusOnElement\n ) {\n dispatchCustomElementEvent(this, 'on_blur', {\n event,\n ...this.getEventObjects('on_blur'),\n })\n\n this.setState({\n hasBlur: true,\n hasFocus: false,\n })\n\n if (!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 this.clearInputValue()\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 } else if (this.__preventFiringBlurEvent) {\n this.__preventFiringBlurEvent = null\n return false\n }\n }\n\n onTriggerKeyDownHandler = (e) => {\n const key = keycode(e)\n\n switch (key) {\n case 'space':\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 try {\n this._refInput.current._ref.current.focus()\n } catch (e) {\n warn(e)\n }\n }\n break\n }\n }\n\n onShellKeyDownHandler = (e) => {\n const key = keycode(e)\n\n switch (key) {\n case 'up':\n case 'down':\n if (!this.context.drawerList.opened) {\n e.preventDefault()\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 if (\n (!this.hasValidData() || !this.hasSelectedItem()) &&\n !this.hasActiveItem()\n ) {\n clearTimeout(this._toggleVisibleTimeout)\n this._toggleVisibleTimeout = setTimeout(this.toggleVisible, 1) // to make sure we first handle the DrawerList key enter, before we update the state with a toggle/visible. Else the submit is not set properly\n } else {\n this.setVisible()\n }\n\n break\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 resetSelectedItem: this.resetSelectedItem,\n showAllItems: this.showAllItems,\n setVisible: this.setVisible,\n setHidden: this.setHidden,\n emptyData: this.emptyData,\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 clearInputValue = () => {\n const { input_value, keep_value } = this.props\n\n const inputValue = AutocompleteInstance.getCurrentDataTitle(\n this.context.drawerList.selected_item,\n this.context.drawerList.original_data\n )\n\n clearTimeout(this._selectTimeout)\n this._selectTimeout = setTimeout(() => {\n if (this.hasSelectedItem()) {\n this.setState({\n inputValue,\n _listenForPropChanges: false,\n })\n } else if (\n !(input_value !== 'initval' && input_value.length > 0) &&\n !isTrue(keep_value)\n ) {\n this.setState({\n inputValue: '',\n _listenForPropChanges: false,\n })\n }\n }, 1) // to make sure we actually are after the Input state handling -> \"input placeholder reset\"\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 // [cc, bb]\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(/[^\\d\\w]/g, '')\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 (/[\\d\\w]/.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 try {\n this._refInput.current._ref.current.focus({\n preventScroll: true,\n })\n } catch (e) {\n // do nothing\n }\n clearTimeout(this._focusTimeout)\n this._focusTimeout = setTimeout(() => {\n this.setState({\n hasFocus: false,\n })\n }, 1) // we have to wait in order to make sure the focus situation is cleared up\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 try {\n this.context.drawerList._refUl.current.focus({\n preventScroll: true,\n })\n } catch (e) {\n // do nothing\n }\n\n this.setState(\n {\n inputValue: AutocompleteInstance.getCurrentDataTitle(\n selected_item,\n this.context.drawerList.data\n ),\n skipFocusDuringChange: false,\n _listenForPropChanges: false,\n },\n () => this.setFocusOnInput()\n )\n } else {\n this.setState({\n inputValue: AutocompleteInstance.getCurrentDataTitle(\n selected_item,\n this.context.drawerList.data\n ),\n _listenForPropChanges: false,\n })\n }\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 setAriaLiveUpdate() {\n const { opened } = this.context.drawerList\n const {\n aria_live_options,\n no_options,\n ariaLiveDelay = 1000,\n } = this._props\n\n // this is only to make a better screen reader ux\n clearTimeout(this._ariaLiveUpdateTimeout)\n if (opened) {\n this._ariaLiveUpdateTimeout = setTimeout(() => {\n let newString = null\n\n const count = this.countData()\n\n if (count > 0) {\n newString = String(aria_live_options).replace('%s', count)\n } else {\n newString = no_options\n }\n\n if (newString) {\n this.setState({\n ariaLiveUpdate: newString,\n _listenForPropChanges: false,\n })\n this._ariaLiveUpdateTimeout = setTimeout(() => {\n this.setState({\n ariaLiveUpdate: null,\n _listenForPropChanges: false,\n })\n }, 1000)\n }\n }, ariaLiveDelay) // so that the input gets read out first, and then the results\n }\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 <span\n hidden={!IS_MAC}\n className=\"dnb-sr-only\"\n aria-live=\"assertive\"\n aria-atomic\n >\n {currentDataItem && (\n <>\n {active_item === selected_item ? <>{selected_sr} </> : null}\n <ItemContent>{currentDataItem}</ItemContent>\n </>\n )}\n </span>\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 class: _className,\n disabled,\n stretch,\n skeleton,\n triangle_position,\n icon_position,\n skip_portal,\n independent_width,\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 ariaLiveDelay, // eslint-disable-line\n\n ...attributes\n } = props\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const { inputValue, visibleIndicator, ariaLiveUpdate } = 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 className\n ),\n }\n\n const shellParams = {\n className: 'dnb-autocomplete__shell dnb-no-focus',\n ref: this._refShell,\n onKeyDown: this.onShellKeyDownHandler,\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: 'off',\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': `${id}-ul`,\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 (!hidden) {\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 '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 for_id={id}\n text={label}\n label_direction={label_direction}\n sr_only={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.onReserveActivityHandler}\n onMouseDown={this.onReserveActivityHandler}\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 <span className=\"dnb-sr-only\" aria-live=\"assertive\">\n {ariaLiveUpdate}\n </span>\n </span>\n )\n }\n}\n\nAutocomplete.HorizontalItem = DrawerList.HorizontalItem\n\nAutocomplete._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"Autocomplete.js","names":["React","PropTypes","classnames","keycode","warn","isTrue","isTouchDevice","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","dispatchCustomElementEvent","getStatusState","combineDescribedBy","convertJsxToString","escapeRegexChars","getPreviousSibling","IS_MAC","IS_WIN","IS_EDGE","debounce","hasSelectedText","AlignmentHelper","spacingPropTypes","createSpacingClasses","pickFormElementProps","Suffix","FormLabel","FormStatus","IconPrimary","Input","SubmitButton","ProgressIndicator","DrawerList","ItemContent","DrawerListContext","DrawerListProvider","drawerListPropTypes","parseContentTitle","getCurrentData","getCurrentIndex","Autocomplete","PureComponent","constructor","props","_id","id","render","createElement","_extends","data","children","opened","tagName","ignore_events","prevent_focus","skip_keysearch","AutocompleteInstance","_defineProperty","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","value","input_value","open_on_focus","prevent_close","keep_open","disabled","stretch","skeleton","portal_class","drawer_class","page_offset","observer_element","enable_body_lock","class","className","ariaLiveDelay","on_show","on_hide","on_type","on_focus","on_blur","on_change","on_select","on_state_update","input_element","process","env","NODE_ENV","propTypes","_objectSpread","string","oneOf","oneOfType","node","func","object","bool","shape","message","number","arrayOf","selectedKey","selected_key","selected_value","suffix_value","content","array","parseDataItem","dataItem","searchWord","search_content","separator","Array","isArray","createSearchIndex","map","contentChunk","getCurrentDataTitle","selected_item","currentData","preferSelectedValue","getDerivedStateFromProps","state","_listenForPropChanges","_props$input_value","disableHighlighting","inputValue","length","prevData","updateData","context","args","onStateComplete","drawerList","setWrapperElement","_ref","current","setVisible","setHidden","setState","hasFocus","hasBlur","hasFilter","hidden","isOpen","setVisibleByContext","toggleVisible","isVisible","focusDrawerList","options","skipFilter","showAllNextTime","runFilterToHighlight","fillDataIfEmpty","event","typedInputValue","getEventObjects","String","trim","runFilterWithSideEffects","runFilter","count","countData","showNoOptionsItem","setData","wrapWithShowAll","cache_hash","active_item","__id","totalReset","resetSelectedItem","showAllItems","setAriaLiveUpdate","_objectWithoutProperties","_excluded","possibleTitle","original_data","hasFilterActive","lastItem","slice","lastActiveItem","push","class_name","Fragment","_IconPrimary","_props","_cacheMemory","clearInputValue","setSearchIndex","overwriteSearchIndex","resetActiveItem","overwriteOriginalData","clearTimeout","_selectTimeout","setTimeout","hasSelectedItem","setInputValue","ignoreEvents","visibleIndicator","rawData","parseFloat","newItem","oldItem","hasChanged","hasDatasetChanged","revalidateSelectedItem","revalidateInputValue","newData","filteredData","e","key","preventDefault","showAll","hasValidData","hasActiveItem","target","skipFocusDuringChange","__preventFiringBlurEvent","Boolean","currentTarget","blurDelay","hasFocusOnElement","existingValue","resetInputValue","resetAfterClose","resetFilter","_blurTimeout","focusInput","_refUl","focus","preventScroll","_refInput","attributes","dataList","emptyData","showIndicatorItem","showIndicator","hideIndicator","setMode","wait","dbf","hasInjectedDataItem","first","includes","showAllTimeout","setActiveItemAndScrollToIt","scrollTo","hasHadValue","searchIndex","searchNumbers","inWordIndex","skipReorder","searchWords","split","filter","wordCond","findSearchWords","word","wordIndex","replace","regexWord","RegExp","test","wordScore","match","isFirstWord","strS","strE","tagS","tagE","item","i","listOfFoundWords","_children2","_children2$props","cacheHash","isComponent","isValidElement","originalChild","segment","idx","forEach","char","result","__html","dangerouslySetInnerHTML","_originalChild$props","Comp","cloneElement","totalScore","sort","a","b","res","setFocusOnInput","current_title","createRef","_refShell","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","_ariaLiveUpdateTimeout","_focusTimeout","cb","newString","ariaLiveUpdate","getVoiceOverActiveItem","currentDataItem","_this$context","_this$context2","defaultProps","getTranslation","FormRow","formElement","fixed_position","CustomInput","_className","independent_width","_mode","_data","_children","_direction","_opened","_value","_input_value","_excluded2","showStatus","isExpanded","onBlur","Object","assign","mainParams","shellParams","ref","inputParams","autoCapitalize","spellCheck","autoCorrect","autoComplete","role","onMouseDown","onInputClickHandler","onKeyDown","onInputKeyDownHandler","onChange","onInputChangeHandler","onFocus","onInputFocusHandler","onBlurHandler","inner_ref","undefined","submitButton","triggerParams","onTriggerKeyDownHandler","onSubmit","reserveActivityHandler","tooltip","variant","type","innerId","for_id","text","sr_only","onClick","_AlignmentHelper","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","HorizontalItem","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/autocomplete/Autocomplete.js"],"sourcesContent":["/**\n * Web Autocomplete Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\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} 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 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, {\n ItemContent,\n} from '../../fragments/drawer-list/DrawerList'\nimport DrawerListContext from '../../fragments/drawer-list/DrawerListContext'\nimport DrawerListProvider from '../../fragments/drawer-list/DrawerListProvider'\nimport {\n drawerListPropTypes,\n parseContentTitle,\n getCurrentData,\n getCurrentIndex,\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 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 /**\n * For internal use\n */\n ariaLiveDelay: PropTypes.number,\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 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 class: null,\n className: null,\n children: null,\n\n ariaLiveDelay: 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\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 typeof state.inputValue === 'undefined' &&\n props.input_value?.length > 0\n ) {\n state.inputValue = props.input_value\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.value !== this.props.value) {\n this.revalidateSelectedItem()\n this.revalidateInputValue()\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._selectTimeout)\n clearTimeout(this._ariaLiveUpdateTimeout)\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 && 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 this.setAriaLiveUpdate()\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 this.setAriaLiveUpdate()\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 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)) {\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 // [cc, bb]\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(/[^\\d\\w]/g, '')\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 (/[\\d\\w]/.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 setAriaLiveUpdate() {\n const { opened } = this.context.drawerList\n const {\n aria_live_options,\n no_options,\n ariaLiveDelay = 1000,\n } = this._props\n\n // this is only to make a better screen reader ux\n clearTimeout(this._ariaLiveUpdateTimeout)\n if (opened) {\n this._ariaLiveUpdateTimeout = setTimeout(() => {\n let newString = null\n\n const count = this.countData()\n\n if (count > 0) {\n newString = String(aria_live_options).replace('%s', count)\n } else {\n newString = no_options\n }\n\n if (newString) {\n this.setState({\n ariaLiveUpdate: newString,\n _listenForPropChanges: false,\n })\n this._ariaLiveUpdateTimeout = setTimeout(() => {\n this.setState({\n ariaLiveUpdate: null,\n _listenForPropChanges: false,\n })\n }, 1000)\n }\n }, ariaLiveDelay) // so that the input gets read out first, and then the results\n }\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 <span\n hidden={!IS_MAC}\n className=\"dnb-sr-only\"\n aria-live=\"assertive\"\n aria-atomic\n >\n {currentDataItem && (\n <>\n {active_item === selected_item ? <>{selected_sr} </> : null}\n <ItemContent>{currentDataItem}</ItemContent>\n </>\n )}\n </span>\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 class: _className,\n disabled,\n stretch,\n skeleton,\n triangle_position,\n icon_position,\n skip_portal,\n independent_width,\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 ariaLiveDelay, // eslint-disable-line\n\n ...attributes\n } = props\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const { inputValue, visibleIndicator, ariaLiveUpdate } = 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 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: 'off',\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': `${id}-ul`,\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 (!hidden) {\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 for_id={id}\n text={label}\n label_direction={label_direction}\n sr_only={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 <span className=\"dnb-sr-only\" aria-live=\"assertive\">\n {ariaLiveUpdate}\n </span>\n </span>\n )\n }\n}\n\nAutocomplete.HorizontalItem = DrawerList.HorizontalItem\nAutocomplete._formElement = true\nAutocomplete._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ "use client";
2
+
1
3
  import _extends from "@babel/runtime/helpers/esm/extends";
2
4
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
5
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";