@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
@@ -1,24 +1,25 @@
1
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
- import _extends from "@babel/runtime/helpers/esm/extends";
1
+ "use client";
2
+
3
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
- const _excluded = ["role", "align_drawer", "fixed_position", "independent_width", "scrollable", "focusable", "size", "no_animation", "no_scroll_animation", "prevent_selection", "action_menu", "is_popup", "portal_class", "list_class", "ignore_events", "options_render", "className", "cache_hash", "wrapper_element", "triangle_position", "direction", "max_height", "id", "data", "prepared_data", "raw_data", "opened", "value", "children"],
5
- _excluded2 = ["children", "className", "triangleRef", "cache_hash", "showFocusRing"],
6
- _excluded3 = ["role", "hash", "children", "className", "on_click", "selected", "active", "value", "disabled"],
7
- _excluded4 = ["children", "className"],
8
- _excluded5 = ["className"];
9
- import "core-js/modules/web.dom-collections.iterator.js";
4
+ import _extends from "@babel/runtime/helpers/esm/extends";
5
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
6
+ const _excluded = ["data", "children", "id"],
7
+ _excluded2 = ["role", "align_drawer", "fixed_position", "independent_width", "scrollable", "focusable", "size", "no_animation", "no_scroll_animation", "prevent_selection", "action_menu", "is_popup", "portal_class", "list_class", "ignore_events", "options_render", "className", "cache_hash", "wrapper_element", "triangle_position", "direction", "max_height", "id", "data", "opened", "value", "children"],
8
+ _excluded3 = ["selected_item", "active_item", "max_height"],
9
+ _excluded4 = ["children", "className", "triangleRef", "cache_hash", "showFocusRing"];
10
10
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
11
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
- import React from 'react';
13
- import PropTypes from 'prop-types';
12
+ import "core-js/modules/web.dom-collections.iterator.js";
13
+ import React, { useContext } from 'react';
14
14
  import classnames from 'classnames';
15
- import { isTrue, makeUniqueId, extendPropsWithContextInClassComponent, validateDOMAttributes, dispatchCustomElementEvent, keycode } from '../../shared/component-helper';
15
+ import { isTrue, makeUniqueId, extendPropsWithContextInClassComponent, validateDOMAttributes, keycode } from '../../shared/component-helper';
16
16
  import { getThemeClasses } from '../../shared/Theme';
17
17
  import { createSpacingClasses } from '../../components/space/SpacingHelper';
18
18
  import DrawerListContext from './DrawerListContext';
19
19
  import DrawerListProvider from './DrawerListProvider';
20
20
  import DrawerListPortal from './DrawerListPortal';
21
- import { drawerListPropTypes, drawerListDefaultProps } from './DrawerListHelpers';
21
+ import { drawerListDefaultProps } from './DrawerListHelpers';
22
+ import { DrawerListHorizontalItem, DrawerListItem } from './DrawerListItem';
22
23
  const propsToFilterOut = {
23
24
  on_show: null,
24
25
  on_hide: null,
@@ -32,32 +33,29 @@ const propsToFilterOut = {
32
33
  options_render: null,
33
34
  wrapper_element: null
34
35
  };
35
- export default class DrawerList extends React.PureComponent {
36
- constructor(props) {
37
- super(props);
38
- this._id = props.id || makeUniqueId();
39
- }
40
- render() {
41
- var _this$context;
42
- const hasProvider = (_this$context = this.context) === null || _this$context === void 0 ? void 0 : _this$context.drawerList;
43
- if (hasProvider) {
44
- return React.createElement(DrawerListInstance, this.props);
45
- }
46
- return React.createElement(DrawerListProvider, _extends({
47
- id: this._id
48
- }, this.props, {
49
- data: this.props.data || this.props.children
50
- }), React.createElement(DrawerListInstance, _extends({
51
- id: this._id
52
- }, this.props)));
36
+ function DrawerList(props) {
37
+ const drawerListContext = useContext(DrawerListContext);
38
+ if (drawerListContext !== null && drawerListContext !== void 0 && drawerListContext.drawerList) {
39
+ return React.createElement(DrawerListInstance, props);
53
40
  }
41
+ const {
42
+ data,
43
+ children,
44
+ id
45
+ } = props,
46
+ rest = _objectWithoutProperties(props, _excluded);
47
+ const _id = id || makeUniqueId();
48
+ return React.createElement(DrawerListProvider, _extends({
49
+ id: _id
50
+ }, rest, {
51
+ data: data || (!React.isValidElement(children) ? children : undefined)
52
+ }), React.createElement(DrawerListInstance, _extends({
53
+ id: _id
54
+ }, props)));
54
55
  }
55
- _defineProperty(DrawerList, "contextType", DrawerListContext);
56
- _defineProperty(DrawerList, "blurDelay", DrawerListProvider.blurDelay);
57
- _defineProperty(DrawerList, "defaultProps", _objectSpread({}, drawerListDefaultProps));
58
- process.env.NODE_ENV !== "production" ? DrawerList.propTypes = _objectSpread({}, drawerListPropTypes) : void 0;
59
- class DrawerListInstance extends React.PureComponent {
60
- constructor(props, context) {
56
+ DrawerList.blurDelay = DrawerListProvider.blurDelay;
57
+ class DrawerListInstance extends React.Component {
58
+ constructor(props) {
61
59
  super(props);
62
60
  _defineProperty(this, "preventTab", e => {
63
61
  switch (keycode(e)) {
@@ -84,20 +82,22 @@ class DrawerListInstance extends React.PureComponent {
84
82
  });
85
83
  this._id = props.id || makeUniqueId();
86
84
  this.state = this.state || {};
87
- context.drawerList.setState(Object.entries(propsToFilterOut).reduce((acc, _ref) => {
85
+ }
86
+ componentDidMount() {
87
+ this.context.drawerList.setState(Object.entries(propsToFilterOut).reduce((acc, _ref) => {
88
88
  let [key] = _ref;
89
- if (props[key]) {
90
- acc[key] = props[key];
89
+ if (this.props[key]) {
90
+ acc[key] = this.props[key];
91
91
  }
92
92
  return acc;
93
93
  }, {}));
94
- context.drawerList.setState({
95
- triangle_position: props.triangle_position
94
+ this.context.drawerList.setState({
95
+ triangle_position: this.props.triangle_position
96
96
  });
97
97
  }
98
98
  render() {
99
- var _this$context2;
100
- const props = extendPropsWithContextInClassComponent(this.props, DrawerList.defaultProps, this.context.getTranslation(this.props).DrawerList);
99
+ var _this$context;
100
+ const props = extendPropsWithContextInClassComponent(this.props, DrawerListInstance.defaultProps);
101
101
  const {
102
102
  role,
103
103
  align_drawer,
@@ -123,14 +123,25 @@ class DrawerListInstance extends React.PureComponent {
123
123
  max_height: _max_height,
124
124
  id: _id,
125
125
  data: _data,
126
- prepared_data: _prepared_data,
127
- raw_data: _raw_data,
128
126
  opened: _opened,
129
127
  value: _value,
130
128
  children
131
129
  } = props,
132
- attributes = _objectWithoutProperties(props, _excluded);
130
+ attributes = _objectWithoutProperties(props, _excluded2);
133
131
  const id = this._id;
132
+ function noNullNumbers(_ref2) {
133
+ let {
134
+ selected_item,
135
+ active_item,
136
+ max_height
137
+ } = _ref2,
138
+ rest = _objectWithoutProperties(_ref2, _excluded3);
139
+ return _objectSpread({
140
+ selected_item: selected_item !== null && selected_item !== void 0 ? selected_item : undefined,
141
+ active_item: active_item !== null && active_item !== void 0 ? active_item : undefined,
142
+ max_height: max_height !== null && max_height !== void 0 ? max_height : undefined
143
+ }, rest);
144
+ }
134
145
  const {
135
146
  data,
136
147
  opened,
@@ -151,7 +162,7 @@ class DrawerListInstance extends React.PureComponent {
151
162
  _refTriangle,
152
163
  _refUl,
153
164
  _refRoot
154
- } = this.context.drawerList;
165
+ } = noNullNumbers(this.context.drawerList);
155
166
  const mainParams = _objectSpread({
156
167
  id: `${id}-drawer-list`,
157
168
  className: classnames(`dnb-drawer-list dnb-drawer-list--${direction}`, (isTrue(independent_width) || isTrue(action_menu)) && 'dnb-drawer-list--independent-width', createSpacingClasses(props), className, opened && 'dnb-drawer-list--opened', hidden && 'dnb-drawer-list--hidden', triangle_position && `dnb-drawer-list--triangle-position-${triangle_position}`, align_drawer && `dnb-drawer-list--${align_drawer}`, size && `dnb-drawer-list--${size}`, isTrue(action_menu) && `dnb-drawer-list--action-menu`, isTrue(is_popup) && 'dnb-drawer-list--is-popup', isTrue(scrollable) && 'dnb-drawer-list--scroll', isTrue(no_scroll_animation) && 'dnb-drawer-list--no-scroll-animation')
@@ -165,9 +176,9 @@ class DrawerListInstance extends React.PureComponent {
165
176
  id: `${id}-ul`,
166
177
  'aria-expanded': opened,
167
178
  'aria-labelledby': `${id}-label`,
168
- tabIndex: '-1',
179
+ tabIndex: -1,
169
180
  style: {
170
- maxHeight: max_height > 0 ? `${max_height}rem` : null
181
+ maxHeight: parseFloat(max_height) > 0 ? `${max_height}rem` : null
171
182
  },
172
183
  ref: _refUl
173
184
  };
@@ -177,7 +188,7 @@ class DrawerListInstance extends React.PureComponent {
177
188
  ulParams['aria-activedescendant'] = `option-${id}-${selected_item}`;
178
189
  }
179
190
  if (isTrue(focusable)) {
180
- ulParams.tabIndex = '0';
191
+ ulParams.tabIndex = 0;
181
192
  }
182
193
  validateDOMAttributes(this.props, mainParams);
183
194
  validateDOMAttributes(null, listParams);
@@ -225,7 +236,7 @@ class DrawerListInstance extends React.PureComponent {
225
236
  }) : React.createElement(Items, null)), React.createElement(OnMounted, {
226
237
  addObservers: addObservers,
227
238
  removeObservers: removeObservers
228
- })) : children && React.createElement("span", {
239
+ })) : React.isValidElement(children) && React.createElement("span", {
229
240
  className: "dnb-drawer-list__content"
230
241
  }, children, React.createElement("span", {
231
242
  className: "dnb-drawer-list__triangle",
@@ -241,22 +252,21 @@ class DrawerListInstance extends React.PureComponent {
241
252
  include_owner_width: align_drawer === 'right',
242
253
  independent_width: isTrue(independent_width),
243
254
  fixed_position: isTrue(fixed_position),
244
- className: getThemeClasses((_this$context2 = this.context) === null || _this$context2 === void 0 ? void 0 : _this$context2.theme, portal_class)
255
+ className: getThemeClasses((_this$context = this.context) === null || _this$context === void 0 ? void 0 : _this$context.theme, portal_class)
245
256
  }, mainList) : mainList);
246
257
  }
247
258
  }
248
- _defineProperty(DrawerListInstance, "defaultProps", DrawerList.defaultProps);
259
+ _defineProperty(DrawerListInstance, "defaultProps", _objectSpread({}, drawerListDefaultProps));
249
260
  _defineProperty(DrawerListInstance, "contextType", DrawerListContext);
250
- process.env.NODE_ENV !== "production" ? DrawerListInstance.propTypes = DrawerList.propTypes : void 0;
251
261
  DrawerList.Options = React.memo(React.forwardRef((props, ref) => {
252
262
  const {
253
263
  children,
254
- className = null,
255
- triangleRef = null,
256
- cache_hash = null,
264
+ className,
265
+ triangleRef,
266
+ cache_hash,
257
267
  showFocusRing = false
258
268
  } = props,
259
- rest = _objectWithoutProperties(props, _excluded2);
269
+ rest = _objectWithoutProperties(props, _excluded4);
260
270
  return React.createElement("ul", _extends({
261
271
  className: classnames('dnb-drawer-list__options', className, showFocusRing && 'dnb-drawer-list__options--focusring')
262
272
  }, rest, {
@@ -272,119 +282,8 @@ DrawerList.Options = React.memo(React.forwardRef((props, ref) => {
272
282
  }
273
283
  return prevProps.cache_hash === nextProps.cache_hash;
274
284
  });
275
- DrawerList.Options.displayName = 'DrawerList.Options';
276
- DrawerList.Options.propTypes = {
277
- children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]).isRequired,
278
- cache_hash: PropTypes.string,
279
- showFocusRing: PropTypes.bool,
280
- className: PropTypes.string,
281
- triangleRef: PropTypes.object
282
- };
283
- DrawerList.Item = React.forwardRef((props, ref) => {
284
- const {
285
- role = 'option',
286
- hash = '',
287
- children,
288
- className = null,
289
- on_click = null,
290
- selected,
291
- active = null,
292
- value = null,
293
- disabled
294
- } = props,
295
- rest = _objectWithoutProperties(props, _excluded3);
296
- const params = {
297
- className: classnames(className, 'dnb-drawer-list__option', selected && 'dnb-drawer-list__option--selected', active && 'dnb-drawer-list__option--focus'),
298
- role,
299
- tabIndex: selected ? '0' : '-1',
300
- 'aria-selected': active,
301
- disabled,
302
- 'aria-disabled': disabled
303
- };
304
- if (selected) {
305
- params['aria-current'] = true;
306
- }
307
- if (on_click) {
308
- params.onClick = () => dispatchCustomElementEvent({
309
- props: _objectSpread(_objectSpread({}, props), {}, {
310
- displayName: DrawerList.Item.displayName
311
- })
312
- }, 'on_click', _objectSpread({
313
- selected,
314
- value
315
- }, rest));
316
- }
317
- return React.createElement("li", _extends({}, params, rest, {
318
- ref: ref,
319
- key: 'li' + hash
320
- }), React.createElement("span", {
321
- className: "dnb-drawer-list__option__inner"
322
- }, React.createElement(ItemContent, {
323
- hash: hash
324
- }, children)));
325
- });
326
- DrawerList.Item.displayName = 'DrawerList.Item';
327
- DrawerList.Item.propTypes = {
328
- role: PropTypes.string,
329
- hash: PropTypes.string,
330
- children: PropTypes.oneOfType([PropTypes.node, PropTypes.func, PropTypes.object]).isRequired,
331
- className: PropTypes.string,
332
- on_click: PropTypes.func,
333
- selected: PropTypes.bool,
334
- active: PropTypes.bool,
335
- value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
336
- disabled: PropTypes.bool
337
- };
338
- export function ItemContent(_ref2) {
339
- let {
340
- hash = '',
341
- children = undefined
342
- } = _ref2;
343
- let content = null;
344
- if (Array.isArray(children.content || children)) {
345
- content = (children.content || children).map((item, n) => React.createElement(DrawerListOptionItem, {
346
- key: hash + n,
347
- className: `item-nr-${n + 1}`
348
- }, children.render ? children.render(item, hash + n) : item));
349
- } else if (Object.prototype.hasOwnProperty.call(children, 'content')) {
350
- content = children.render ? children.render(children.content, hash, children) : children.content;
351
- if (content) {
352
- content = React.createElement(DrawerListOptionItem, null, content);
353
- }
354
- } else {
355
- content = children && React.createElement(DrawerListOptionItem, null, children);
356
- }
357
- return Object.prototype.hasOwnProperty.call(children, 'suffix_value') ? React.createElement(React.Fragment, null, content, React.createElement(DrawerListOptionItem, {
358
- className: "dnb-drawer-list__option__suffix"
359
- }, children.suffix_value)) : content;
360
- }
361
- process.env.NODE_ENV !== "production" ? ItemContent.propTypes = {
362
- hash: PropTypes.string,
363
- children: PropTypes.oneOfType([PropTypes.node, PropTypes.object])
364
- } : void 0;
365
- function DrawerListOptionItem(_ref3) {
366
- let {
367
- children = undefined,
368
- className = null
369
- } = _ref3,
370
- props = _objectWithoutProperties(_ref3, _excluded4);
371
- return React.createElement("span", _extends({
372
- className: classnames('dnb-drawer-list__option__item', className)
373
- }, props), children);
374
- }
375
- DrawerList.HorizontalItem = _ref4 => {
376
- let {
377
- className = null
378
- } = _ref4,
379
- props = _objectWithoutProperties(_ref4, _excluded5);
380
- return React.createElement(DrawerListOptionItem, _extends({
381
- className: classnames('dnb-drawer-list__option__item--horizontal', className)
382
- }, props));
383
- };
384
- DrawerList.HorizontalItem.propTypes = {
385
- children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]).isRequired,
386
- className: PropTypes.string
387
- };
285
+ DrawerList.Item = DrawerListItem;
286
+ DrawerList.HorizontalItem = DrawerListHorizontalItem;
388
287
  class OnMounted extends React.PureComponent {
389
288
  componentDidMount() {
390
289
  this.props.addObservers();
@@ -396,8 +295,5 @@ class OnMounted extends React.PureComponent {
396
295
  return null;
397
296
  }
398
297
  }
399
- process.env.NODE_ENV !== "production" ? OnMounted.propTypes = {
400
- addObservers: PropTypes.func.isRequired,
401
- removeObservers: PropTypes.func.isRequired
402
- } : void 0;
298
+ export default DrawerList;
403
299
  //# sourceMappingURL=DrawerList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerList.js","names":["React","PropTypes","classnames","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","dispatchCustomElementEvent","keycode","getThemeClasses","createSpacingClasses","DrawerListContext","DrawerListProvider","DrawerListPortal","drawerListPropTypes","drawerListDefaultProps","propsToFilterOut","on_show","on_hide","handle_dismiss_focus","on_change","on_pre_change","on_resize","on_select","on_state_update","on_key_down","options_render","wrapper_element","DrawerList","PureComponent","constructor","props","_id","id","render","_this$context","hasProvider","context","drawerList","createElement","DrawerListInstance","_extends","data","children","_defineProperty","blurDelay","_objectSpread","process","env","NODE_ENV","propTypes","e","hasFocusOnElement","preventDefault","setHidden","event","selected_item","parseFloat","currentTarget","getAttribute","selectItemAndClose","fireSelectEvent","state","setState","Object","entries","reduce","acc","_ref","key","triangle_position","_this$context2","defaultProps","getTranslation","role","align_drawer","fixed_position","independent_width","scrollable","focusable","size","no_animation","no_scroll_animation","prevent_selection","action_menu","is_popup","portal_class","list_class","ignore_events","className","cache_hash","_cache_hash","_wrapper_element","_triangle_position","direction","_direction","max_height","_max_height","_data","prepared_data","_prepared_data","raw_data","_raw_data","opened","_opened","value","_value","attributes","_objectWithoutProperties","_excluded","hidden","active_item","showFocusRing","closestToTop","closestToBottom","usePortal","addObservers","removeObservers","_refShell","_refTriangle","_refUl","_refRoot","mainParams","listParams","ulParams","tabIndex","style","maxHeight","ref","assign","ignoreEvents","Items","map","dataItem","i","__id","hash","liParams","class_name","length","active","selected","onClick","selectItemHandler","onKeyDown","preventTab","disabled","Item","mainList","Fragment","Options","triangleRef","OnMounted","rootRef","include_owner_width","theme","memo","forwardRef","rest","_excluded2","prevProps","nextProps","displayName","oneOfType","node","func","isRequired","string","bool","object","on_click","_excluded3","params","ItemContent","number","_ref2","undefined","content","Array","isArray","item","n","DrawerListOptionItem","prototype","hasOwnProperty","call","suffix_value","_ref3","_excluded4","HorizontalItem","_ref4","_excluded5","componentDidMount","componentWillUnmount"],"sources":["../../../../src/fragments/drawer-list/DrawerList.js"],"sourcesContent":["/**\n * Web List 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 dispatchCustomElementEvent,\n keycode,\n} from '../../shared/component-helper'\nimport { getThemeClasses } from '../../shared/Theme'\nimport { createSpacingClasses } from '../../components/space/SpacingHelper'\n\nimport DrawerListContext from './DrawerListContext'\nimport DrawerListProvider from './DrawerListProvider'\nimport DrawerListPortal from './DrawerListPortal'\nimport {\n drawerListPropTypes,\n drawerListDefaultProps,\n} from './DrawerListHelpers'\n\nconst propsToFilterOut = {\n on_show: null,\n on_hide: null,\n handle_dismiss_focus: null,\n on_change: null,\n on_pre_change: null,\n on_resize: null,\n on_select: null,\n on_state_update: null,\n on_key_down: null,\n options_render: null,\n wrapper_element: null,\n}\n\nexport default class DrawerList extends React.PureComponent {\n static contextType = DrawerListContext // only used for the hasProvide check\n\n static blurDelay = DrawerListProvider.blurDelay // some ms more than \"DrawerListSlideDown 200ms\" = 201 // some ms more than \"DrawerListSlideDown 200ms\"\n\n static propTypes = {\n ...drawerListPropTypes,\n }\n\n static defaultProps = {\n ...drawerListDefaultProps,\n }\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n }\n\n render() {\n const hasProvider = this.context?.drawerList\n\n if (hasProvider) {\n return <DrawerListInstance {...this.props} />\n }\n\n return (\n <DrawerListProvider\n id={this._id}\n {...this.props}\n data={this.props.data || this.props.children}\n >\n <DrawerListInstance id={this._id} {...this.props} />\n </DrawerListProvider>\n )\n }\n}\n\nclass DrawerListInstance extends React.PureComponent {\n static propTypes = DrawerList.propTypes\n static defaultProps = DrawerList.defaultProps\n static contextType = DrawerListContext\n\n constructor(props, context) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n this.state = this.state || {}\n\n // send along the event handlers to the provider state\n context.drawerList.setState(\n Object.entries(propsToFilterOut).reduce((acc, [key]) => {\n if (props[key]) {\n acc[key] = props[key]\n }\n return acc\n }, {})\n )\n\n context.drawerList.setState({\n triangle_position: props.triangle_position,\n })\n }\n\n preventTab = (e) => {\n switch (keycode(e)) {\n case 'tab':\n if (!this.context.drawerList.hasFocusOnElement) {\n e.preventDefault()\n this.context.drawerList.setHidden()\n }\n break\n\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n selectItemHandler = (event) => {\n // In case we want to stop if the users makes a number selection.\n // Should optional\n // if (getPreviousSibling('dnb-number-format', event.target)) {\n // return // stop\n // }\n const selected_item = parseFloat(\n event.currentTarget.getAttribute('data-item')\n )\n if (selected_item > -1) {\n this.context.drawerList.selectItemAndClose(selected_item, {\n fireSelectEvent: true,\n event,\n })\n }\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n DrawerList.defaultProps,\n this.context.getTranslation(this.props).DrawerList\n )\n\n const {\n role,\n align_drawer,\n fixed_position,\n independent_width,\n scrollable,\n focusable,\n size,\n no_animation,\n no_scroll_animation,\n prevent_selection,\n action_menu,\n is_popup,\n portal_class,\n list_class,\n ignore_events,\n options_render,\n className,\n cache_hash: _cache_hash, // eslint-disable-line\n wrapper_element: _wrapper_element, // eslint-disable-line\n triangle_position: _triangle_position, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n max_height: _max_height, // eslint-disable-line\n id: _id, // eslint-disable-line\n data: _data, // eslint-disable-line\n prepared_data: _prepared_data, // eslint-disable-line\n raw_data: _raw_data, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n children,\n\n ...attributes\n } = props\n\n const id = this._id\n\n const {\n data,\n opened,\n hidden,\n triangle_position,\n direction,\n max_height,\n cache_hash,\n selected_item,\n active_item,\n showFocusRing,\n closestToTop,\n closestToBottom,\n usePortal,\n addObservers,\n removeObservers,\n _refShell,\n _refTriangle,\n _refUl,\n _refRoot,\n } = this.context.drawerList\n\n const mainParams = {\n id: `${id}-drawer-list`,\n className: classnames(\n 'dnb-drawer-list',\n opened && 'dnb-drawer-list--opened',\n hidden && 'dnb-drawer-list--hidden',\n `dnb-drawer-list--${direction}`,\n triangle_position &&\n `dnb-drawer-list--triangle-position-${triangle_position}`,\n align_drawer && `dnb-drawer-list--${align_drawer}`,\n size && `dnb-drawer-list--${size}`,\n isTrue(action_menu) && `dnb-drawer-list--action-menu`,\n isTrue(is_popup) && 'dnb-drawer-list--is-popup',\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-drawer-list--independent-width',\n isTrue(scrollable) && 'dnb-drawer-list--scroll',\n isTrue(no_scroll_animation) &&\n 'dnb-drawer-list--no-scroll-animation',\n createSpacingClasses(props),\n className\n ),\n ...attributes,\n }\n\n const listParams = {\n id: `${id}-listbox`,\n /**\n * We may consider to use the hidden attribute in future\n * Or we may add an prop to put the HTML in the DOM, if needed\n */\n // hidden: hidden !== false,\n className: classnames(\n 'dnb-drawer-list__list',\n isTrue(no_animation) && 'dnb-drawer-list__list--no-animation',\n list_class\n ),\n }\n\n const ulParams = {\n role,\n id: `${id}-ul`,\n 'aria-expanded': opened,\n 'aria-labelledby': `${id}-label`,\n tabIndex: '-1',\n style: {\n maxHeight: max_height > 0 ? `${max_height}rem` : null,\n },\n ref: _refUl,\n }\n\n if (\n !hidden &&\n (parseFloat(active_item) > -1 ||\n (!(parseFloat(active_item) > -1) &&\n !(parseFloat(selected_item) > -1)))\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${\n parseFloat(active_item) > -1 ? active_item : 0\n }`\n } else if (\n !isTrue(prevent_selection) &&\n !hidden &&\n parseFloat(selected_item) > -1\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${selected_item}`\n }\n\n if (isTrue(focusable)) {\n ulParams.tabIndex = '0'\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, mainParams)\n validateDOMAttributes(null, listParams)\n validateDOMAttributes(null, ulParams)\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 ignoreEvents = isTrue(ignore_events)\n\n const Items = () =>\n data.map((dataItem, i) => {\n const _id = dataItem.__id\n const hash = `option-${id}-${_id}-${i}`\n const liParams = {\n role: role === 'menu' ? 'menuitem' : 'option',\n 'data-item': _id,\n id: `option-${id}-${_id}`,\n hash,\n className: classnames(\n // helper classes\n i === closestToTop && 'closest-to-top',\n i === closestToBottom && 'closest-to-bottom',\n i === 0 && 'first-of-type', // because of the triangle element\n i === data.length - 1 && 'last-of-type', // because of the triangle element\n ignoreEvents || (dataItem.ignore_events && 'ignore-events'),\n dataItem.class_name\n ),\n active: _id == active_item,\n selected: !dataItem.ignore_events && _id == selected_item,\n onClick: this.selectItemHandler,\n onKeyDown: this.preventTab,\n disabled: dataItem.disabled,\n style: dataItem.style,\n }\n\n if (ignoreEvents) {\n liParams.active = null\n liParams.selected = null\n liParams.onClick = null\n liParams.onKeyDown = null\n liParams.className = classnames(\n liParams.className,\n 'dnb-drawer-list__option--ignore'\n )\n }\n\n return (\n <DrawerList.Item key={hash} {...liParams}>\n {dataItem}\n </DrawerList.Item>\n )\n })\n\n const mainList = (\n <span {...mainParams} ref={_refShell}>\n <span {...listParams}>\n {hidden === false && data && data.length > 0 ? (\n <>\n <DrawerList.Options\n cache_hash={\n cache_hash +\n active_item +\n selected_item +\n closestToTop +\n closestToBottom +\n direction +\n max_height\n }\n {...ulParams}\n showFocusRing={showFocusRing}\n triangleRef={_refTriangle}\n >\n {typeof options_render === 'function' ? (\n options_render({ data, Items, Item: DrawerList.Item })\n ) : (\n <Items />\n )}\n </DrawerList.Options>\n <OnMounted\n addObservers={addObservers}\n removeObservers={removeObservers}\n />\n </>\n ) : (\n children && (\n <span className=\"dnb-drawer-list__content\">\n {children}\n <span\n className=\"dnb-drawer-list__triangle\"\n ref={_refTriangle}\n />\n </span>\n )\n )}\n </span>\n </span>\n )\n\n return (\n <span\n className={classnames(\n 'dnb-drawer-list__root',\n usePortal && 'dnb-drawer-list__root--portal'\n )}\n ref={_refRoot}\n >\n {usePortal ? (\n <DrawerListPortal\n id={this._id}\n rootRef={_refRoot}\n opened={hidden === false}\n include_owner_width={align_drawer === 'right'}\n independent_width={isTrue(independent_width)}\n fixed_position={isTrue(fixed_position)}\n className={getThemeClasses(this.context?.theme, portal_class)}\n >\n {mainList}\n </DrawerListPortal>\n ) : (\n mainList\n )}\n </span>\n )\n }\n}\n\n// DrawerList List\nDrawerList.Options = React.memo(\n React.forwardRef((props, ref) => {\n const {\n children,\n className = null,\n triangleRef = null,\n cache_hash = null, // eslint-disable-line\n showFocusRing = false,\n ...rest\n } = props\n\n return (\n <ul\n className={classnames(\n 'dnb-drawer-list__options',\n showFocusRing && 'dnb-drawer-list__options--focusring',\n className\n )}\n {...rest}\n ref={ref}\n >\n {children}\n <li\n className=\"dnb-drawer-list__triangle\"\n aria-hidden\n ref={triangleRef}\n />\n </ul>\n )\n }),\n (prevProps, nextProps) => {\n if (!prevProps.cache_hash) {\n return null\n }\n return prevProps.cache_hash === nextProps.cache_hash\n }\n)\nDrawerList.Options.displayName = 'DrawerList.Options'\nDrawerList.Options.propTypes = {\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func])\n .isRequired,\n cache_hash: PropTypes.string,\n showFocusRing: PropTypes.bool,\n className: PropTypes.string,\n triangleRef: PropTypes.object,\n}\n\n// DrawerList Item\nDrawerList.Item = React.forwardRef((props, ref) => {\n const {\n role = 'option', // eslint-disable-line\n hash = '', // eslint-disable-line\n children, // eslint-disable-line\n className = null, // eslint-disable-line\n on_click = null, // eslint-disable-line\n selected, // eslint-disable-line\n active = null, // eslint-disable-line\n value = null, // eslint-disable-line\n disabled, // eslint-disable-line\n ...rest\n } = props\n\n const params = {\n className: classnames(\n className,\n 'dnb-drawer-list__option',\n selected && 'dnb-drawer-list__option--selected',\n active && 'dnb-drawer-list__option--focus'\n ),\n role,\n tabIndex: selected ? '0' : '-1',\n 'aria-selected': active,\n disabled,\n 'aria-disabled': disabled,\n }\n if (selected) {\n params['aria-current'] = true // has best support on NVDA\n }\n\n if (on_click) {\n params.onClick = () =>\n dispatchCustomElementEvent(\n {\n props: { ...props, displayName: DrawerList.Item.displayName },\n },\n 'on_click',\n {\n selected,\n value,\n ...rest,\n }\n )\n }\n\n return (\n <li {...params} {...rest} ref={ref} key={'li' + hash}>\n <span className=\"dnb-drawer-list__option__inner\">\n <ItemContent hash={hash}>{children}</ItemContent>\n </span>\n </li>\n )\n})\nDrawerList.Item.displayName = 'DrawerList.Item'\nDrawerList.Item.propTypes = {\n role: PropTypes.string,\n hash: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.node,\n PropTypes.func,\n PropTypes.object,\n ]).isRequired,\n className: PropTypes.string,\n on_click: PropTypes.func,\n selected: PropTypes.bool,\n active: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n disabled: PropTypes.bool,\n}\n\nexport function ItemContent({ hash = '', children = undefined }) {\n let content = null\n\n if (Array.isArray(children.content || children)) {\n content = (children.content || children).map((item, n) => (\n <DrawerListOptionItem\n key={hash + n}\n className={`item-nr-${n + 1}`} // \"item-nr\" is used by CSS\n >\n {children.render ? children.render(item, hash + n) : item}\n </DrawerListOptionItem>\n ))\n } else if (Object.prototype.hasOwnProperty.call(children, 'content')) {\n content = children.render\n ? children.render(children.content, hash, children)\n : children.content\n if (content) {\n content = <DrawerListOptionItem>{content}</DrawerListOptionItem>\n }\n } else {\n content = children && (\n <DrawerListOptionItem>{children}</DrawerListOptionItem>\n )\n }\n\n return Object.prototype.hasOwnProperty.call(children, 'suffix_value') ? (\n <>\n {content}\n\n <DrawerListOptionItem className=\"dnb-drawer-list__option__suffix\">\n {children.suffix_value}\n </DrawerListOptionItem>\n </>\n ) : (\n content\n )\n}\nItemContent.propTypes = {\n hash: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.object]),\n}\n\nfunction DrawerListOptionItem({\n children = undefined,\n className = null,\n ...props\n}) {\n return (\n <span\n className={classnames(['dnb-drawer-list__option__item', className])}\n {...props}\n >\n {children}\n </span>\n )\n}\n\nDrawerList.HorizontalItem = ({ className = null, ...props }) => (\n <DrawerListOptionItem\n className={classnames([\n 'dnb-drawer-list__option__item--horizontal',\n className,\n ])}\n {...props}\n />\n)\n\nDrawerList.HorizontalItem.propTypes = {\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func])\n .isRequired,\n className: PropTypes.string,\n}\n\nclass OnMounted extends React.PureComponent {\n static propTypes = {\n addObservers: PropTypes.func.isRequired,\n removeObservers: PropTypes.func.isRequired,\n }\n componentDidMount() {\n this.props.addObservers()\n }\n componentWillUnmount() {\n this.props.removeObservers()\n }\n render() {\n return null\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DrawerList.js","names":["React","useContext","classnames","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","keycode","getThemeClasses","createSpacingClasses","DrawerListContext","DrawerListProvider","DrawerListPortal","drawerListDefaultProps","DrawerListHorizontalItem","DrawerListItem","propsToFilterOut","on_show","on_hide","handle_dismiss_focus","on_change","on_pre_change","on_resize","on_select","on_state_update","on_key_down","options_render","wrapper_element","DrawerList","props","drawerListContext","drawerList","createElement","DrawerListInstance","data","children","id","rest","_objectWithoutProperties","_excluded","_id","_extends","isValidElement","undefined","blurDelay","Component","constructor","_defineProperty","e","context","hasFocusOnElement","preventDefault","setHidden","event","selected_item","parseFloat","currentTarget","getAttribute","selectItemAndClose","fireSelectEvent","state","componentDidMount","setState","Object","entries","reduce","acc","_ref","key","triangle_position","render","_this$context","defaultProps","role","align_drawer","fixed_position","independent_width","scrollable","focusable","size","no_animation","no_scroll_animation","prevent_selection","action_menu","is_popup","portal_class","list_class","ignore_events","className","cache_hash","_cache_hash","_wrapper_element","_triangle_position","direction","_direction","max_height","_max_height","_data","opened","_opened","value","_value","attributes","_excluded2","noNullNumbers","_ref2","active_item","_excluded3","_objectSpread","hidden","showFocusRing","closestToTop","closestToBottom","usePortal","addObservers","removeObservers","_refShell","_refTriangle","_refUl","_refRoot","mainParams","listParams","ulParams","tabIndex","style","maxHeight","ref","assign","ignoreEvents","Items","map","dataItem","i","__id","hash","liParams","class_name","length","active","selected","onClick","selectItemHandler","onKeyDown","preventTab","disabled","Item","mainList","Fragment","Options","triangleRef","OnMounted","rootRef","include_owner_width","theme","memo","forwardRef","_excluded4","prevProps","nextProps","HorizontalItem","PureComponent","componentWillUnmount"],"sources":["../../../../src/fragments/drawer-list/DrawerList.tsx"],"sourcesContent":["/**\n * Web List Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n keycode,\n} from '../../shared/component-helper'\nimport type { SpacingProps } from '../../shared/types'\n\nimport { getThemeClasses } from '../../shared/Theme'\nimport { createSpacingClasses } from '../../components/space/SpacingHelper'\n\nimport DrawerListContext, {\n DrawerListContextProps,\n} from './DrawerListContext'\nimport DrawerListProvider from './DrawerListProvider'\nimport DrawerListPortal from './DrawerListPortal'\nimport { drawerListDefaultProps } from './DrawerListHelpers'\nimport { DrawerListHorizontalItem, DrawerListItem } from './DrawerListItem'\nimport type { DrawerListItemProps } from './DrawerListItem'\n\nconst propsToFilterOut = {\n on_show: null,\n on_hide: null,\n handle_dismiss_focus: null,\n on_change: null,\n on_pre_change: null,\n on_resize: null,\n on_select: null,\n on_state_update: null,\n on_key_down: null,\n options_render: null,\n wrapper_element: null,\n}\n\nexport type DrawerListContent =\n | string\n | React.ReactNode\n | (string | React.ReactNode)[]\nexport type DrawerListDataArrayObject = {\n [customProperty: string]: any\n selected_value?: string | React.ReactNode\n selectedKey?: string | number\n selected_key?: string | number\n suffix_value?: string | React.ReactNode\n content: DrawerListContent\n disabled?: boolean\n /** used by Autocomplete for additional search hits */\n search_content?: string | React.ReactNode | string[]\n /** style prop of the html list item */\n style?: React.CSSProperties\n /** classname added to the html list item */\n class_name?: string\n /** set to true to disable mouse events selected style. Keyboard can still select @deprecated */\n ignore_events?: boolean\n /** internal use only */\n render?: (children: React.ReactNode, id: string) => React.ReactNode\n}\n/** @deprecated use `DrawerListDataArrayItem` */\nexport type DrawerListDataObjectUnion = DrawerListDataArrayItem\nexport type DrawerListDataArrayItem =\n | DrawerListDataArrayObject\n | DrawerListContent\nexport type DrawerListDataArray = DrawerListDataArrayItem[]\nexport type DrawerListDataRecord = Record<string, DrawerListContent>\nexport type DrawerListDataAll = DrawerListDataRecord | DrawerListDataArray\n\nexport type DrawerListOptionsRender = ({\n data,\n Items,\n Item,\n}: {\n data: DrawerListDataArrayObject[]\n Items: React.FunctionComponent\n Item: React.FC<DrawerListItemProps>\n}) => React.ReactNode\nexport type DrawerListValue = string | number\nexport type DrawerListData =\n | string\n | ((...args: any[]) => DrawerListDataAll)\n | DrawerListDataAll\nexport type DrawerListSuffix = React.ReactNode\n\nexport interface DrawerListProps {\n id?: string\n _id?: string\n role?: string\n /**\n * Set a `cache_hash` as a string to enable internal memorizing of the list to enhance rerendering performance. Components like Autocomplete are using this because of the huge data changes due to search and reorder.\n */\n cache_hash?: string\n /**\n * Position of the arrow icon/triangle inside the drawer-list. Set to 'left' or 'right'. Defaults to 'left' if not set.\n */\n triangle_position?: string\n /**\n * Defines if the options list should be scrollable (the `max-height` is set by default to `50vh`).\n */\n scrollable?: boolean\n /**\n * If set to `true`, the element is then focusable by assertive technologies.\n */\n focusable?: boolean\n /**\n * Defines the direction of how the drawer-list shows the options list. Can be 'bottom' or 'top'. Defaults to 'auto'.\n */\n direction?: 'auto' | 'top' | 'bottom'\n size?: 'default' | 'small' | 'medium' | 'large' | number\n /**\n * Defines the minimum height (in `rem`) of the options list.\n */\n min_height?: string | number\n /**\n * Defines the maximum height (in `rem`) of the options list.\n */\n max_height?: string | number\n /**\n * To disable appear/disappear (show/hide) animation.\n */\n no_animation?: boolean\n /**\n * To disable scrolling animation.\n */\n no_scroll_animation?: boolean\n /**\n * If set to `true`, the DrawerList will then not make any permanent selection.\n */\n prevent_selection?: boolean\n action_menu?: boolean\n is_popup?: boolean\n /**\n * Use 'right' to change the options alignment direction. Makes only sense to use in combination with `prevent_selection` or `more_menu` - or if an independent width is used.\n */\n align_drawer?: 'left' | 'right'\n /**\n * Has to be a function, returning the items again. See [example](/uilib/components/fragments/drawer-list#example-usage-of-options_render). This can be used to add additional options above the actual rendered list.\n */\n options_render?: DrawerListOptionsRender\n /**\n * Has to be an HTML Element, ideally a mother element, used to calculate sizes and distances. Also used for the 'click outside' detection. Clicking on the `wrapper_element` will not trigger an outside click.\n */\n wrapper_element?: string | HTMLElement\n /**\n * Define a startup value or handle a re-render without handling the state during the re-render by yourself. Defaults to null.\n */\n default_value?: DrawerListValue\n /**\n * Define a preselected `data` entry. In order of priority, `value` can be set to: object key (if `data` is an object), `selectedKey` prop (if `data` is an array), array index (if no `selectedKey`) or content (if `value` is a non-integer string).\n */\n value?: DrawerListValue\n /**\n * To disable the React Portal behavior.\n */\n skip_portal?: boolean\n /**\n * Define an HTML class that will be set on the DOM portal beside `dnb-drawer-list__portal__style`. Can be useful to handle e.g. a custom `z-index` in relation to a header.\n */\n portal_class?: string\n /**\n * Define an HTML class that will be set on the list, beside `dnb-drawer-list__list`.\n */\n list_class?: string\n /**\n * If set to `true`, the DrawerList will not close on any events.\n */\n prevent_close?: boolean\n /**\n * If set to `true`, the DrawerList will handle its width and position independently of the parent/mother element.\n */\n independent_width?: boolean\n /**\n * If set to `true`, the DrawerList will be fixed in its scroll position by using CSS `position: fixed;`.\n */\n fixed_position?: boolean\n /**\n * If set to `true`, the DrawerList will close on outside clicks, but not on selection.\n */\n keep_open?: boolean\n prevent_focus?: boolean\n /**\n * If set to `true`, search items by the first key will be ignored.\n */\n skip_keysearch?: boolean\n opened?: boolean\n data?: DrawerListData\n prepared_data?: any[]\n /**\n * If set to `true`, all keyboard and mouse events will be ignored.\n */\n ignore_events?: boolean\n className?: string\n /** Accepts the same values as the `data` prop. Will be ignored if `data` is used. Can also accept a single child for custom rendering. */\n children?: DrawerListData | React.ReactElement\n suffix?: DrawerListSuffix\n /**\n * If set to `true`, the HTML body will get locked from scrolling when the Dropdown is open.\n */\n enable_body_lock?: boolean\n /**\n * Defines the available scrollable height. If scrolling should not change the height of the drawer-list, then set it to `0` (useful if the DrawerList is used in fixed positions on contrast to a scrollable page content).\n */\n page_offset?: string | number\n /**\n * Set a HTML element, either as a selector or a DOM element. Can be used to send in an element which will be used to make the direction calculation on.\n */\n observer_element?: string | React.ReactNode\n on_show?: (...args: any[]) => any\n on_hide?: (...args: any[]) => any\n handle_dismiss_focus?: (...args: any[]) => any\n on_change?: (...args: any[]) => any\n on_pre_change?: (...args: any[]) => any\n on_resize?: (...args: any[]) => any\n on_select?: (...args: any[]) => any\n on_state_update?: (...args: any[]) => any\n}\nexport type DrawerListAllProps = DrawerListProps &\n SpacingProps &\n Omit<\n React.HTMLProps<HTMLElement>,\n 'ref' | 'size' | 'label' | 'placeholder' | 'data' | 'children'\n >\nfunction DrawerList(props: DrawerListAllProps) {\n const drawerListContext = useContext(DrawerListContext)\n\n if (drawerListContext?.drawerList) {\n return <DrawerListInstance {...props} />\n }\n\n const { data, children, id, ...rest } = props\n const _id = id || makeUniqueId()\n\n return (\n <DrawerListProvider\n id={_id}\n {...rest}\n data={\n data ||\n (!React.isValidElement(children)\n ? (children as DrawerListData)\n : undefined)\n }\n >\n <DrawerListInstance id={_id} {...props} />\n </DrawerListProvider>\n )\n}\nDrawerList.blurDelay = DrawerListProvider.blurDelay // some ms more than \"DrawerListSlideDown 200ms\" = 201 // some ms more than \"DrawerListSlideDown 200ms\"\n\nclass DrawerListInstance extends React.Component<DrawerListAllProps> {\n static defaultProps = {\n ...drawerListDefaultProps,\n }\n static contextType = DrawerListContext\n context!: React.ContextType<typeof DrawerListContext>\n _id: string\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n this.state = this.state || {}\n }\n\n componentDidMount() {\n // send along the event handlers to the provider state\n\n this.context.drawerList.setState(\n Object.entries(propsToFilterOut).reduce((acc, [key]) => {\n if (this.props[key]) {\n acc[key] = this.props[key]\n }\n return acc\n }, {})\n )\n\n this.context.drawerList.setState({\n triangle_position: this.props.triangle_position,\n })\n }\n preventTab = (e) => {\n switch (keycode(e)) {\n case 'tab':\n if (!this.context.drawerList.hasFocusOnElement) {\n e.preventDefault()\n this.context.drawerList.setHidden()\n }\n break\n\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n selectItemHandler = (event) => {\n // In case we want to stop if the users makes a number selection.\n // Should optional\n // if (getPreviousSibling('dnb-number-format', event.target)) {\n // return // stop\n // }\n const selected_item = parseFloat(\n event.currentTarget.getAttribute('data-item')\n )\n if (selected_item > -1) {\n this.context.drawerList.selectItemAndClose(selected_item, {\n fireSelectEvent: true,\n event,\n })\n }\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n DrawerListInstance.defaultProps\n // TODO: should we only allow getTranslation if we define lang and locale props?\n // this.context.getTranslation(this.props).Button\n )\n\n const {\n role,\n align_drawer,\n fixed_position,\n independent_width,\n scrollable,\n focusable,\n size,\n no_animation,\n no_scroll_animation,\n prevent_selection,\n action_menu,\n is_popup,\n portal_class,\n list_class,\n ignore_events,\n options_render,\n className,\n cache_hash: _cache_hash, // eslint-disable-line\n wrapper_element: _wrapper_element, // eslint-disable-line\n triangle_position: _triangle_position, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n max_height: _max_height, // eslint-disable-line\n id: _id, // eslint-disable-line\n data: _data, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n children,\n\n ...attributes\n } = props\n\n const id = this._id\n\n function noNullNumbers({\n selected_item,\n active_item,\n max_height,\n ...rest\n }: DrawerListContextProps['drawerList']): DrawerListContextProps['drawerList'] {\n return {\n selected_item: selected_item ?? undefined,\n active_item: active_item ?? undefined,\n max_height: max_height ?? undefined,\n ...rest,\n }\n }\n\n const {\n data,\n opened,\n hidden,\n triangle_position,\n direction,\n max_height,\n cache_hash,\n selected_item,\n active_item,\n showFocusRing,\n closestToTop,\n closestToBottom,\n usePortal,\n addObservers,\n removeObservers,\n _refShell,\n _refTriangle,\n _refUl,\n _refRoot,\n } = noNullNumbers(this.context.drawerList)\n\n const mainParams = {\n id: `${id}-drawer-list`,\n className: classnames(\n 'dnb-drawer-list',\n opened && 'dnb-drawer-list--opened',\n hidden && 'dnb-drawer-list--hidden',\n `dnb-drawer-list--${direction}`,\n triangle_position &&\n `dnb-drawer-list--triangle-position-${triangle_position}`,\n align_drawer && `dnb-drawer-list--${align_drawer}`,\n size && `dnb-drawer-list--${size}`,\n isTrue(action_menu) && `dnb-drawer-list--action-menu`,\n isTrue(is_popup) && 'dnb-drawer-list--is-popup',\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-drawer-list--independent-width',\n isTrue(scrollable) && 'dnb-drawer-list--scroll',\n isTrue(no_scroll_animation) &&\n 'dnb-drawer-list--no-scroll-animation',\n createSpacingClasses(props),\n className\n ),\n ...attributes,\n }\n\n const listParams = {\n id: `${id}-listbox`,\n /**\n * We may consider to use the hidden attribute in future\n * Or we may add an prop to put the HTML in the DOM, if needed\n */\n // hidden: hidden !== false,\n className: classnames(\n 'dnb-drawer-list__list',\n isTrue(no_animation) && 'dnb-drawer-list__list--no-animation',\n list_class\n ),\n }\n\n const ulParams = {\n role,\n id: `${id}-ul`,\n 'aria-expanded': opened,\n 'aria-labelledby': `${id}-label`,\n tabIndex: -1,\n style: {\n maxHeight:\n parseFloat(max_height as string) > 0 ? `${max_height}rem` : null,\n },\n ref: _refUl,\n }\n\n if (\n !hidden &&\n (parseFloat(active_item as string) > -1 ||\n (!(parseFloat(active_item as string) > -1) &&\n !(parseFloat(selected_item as string) > -1)))\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${\n parseFloat(active_item as string) > -1 ? active_item : 0\n }`\n } else if (\n !isTrue(prevent_selection) &&\n !hidden &&\n parseFloat(selected_item as string) > -1\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${selected_item}`\n }\n\n if (isTrue(focusable)) {\n ulParams.tabIndex = 0\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, mainParams)\n validateDOMAttributes(null, listParams)\n validateDOMAttributes(null, ulParams)\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 ignoreEvents = isTrue(ignore_events)\n\n const Items = () =>\n data.map((dataItem, i) => {\n const _id = dataItem.__id\n const hash = `option-${id}-${_id}-${i}`\n const liParams = {\n role: role === 'menu' ? 'menuitem' : 'option',\n 'data-item': _id,\n id: `option-${id}-${_id}`,\n hash,\n className: classnames(\n // helper classes\n i === closestToTop && 'closest-to-top',\n i === closestToBottom && 'closest-to-bottom',\n i === 0 && 'first-of-type', // because of the triangle element\n i === data.length - 1 && 'last-of-type', // because of the triangle element\n ignoreEvents || (dataItem.ignore_events && 'ignore-events'),\n dataItem.class_name\n ),\n active: _id == active_item,\n selected: !dataItem.ignore_events && _id == selected_item,\n onClick: this.selectItemHandler,\n onKeyDown: this.preventTab,\n disabled: dataItem.disabled,\n style: dataItem.style,\n }\n\n if (ignoreEvents) {\n liParams.active = null\n liParams.selected = null\n liParams.onClick = null\n liParams.onKeyDown = null\n liParams.className = classnames(\n liParams.className,\n 'dnb-drawer-list__option--ignore'\n )\n }\n\n return (\n <DrawerList.Item key={hash} {...liParams}>\n {dataItem}\n </DrawerList.Item>\n )\n })\n\n const mainList = (\n <span {...mainParams} ref={_refShell}>\n <span {...listParams}>\n {hidden === false && data && data.length > 0 ? (\n <>\n <DrawerList.Options\n cache_hash={\n cache_hash +\n active_item +\n selected_item +\n closestToTop +\n closestToBottom +\n direction +\n max_height\n }\n {...ulParams}\n showFocusRing={showFocusRing}\n triangleRef={_refTriangle}\n >\n {typeof options_render === 'function' ? (\n options_render({ data, Items, Item: DrawerList.Item })\n ) : (\n <Items />\n )}\n </DrawerList.Options>\n <OnMounted\n addObservers={addObservers}\n removeObservers={removeObservers}\n />\n </>\n ) : (\n React.isValidElement(children) && (\n <span className=\"dnb-drawer-list__content\">\n {children}\n <span\n className=\"dnb-drawer-list__triangle\"\n ref={_refTriangle}\n />\n </span>\n )\n )}\n </span>\n </span>\n )\n\n return (\n <span\n className={classnames(\n 'dnb-drawer-list__root',\n usePortal && 'dnb-drawer-list__root--portal'\n )}\n ref={_refRoot}\n >\n {usePortal ? (\n <DrawerListPortal\n id={this._id}\n rootRef={_refRoot}\n opened={hidden === false}\n include_owner_width={align_drawer === 'right'}\n independent_width={isTrue(independent_width)}\n fixed_position={isTrue(fixed_position)}\n className={getThemeClasses(this.context?.theme, portal_class)}\n >\n {mainList}\n </DrawerListPortal>\n ) : (\n mainList\n )}\n </span>\n )\n }\n}\n\nexport type DrawerListOptionsProps = React.HTMLProps<HTMLUListElement> & {\n children: React.ReactNode\n triangleRef?: React.LegacyRef<HTMLLIElement>\n cache_hash?: string\n showFocusRing?: boolean\n}\n// DrawerList List\nDrawerList.Options = React.memo(\n React.forwardRef(\n (\n props: DrawerListOptionsProps,\n ref: React.LegacyRef<HTMLUListElement>\n ) => {\n const {\n children,\n className,\n triangleRef,\n cache_hash, // eslint-disable-line\n showFocusRing = false,\n ...rest\n } = props\n\n return (\n <ul\n className={classnames(\n 'dnb-drawer-list__options',\n showFocusRing && 'dnb-drawer-list__options--focusring',\n className\n )}\n {...rest}\n ref={ref}\n >\n {children}\n <li\n className=\"dnb-drawer-list__triangle\"\n aria-hidden\n ref={triangleRef}\n />\n </ul>\n )\n }\n ),\n (prevProps, nextProps) => {\n if (!prevProps.cache_hash) {\n return null\n }\n return prevProps.cache_hash === nextProps.cache_hash\n }\n)\n\nDrawerList.Item = DrawerListItem\nDrawerList.HorizontalItem = DrawerListHorizontalItem\n\nclass OnMounted extends React.PureComponent<{\n addObservers: () => void\n removeObservers: () => void\n}> {\n componentDidMount() {\n this.props.addObservers()\n }\n componentWillUnmount() {\n this.props.removeObservers()\n }\n render() {\n return null\n }\n}\nexport default DrawerList\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,28 @@
1
- export default DrawerListContext;
2
- declare const DrawerListContext: React.Context<{}>;
1
+ /**
2
+ * Web DrawerList Context
3
+ *
4
+ */
3
5
  import React from 'react';
6
+ import type { DrawerListProviderProps } from './DrawerListProvider';
7
+ import { ContextProps } from '../../shared/Context';
8
+ import { DrawerListDataAll, DrawerListDataArrayObject } from './';
9
+ export type DrawerListContextState = Omit<DrawerListProviderProps, 'data' | 'wrapper_element' | 'children'> & {
10
+ data: DrawerListDataArrayObject[];
11
+ wrapper_element?: HTMLElement;
12
+ /** used by Autocomplete */
13
+ original_data?: DrawerListDataArrayObject[];
14
+ /** used by Autocomplete */
15
+ current_title?: string;
16
+ isOpen?: boolean;
17
+ /** used internally */
18
+ _data?: any;
19
+ /** used internally */
20
+ _value?: any;
21
+ /** used internally to have a backup to look up what we got in the first place (array vs object) */
22
+ raw_data?: DrawerListDataAll;
23
+ };
24
+ export type DrawerListContextProps = ContextProps & {
25
+ drawerList?: DrawerListContextState;
26
+ };
27
+ declare const DrawerListContext: React.Context<DrawerListContextProps>;
28
+ export default DrawerListContext;
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerListContext.js","names":["React","DrawerListContext","createContext"],"sources":["../../../../src/fragments/drawer-list/DrawerListContext.js"],"sourcesContent":["/**\n * Web DrawerList Context\n *\n */\n\nimport React from 'react'\n\nconst DrawerListContext = React.createContext({})\n\nexport default DrawerListContext\n"],"mappings":"AAKA,OAAOA,KAAK,MAAM,OAAO;AAEzB,MAAMC,iBAAiB,GAAGD,KAAK,CAACE,aAAa,CAAC,CAAC,CAAC,CAAC;AAEjD,eAAeD,iBAAiB","ignoreList":[]}
1
+ {"version":3,"file":"DrawerListContext.js","names":["React","DrawerListContext","createContext"],"sources":["../../../../src/fragments/drawer-list/DrawerListContext.ts"],"sourcesContent":["/**\n * Web DrawerList Context\n *\n */\n\nimport React from 'react'\nimport type { DrawerListProviderProps } from './DrawerListProvider'\nimport { ContextProps } from '../../shared/Context'\nimport { DrawerListDataAll, DrawerListDataArrayObject } from './'\n\nexport type DrawerListContextState = Omit<\n DrawerListProviderProps,\n 'data' | 'wrapper_element' | 'children'\n> & {\n data: DrawerListDataArrayObject[]\n wrapper_element?: HTMLElement\n /** used by Autocomplete */\n original_data?: DrawerListDataArrayObject[]\n /** used by Autocomplete */\n current_title?: string\n isOpen?: boolean\n /** used internally */\n _data?: any\n /** used internally */\n _value?: any\n /** used internally to have a backup to look up what we got in the first place (array vs object) */\n raw_data?: DrawerListDataAll\n}\n\nexport type DrawerListContextProps = ContextProps & {\n drawerList?: DrawerListContextState\n}\n\nconst DrawerListContext = React.createContext<DrawerListContextProps>({})\n\nexport default DrawerListContext\n"],"mappings":"AAKA,OAAOA,KAAK,MAAM,OAAO;AA4BzB,MAAMC,iBAAiB,GAAGD,KAAK,CAACE,aAAa,CAAyB,CAAC,CAAC,CAAC;AAEzE,eAAeD,iBAAiB","ignoreList":[]}