@dnb/eufemia 10.73.2 → 10.74.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 (624) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/cjs/components/autocomplete/Autocomplete.js +7 -4
  3. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  4. package/cjs/components/autocomplete/AutocompleteDocs.d.ts +289 -3
  5. package/cjs/components/autocomplete/AutocompleteDocs.js +2 -2
  6. package/cjs/components/autocomplete/AutocompleteDocs.js.map +1 -1
  7. package/cjs/components/button/style/dnb-button.css +1 -0
  8. package/cjs/components/button/style/dnb-button.min.css +1 -1
  9. package/cjs/components/button/style/dnb-button.scss +1 -0
  10. package/cjs/components/checkbox/Checkbox.d.ts +9 -1
  11. package/cjs/components/checkbox/Checkbox.js +59 -34
  12. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  13. package/cjs/components/checkbox/CheckboxDocs.js +6 -1
  14. package/cjs/components/checkbox/CheckboxDocs.js.map +1 -1
  15. package/cjs/components/date-picker/DatePicker.d.ts +4 -0
  16. package/cjs/components/date-picker/DatePicker.js +4 -3
  17. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  18. package/cjs/components/date-picker/DatePickerCalendar.d.ts +2 -16
  19. package/cjs/components/date-picker/DatePickerCalendar.js +27 -86
  20. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  21. package/cjs/components/date-picker/DatePickerCalendarNavigator.d.ts +37 -0
  22. package/cjs/components/date-picker/DatePickerCalendarNavigator.js +173 -0
  23. package/cjs/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
  24. package/cjs/components/date-picker/DatePickerContext.d.ts +3 -0
  25. package/cjs/components/date-picker/DatePickerContext.js.map +1 -1
  26. package/cjs/components/date-picker/DatePickerDocs.js +6 -1
  27. package/cjs/components/date-picker/DatePickerDocs.js.map +1 -1
  28. package/cjs/components/date-picker/DatePickerFooter.js +20 -17
  29. package/cjs/components/date-picker/DatePickerFooter.js.map +1 -1
  30. package/cjs/components/date-picker/DatePickerProvider.js +7 -0
  31. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  32. package/cjs/components/date-picker/DatePickerRange.js +2 -28
  33. package/cjs/components/date-picker/DatePickerRange.js.map +1 -1
  34. package/cjs/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
  35. package/cjs/components/date-picker/hooks/useSubmittedDates.js +19 -0
  36. package/cjs/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
  37. package/cjs/components/date-picker/style/dnb-date-picker.css +1 -1
  38. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  39. package/cjs/components/date-picker/style/dnb-date-picker.scss +1 -1
  40. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +17 -0
  41. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  42. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +19 -0
  43. package/cjs/components/drawer/Drawer.js +1 -0
  44. package/cjs/components/drawer/Drawer.js.map +1 -1
  45. package/cjs/components/dropdown/Dropdown.js +6 -4
  46. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  47. package/cjs/components/dropdown/DropdownDocs.d.ts +179 -3
  48. package/cjs/components/dropdown/DropdownDocs.js.map +1 -1
  49. package/cjs/components/heading/HeadingHelpers.js +9 -5
  50. package/cjs/components/heading/HeadingHelpers.js.map +1 -1
  51. package/cjs/components/icon/Icon.d.ts +2 -2
  52. package/cjs/components/input-masked/InputMaskedDocs.js +1 -1
  53. package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -1
  54. package/cjs/components/input-masked/InputMaskedHooks.d.ts +1 -0
  55. package/cjs/components/input-masked/InputMaskedHooks.js +38 -6
  56. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  57. package/cjs/components/input-masked/InputMaskedUtils.js +5 -4
  58. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  59. package/cjs/components/number-format/NumberUtils.js +6 -4
  60. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  61. package/cjs/components/switch/SwitchDocs.js +2 -2
  62. package/cjs/components/switch/SwitchDocs.js.map +1 -1
  63. package/cjs/extensions/forms/DataContext/Context.d.ts +1 -1
  64. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  65. package/cjs/extensions/forms/DataContext/Provider/Provider.js +9 -0
  66. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  67. package/cjs/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
  68. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  69. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
  70. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js +8 -1
  71. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  72. package/cjs/extensions/forms/Field/Date/Date.d.ts +1 -1
  73. package/cjs/extensions/forms/Field/Date/Date.js +1 -1
  74. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  75. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  76. package/cjs/extensions/forms/Field/Number/NumberDocs.js +1 -1
  77. package/cjs/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  78. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  79. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +2 -2
  80. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  81. package/cjs/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +2 -2
  82. package/cjs/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
  83. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +2 -0
  84. package/cjs/extensions/forms/Field/Selection/Selection.js +10 -9
  85. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  86. package/cjs/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
  87. package/cjs/extensions/forms/Field/Toggle/Toggle.js +24 -8
  88. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  89. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
  90. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js +8 -1
  91. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  92. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
  93. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js +64 -0
  94. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
  95. package/cjs/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
  96. package/cjs/extensions/forms/Form/Isolation/Isolation.js +39 -14
  97. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  98. package/cjs/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
  99. package/cjs/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
  100. package/cjs/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
  101. package/cjs/extensions/forms/Form/Isolation/IsolationContext.js +11 -0
  102. package/cjs/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
  103. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
  104. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js +31 -0
  105. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
  106. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
  107. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  108. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
  109. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js +112 -0
  110. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
  111. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
  112. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js +58 -0
  113. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
  114. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
  115. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js +57 -0
  116. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
  117. package/cjs/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +11 -9
  118. package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
  119. package/cjs/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
  120. package/cjs/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
  121. package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
  122. package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  123. package/cjs/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
  124. package/cjs/extensions/forms/Iterate/EditContainer/index.js +1 -1
  125. package/cjs/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  126. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
  127. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +15 -56
  128. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  129. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  130. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  131. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -1
  132. package/cjs/extensions/forms/constants/locales/en-GB.js +3 -3
  133. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  134. package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -1
  135. package/cjs/extensions/forms/constants/locales/index.d.ts +2 -2
  136. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -1
  137. package/cjs/extensions/forms/constants/locales/nb-NO.js +3 -3
  138. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  139. package/cjs/extensions/forms/constants/locales/sv-SE.d.ts +1 -1
  140. package/cjs/extensions/forms/constants/locales/sv-SE.js +3 -3
  141. package/cjs/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  142. package/cjs/extensions/forms/hooks/useDataContext.js +5 -3
  143. package/cjs/extensions/forms/hooks/useDataContext.js.map +1 -1
  144. package/cjs/extensions/forms/hooks/useSnapshot.js +17 -14
  145. package/cjs/extensions/forms/hooks/useSnapshot.js.map +1 -1
  146. package/cjs/fragments/drawer-list/DrawerList.d.ts +176 -224
  147. package/cjs/fragments/drawer-list/DrawerList.js +70 -175
  148. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  149. package/cjs/fragments/drawer-list/DrawerListContext.d.ts +27 -2
  150. package/cjs/fragments/drawer-list/DrawerListContext.js.map +1 -1
  151. package/cjs/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
  152. package/cjs/fragments/drawer-list/DrawerListDocs.js +2 -2
  153. package/cjs/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  154. package/cjs/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
  155. package/cjs/fragments/drawer-list/DrawerListHelpers.js +52 -58
  156. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  157. package/cjs/fragments/drawer-list/DrawerListItem.d.ts +30 -0
  158. package/cjs/fragments/drawer-list/DrawerListItem.js +106 -0
  159. package/cjs/fragments/drawer-list/DrawerListItem.js.map +1 -0
  160. package/cjs/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
  161. package/cjs/fragments/drawer-list/DrawerListPortal.js +93 -125
  162. package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  163. package/cjs/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
  164. package/cjs/fragments/drawer-list/DrawerListProvider.js +11 -18
  165. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  166. package/cjs/shared/Eufemia.d.ts +1 -1
  167. package/cjs/shared/Eufemia.js +2 -2
  168. package/cjs/shared/Eufemia.js.map +1 -1
  169. package/cjs/shared/component-helper.d.ts +45 -48
  170. package/cjs/shared/component-helper.js +72 -201
  171. package/cjs/shared/component-helper.js.map +1 -1
  172. package/cjs/shared/helpers/withCamelCaseProps.d.ts +4 -5
  173. package/cjs/shared/helpers/withCamelCaseProps.js +7 -2
  174. package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
  175. package/cjs/shared/legacy/component-helper-legacy.d.ts +19 -0
  176. package/cjs/shared/legacy/component-helper-legacy.js +202 -0
  177. package/cjs/shared/legacy/component-helper-legacy.js.map +1 -0
  178. package/cjs/shared/locales/en-GB.d.ts +1 -0
  179. package/cjs/shared/locales/en-GB.js +1 -0
  180. package/cjs/shared/locales/en-GB.js.map +1 -1
  181. package/cjs/shared/locales/en-US.js.map +1 -1
  182. package/cjs/shared/locales/index.d.ts +2 -0
  183. package/cjs/shared/locales/nb-NO.d.ts +1 -0
  184. package/cjs/shared/locales/nb-NO.js +2 -1
  185. package/cjs/shared/locales/nb-NO.js.map +1 -1
  186. package/cjs/shared/locales/sv-SE.d.ts +1 -0
  187. package/cjs/shared/locales/sv-SE.js +1 -0
  188. package/cjs/shared/locales/sv-SE.js.map +1 -1
  189. package/cjs/style/core/scopes.scss +1 -1
  190. package/cjs/style/dnb-ui-basis.css +1 -1
  191. package/cjs/style/dnb-ui-basis.min.css +1 -1
  192. package/cjs/style/dnb-ui-body.css +1 -1
  193. package/cjs/style/dnb-ui-body.min.css +1 -1
  194. package/cjs/style/dnb-ui-components.css +2 -1
  195. package/cjs/style/dnb-ui-components.min.css +1 -1
  196. package/cjs/style/dnb-ui-core.css +1 -1
  197. package/cjs/style/dnb-ui-core.min.css +1 -1
  198. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +19 -1
  199. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  200. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +19 -1
  201. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  202. package/cjs/style/themes/theme-ui/ui-theme-components.css +19 -1
  203. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  204. package/components/autocomplete/Autocomplete.js +6 -3
  205. package/components/autocomplete/Autocomplete.js.map +1 -1
  206. package/components/autocomplete/AutocompleteDocs.d.ts +289 -3
  207. package/components/autocomplete/AutocompleteDocs.js +1 -1
  208. package/components/autocomplete/AutocompleteDocs.js.map +1 -1
  209. package/components/button/style/dnb-button.css +1 -0
  210. package/components/button/style/dnb-button.min.css +1 -1
  211. package/components/button/style/dnb-button.scss +1 -0
  212. package/components/checkbox/Checkbox.d.ts +9 -1
  213. package/components/checkbox/Checkbox.js +60 -35
  214. package/components/checkbox/Checkbox.js.map +1 -1
  215. package/components/checkbox/CheckboxDocs.js +6 -1
  216. package/components/checkbox/CheckboxDocs.js.map +1 -1
  217. package/components/date-picker/DatePicker.d.ts +4 -0
  218. package/components/date-picker/DatePicker.js +4 -3
  219. package/components/date-picker/DatePicker.js.map +1 -1
  220. package/components/date-picker/DatePickerCalendar.d.ts +2 -16
  221. package/components/date-picker/DatePickerCalendar.js +27 -86
  222. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  223. package/components/date-picker/DatePickerCalendarNavigator.d.ts +37 -0
  224. package/components/date-picker/DatePickerCalendarNavigator.js +162 -0
  225. package/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
  226. package/components/date-picker/DatePickerContext.d.ts +3 -0
  227. package/components/date-picker/DatePickerContext.js.map +1 -1
  228. package/components/date-picker/DatePickerDocs.js +6 -1
  229. package/components/date-picker/DatePickerDocs.js.map +1 -1
  230. package/components/date-picker/DatePickerFooter.js +20 -17
  231. package/components/date-picker/DatePickerFooter.js.map +1 -1
  232. package/components/date-picker/DatePickerProvider.js +7 -0
  233. package/components/date-picker/DatePickerProvider.js.map +1 -1
  234. package/components/date-picker/DatePickerRange.js +2 -28
  235. package/components/date-picker/DatePickerRange.js.map +1 -1
  236. package/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
  237. package/components/date-picker/hooks/useSubmittedDates.js +14 -0
  238. package/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
  239. package/components/date-picker/style/dnb-date-picker.css +1 -1
  240. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  241. package/components/date-picker/style/dnb-date-picker.scss +1 -1
  242. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +17 -0
  243. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  244. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +19 -0
  245. package/components/drawer/Drawer.js +1 -0
  246. package/components/drawer/Drawer.js.map +1 -1
  247. package/components/dropdown/Dropdown.js +6 -4
  248. package/components/dropdown/Dropdown.js.map +1 -1
  249. package/components/dropdown/DropdownDocs.d.ts +179 -3
  250. package/components/dropdown/DropdownDocs.js.map +1 -1
  251. package/components/heading/HeadingHelpers.js +9 -5
  252. package/components/heading/HeadingHelpers.js.map +1 -1
  253. package/components/icon/Icon.d.ts +2 -2
  254. package/components/input-masked/InputMaskedDocs.js +1 -1
  255. package/components/input-masked/InputMaskedDocs.js.map +1 -1
  256. package/components/input-masked/InputMaskedHooks.d.ts +1 -0
  257. package/components/input-masked/InputMaskedHooks.js +39 -7
  258. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  259. package/components/input-masked/InputMaskedUtils.js +6 -5
  260. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  261. package/components/number-format/NumberUtils.js +5 -4
  262. package/components/number-format/NumberUtils.js.map +1 -1
  263. package/components/switch/SwitchDocs.js +2 -2
  264. package/components/switch/SwitchDocs.js.map +1 -1
  265. package/es/components/autocomplete/Autocomplete.js +6 -3
  266. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  267. package/es/components/autocomplete/AutocompleteDocs.d.ts +289 -3
  268. package/es/components/autocomplete/AutocompleteDocs.js +1 -1
  269. package/es/components/autocomplete/AutocompleteDocs.js.map +1 -1
  270. package/es/components/button/style/dnb-button.css +1 -0
  271. package/es/components/button/style/dnb-button.min.css +1 -1
  272. package/es/components/button/style/dnb-button.scss +1 -0
  273. package/es/components/checkbox/Checkbox.d.ts +9 -1
  274. package/es/components/checkbox/Checkbox.js +60 -35
  275. package/es/components/checkbox/Checkbox.js.map +1 -1
  276. package/es/components/checkbox/CheckboxDocs.js +6 -1
  277. package/es/components/checkbox/CheckboxDocs.js.map +1 -1
  278. package/es/components/date-picker/DatePicker.d.ts +4 -0
  279. package/es/components/date-picker/DatePicker.js +4 -3
  280. package/es/components/date-picker/DatePicker.js.map +1 -1
  281. package/es/components/date-picker/DatePickerCalendar.d.ts +2 -16
  282. package/es/components/date-picker/DatePickerCalendar.js +23 -80
  283. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  284. package/es/components/date-picker/DatePickerCalendarNavigator.d.ts +37 -0
  285. package/es/components/date-picker/DatePickerCalendarNavigator.js +158 -0
  286. package/es/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
  287. package/es/components/date-picker/DatePickerContext.d.ts +3 -0
  288. package/es/components/date-picker/DatePickerContext.js.map +1 -1
  289. package/es/components/date-picker/DatePickerDocs.js +6 -1
  290. package/es/components/date-picker/DatePickerDocs.js.map +1 -1
  291. package/es/components/date-picker/DatePickerFooter.js +20 -17
  292. package/es/components/date-picker/DatePickerFooter.js.map +1 -1
  293. package/es/components/date-picker/DatePickerProvider.js +7 -0
  294. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  295. package/es/components/date-picker/DatePickerRange.js +2 -27
  296. package/es/components/date-picker/DatePickerRange.js.map +1 -1
  297. package/es/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
  298. package/es/components/date-picker/hooks/useSubmittedDates.js +14 -0
  299. package/es/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
  300. package/es/components/date-picker/style/dnb-date-picker.css +1 -1
  301. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  302. package/es/components/date-picker/style/dnb-date-picker.scss +1 -1
  303. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +17 -0
  304. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  305. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +19 -0
  306. package/es/components/drawer/Drawer.js +1 -0
  307. package/es/components/drawer/Drawer.js.map +1 -1
  308. package/es/components/dropdown/Dropdown.js +6 -4
  309. package/es/components/dropdown/Dropdown.js.map +1 -1
  310. package/es/components/dropdown/DropdownDocs.d.ts +179 -3
  311. package/es/components/dropdown/DropdownDocs.js.map +1 -1
  312. package/es/components/heading/HeadingHelpers.js +9 -5
  313. package/es/components/heading/HeadingHelpers.js.map +1 -1
  314. package/es/components/icon/Icon.d.ts +2 -2
  315. package/es/components/input-masked/InputMaskedDocs.js +1 -1
  316. package/es/components/input-masked/InputMaskedDocs.js.map +1 -1
  317. package/es/components/input-masked/InputMaskedHooks.d.ts +1 -0
  318. package/es/components/input-masked/InputMaskedHooks.js +39 -7
  319. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  320. package/es/components/input-masked/InputMaskedUtils.js +6 -5
  321. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  322. package/es/components/number-format/NumberUtils.js +5 -4
  323. package/es/components/number-format/NumberUtils.js.map +1 -1
  324. package/es/components/switch/SwitchDocs.js +2 -2
  325. package/es/components/switch/SwitchDocs.js.map +1 -1
  326. package/es/extensions/forms/DataContext/Context.d.ts +1 -1
  327. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  328. package/es/extensions/forms/DataContext/Provider/Provider.js +9 -0
  329. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  330. package/es/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
  331. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  332. package/es/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
  333. package/es/extensions/forms/Field/Boolean/BooleanDocs.js +7 -0
  334. package/es/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  335. package/es/extensions/forms/Field/Date/Date.d.ts +1 -1
  336. package/es/extensions/forms/Field/Date/Date.js +1 -1
  337. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  338. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  339. package/es/extensions/forms/Field/Number/NumberDocs.js +1 -1
  340. package/es/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  341. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  342. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +3 -3
  343. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  344. package/es/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +3 -3
  345. package/es/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
  346. package/es/extensions/forms/Field/Selection/Selection.d.ts +2 -0
  347. package/es/extensions/forms/Field/Selection/Selection.js +9 -8
  348. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  349. package/es/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
  350. package/es/extensions/forms/Field/Toggle/Toggle.js +24 -6
  351. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  352. package/es/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
  353. package/es/extensions/forms/Field/Toggle/ToggleDocs.js +7 -0
  354. package/es/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  355. package/es/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
  356. package/es/extensions/forms/Form/Isolation/IsolatedContainer.js +53 -0
  357. package/es/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
  358. package/es/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
  359. package/es/extensions/forms/Form/Isolation/Isolation.js +40 -14
  360. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  361. package/es/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
  362. package/es/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
  363. package/es/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
  364. package/es/extensions/forms/Form/Isolation/IsolationContext.js +6 -0
  365. package/es/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
  366. package/es/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
  367. package/es/extensions/forms/Form/Isolation/IsolationDataReference.js +25 -0
  368. package/es/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
  369. package/es/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
  370. package/es/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  371. package/es/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
  372. package/es/extensions/forms/Form/Isolation/IsolationResetButton.js +99 -0
  373. package/es/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
  374. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
  375. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js +50 -0
  376. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
  377. package/es/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
  378. package/es/extensions/forms/Form/Isolation/useHandleStatus.js +48 -0
  379. package/es/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
  380. package/es/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +12 -10
  381. package/es/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
  382. package/es/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
  383. package/es/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
  384. package/es/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
  385. package/es/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  386. package/es/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
  387. package/es/extensions/forms/Iterate/EditContainer/index.js +1 -1
  388. package/es/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  389. package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
  390. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +16 -55
  391. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  392. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  393. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  394. package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -1
  395. package/es/extensions/forms/constants/locales/en-GB.js +3 -3
  396. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  397. package/es/extensions/forms/constants/locales/en-US.d.ts +1 -1
  398. package/es/extensions/forms/constants/locales/index.d.ts +2 -2
  399. package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -1
  400. package/es/extensions/forms/constants/locales/nb-NO.js +3 -3
  401. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  402. package/es/extensions/forms/constants/locales/sv-SE.d.ts +1 -1
  403. package/es/extensions/forms/constants/locales/sv-SE.js +3 -3
  404. package/es/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  405. package/es/extensions/forms/hooks/useDataContext.js +5 -3
  406. package/es/extensions/forms/hooks/useDataContext.js.map +1 -1
  407. package/es/extensions/forms/hooks/useSnapshot.js +18 -15
  408. package/es/extensions/forms/hooks/useSnapshot.js.map +1 -1
  409. package/es/fragments/drawer-list/DrawerList.d.ts +176 -224
  410. package/es/fragments/drawer-list/DrawerList.js +72 -173
  411. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  412. package/es/fragments/drawer-list/DrawerListContext.d.ts +27 -2
  413. package/es/fragments/drawer-list/DrawerListContext.js.map +1 -1
  414. package/es/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
  415. package/es/fragments/drawer-list/DrawerListDocs.js +2 -2
  416. package/es/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  417. package/es/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
  418. package/es/fragments/drawer-list/DrawerListHelpers.js +45 -54
  419. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  420. package/es/fragments/drawer-list/DrawerListItem.d.ts +30 -0
  421. package/es/fragments/drawer-list/DrawerListItem.js +90 -0
  422. package/es/fragments/drawer-list/DrawerListItem.js.map +1 -0
  423. package/es/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
  424. package/es/fragments/drawer-list/DrawerListPortal.js +88 -120
  425. package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  426. package/es/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
  427. package/es/fragments/drawer-list/DrawerListProvider.js +33 -19
  428. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  429. package/es/shared/Eufemia.d.ts +1 -1
  430. package/es/shared/Eufemia.js +2 -2
  431. package/es/shared/Eufemia.js.map +1 -1
  432. package/es/shared/component-helper.d.ts +45 -48
  433. package/es/shared/component-helper.js +20 -183
  434. package/es/shared/component-helper.js.map +1 -1
  435. package/es/shared/helpers/withCamelCaseProps.d.ts +4 -5
  436. package/es/shared/helpers/withCamelCaseProps.js +7 -2
  437. package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
  438. package/es/shared/legacy/component-helper-legacy.d.ts +19 -0
  439. package/es/shared/legacy/component-helper-legacy.js +180 -0
  440. package/es/shared/legacy/component-helper-legacy.js.map +1 -0
  441. package/es/shared/locales/en-GB.d.ts +1 -0
  442. package/es/shared/locales/en-GB.js +1 -0
  443. package/es/shared/locales/en-GB.js.map +1 -1
  444. package/es/shared/locales/en-US.js.map +1 -1
  445. package/es/shared/locales/index.d.ts +2 -0
  446. package/es/shared/locales/nb-NO.d.ts +1 -0
  447. package/es/shared/locales/nb-NO.js +2 -1
  448. package/es/shared/locales/nb-NO.js.map +1 -1
  449. package/es/shared/locales/sv-SE.d.ts +1 -0
  450. package/es/shared/locales/sv-SE.js +1 -0
  451. package/es/shared/locales/sv-SE.js.map +1 -1
  452. package/es/style/core/scopes.scss +1 -1
  453. package/es/style/dnb-ui-basis.css +1 -1
  454. package/es/style/dnb-ui-basis.min.css +1 -1
  455. package/es/style/dnb-ui-body.css +1 -1
  456. package/es/style/dnb-ui-body.min.css +1 -1
  457. package/es/style/dnb-ui-components.css +2 -1
  458. package/es/style/dnb-ui-components.min.css +1 -1
  459. package/es/style/dnb-ui-core.css +1 -1
  460. package/es/style/dnb-ui-core.min.css +1 -1
  461. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +19 -1
  462. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  463. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +19 -1
  464. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  465. package/es/style/themes/theme-ui/ui-theme-components.css +19 -1
  466. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  467. package/esm/dnb-ui-basis.min.mjs +1 -1
  468. package/esm/dnb-ui-components.min.mjs +1 -1
  469. package/esm/dnb-ui-elements.min.mjs +1 -1
  470. package/esm/dnb-ui-extensions.min.mjs +2 -2
  471. package/esm/dnb-ui-lib.min.mjs +1 -1
  472. package/extensions/forms/DataContext/Context.d.ts +1 -1
  473. package/extensions/forms/DataContext/Context.js.map +1 -1
  474. package/extensions/forms/DataContext/Provider/Provider.js +9 -0
  475. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  476. package/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
  477. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  478. package/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
  479. package/extensions/forms/Field/Boolean/BooleanDocs.js +7 -0
  480. package/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  481. package/extensions/forms/Field/Date/Date.d.ts +1 -1
  482. package/extensions/forms/Field/Date/Date.js +1 -1
  483. package/extensions/forms/Field/Date/Date.js.map +1 -1
  484. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  485. package/extensions/forms/Field/Number/NumberDocs.js +1 -1
  486. package/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  487. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  488. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +3 -3
  489. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  490. package/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +3 -3
  491. package/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
  492. package/extensions/forms/Field/Selection/Selection.d.ts +2 -0
  493. package/extensions/forms/Field/Selection/Selection.js +10 -9
  494. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  495. package/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
  496. package/extensions/forms/Field/Toggle/Toggle.js +26 -9
  497. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  498. package/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
  499. package/extensions/forms/Field/Toggle/ToggleDocs.js +7 -0
  500. package/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  501. package/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
  502. package/extensions/forms/Form/Isolation/IsolatedContainer.js +54 -0
  503. package/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
  504. package/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
  505. package/extensions/forms/Form/Isolation/Isolation.js +40 -15
  506. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  507. package/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
  508. package/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
  509. package/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
  510. package/extensions/forms/Form/Isolation/IsolationContext.js +6 -0
  511. package/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
  512. package/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
  513. package/extensions/forms/Form/Isolation/IsolationDataReference.js +25 -0
  514. package/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
  515. package/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
  516. package/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  517. package/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
  518. package/extensions/forms/Form/Isolation/IsolationResetButton.js +100 -0
  519. package/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
  520. package/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
  521. package/extensions/forms/Form/Isolation/useDataContextSnapshot.js +52 -0
  522. package/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
  523. package/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
  524. package/extensions/forms/Form/Isolation/useHandleStatus.js +51 -0
  525. package/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
  526. package/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +12 -10
  527. package/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
  528. package/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
  529. package/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
  530. package/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
  531. package/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  532. package/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
  533. package/extensions/forms/Iterate/EditContainer/index.js +1 -1
  534. package/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  535. package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
  536. package/extensions/forms/Iterate/PushContainer/PushContainer.js +16 -57
  537. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  538. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  539. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  540. package/extensions/forms/constants/locales/en-GB.d.ts +1 -1
  541. package/extensions/forms/constants/locales/en-GB.js +3 -3
  542. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  543. package/extensions/forms/constants/locales/en-US.d.ts +1 -1
  544. package/extensions/forms/constants/locales/index.d.ts +2 -2
  545. package/extensions/forms/constants/locales/nb-NO.d.ts +1 -1
  546. package/extensions/forms/constants/locales/nb-NO.js +3 -3
  547. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  548. package/extensions/forms/constants/locales/sv-SE.d.ts +1 -1
  549. package/extensions/forms/constants/locales/sv-SE.js +3 -3
  550. package/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  551. package/extensions/forms/hooks/useDataContext.js +5 -3
  552. package/extensions/forms/hooks/useDataContext.js.map +1 -1
  553. package/extensions/forms/hooks/useSnapshot.js +18 -15
  554. package/extensions/forms/hooks/useSnapshot.js.map +1 -1
  555. package/fragments/drawer-list/DrawerList.d.ts +176 -224
  556. package/fragments/drawer-list/DrawerList.js +71 -175
  557. package/fragments/drawer-list/DrawerList.js.map +1 -1
  558. package/fragments/drawer-list/DrawerListContext.d.ts +27 -2
  559. package/fragments/drawer-list/DrawerListContext.js.map +1 -1
  560. package/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
  561. package/fragments/drawer-list/DrawerListDocs.js +2 -2
  562. package/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  563. package/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
  564. package/fragments/drawer-list/DrawerListHelpers.js +45 -53
  565. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  566. package/fragments/drawer-list/DrawerListItem.d.ts +30 -0
  567. package/fragments/drawer-list/DrawerListItem.js +91 -0
  568. package/fragments/drawer-list/DrawerListItem.js.map +1 -0
  569. package/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
  570. package/fragments/drawer-list/DrawerListPortal.js +91 -121
  571. package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  572. package/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
  573. package/fragments/drawer-list/DrawerListProvider.js +12 -19
  574. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  575. package/package.json +1 -1
  576. package/shared/Eufemia.d.ts +1 -1
  577. package/shared/Eufemia.js +2 -2
  578. package/shared/Eufemia.js.map +1 -1
  579. package/shared/component-helper.d.ts +45 -48
  580. package/shared/component-helper.js +23 -189
  581. package/shared/component-helper.js.map +1 -1
  582. package/shared/helpers/withCamelCaseProps.d.ts +4 -5
  583. package/shared/helpers/withCamelCaseProps.js +7 -2
  584. package/shared/helpers/withCamelCaseProps.js.map +1 -1
  585. package/shared/legacy/component-helper-legacy.d.ts +19 -0
  586. package/shared/legacy/component-helper-legacy.js +185 -0
  587. package/shared/legacy/component-helper-legacy.js.map +1 -0
  588. package/shared/locales/en-GB.d.ts +1 -0
  589. package/shared/locales/en-GB.js +1 -0
  590. package/shared/locales/en-GB.js.map +1 -1
  591. package/shared/locales/en-US.js.map +1 -1
  592. package/shared/locales/index.d.ts +2 -0
  593. package/shared/locales/nb-NO.d.ts +1 -0
  594. package/shared/locales/nb-NO.js +2 -1
  595. package/shared/locales/nb-NO.js.map +1 -1
  596. package/shared/locales/sv-SE.d.ts +1 -0
  597. package/shared/locales/sv-SE.js +1 -0
  598. package/shared/locales/sv-SE.js.map +1 -1
  599. package/style/core/scopes.scss +1 -1
  600. package/style/dnb-ui-basis.css +1 -1
  601. package/style/dnb-ui-basis.min.css +1 -1
  602. package/style/dnb-ui-body.css +1 -1
  603. package/style/dnb-ui-body.min.css +1 -1
  604. package/style/dnb-ui-components.css +2 -1
  605. package/style/dnb-ui-components.min.css +1 -1
  606. package/style/dnb-ui-core.css +1 -1
  607. package/style/dnb-ui-core.min.css +1 -1
  608. package/style/themes/theme-eiendom/eiendom-theme-components.css +19 -1
  609. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  610. package/style/themes/theme-sbanken/sbanken-theme-components.css +19 -1
  611. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  612. package/style/themes/theme-ui/ui-theme-components.css +19 -1
  613. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  614. package/umd/dnb-ui-basis.min.js +1 -1
  615. package/umd/dnb-ui-components.min.js +1 -1
  616. package/umd/dnb-ui-elements.min.js +1 -1
  617. package/umd/dnb-ui-extensions.min.js +1 -1
  618. package/umd/dnb-ui-lib.min.js +1 -1
  619. package/cjs/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
  620. package/es/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
  621. package/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
  622. /package/cjs/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
  623. /package/es/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
  624. /package/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
@@ -37,11 +37,30 @@
37
37
  }
38
38
 
39
39
  &__header {
40
+ --gap: 0.25rem;
41
+
42
+ display: flex;
43
+ flex-flow: row wrap;
44
+ justify-content: space-between;
45
+ gap: var(--gap);
46
+
40
47
  // border
41
48
  &::after {
42
49
  background-color: var(--color-black-8);
43
50
  }
44
51
 
52
+ &__row {
53
+ min-width: 60%;
54
+ display: flex;
55
+ flex: 1 1 auto;
56
+ align-items: center;
57
+ justify-content: space-between;
58
+
59
+ &--year {
60
+ min-width: calc(40% - var(--gap));
61
+ }
62
+ }
63
+
45
64
  &__nav .dnb-button {
46
65
  box-shadow: none;
47
66
  }
@@ -107,6 +107,7 @@ function Drawer(_ref) {
107
107
  containerPlacement
108
108
  }));
109
109
  return React.createElement(Modal, _extends({}, context.Drawer, modalProps, {
110
+ fullscreen: false,
110
111
  contentClass: classnames('dnb-drawer__root', contentClass)
111
112
  }), React.createElement(DrawerContent, _extends({}, context.Drawer, drawerProps)));
112
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Drawer.js","names":["React","useContext","Modal","DrawerContent","DrawerBody","DrawerHeader","DrawerNavigation","classnames","Context","removeUndefinedProps","Drawer","_ref","id","rootId","contentId","focusSelector","labelledBy","directDomReturn","hideCloseButton","disabled","title","dialogTitle","closeTitle","containerPlacement","spacing","noAnimation","noAnimationOnMobile","animationDuration","fullscreen","onOpen","onClose","onClosePrevent","openModal","closeModal","preventClose","preventOverlayClose","openState","openDelay","omitTriggerButton","trigger","triggerAttributes","closeButtonAttributes","overlayClass","contentClass","contentRef","scrollRef","top","bottom","left","right","space","props","_objectWithoutProperties","_excluded","context","modalProps","drawerProps","_objectSpread","createElement","_extends","Body","Header","Navigation","_supportsSpacingProps"],"sources":["../../../../src/components/drawer/Drawer.tsx"],"sourcesContent":["/**\n * Web Drawer Component\n *\n */\nimport React, { useContext } from 'react'\nimport Modal from '../modal/Modal'\nimport DrawerContent from './DrawerContent'\nimport DrawerBody from './parts/DrawerBody'\nimport DrawerHeader from './parts/DrawerHeader'\nimport DrawerNavigation from './parts/DrawerNavigation'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport { DrawerProps, DrawerContentProps } from './types'\nimport { removeUndefinedProps } from '../../shared/component-helper'\n\nexport type DrawerAllProps = DrawerProps & DrawerContentProps\n\nfunction Drawer({\n id,\n rootId,\n contentId,\n focusSelector,\n labelledBy,\n directDomReturn,\n hideCloseButton,\n disabled,\n\n title,\n dialogTitle,\n closeTitle,\n containerPlacement = 'right',\n spacing = true,\n noAnimation,\n noAnimationOnMobile,\n animationDuration,\n fullscreen = 'auto',\n\n onOpen,\n onClose,\n onClosePrevent,\n openModal,\n closeModal,\n preventClose,\n preventOverlayClose,\n openState,\n openDelay,\n\n omitTriggerButton,\n trigger,\n triggerAttributes,\n closeButtonAttributes,\n overlayClass,\n contentClass,\n contentRef,\n scrollRef,\n\n top,\n bottom,\n left,\n right,\n space,\n\n ...props\n}: DrawerAllProps): JSX.Element {\n const context = useContext(Context)\n\n const modalProps = removeUndefinedProps({\n title,\n id,\n focusSelector,\n labelledBy,\n disabled,\n spacing,\n openDelay,\n contentId,\n dialogTitle,\n closeTitle,\n hideCloseButton,\n preventClose,\n preventOverlayClose,\n animationDuration,\n noAnimation,\n noAnimationOnMobile,\n fullscreen,\n containerPlacement,\n openState,\n directDomReturn,\n rootId,\n onOpen,\n onClose,\n onClosePrevent,\n openModal,\n closeModal,\n omitTriggerButton,\n trigger,\n triggerAttributes,\n closeButtonAttributes,\n overlayClass,\n contentRef,\n scrollRef,\n top,\n bottom,\n left,\n right,\n space,\n })\n\n const drawerProps = removeUndefinedProps({\n ...props,\n noAnimation,\n noAnimationOnMobile,\n fullscreen,\n spacing,\n containerPlacement,\n })\n\n return (\n <Modal\n {...context.Drawer}\n {...modalProps}\n contentClass={classnames('dnb-drawer__root', contentClass)}\n >\n <DrawerContent {...context.Drawer} {...drawerProps} />\n </Modal>\n )\n}\n\nDrawer.Body = DrawerBody\nDrawer.Header = DrawerHeader\nDrawer.Navigation = DrawerNavigation\n\nDrawer._supportsSpacingProps = true\n\nexport default Drawer\n"],"mappings":";;;;;;;;AAIA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,KAAK,MAAM,gBAAgB;AAClC,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,UAAU,MAAM,oBAAoB;AAC3C,OAAOC,YAAY,MAAM,sBAAsB;AAC/C,OAAOC,gBAAgB,MAAM,0BAA0B;AACvD,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,OAAO,MAAM,sBAAsB;AAE1C,SAASC,oBAAoB,QAAQ,+BAA+B;AAIpE,SAASC,MAAMA,CAAAC,IAAA,EA8CiB;EAAA,IA9ChB;MACdC,EAAE;MACFC,MAAM;MACNC,SAAS;MACTC,aAAa;MACbC,UAAU;MACVC,eAAe;MACfC,eAAe;MACfC,QAAQ;MAERC,KAAK;MACLC,WAAW;MACXC,UAAU;MACVC,kBAAkB,GAAG,OAAO;MAC5BC,OAAO,GAAG,IAAI;MACdC,WAAW;MACXC,mBAAmB;MACnBC,iBAAiB;MACjBC,UAAU,GAAG,MAAM;MAEnBC,MAAM;MACNC,OAAO;MACPC,cAAc;MACdC,SAAS;MACTC,UAAU;MACVC,YAAY;MACZC,mBAAmB;MACnBC,SAAS;MACTC,SAAS;MAETC,iBAAiB;MACjBC,OAAO;MACPC,iBAAiB;MACjBC,qBAAqB;MACrBC,YAAY;MACZC,YAAY;MACZC,UAAU;MACVC,SAAS;MAETC,GAAG;MACHC,MAAM;MACNC,IAAI;MACJC,KAAK;MACLC;IAGc,CAAC,GAAAvC,IAAA;IADZwC,KAAK,GAAAC,wBAAA,CAAAzC,IAAA,EAAA0C,SAAA;EAER,MAAMC,OAAO,GAAGrD,UAAU,CAACO,OAAO,CAAC;EAEnC,MAAM+C,UAAU,GAAG9C,oBAAoB,CAAC;IACtCW,KAAK;IACLR,EAAE;IACFG,aAAa;IACbC,UAAU;IACVG,QAAQ;IACRK,OAAO;IACPa,SAAS;IACTvB,SAAS;IACTO,WAAW;IACXC,UAAU;IACVJ,eAAe;IACfgB,YAAY;IACZC,mBAAmB;IACnBR,iBAAiB;IACjBF,WAAW;IACXC,mBAAmB;IACnBE,UAAU;IACVL,kBAAkB;IAClBa,SAAS;IACTnB,eAAe;IACfJ,MAAM;IACNgB,MAAM;IACNC,OAAO;IACPC,cAAc;IACdC,SAAS;IACTC,UAAU;IACVK,iBAAiB;IACjBC,OAAO;IACPC,iBAAiB;IACjBC,qBAAqB;IACrBC,YAAY;IACZE,UAAU;IACVC,SAAS;IACTC,GAAG;IACHC,MAAM;IACNC,IAAI;IACJC,KAAK;IACLC;EACF,CAAC,CAAC;EAEF,MAAMM,WAAW,GAAG/C,oBAAoB,CAAAgD,aAAA,CAAAA,aAAA,KACnCN,KAAK;IACR1B,WAAW;IACXC,mBAAmB;IACnBE,UAAU;IACVJ,OAAO;IACPD;EAAkB,EACnB,CAAC;EAEF,OACEvB,KAAA,CAAA0D,aAAA,CAACxD,KAAK,EAAAyD,QAAA,KACAL,OAAO,CAAC5C,MAAM,EACd6C,UAAU;IACdZ,YAAY,EAAEpC,UAAU,CAAC,kBAAkB,EAAEoC,YAAY;EAAE,IAE3D3C,KAAA,CAAA0D,aAAA,CAACvD,aAAa,EAAAwD,QAAA,KAAKL,OAAO,CAAC5C,MAAM,EAAM8C,WAAW,CAAG,CAChD,CAAC;AAEZ;AAEA9C,MAAM,CAACkD,IAAI,GAAGxD,UAAU;AACxBM,MAAM,CAACmD,MAAM,GAAGxD,YAAY;AAC5BK,MAAM,CAACoD,UAAU,GAAGxD,gBAAgB;AAEpCI,MAAM,CAACqD,qBAAqB,GAAG,IAAI;AAEnC,eAAerD,MAAM","ignoreList":[]}
1
+ {"version":3,"file":"Drawer.js","names":["React","useContext","Modal","DrawerContent","DrawerBody","DrawerHeader","DrawerNavigation","classnames","Context","removeUndefinedProps","Drawer","_ref","id","rootId","contentId","focusSelector","labelledBy","directDomReturn","hideCloseButton","disabled","title","dialogTitle","closeTitle","containerPlacement","spacing","noAnimation","noAnimationOnMobile","animationDuration","fullscreen","onOpen","onClose","onClosePrevent","openModal","closeModal","preventClose","preventOverlayClose","openState","openDelay","omitTriggerButton","trigger","triggerAttributes","closeButtonAttributes","overlayClass","contentClass","contentRef","scrollRef","top","bottom","left","right","space","props","_objectWithoutProperties","_excluded","context","modalProps","drawerProps","_objectSpread","createElement","_extends","Body","Header","Navigation","_supportsSpacingProps"],"sources":["../../../../src/components/drawer/Drawer.tsx"],"sourcesContent":["/**\n * Web Drawer Component\n *\n */\nimport React, { useContext } from 'react'\nimport Modal from '../modal/Modal'\nimport DrawerContent from './DrawerContent'\nimport DrawerBody from './parts/DrawerBody'\nimport DrawerHeader from './parts/DrawerHeader'\nimport DrawerNavigation from './parts/DrawerNavigation'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport { DrawerProps, DrawerContentProps } from './types'\nimport { removeUndefinedProps } from '../../shared/component-helper'\n\nexport type DrawerAllProps = DrawerProps & DrawerContentProps\n\nfunction Drawer({\n id,\n rootId,\n contentId,\n focusSelector,\n labelledBy,\n directDomReturn,\n hideCloseButton,\n disabled,\n\n title,\n dialogTitle,\n closeTitle,\n containerPlacement = 'right',\n spacing = true,\n noAnimation,\n noAnimationOnMobile,\n animationDuration,\n fullscreen = 'auto',\n\n onOpen,\n onClose,\n onClosePrevent,\n openModal,\n closeModal,\n preventClose,\n preventOverlayClose,\n openState,\n openDelay,\n\n omitTriggerButton,\n trigger,\n triggerAttributes,\n closeButtonAttributes,\n overlayClass,\n contentClass,\n contentRef,\n scrollRef,\n\n top,\n bottom,\n left,\n right,\n space,\n\n ...props\n}: DrawerAllProps): JSX.Element {\n const context = useContext(Context)\n\n const modalProps = removeUndefinedProps({\n title,\n id,\n focusSelector,\n labelledBy,\n disabled,\n spacing,\n openDelay,\n contentId,\n dialogTitle,\n closeTitle,\n hideCloseButton,\n preventClose,\n preventOverlayClose,\n animationDuration,\n noAnimation,\n noAnimationOnMobile,\n fullscreen,\n containerPlacement,\n openState,\n directDomReturn,\n rootId,\n onOpen,\n onClose,\n onClosePrevent,\n openModal,\n closeModal,\n omitTriggerButton,\n trigger,\n triggerAttributes,\n closeButtonAttributes,\n overlayClass,\n contentRef,\n scrollRef,\n top,\n bottom,\n left,\n right,\n space,\n })\n\n const drawerProps = removeUndefinedProps({\n ...props,\n noAnimation,\n noAnimationOnMobile,\n fullscreen,\n spacing,\n containerPlacement,\n })\n\n return (\n <Modal\n {...context.Drawer}\n {...modalProps}\n fullscreen={false} // to avoid double fullscreen as it's handled in DrawerContent\n contentClass={classnames('dnb-drawer__root', contentClass)}\n >\n <DrawerContent {...context.Drawer} {...drawerProps} />\n </Modal>\n )\n}\n\nDrawer.Body = DrawerBody\nDrawer.Header = DrawerHeader\nDrawer.Navigation = DrawerNavigation\n\nDrawer._supportsSpacingProps = true\n\nexport default Drawer\n"],"mappings":";;;;;;;;AAIA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,KAAK,MAAM,gBAAgB;AAClC,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,UAAU,MAAM,oBAAoB;AAC3C,OAAOC,YAAY,MAAM,sBAAsB;AAC/C,OAAOC,gBAAgB,MAAM,0BAA0B;AACvD,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,OAAO,MAAM,sBAAsB;AAE1C,SAASC,oBAAoB,QAAQ,+BAA+B;AAIpE,SAASC,MAAMA,CAAAC,IAAA,EA8CiB;EAAA,IA9ChB;MACdC,EAAE;MACFC,MAAM;MACNC,SAAS;MACTC,aAAa;MACbC,UAAU;MACVC,eAAe;MACfC,eAAe;MACfC,QAAQ;MAERC,KAAK;MACLC,WAAW;MACXC,UAAU;MACVC,kBAAkB,GAAG,OAAO;MAC5BC,OAAO,GAAG,IAAI;MACdC,WAAW;MACXC,mBAAmB;MACnBC,iBAAiB;MACjBC,UAAU,GAAG,MAAM;MAEnBC,MAAM;MACNC,OAAO;MACPC,cAAc;MACdC,SAAS;MACTC,UAAU;MACVC,YAAY;MACZC,mBAAmB;MACnBC,SAAS;MACTC,SAAS;MAETC,iBAAiB;MACjBC,OAAO;MACPC,iBAAiB;MACjBC,qBAAqB;MACrBC,YAAY;MACZC,YAAY;MACZC,UAAU;MACVC,SAAS;MAETC,GAAG;MACHC,MAAM;MACNC,IAAI;MACJC,KAAK;MACLC;IAGc,CAAC,GAAAvC,IAAA;IADZwC,KAAK,GAAAC,wBAAA,CAAAzC,IAAA,EAAA0C,SAAA;EAER,MAAMC,OAAO,GAAGrD,UAAU,CAACO,OAAO,CAAC;EAEnC,MAAM+C,UAAU,GAAG9C,oBAAoB,CAAC;IACtCW,KAAK;IACLR,EAAE;IACFG,aAAa;IACbC,UAAU;IACVG,QAAQ;IACRK,OAAO;IACPa,SAAS;IACTvB,SAAS;IACTO,WAAW;IACXC,UAAU;IACVJ,eAAe;IACfgB,YAAY;IACZC,mBAAmB;IACnBR,iBAAiB;IACjBF,WAAW;IACXC,mBAAmB;IACnBE,UAAU;IACVL,kBAAkB;IAClBa,SAAS;IACTnB,eAAe;IACfJ,MAAM;IACNgB,MAAM;IACNC,OAAO;IACPC,cAAc;IACdC,SAAS;IACTC,UAAU;IACVK,iBAAiB;IACjBC,OAAO;IACPC,iBAAiB;IACjBC,qBAAqB;IACrBC,YAAY;IACZE,UAAU;IACVC,SAAS;IACTC,GAAG;IACHC,MAAM;IACNC,IAAI;IACJC,KAAK;IACLC;EACF,CAAC,CAAC;EAEF,MAAMM,WAAW,GAAG/C,oBAAoB,CAAAgD,aAAA,CAAAA,aAAA,KACnCN,KAAK;IACR1B,WAAW;IACXC,mBAAmB;IACnBE,UAAU;IACVJ,OAAO;IACPD;EAAkB,EACnB,CAAC;EAEF,OACEvB,KAAA,CAAA0D,aAAA,CAACxD,KAAK,EAAAyD,QAAA,KACAL,OAAO,CAAC5C,MAAM,EACd6C,UAAU;IACd3B,UAAU,EAAE,KAAM;IAClBe,YAAY,EAAEpC,UAAU,CAAC,kBAAkB,EAAEoC,YAAY;EAAE,IAE3D3C,KAAA,CAAA0D,aAAA,CAACvD,aAAa,EAAAwD,QAAA,KAAKL,OAAO,CAAC5C,MAAM,EAAM8C,WAAW,CAAG,CAChD,CAAC;AAEZ;AAEA9C,MAAM,CAACkD,IAAI,GAAGxD,UAAU;AACxBM,MAAM,CAACmD,MAAM,GAAGxD,YAAY;AAC5BK,MAAM,CAACoD,UAAU,GAAGxD,gBAAgB;AAEpCI,MAAM,CAACqD,qBAAqB,GAAG,IAAI;AAEnC,eAAerD,MAAM","ignoreList":[]}
@@ -35,7 +35,7 @@ export default class Dropdown extends React.PureComponent {
35
35
  return React.createElement(DrawerListProvider, _extends({}, this.props, {
36
36
  id: id,
37
37
  data: data || children,
38
- opened: null,
38
+ opened: false,
39
39
  tagName: "dnb-dropdown",
40
40
  ignore_events: false,
41
41
  prevent_selection: isTrue(more_menu) || isTrue(action_menu) || isTrue(prevent_selection)
@@ -342,7 +342,8 @@ class DropdownInstance extends React.PureComponent {
342
342
  } = props;
343
343
  const id = this._id;
344
344
  const handleAsMenu = isTrue(action_menu) || isTrue(more_menu) || isTrue(prevent_selection);
345
- const isPopupMenu = isTrue(more_menu) || !(_title && _title.length > 0);
345
+ const title = this.getTitle(_title);
346
+ const isPopupMenu = isTrue(more_menu) || !title;
346
347
  if (isPopupMenu) {
347
348
  icon = icon || (isTrue(more_menu) ? 'more' : 'chevron_down');
348
349
  }
@@ -358,7 +359,6 @@ class DropdownInstance extends React.PureComponent {
358
359
  opened
359
360
  } = this.context.drawerList;
360
361
  const showStatus = getStatusState(status);
361
- const title = this.getTitle(_title);
362
362
  Object.assign(this.context.drawerList.attributes, validateDOMAttributes(null, attributes));
363
363
  const mainParams = {
364
364
  className: classnames(`dnb-dropdown dnb-dropdown--${direction} dnb-dropdown--icon-position-${icon_position || 'right'} dnb-dropdown--${align_dropdown || 'right'} dnb-form-component`, (isTrue(independent_width) || isTrue(action_menu)) && 'dnb-dropdown--independent-width', createSpacingClasses(props), className, opened && 'dnb-dropdown--opened', label_direction && `dnb-dropdown--${label_direction}`, isPopupMenu && 'dnb-dropdown--is-popup', isTrue(action_menu) && `dnb-dropdown--action-menu`, size && `dnb-dropdown--${size}`, isTrue(stretch) && `dnb-dropdown--stretch`, status && `dnb-dropdown__status--${status_state}`, showStatus && 'dnb-dropdown__form-status')
@@ -430,7 +430,9 @@ class DropdownInstance extends React.PureComponent {
430
430
  }, icon !== false && React.createElement(Icon, {
431
431
  icon: icon || 'chevron_down',
432
432
  size: icon_size || (size === 'large' ? 'medium' : 'default')
433
- })))
433
+ }))),
434
+ role: "combobox",
435
+ title: title
434
436
  }, triggerParams)), React.createElement(DrawerList, {
435
437
  id: id,
436
438
  role: handleAsMenu ? 'menu' : 'listbox',
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","names":["React","PropTypes","classnames","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","getStatusState","combineDescribedBy","combineLabelledBy","dispatchCustomElementEvent","keycode","AlignmentHelper","spacingPropTypes","createSpacingClasses","pickFormElementProps","Suffix","Icon","FormLabel","FormStatus","Button","buttonVariantPropType","DrawerList","DrawerListContext","DrawerListProvider","drawerListPropTypes","drawerListProviderPropTypes","parseContentTitle","getCurrentData","Dropdown","PureComponent","render","id","props","more_menu","action_menu","prevent_selection","children","data","createElement","_extends","opened","tagName","ignore_events","DropdownInstance","_defineProperty","title","variant","icon","icon_size","icon_position","triangle_position","label","label_direction","label_sr_only","status","status_state","status_props","status_no_animation","globalStatus","innerRef","buttonRef","suffix","scrollable","focusable","max_height","direction","skip_portal","portal_class","no_animation","no_scroll_animation","independent_width","size","align_dropdown","trigger_element","default_value","value","open_on_focus","prevent_close","keep_open","disabled","stretch","skeleton","className","on_show","on_hide","on_change","on_select","on_state_update","process","env","NODE_ENV","propTypes","_objectSpread","string","oneOfType","node","func","oneOf","bool","object","shape","message","number","arrayOf","selectedKey","selected_key","selected_value","content","array","constructor","_this","this","context","drawerList","setWrapperElement","_refWrapper","current","setVisible","setHidden","arguments","hidden","isOpen","e","preventDefault","args","length","undefined","attributes","res","setFocus","clearTimeout","_focusTimeout","setTimeout","element","_refButton","focus","preventHideFocus","preventScroll","parseFloat","active_item","_id","state","_ref","createRef","componentDidMount","componentWillUnmount","getTitle","currentOptionData","selected_item","_this$context","_this$context2","_this$context3","defaultProps","getTranslation","FormRow","formElement","fixed_position","enable_body_lock","CustomTrigger","_title","_icon","_align_dropdown","_icon_position","_data","_children","_direction","_opened","_value","_objectWithoutProperties","_excluded","handleAsMenu","isPopupMenu","showStatus","Object","assign","mainParams","triggerParams","onFocus","onFocusHandler","onBlur","onBlurHandler","onClick","onClickHandler","onKeyDown","onTriggerKeyDownHandler","ref","forId","text","labelDirection","srOnly","_AlignmentHelper","show","text_id","custom_content","Fragment","role","list_class","is_popup","align_drawer","onChangeHandler","onSelectHandler","onHideHandler","HorizontalItem","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/dropdown/Dropdown.js"],"sourcesContent":["/**\n * Web Dropdown Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n combineLabelledBy,\n dispatchCustomElementEvent,\n keycode,\n} from '../../shared/component-helper'\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 Icon from '../icon-primary/IconPrimary'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport Button, { buttonVariantPropType } from '../button/Button'\nimport DrawerList from '../../fragments/drawer-list/DrawerList'\nimport DrawerListContext from '../../fragments/drawer-list/DrawerListContext'\nimport DrawerListProvider from '../../fragments/drawer-list/DrawerListProvider'\nimport {\n drawerListPropTypes,\n drawerListProviderPropTypes,\n parseContentTitle,\n getCurrentData,\n} from '../../fragments/drawer-list/DrawerListHelpers'\n\nexport default class Dropdown extends React.PureComponent {\n static propTypes = {\n ...spacingPropTypes,\n ...drawerListPropTypes,\n ...drawerListProviderPropTypes,\n\n id: PropTypes.string,\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n variant: buttonVariantPropType.variant,\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.string,\n icon_position: PropTypes.oneOf(['left', 'right']),\n triangle_position: PropTypes.oneOf(['left', 'right']),\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 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 innerRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n buttonRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\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 scrollable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n focusable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n direction: PropTypes.oneOf(['auto', 'top', 'bottom']),\n max_height: PropTypes.number,\n skip_portal: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n portal_class: PropTypes.string,\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_scroll_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n prevent_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n more_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n action_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n independent_width: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n align_dropdown: PropTypes.oneOf(['left', 'right']),\n trigger_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n data: PropTypes.oneOfType([\n PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n ]),\n PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n PropTypes.shape({\n selectedKey: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n /** @deprecated use `selectedKey` */\n selected_key: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n ])\n ),\n ]),\n default_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\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\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n PropTypes.array,\n ]),\n\n on_show: PropTypes.func,\n on_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 title: 'Option Menu',\n variant: 'secondary',\n icon: null,\n icon_size: null,\n icon_position: null,\n triangle_position: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n innerRef: null,\n buttonRef: null,\n suffix: null,\n scrollable: true,\n focusable: false,\n max_height: null,\n direction: 'auto',\n skip_portal: null,\n portal_class: null,\n no_animation: false,\n no_scroll_animation: false,\n prevent_selection: false,\n more_menu: false,\n action_menu: false,\n independent_width: false,\n size: 'default',\n align_dropdown: null,\n trigger_element: null,\n data: null,\n default_value: null,\n value: 'initval',\n open_on_focus: false,\n prevent_close: false,\n keep_open: false,\n opened: false,\n disabled: null,\n stretch: null,\n skeleton: null,\n\n className: null,\n children: null,\n\n on_show: null,\n on_hide: null,\n\n on_change: null,\n on_select: null,\n on_state_update: null,\n }\n\n render() {\n // generate ID here, so we can send it along the provider\n const id = this.props.id || makeUniqueId()\n const { more_menu, action_menu, prevent_selection, children, data } =\n this.props\n\n return (\n <DrawerListProvider\n {...this.props}\n id={id}\n data={data || children}\n opened={null}\n tagName=\"dnb-dropdown\"\n ignore_events={false}\n prevent_selection={\n isTrue(more_menu) ||\n isTrue(action_menu) ||\n isTrue(prevent_selection)\n }\n >\n <DropdownInstance {...this.props} id={id} />\n </DrawerListProvider>\n )\n }\n}\n\nclass DropdownInstance extends React.PureComponent {\n static propTypes = Dropdown.propTypes\n static defaultProps = Dropdown.defaultProps\n static contextType = DrawerListContext\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n\n this.attributes = {}\n this.state = this.state || {}\n\n this._ref = props.innerRef || React.createRef()\n this._refWrapper = React.createRef()\n this._refButton = props.buttonRef || React.createRef()\n }\n\n componentDidMount() {\n if (isTrue(this.props.opened)) {\n this.setVisible()\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._focusTimeout)\n }\n\n setVisible = () => {\n this.context.drawerList\n .setWrapperElement(this._refWrapper.current)\n .setVisible()\n }\n\n setHidden = (...args) => {\n this.context.drawerList.setHidden(...args)\n }\n\n onFocusHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setVisible()\n }\n }\n\n onBlurHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setHidden()\n }\n }\n\n onClickHandler = () => {\n if (isTrue(this.props.disabled)) {\n return // stop here\n }\n if (\n !this.context.drawerList.hidden &&\n this.context.drawerList.isOpen\n ) {\n this.setHidden()\n } else {\n this.setVisible()\n }\n }\n\n onTriggerKeyDownHandler = (e) => {\n switch (keycode(e)) {\n case 'enter':\n case 'space':\n e.preventDefault()\n this.setVisible()\n break\n\n case 'up':\n case 'down':\n e.preventDefault()\n this.setVisible()\n\n break\n\n case 'esc':\n this.setHidden()\n break\n\n case 'home':\n case 'end':\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n onHideHandler = (args = {}) => {\n const attributes = this.attributes || {}\n const res = dispatchCustomElementEvent(this, 'on_hide', {\n ...args,\n attributes,\n })\n\n if (res !== false) {\n this.setFocus(args)\n }\n\n return res\n }\n\n setFocus = (args) => {\n clearTimeout(this._focusTimeout)\n this._focusTimeout = setTimeout(() => {\n try {\n const element = this._refButton.current\n if (element && typeof element.focus === 'function') {\n if (args.preventHideFocus !== true) {\n element.focus({ preventScroll: true })\n }\n dispatchCustomElementEvent(this, 'on_hide_focus', { element })\n }\n } catch (e) {\n // do noting\n }\n }, 1) // NVDA / Firefox needs a delay to set this focus\n }\n\n onSelectHandler = (args) => {\n if (parseFloat(args.active_item) > -1) {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_select', {\n ...args,\n attributes,\n })\n }\n }\n\n onChangeHandler = (args) => {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_change', {\n ...args,\n attributes,\n })\n }\n\n getTitle(title = null) {\n const { data } = this.context.drawerList\n if (data && data.length > 0) {\n const currentOptionData = getCurrentData(\n this.context.drawerList.selected_item,\n data\n )\n if (currentOptionData) {\n title =\n currentOptionData.selected_value ||\n parseContentTitle(currentOptionData)\n }\n }\n return title\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Dropdown.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Dropdown,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Dropdown\n )\n\n const {\n label,\n label_direction,\n label_sr_only,\n icon_size,\n size,\n fixed_position,\n enable_body_lock,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n scrollable,\n focusable,\n keep_open,\n prevent_close,\n no_animation,\n no_scroll_animation,\n triangle_position,\n skip_portal,\n portal_class,\n trigger_element: CustomTrigger,\n more_menu,\n action_menu,\n independent_width,\n prevent_selection,\n max_height,\n default_value,\n className,\n disabled,\n stretch,\n skeleton,\n variant,\n\n title: _title,\n icon: _icon, // eslint-disable-line\n align_dropdown: _align_dropdown, // eslint-disable-line\n icon_position: _icon_position, // 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 buttonRef, // eslint-disable-line\n innerRef, // eslint-disable-line\n\n ...attributes\n } = props\n\n let { icon, icon_position, align_dropdown } = props\n const id = this._id\n\n const handleAsMenu =\n isTrue(action_menu) || isTrue(more_menu) || isTrue(prevent_selection)\n const isPopupMenu = isTrue(more_menu) || !(_title && _title.length > 0)\n if (isPopupMenu) {\n icon = icon || (isTrue(more_menu) ? 'more' : 'chevron_down')\n }\n if (isPopupMenu || isTrue(action_menu)) {\n if (icon_position !== 'right' && align_dropdown !== 'right') {\n icon_position = 'left'\n align_dropdown = 'left'\n }\n }\n\n const { selected_item, direction, opened } = this.context.drawerList\n const showStatus = getStatusState(status)\n const title = this.getTitle(_title)\n\n // make it possible to grab the rest attributes and return it with all events\n Object.assign(\n this.context.drawerList.attributes,\n validateDOMAttributes(null, attributes)\n )\n\n const mainParams = {\n className: classnames(\n 'dnb-dropdown',\n `dnb-dropdown--${direction}`,\n opened && 'dnb-dropdown--opened',\n label_direction && `dnb-dropdown--${label_direction}`,\n `dnb-dropdown--icon-position-${icon_position || 'right'}`,\n isPopupMenu && 'dnb-dropdown--is-popup',\n isTrue(action_menu) && `dnb-dropdown--action-menu`,\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-dropdown--independent-width',\n size && `dnb-dropdown--${size}`,\n isTrue(stretch) && `dnb-dropdown--stretch`,\n `dnb-dropdown--${align_dropdown || 'right'}`,\n status && `dnb-dropdown__status--${status_state}`,\n showStatus && 'dnb-dropdown__form-status',\n 'dnb-form-component',\n createSpacingClasses(props),\n className\n ),\n }\n\n const triggerParams = {\n className: classnames(\n 'dnb-dropdown__trigger',\n opened && 'dnb-button--active'\n ),\n id,\n disabled,\n 'aria-haspopup': handleAsMenu ? true : 'listbox',\n 'aria-expanded': opened,\n ...attributes,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n onClick: this.onClickHandler,\n onKeyDown: this.onTriggerKeyDownHandler,\n }\n\n if (opened) {\n triggerParams['aria-controls'] = `${id}-ul`\n }\n\n if (showStatus || suffix) {\n triggerParams['aria-describedby'] = combineDescribedBy(\n triggerParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n\n if (label) {\n triggerParams['aria-labelledby'] = combineLabelledBy(\n triggerParams,\n id + '-label',\n id // used to read the current value\n )\n }\n\n // also used for code markup simulation\n validateDOMAttributes(null, mainParams)\n validateDOMAttributes(this.props, triggerParams)\n\n // make it possible to grab the rest attributes and return it with all events\n this.attributes = validateDOMAttributes(null, attributes)\n\n return (\n <span ref={this._ref} {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n forId={id}\n text={label}\n labelDirection={label_direction}\n srOnly={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n onClick={this.onClickHandler}\n />\n )}\n\n <span className=\"dnb-dropdown__inner\" ref={this._refWrapper}>\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 {...status_props}\n />\n\n <span className=\"dnb-dropdown__row\">\n <span className=\"dnb-dropdown__shell\">\n {CustomTrigger ? (\n <CustomTrigger {...triggerParams} />\n ) : (\n <Button\n variant={variant}\n icon={false} // only to suppress the warning about the icon when tertiary variant is used\n size={size === 'default' ? 'medium' : size}\n innerRef={this._refButton}\n custom_content={\n <>\n {!isPopupMenu && (\n <span className=\"dnb-dropdown__text dnb-button__text\">\n <span className=\"dnb-dropdown__text__inner\">\n {title}\n </span>\n </span>\n )}\n <span\n aria-hidden\n className={classnames(\n 'dnb-dropdown__icon',\n parseFloat(selected_item) === 0 &&\n 'dnb-dropdown__icon--first'\n )}\n >\n {icon !== false && (\n <Icon\n icon={icon || 'chevron_down'}\n size={\n icon_size ||\n (size === 'large' ? 'medium' : 'default')\n }\n />\n )}\n </span>\n </>\n }\n {...triggerParams}\n />\n )}\n\n <DrawerList\n id={id}\n role={handleAsMenu ? 'menu' : 'listbox'}\n portal_class={portal_class}\n list_class={classnames(\n 'dnb-dropdown__list',\n variant === 'tertiary' && 'dnb-dropdown__list--tertiary'\n )}\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={handleAsMenu}\n action_menu={action_menu}\n triangle_position={\n triangle_position || icon_position || 'right'\n }\n keep_open={keep_open}\n prevent_close={prevent_close}\n independent_width={\n isTrue(independent_width) || isPopupMenu || action_menu\n }\n is_popup={isPopupMenu || action_menu}\n align_drawer={align_dropdown || 'left'}\n fixed_position={fixed_position}\n enable_body_lock={enable_body_lock}\n disabled={disabled}\n max_height={max_height}\n direction={direction}\n size={size}\n on_change={this.onChangeHandler}\n on_select={this.onSelectHandler}\n on_hide={this.onHideHandler}\n />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-dropdown__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n onClick={this.setHidden}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }\n}\n\nDropdown.HorizontalItem = DrawerList.HorizontalItem\nDropdown._formElement = true\nDropdown._supportsSpacingProps = true\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Dropdown.js","names":["React","PropTypes","classnames","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","getStatusState","combineDescribedBy","combineLabelledBy","dispatchCustomElementEvent","keycode","AlignmentHelper","spacingPropTypes","createSpacingClasses","pickFormElementProps","Suffix","Icon","FormLabel","FormStatus","Button","buttonVariantPropType","DrawerList","DrawerListContext","DrawerListProvider","drawerListPropTypes","drawerListProviderPropTypes","parseContentTitle","getCurrentData","Dropdown","PureComponent","render","id","props","more_menu","action_menu","prevent_selection","children","data","createElement","_extends","opened","tagName","ignore_events","DropdownInstance","_defineProperty","title","variant","icon","icon_size","icon_position","triangle_position","label","label_direction","label_sr_only","status","status_state","status_props","status_no_animation","globalStatus","innerRef","buttonRef","suffix","scrollable","focusable","max_height","direction","skip_portal","portal_class","no_animation","no_scroll_animation","independent_width","size","align_dropdown","trigger_element","default_value","value","open_on_focus","prevent_close","keep_open","disabled","stretch","skeleton","className","on_show","on_hide","on_change","on_select","on_state_update","process","env","NODE_ENV","propTypes","_objectSpread","string","oneOfType","node","func","oneOf","bool","object","shape","message","number","arrayOf","selectedKey","selected_key","selected_value","content","array","constructor","_this","this","context","drawerList","setWrapperElement","_refWrapper","current","setVisible","setHidden","arguments","hidden","isOpen","e","preventDefault","args","length","undefined","attributes","res","setFocus","clearTimeout","_focusTimeout","setTimeout","element","_refButton","focus","preventHideFocus","preventScroll","parseFloat","active_item","_id","state","_ref","createRef","componentDidMount","componentWillUnmount","getTitle","currentOptionData","selected_item","_this$context","_this$context2","_this$context3","defaultProps","getTranslation","FormRow","formElement","fixed_position","enable_body_lock","CustomTrigger","_title","_icon","_align_dropdown","_icon_position","_data","_children","_direction","_opened","_value","_objectWithoutProperties","_excluded","handleAsMenu","isPopupMenu","showStatus","Object","assign","mainParams","triggerParams","onFocus","onFocusHandler","onBlur","onBlurHandler","onClick","onClickHandler","onKeyDown","onTriggerKeyDownHandler","ref","forId","text","labelDirection","srOnly","_AlignmentHelper","show","text_id","custom_content","Fragment","role","list_class","is_popup","align_drawer","onChangeHandler","onSelectHandler","onHideHandler","HorizontalItem","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/dropdown/Dropdown.js"],"sourcesContent":["/**\n * Web Dropdown Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n combineLabelledBy,\n dispatchCustomElementEvent,\n keycode,\n} from '../../shared/component-helper'\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 Icon from '../icon-primary/IconPrimary'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport Button, { buttonVariantPropType } from '../button/Button'\nimport DrawerList from '../../fragments/drawer-list/DrawerList'\nimport DrawerListContext from '../../fragments/drawer-list/DrawerListContext'\nimport DrawerListProvider from '../../fragments/drawer-list/DrawerListProvider'\nimport {\n drawerListPropTypes,\n drawerListProviderPropTypes,\n parseContentTitle,\n getCurrentData,\n} from '../../fragments/drawer-list/DrawerListHelpers'\n\nexport default class Dropdown extends React.PureComponent {\n static propTypes = {\n ...spacingPropTypes,\n ...drawerListPropTypes,\n ...drawerListProviderPropTypes,\n\n id: PropTypes.string,\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n variant: buttonVariantPropType.variant,\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.string,\n icon_position: PropTypes.oneOf(['left', 'right']),\n triangle_position: PropTypes.oneOf(['left', 'right']),\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 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 innerRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n buttonRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\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 scrollable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n focusable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n direction: PropTypes.oneOf(['auto', 'top', 'bottom']),\n max_height: PropTypes.number,\n skip_portal: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n portal_class: PropTypes.string,\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_scroll_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n prevent_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n more_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n action_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n independent_width: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n align_dropdown: PropTypes.oneOf(['left', 'right']),\n trigger_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n data: PropTypes.oneOfType([\n PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n ]),\n PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n PropTypes.shape({\n selectedKey: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n /** @deprecated use `selectedKey` */\n selected_key: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n ])\n ),\n ]),\n default_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\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\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n PropTypes.array,\n ]),\n\n on_show: PropTypes.func,\n on_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 title: 'Option Menu',\n variant: 'secondary',\n icon: null,\n icon_size: null,\n icon_position: null,\n triangle_position: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n innerRef: null,\n buttonRef: null,\n suffix: null,\n scrollable: true,\n focusable: false,\n max_height: null,\n direction: 'auto',\n skip_portal: null,\n portal_class: null,\n no_animation: false,\n no_scroll_animation: false,\n prevent_selection: false,\n more_menu: false,\n action_menu: false,\n independent_width: false,\n size: 'default',\n align_dropdown: null,\n trigger_element: null,\n data: null,\n default_value: null,\n value: 'initval',\n open_on_focus: false,\n prevent_close: false,\n keep_open: false,\n opened: false,\n disabled: null,\n stretch: null,\n skeleton: null,\n\n className: null,\n children: null,\n\n on_show: null,\n on_hide: null,\n\n on_change: null,\n on_select: null,\n on_state_update: null,\n }\n\n render() {\n // generate ID here, so we can send it along the provider\n const id = this.props.id || makeUniqueId()\n const { more_menu, action_menu, prevent_selection, children, data } =\n this.props\n\n return (\n <DrawerListProvider\n {...this.props}\n id={id}\n data={data || children}\n opened={false}\n tagName=\"dnb-dropdown\"\n ignore_events={false}\n prevent_selection={\n isTrue(more_menu) ||\n isTrue(action_menu) ||\n isTrue(prevent_selection)\n }\n >\n <DropdownInstance {...this.props} id={id} />\n </DrawerListProvider>\n )\n }\n}\n\nclass DropdownInstance extends React.PureComponent {\n static propTypes = Dropdown.propTypes\n static defaultProps = Dropdown.defaultProps\n static contextType = DrawerListContext\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n\n this.attributes = {}\n this.state = this.state || {}\n\n this._ref = props.innerRef || React.createRef()\n this._refWrapper = React.createRef()\n this._refButton = props.buttonRef || React.createRef()\n }\n\n componentDidMount() {\n if (isTrue(this.props.opened)) {\n this.setVisible()\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._focusTimeout)\n }\n\n setVisible = () => {\n this.context.drawerList\n .setWrapperElement(this._refWrapper.current)\n .setVisible()\n }\n\n setHidden = (...args) => {\n this.context.drawerList.setHidden(...args)\n }\n\n onFocusHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setVisible()\n }\n }\n\n onBlurHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setHidden()\n }\n }\n\n onClickHandler = () => {\n if (isTrue(this.props.disabled)) {\n return // stop here\n }\n if (\n !this.context.drawerList.hidden &&\n this.context.drawerList.isOpen\n ) {\n this.setHidden()\n } else {\n this.setVisible()\n }\n }\n\n onTriggerKeyDownHandler = (e) => {\n switch (keycode(e)) {\n case 'enter':\n case 'space':\n e.preventDefault()\n this.setVisible()\n break\n\n case 'up':\n case 'down':\n e.preventDefault()\n this.setVisible()\n\n break\n\n case 'esc':\n this.setHidden()\n break\n\n case 'home':\n case 'end':\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n onHideHandler = (args = {}) => {\n const attributes = this.attributes || {}\n const res = dispatchCustomElementEvent(this, 'on_hide', {\n ...args,\n attributes,\n })\n\n if (res !== false) {\n this.setFocus(args)\n }\n\n return res\n }\n\n setFocus = (args) => {\n clearTimeout(this._focusTimeout)\n this._focusTimeout = setTimeout(() => {\n try {\n const element = this._refButton.current\n if (element && typeof element.focus === 'function') {\n if (args.preventHideFocus !== true) {\n element.focus({ preventScroll: true })\n }\n dispatchCustomElementEvent(this, 'on_hide_focus', { element })\n }\n } catch (e) {\n // do noting\n }\n }, 1) // NVDA / Firefox needs a delay to set this focus\n }\n\n onSelectHandler = (args) => {\n if (parseFloat(args.active_item) > -1) {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_select', {\n ...args,\n attributes,\n })\n }\n }\n\n onChangeHandler = (args) => {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_change', {\n ...args,\n attributes,\n })\n }\n\n getTitle(title = null) {\n const { data } = this.context.drawerList\n if (data && data.length > 0) {\n const currentOptionData = getCurrentData(\n this.context.drawerList.selected_item,\n data\n )\n if (currentOptionData) {\n title =\n currentOptionData.selected_value ||\n parseContentTitle(currentOptionData)\n }\n }\n return title\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Dropdown.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Dropdown,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Dropdown\n )\n\n const {\n label,\n label_direction,\n label_sr_only,\n icon_size,\n size,\n fixed_position,\n enable_body_lock,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n scrollable,\n focusable,\n keep_open,\n prevent_close,\n no_animation,\n no_scroll_animation,\n triangle_position,\n skip_portal,\n portal_class,\n trigger_element: CustomTrigger,\n more_menu,\n action_menu,\n independent_width,\n prevent_selection,\n max_height,\n default_value,\n className,\n disabled,\n stretch,\n skeleton,\n variant,\n\n title: _title,\n icon: _icon, // eslint-disable-line\n align_dropdown: _align_dropdown, // eslint-disable-line\n icon_position: _icon_position, // 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 buttonRef, // eslint-disable-line\n innerRef, // eslint-disable-line\n\n ...attributes\n } = props\n\n let { icon, icon_position, align_dropdown } = props\n const id = this._id\n\n const handleAsMenu =\n isTrue(action_menu) || isTrue(more_menu) || isTrue(prevent_selection)\n\n const title = this.getTitle(_title)\n const isPopupMenu = isTrue(more_menu) || !title\n\n if (isPopupMenu) {\n icon = icon || (isTrue(more_menu) ? 'more' : 'chevron_down')\n }\n if (isPopupMenu || isTrue(action_menu)) {\n if (icon_position !== 'right' && align_dropdown !== 'right') {\n icon_position = 'left'\n align_dropdown = 'left'\n }\n }\n\n const { selected_item, direction, opened } = this.context.drawerList\n const showStatus = getStatusState(status)\n\n // make it possible to grab the rest attributes and return it with all events\n Object.assign(\n this.context.drawerList.attributes,\n validateDOMAttributes(null, attributes)\n )\n\n const mainParams = {\n className: classnames(\n 'dnb-dropdown',\n `dnb-dropdown--${direction}`,\n opened && 'dnb-dropdown--opened',\n label_direction && `dnb-dropdown--${label_direction}`,\n `dnb-dropdown--icon-position-${icon_position || 'right'}`,\n isPopupMenu && 'dnb-dropdown--is-popup',\n isTrue(action_menu) && `dnb-dropdown--action-menu`,\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-dropdown--independent-width',\n size && `dnb-dropdown--${size}`,\n isTrue(stretch) && `dnb-dropdown--stretch`,\n `dnb-dropdown--${align_dropdown || 'right'}`,\n status && `dnb-dropdown__status--${status_state}`,\n showStatus && 'dnb-dropdown__form-status',\n 'dnb-form-component',\n createSpacingClasses(props),\n className\n ),\n }\n\n const triggerParams = {\n className: classnames(\n 'dnb-dropdown__trigger',\n opened && 'dnb-button--active'\n ),\n id,\n disabled,\n 'aria-haspopup': handleAsMenu ? true : 'listbox',\n 'aria-expanded': opened,\n ...attributes,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n onClick: this.onClickHandler,\n onKeyDown: this.onTriggerKeyDownHandler,\n }\n\n if (opened) {\n triggerParams['aria-controls'] = `${id}-ul`\n }\n\n if (showStatus || suffix) {\n triggerParams['aria-describedby'] = combineDescribedBy(\n triggerParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n\n if (label) {\n triggerParams['aria-labelledby'] = combineLabelledBy(\n triggerParams,\n id + '-label',\n id // used to read the current value\n )\n }\n\n // also used for code markup simulation\n validateDOMAttributes(null, mainParams)\n validateDOMAttributes(this.props, triggerParams)\n\n // make it possible to grab the rest attributes and return it with all events\n this.attributes = validateDOMAttributes(null, attributes)\n\n return (\n <span ref={this._ref} {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n forId={id}\n text={label}\n labelDirection={label_direction}\n srOnly={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n onClick={this.onClickHandler}\n />\n )}\n\n <span className=\"dnb-dropdown__inner\" ref={this._refWrapper}>\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 {...status_props}\n />\n\n <span className=\"dnb-dropdown__row\">\n <span className=\"dnb-dropdown__shell\">\n {CustomTrigger ? (\n <CustomTrigger {...triggerParams} />\n ) : (\n <Button\n variant={variant}\n icon={false} // only to suppress the warning about the icon when tertiary variant is used\n size={size === 'default' ? 'medium' : size}\n innerRef={this._refButton}\n custom_content={\n <>\n {!isPopupMenu && (\n <span className=\"dnb-dropdown__text dnb-button__text\">\n <span className=\"dnb-dropdown__text__inner\">\n {title}\n </span>\n </span>\n )}\n <span\n aria-hidden\n className={classnames(\n 'dnb-dropdown__icon',\n parseFloat(selected_item) === 0 &&\n 'dnb-dropdown__icon--first'\n )}\n >\n {icon !== false && (\n <Icon\n icon={icon || 'chevron_down'}\n size={\n icon_size ||\n (size === 'large' ? 'medium' : 'default')\n }\n />\n )}\n </span>\n </>\n }\n role=\"combobox\"\n title={title}\n {...triggerParams}\n />\n )}\n\n <DrawerList\n id={id}\n role={handleAsMenu ? 'menu' : 'listbox'}\n portal_class={portal_class}\n list_class={classnames(\n 'dnb-dropdown__list',\n variant === 'tertiary' && 'dnb-dropdown__list--tertiary'\n )}\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={handleAsMenu}\n action_menu={action_menu}\n triangle_position={\n triangle_position || icon_position || 'right'\n }\n keep_open={keep_open}\n prevent_close={prevent_close}\n independent_width={\n isTrue(independent_width) || isPopupMenu || action_menu\n }\n is_popup={isPopupMenu || action_menu}\n align_drawer={align_dropdown || 'left'}\n fixed_position={fixed_position}\n enable_body_lock={enable_body_lock}\n disabled={disabled}\n max_height={max_height}\n direction={direction}\n size={size}\n on_change={this.onChangeHandler}\n on_select={this.onSelectHandler}\n on_hide={this.onHideHandler}\n />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-dropdown__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n onClick={this.setHidden}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }\n}\n\nDropdown.HorizontalItem = DrawerList.HorizontalItem\nDropdown._formElement = true\nDropdown._supportsSpacingProps = true\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,179 @@
1
- import { PropertiesTableProps } from '../../shared/types';
2
- export declare const DropdownEvents: PropertiesTableProps;
3
- export declare const DropdownProperties: PropertiesTableProps;
1
+ export declare const DropdownEvents: {
2
+ on_change: {
3
+ doc: string;
4
+ type: string;
5
+ status: "optional";
6
+ };
7
+ on_select: {
8
+ doc: string;
9
+ type: string;
10
+ status: "optional";
11
+ };
12
+ on_show: {
13
+ doc: string;
14
+ type: string;
15
+ status: "optional";
16
+ };
17
+ on_hide: {
18
+ doc: string;
19
+ type: string;
20
+ status: "optional";
21
+ };
22
+ };
23
+ export declare const DropdownProperties: {
24
+ title: {
25
+ doc: string;
26
+ type: string;
27
+ status: "optional";
28
+ };
29
+ value: {
30
+ doc: string;
31
+ type: string;
32
+ status: "optional";
33
+ };
34
+ variant: {
35
+ doc: string;
36
+ type: string[];
37
+ status: "optional";
38
+ };
39
+ icon: {
40
+ doc: string;
41
+ type: string;
42
+ status: "optional";
43
+ };
44
+ icon_size: {
45
+ doc: string;
46
+ type: string;
47
+ status: "optional";
48
+ };
49
+ icon_position: {
50
+ doc: string;
51
+ type: string[];
52
+ status: "optional";
53
+ };
54
+ triangle_position: {
55
+ doc: string;
56
+ type: string[];
57
+ status: "optional";
58
+ };
59
+ size: {
60
+ doc: string;
61
+ type: string[];
62
+ status: "optional";
63
+ };
64
+ opened: {
65
+ doc: string;
66
+ type: string;
67
+ status: "optional";
68
+ };
69
+ open_on_focus: {
70
+ doc: string;
71
+ type: string;
72
+ status: "optional";
73
+ };
74
+ prevent_selection: {
75
+ doc: string;
76
+ type: string;
77
+ status: "optional";
78
+ };
79
+ action_menu: {
80
+ doc: string;
81
+ type: string;
82
+ status: "optional";
83
+ };
84
+ more_menu: {
85
+ doc: string;
86
+ type: string;
87
+ status: "optional";
88
+ };
89
+ align_dropdown: {
90
+ doc: string;
91
+ type: string[];
92
+ status: "optional";
93
+ };
94
+ independent_width: {
95
+ doc: string;
96
+ type: string;
97
+ status: "optional";
98
+ };
99
+ skip_portal: {
100
+ doc: string;
101
+ type: string;
102
+ status: "optional";
103
+ };
104
+ stretch: {
105
+ doc: string;
106
+ type: string;
107
+ status: "optional";
108
+ };
109
+ status: {
110
+ doc: string;
111
+ type: string[];
112
+ status: "optional";
113
+ };
114
+ status_state: {
115
+ doc: string;
116
+ type: string[];
117
+ status: "optional";
118
+ };
119
+ status_props: {
120
+ doc: string;
121
+ type: string;
122
+ status: "optional";
123
+ };
124
+ globalStatus: {
125
+ doc: string;
126
+ type: string;
127
+ status: "optional";
128
+ };
129
+ label: {
130
+ doc: string;
131
+ type: string;
132
+ status: "optional";
133
+ };
134
+ label_direction: {
135
+ doc: string;
136
+ type: string[];
137
+ status: "optional";
138
+ };
139
+ label_sr_only: {
140
+ doc: string;
141
+ type: string;
142
+ status: "optional";
143
+ };
144
+ suffix: {
145
+ doc: string;
146
+ type: string;
147
+ status: "optional";
148
+ };
149
+ trigger_element: {
150
+ doc: string;
151
+ type: string;
152
+ status: "optional";
153
+ };
154
+ innerRef: {
155
+ doc: string;
156
+ type: string;
157
+ status: "optional";
158
+ };
159
+ buttonRef: {
160
+ doc: string;
161
+ type: string;
162
+ status: "optional";
163
+ };
164
+ skeleton: {
165
+ doc: string;
166
+ type: string;
167
+ status: "optional";
168
+ };
169
+ '[DrawerList](/uilib/components/fragments/drawer-list/properties)': {
170
+ doc: string;
171
+ type: string;
172
+ status: "optional";
173
+ };
174
+ '[Space](/uilib/layout/space/properties)': {
175
+ doc: string;
176
+ type: string[];
177
+ status: "optional";
178
+ };
179
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownDocs.js","names":["DropdownEvents","on_change","doc","type","status","on_select","on_show","on_hide","DropdownProperties","title","value","variant","icon","icon_size","icon_position","triangle_position","size","opened","open_on_focus","prevent_selection","action_menu","more_menu","align_dropdown","independent_width","skip_portal","stretch","status_state","status_props","globalStatus","label","label_direction","label_sr_only","suffix","trigger_element","innerRef","buttonRef","skeleton"],"sources":["../../../../src/components/dropdown/DropdownDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const DropdownEvents: PropertiesTableProps = {\n on_change: {\n doc: 'will be called on state changes made by the user. Returns an object with the new selected `data` item `{ data, event, attributes, value }`.',\n type: 'function',\n status: 'optional',\n },\n on_select: {\n doc: 'will be called once the user focuses or selects an item by a click or keyboard navigation. Returns an object with the new selected `data` item `{ data, event, attributes, value, active_item }`. The **active_item** property is the currently selected item by keyboard navigation.',\n type: 'function',\n status: 'optional',\n },\n on_show: {\n doc: 'will be called once the user presses the dropdown. Returns the data item `{ data, attributes }`.',\n type: 'function',\n status: 'optional',\n },\n on_hide: {\n doc: 'will be called once the user presses the dropdown again, or clicks somewhere else. Returns the data item `{ data, attributes }`.',\n type: 'function',\n status: 'optional',\n },\n}\n\nexport const DropdownProperties: PropertiesTableProps = {\n title: {\n doc: 'give a title to let the users know what they have to do. Defaults to `Valgmeny`.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n value: {\n doc: 'define a preselected data entry (index). More info down below.',\n type: 'number',\n status: 'optional',\n },\n variant: {\n doc: 'defines the kind of dropdown. Possible values are `primary`, `secondary`, `tertiary` and `signal`. Defaults to `secondary`.',\n type: ['primary', 'secondary', 'tertiary', 'signal'],\n status: 'optional',\n },\n icon: {\n doc: 'icon to be included in the dropdown.',\n type: 'React.Node',\n status: 'optional',\n },\n icon_size: {\n doc: 'change the size of the icon pragmatically.',\n type: 'string',\n status: 'optional',\n },\n icon_position: {\n doc: 'position of the icon inside the dropdown. Set to `left` or `right`. Defaults to `right`.',\n type: ['left', 'right'],\n status: 'optional',\n },\n triangle_position: {\n doc: 'position of arrow / triangle of the drawer. Set to `left` or `right`. Defaults to `right`.',\n type: ['left', 'right'],\n status: 'optional',\n },\n size: {\n doc: 'define the height of the Dropdown. Can be set to `small`, `default`, `medium` and `large`. Defaults to `default`.',\n type: ['small', 'default', 'medium', 'large'],\n status: 'optional',\n },\n opened: {\n doc: 'if set to `true`, the Dropdown will be rendered initially with a visible and accessible data list / options.',\n type: 'boolean',\n status: 'optional',\n },\n open_on_focus: {\n doc: 'if set to `true`, the Dropdown will be opened when the users enter the trigger button with a focus action.',\n type: 'boolean',\n status: 'optional',\n },\n prevent_selection: {\n doc: 'if set to `true`, no permanent selection will be made. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n action_menu: {\n doc: 'same as `prevent_selection`, but the DrawerList will be opened from the bottom of the page for mobile devices. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n more_menu: {\n doc: 'same as `prevent_selection`, but the \"selection area\" (given title) will not be visible and the icon `more` (three dots) is used. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n align_dropdown: {\n doc: 'use `right` to change the options alignment direction. Makes only sense to use in combination with `prevent_selection` or `more_menu`. Defaults to `left`.',\n type: ['left', 'right'],\n status: 'optional',\n },\n independent_width: {\n doc: \"If set to `true`, the Dropdown will handle it's width independent to the content width. Defaults to `false`.\",\n type: 'boolean',\n status: 'optional',\n },\n skip_portal: {\n doc: 'set to `true` to disable the React Portal behavior. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n stretch: {\n doc: 'if set to `true`, then the dropdown will be 100% in available `width`.',\n type: 'boolean',\n status: 'optional',\n },\n status: {\n doc: 'text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.',\n type: ['error', 'info', 'boolean'],\n status: 'optional',\n },\n status_state: {\n doc: \"defines the state of the status. It's two statuses `[error, info]`. Defaults to `error`.\",\n type: ['error', 'info'],\n status: 'optional',\n },\n status_props: {\n doc: 'use an object to define additional FormStatus properties.',\n type: 'object',\n status: 'optional',\n },\n globalStatus: {\n doc: 'the [configuration](/uilib/components/global-status/properties/#configuration-object) used for the target [GlobalStatus](/uilib/components/global-status).',\n type: 'object',\n status: 'optional',\n },\n label: {\n doc: 'prepends the Form Label component. If no ID is provided, a random ID is created.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n label_direction: {\n doc: 'use `label_direction=\"vertical\"` to change the label layout direction. Defaults to `horizontal`.',\n type: ['horizontal', 'vertical'],\n status: 'optional',\n },\n label_sr_only: {\n doc: 'use `true` to make the label only readable by screen readers.',\n type: 'boolean',\n status: 'optional',\n },\n suffix: {\n doc: 'text describing the content of the Dropdown more than the label. You can also send in a React component, so it gets wrapped inside the Dropdown component.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n trigger_element: {\n doc: 'lets you provide a custom React element as the trigger HTML element.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n innerRef: {\n doc: 'by providing a React.ref you can get the internally used main element (DOM). E.g. `innerRef={myRef}` by using `React.createRef()` or `React.useRef()`.',\n type: 'React.RefObject',\n status: 'optional',\n },\n buttonRef: {\n doc: 'by providing a React.ref you can get the internally used button element (DOM). E.g. `buttonRef={myRef}` by using `React.createRef()` or `React.useRef()`.',\n type: 'React.RefObject',\n status: 'optional',\n },\n skeleton: {\n doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',\n type: 'boolean',\n status: 'optional',\n },\n '[DrawerList](/uilib/components/fragments/drawer-list/properties)': {\n doc: 'all DrawerList properties.',\n type: 'Various',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DropdownDocs.js","names":["DropdownEvents","on_change","doc","type","status","on_select","on_show","on_hide","DropdownProperties","title","value","variant","icon","icon_size","icon_position","triangle_position","size","opened","open_on_focus","prevent_selection","action_menu","more_menu","align_dropdown","independent_width","skip_portal","stretch","status_state","status_props","globalStatus","label","label_direction","label_sr_only","suffix","trigger_element","innerRef","buttonRef","skeleton"],"sources":["../../../../src/components/dropdown/DropdownDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const DropdownEvents = {\n on_change: {\n doc: 'will be called on state changes made by the user. Returns an object with the new selected `data` item `{ data, event, attributes, value }`.',\n type: 'function',\n status: 'optional',\n },\n on_select: {\n doc: 'will be called once the user focuses or selects an item by a click or keyboard navigation. Returns an object with the new selected `data` item `{ data, event, attributes, value, active_item }`. The **active_item** property is the currently selected item by keyboard navigation.',\n type: 'function',\n status: 'optional',\n },\n on_show: {\n doc: 'will be called once the user presses the dropdown. Returns the data item `{ data, attributes }`.',\n type: 'function',\n status: 'optional',\n },\n on_hide: {\n doc: 'will be called once the user presses the dropdown again, or clicks somewhere else. Returns the data item `{ data, attributes }`.',\n type: 'function',\n status: 'optional',\n },\n} satisfies PropertiesTableProps\n\nexport const DropdownProperties = {\n title: {\n doc: 'give a title to let the users know what they have to do. Defaults to `Valgmeny`.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n value: {\n doc: 'define a preselected data entry (index). More info down below.',\n type: 'number',\n status: 'optional',\n },\n variant: {\n doc: 'defines the kind of dropdown. Possible values are `primary`, `secondary`, `tertiary` and `signal`. Defaults to `secondary`.',\n type: ['primary', 'secondary', 'tertiary', 'signal'],\n status: 'optional',\n },\n icon: {\n doc: 'icon to be included in the dropdown.',\n type: 'React.Node',\n status: 'optional',\n },\n icon_size: {\n doc: 'change the size of the icon pragmatically.',\n type: 'string',\n status: 'optional',\n },\n icon_position: {\n doc: 'position of the icon inside the dropdown. Set to `left` or `right`. Defaults to `right`.',\n type: ['left', 'right'],\n status: 'optional',\n },\n triangle_position: {\n doc: 'position of arrow / triangle of the drawer. Set to `left` or `right`. Defaults to `right`.',\n type: ['left', 'right'],\n status: 'optional',\n },\n size: {\n doc: 'define the height of the Dropdown. Can be set to `small`, `default`, `medium` and `large`. Defaults to `default`.',\n type: ['small', 'default', 'medium', 'large'],\n status: 'optional',\n },\n opened: {\n doc: 'if set to `true`, the Dropdown will be rendered initially with a visible and accessible data list / options.',\n type: 'boolean',\n status: 'optional',\n },\n open_on_focus: {\n doc: 'if set to `true`, the Dropdown will be opened when the users enter the trigger button with a focus action.',\n type: 'boolean',\n status: 'optional',\n },\n prevent_selection: {\n doc: 'if set to `true`, no permanent selection will be made. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n action_menu: {\n doc: 'same as `prevent_selection`, but the DrawerList will be opened from the bottom of the page for mobile devices. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n more_menu: {\n doc: 'same as `prevent_selection`, but the \"selection area\" (given title) will not be visible and the icon `more` (three dots) is used. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n align_dropdown: {\n doc: 'use `right` to change the options alignment direction. Makes only sense to use in combination with `prevent_selection` or `more_menu`. Defaults to `left`.',\n type: ['left', 'right'],\n status: 'optional',\n },\n independent_width: {\n doc: \"If set to `true`, the Dropdown will handle it's width independent to the content width. Defaults to `false`.\",\n type: 'boolean',\n status: 'optional',\n },\n skip_portal: {\n doc: 'set to `true` to disable the React Portal behavior. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n stretch: {\n doc: 'if set to `true`, then the dropdown will be 100% in available `width`.',\n type: 'boolean',\n status: 'optional',\n },\n status: {\n doc: 'text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.',\n type: ['error', 'info', 'boolean'],\n status: 'optional',\n },\n status_state: {\n doc: \"defines the state of the status. It's two statuses `[error, info]`. Defaults to `error`.\",\n type: ['error', 'info'],\n status: 'optional',\n },\n status_props: {\n doc: 'use an object to define additional FormStatus properties.',\n type: 'object',\n status: 'optional',\n },\n globalStatus: {\n doc: 'the [configuration](/uilib/components/global-status/properties/#configuration-object) used for the target [GlobalStatus](/uilib/components/global-status).',\n type: 'object',\n status: 'optional',\n },\n label: {\n doc: 'prepends the Form Label component. If no ID is provided, a random ID is created.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n label_direction: {\n doc: 'use `label_direction=\"vertical\"` to change the label layout direction. Defaults to `horizontal`.',\n type: ['horizontal', 'vertical'],\n status: 'optional',\n },\n label_sr_only: {\n doc: 'use `true` to make the label only readable by screen readers.',\n type: 'boolean',\n status: 'optional',\n },\n suffix: {\n doc: 'text describing the content of the Dropdown more than the label. You can also send in a React component, so it gets wrapped inside the Dropdown component.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n trigger_element: {\n doc: 'lets you provide a custom React element as the trigger HTML element.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n innerRef: {\n doc: 'by providing a React.ref you can get the internally used main element (DOM). E.g. `innerRef={myRef}` by using `React.createRef()` or `React.useRef()`.',\n type: 'React.RefObject',\n status: 'optional',\n },\n buttonRef: {\n doc: 'by providing a React.ref you can get the internally used button element (DOM). E.g. `buttonRef={myRef}` by using `React.createRef()` or `React.useRef()`.',\n type: 'React.RefObject',\n status: 'optional',\n },\n skeleton: {\n doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',\n type: 'boolean',\n status: 'optional',\n },\n '[DrawerList](/uilib/components/fragments/drawer-list/properties)': {\n doc: 'all DrawerList properties.',\n type: 'Various',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n} satisfies PropertiesTableProps\n"],"mappings":"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","ignoreList":[]}
@@ -32,8 +32,12 @@ export const correctInternalHeadingLevel = _ref => {
32
32
  if (bypassChecks) {
33
33
  counter.enableBypassChecks();
34
34
  }
35
+ const hasCounterWasCorrectedToLevel2 = () => {
36
+ var _globalSyncCounter$cu, _globalHeadingCounter;
37
+ return (globalSyncCounter === null || globalSyncCounter === void 0 ? void 0 : (_globalSyncCounter$cu = globalSyncCounter.current) === null || _globalSyncCounter$cu === void 0 ? void 0 : _globalSyncCounter$cu.level) === 1 && (globalHeadingCounter === null || globalHeadingCounter === void 0 ? void 0 : (_globalHeadingCounter = globalHeadingCounter.current) === null || _globalHeadingCounter === void 0 ? void 0 : _globalHeadingCounter.hasCorrection()) && (counter === null || counter === void 0 ? void 0 : counter.getLevel()) === 2;
38
+ };
35
39
  const update = level => {
36
- var _globalHeadingCounter;
40
+ var _globalHeadingCounter2;
37
41
  if (!isRerender) {
38
42
  counter.makeMeReady({
39
43
  level
@@ -51,12 +55,12 @@ export const correctInternalHeadingLevel = _ref => {
51
55
  counter.setLevel(level);
52
56
  } else if (decrease) {
53
57
  counter.decrement();
54
- } else if (increase) {
58
+ } else if (increase && !hasCounterWasCorrectedToLevel2()) {
55
59
  counter.increment();
56
60
  }
57
- if (counter.level > 0 && !((_globalHeadingCounter = globalHeadingCounter.current) !== null && _globalHeadingCounter !== void 0 && _globalHeadingCounter.hasEntryLevel())) {
58
- var _globalHeadingCounter2;
59
- (_globalHeadingCounter2 = globalHeadingCounter.current) === null || _globalHeadingCounter2 === void 0 ? void 0 : _globalHeadingCounter2.setEntryLevel();
61
+ if (counter.level > 0 && !((_globalHeadingCounter2 = globalHeadingCounter.current) !== null && _globalHeadingCounter2 !== void 0 && _globalHeadingCounter2.hasEntryLevel())) {
62
+ var _globalHeadingCounter3;
63
+ (_globalHeadingCounter3 = globalHeadingCounter.current) === null || _globalHeadingCounter3 === void 0 ? void 0 : _globalHeadingCounter3.setEntryLevel();
60
64
  }
61
65
  };
62
66
  let skipUpdateFromProp = false;