@dnb/eufemia 10.16.0 → 10.18.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 (591) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/cjs/components/anchor/Anchor.js +9 -5
  3. package/cjs/components/anchor/Anchor.js.map +1 -1
  4. package/cjs/components/anchor/style/anchor-mixins.scss +0 -11
  5. package/cjs/components/anchor/style/dnb-anchor.css +0 -16
  6. package/cjs/components/anchor/style/dnb-anchor.min.css +1 -1
  7. package/cjs/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +16 -4
  8. package/cjs/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  9. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.css +16 -4
  10. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  11. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.scss +10 -2
  12. package/cjs/components/autocomplete/Autocomplete.js +2 -2
  13. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  14. package/cjs/components/button/style/dnb-button.css +13 -0
  15. package/cjs/components/button/style/dnb-button.min.css +1 -1
  16. package/cjs/components/button/style/dnb-button.scss +16 -0
  17. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.css +12 -1
  18. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.min.css +1 -1
  19. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +12 -0
  20. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +2 -2
  21. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +10 -0
  22. package/cjs/components/button/style/themes/dnb-button-theme-ui.css +12 -1
  23. package/cjs/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
  24. package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +12 -3
  25. package/cjs/components/date-picker/DatePicker.d.ts +14 -1
  26. package/cjs/components/date-picker/DatePicker.js +0 -1
  27. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  28. package/cjs/components/date-picker/DatePickerCalc.js +2 -1
  29. package/cjs/components/date-picker/DatePickerCalc.js.map +1 -1
  30. package/cjs/components/date-picker/DatePickerInput.d.ts +3 -0
  31. package/cjs/components/date-picker/DatePickerInput.js +9 -2
  32. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  33. package/cjs/components/dropdown/Dropdown.js +3 -2
  34. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  35. package/cjs/components/flex/Container.js +15 -2
  36. package/cjs/components/flex/Container.js.map +1 -1
  37. package/cjs/components/flex/export.d.ts +1 -0
  38. package/cjs/components/flex/export.js +7 -0
  39. package/cjs/components/flex/export.js.map +1 -1
  40. package/cjs/components/flex/utils.d.ts +1 -1
  41. package/cjs/components/flex/utils.js +11 -1
  42. package/cjs/components/flex/utils.js.map +1 -1
  43. package/cjs/components/flex/withChildren.d.ts +6 -0
  44. package/cjs/components/flex/withChildren.js +13 -0
  45. package/cjs/components/flex/withChildren.js.map +1 -0
  46. package/cjs/components/input/Input.js +3 -3
  47. package/cjs/components/input/Input.js.map +1 -1
  48. package/cjs/components/input/style/themes/dnb-input-theme-ui.css +2 -0
  49. package/cjs/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  50. package/cjs/components/input/style/themes/dnb-input-theme-ui.scss +2 -0
  51. package/cjs/components/input-masked/InputMaskedHooks.d.ts +1 -0
  52. package/cjs/components/input-masked/InputMaskedHooks.js +13 -8
  53. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  54. package/cjs/components/input-masked/MultiInputMask.d.ts +10 -2
  55. package/cjs/components/input-masked/MultiInputMask.js +41 -14
  56. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  57. package/cjs/components/input-masked/hooks/useHandleCursorPosition.js +7 -3
  58. package/cjs/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  59. package/cjs/components/input-masked/hooks/useMultiInputValues.d.ts +2 -2
  60. package/cjs/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
  61. package/cjs/components/number-format/NumberFormat.js +1 -1
  62. package/cjs/components/number-format/NumberFormat.js.map +1 -1
  63. package/cjs/components/textarea/style/dnb-textarea.css +5 -0
  64. package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
  65. package/cjs/components/textarea/style/dnb-textarea.scss +4 -0
  66. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +8 -1
  67. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -1
  68. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +6 -1
  69. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +4 -0
  70. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.min.css +1 -1
  71. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +5 -0
  72. package/cjs/components/visually-hidden/VisuallyHidden.js +1 -1
  73. package/cjs/components/visually-hidden/VisuallyHidden.js.map +1 -1
  74. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +8 -4
  75. package/cjs/extensions/forms/DataContext/Provider/Provider.js +22 -4
  76. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  77. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +14 -14
  78. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  79. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +12 -2
  80. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  81. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +12 -2
  82. package/cjs/extensions/forms/Field/Currency/Currency.d.ts +1 -5
  83. package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
  84. package/cjs/extensions/forms/Field/Date/Date.d.ts +3 -1
  85. package/cjs/extensions/forms/Field/Date/Date.js +47 -10
  86. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  87. package/cjs/extensions/forms/Field/Expiry/Expiry.d.ts +1 -1
  88. package/cjs/extensions/forms/Field/Expiry/Expiry.js +20 -10
  89. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  90. package/cjs/extensions/forms/Field/Number/Number.d.ts +5 -1
  91. package/cjs/extensions/forms/Field/Number/Number.js +109 -30
  92. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  93. package/cjs/extensions/forms/Field/Number/style/dnb-number.css +192 -0
  94. package/cjs/extensions/forms/Field/Number/style/dnb-number.min.css +1 -0
  95. package/cjs/extensions/forms/Field/Number/style/dnb-number.scss +176 -0
  96. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.css +74 -0
  97. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.min.css +3 -0
  98. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.scss +81 -0
  99. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.css +15 -0
  100. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.min.css +5 -0
  101. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.scss +15 -0
  102. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +7 -10
  103. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  104. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +7 -1
  105. package/cjs/extensions/forms/Field/Selection/Selection.js +4 -9
  106. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  107. package/cjs/extensions/forms/Field/String/String.d.ts +0 -1
  108. package/cjs/extensions/forms/Field/String/String.js +23 -9
  109. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  110. package/cjs/extensions/forms/Field/Toggle/Toggle.js +0 -4
  111. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  112. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  113. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +16 -26
  114. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  115. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +9 -9
  116. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  117. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +2 -11
  118. package/cjs/extensions/forms/Form/Handler/Handler.js +1 -0
  119. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  120. package/cjs/extensions/forms/{Visibility → Form/Visibility}/Visibility.d.ts +5 -2
  121. package/cjs/extensions/forms/{Visibility → Form/Visibility}/Visibility.js +7 -2
  122. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -0
  123. package/cjs/extensions/forms/Form/Visibility/index.js.map +1 -0
  124. package/cjs/extensions/forms/Form/hooks/useData.d.ts +10 -0
  125. package/cjs/extensions/forms/Form/hooks/useData.js +36 -0
  126. package/cjs/extensions/forms/Form/hooks/useData.js.map +1 -0
  127. package/cjs/extensions/forms/Form/index.d.ts +2 -0
  128. package/cjs/extensions/forms/Form/index.js +14 -0
  129. package/cjs/extensions/forms/Form/index.js.map +1 -1
  130. package/cjs/extensions/forms/Iterate/Array/Array.js +0 -4
  131. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  132. package/cjs/extensions/forms/hooks/useDataValue.js +26 -33
  133. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  134. package/cjs/extensions/forms/hooks/useId.d.ts +1 -0
  135. package/cjs/extensions/forms/hooks/useId.js +18 -0
  136. package/cjs/extensions/forms/hooks/useId.js.map +1 -0
  137. package/cjs/extensions/forms/index.d.ts +6 -1
  138. package/cjs/extensions/forms/index.js +5 -8
  139. package/cjs/extensions/forms/index.js.map +1 -1
  140. package/cjs/extensions/forms/style/dnb-forms.css +214 -11
  141. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  142. package/cjs/extensions/forms/types.d.ts +16 -18
  143. package/cjs/extensions/forms/types.js.map +1 -1
  144. package/cjs/extensions/forms/utils/TestElement/TestElement.d.ts +5 -1
  145. package/cjs/extensions/forms/utils/TestElement/TestElement.js +1 -0
  146. package/cjs/extensions/forms/utils/TestElement/TestElement.js.map +1 -1
  147. package/cjs/shared/Eufemia.d.ts +1 -1
  148. package/cjs/shared/Eufemia.js +2 -2
  149. package/cjs/shared/Eufemia.js.map +1 -1
  150. package/cjs/shared/helpers/EventEmitter.d.ts +5 -0
  151. package/cjs/shared/helpers/EventEmitter.js.map +1 -1
  152. package/cjs/shared/helpers/useEventEmitter.d.ts +2 -0
  153. package/cjs/shared/helpers/useEventEmitter.js.map +1 -1
  154. package/cjs/shared/helpers/useSharedState.d.ts +15 -0
  155. package/cjs/shared/helpers/useSharedState.js +71 -0
  156. package/cjs/shared/helpers/useSharedState.js.map +1 -0
  157. package/cjs/style/core/utilities.scss +1 -2
  158. package/cjs/style/dnb-ui-components.css +232 -27
  159. package/cjs/style/dnb-ui-components.min.css +3 -3
  160. package/cjs/style/dnb-ui-extensions.css +214 -11
  161. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  162. package/cjs/style/dnb-ui-forms.css +214 -11
  163. package/cjs/style/dnb-ui-forms.min.css +1 -1
  164. package/cjs/style/dnb-ui-forms.scss +1 -0
  165. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +498 -44
  166. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +9 -5
  167. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +230 -11
  168. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +5 -1
  169. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  170. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +230 -12
  171. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +5 -1
  172. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.scss +2 -0
  173. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +541 -40
  174. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +8 -6
  175. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +289 -11
  176. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +3 -1
  177. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  178. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +289 -12
  179. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +3 -1
  180. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +2 -0
  181. package/cjs/style/themes/theme-ui/ui-theme-components.css +496 -44
  182. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +9 -5
  183. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +230 -11
  184. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +5 -1
  185. package/cjs/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  186. package/cjs/style/themes/theme-ui/ui-theme-forms.css +230 -12
  187. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +5 -1
  188. package/cjs/style/themes/theme-ui/ui-theme-forms.scss +2 -0
  189. package/cjs/style/themes/theme-ui/ui-theme-tags.css +8 -10
  190. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  191. package/components/anchor/Anchor.js +9 -5
  192. package/components/anchor/Anchor.js.map +1 -1
  193. package/components/anchor/style/anchor-mixins.scss +0 -11
  194. package/components/anchor/style/dnb-anchor.css +0 -16
  195. package/components/anchor/style/dnb-anchor.min.css +1 -1
  196. package/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +16 -4
  197. package/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  198. package/components/anchor/style/themes/dnb-anchor-theme-ui.css +16 -4
  199. package/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  200. package/components/anchor/style/themes/dnb-anchor-theme-ui.scss +10 -2
  201. package/components/autocomplete/Autocomplete.js +2 -2
  202. package/components/autocomplete/Autocomplete.js.map +1 -1
  203. package/components/button/style/dnb-button.css +13 -0
  204. package/components/button/style/dnb-button.min.css +1 -1
  205. package/components/button/style/dnb-button.scss +16 -0
  206. package/components/button/style/themes/dnb-button-theme-eiendom.css +12 -1
  207. package/components/button/style/themes/dnb-button-theme-eiendom.min.css +1 -1
  208. package/components/button/style/themes/dnb-button-theme-sbanken.css +12 -0
  209. package/components/button/style/themes/dnb-button-theme-sbanken.min.css +2 -2
  210. package/components/button/style/themes/dnb-button-theme-sbanken.scss +10 -0
  211. package/components/button/style/themes/dnb-button-theme-ui.css +12 -1
  212. package/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
  213. package/components/button/style/themes/dnb-button-theme-ui.scss +12 -3
  214. package/components/date-picker/DatePicker.d.ts +14 -1
  215. package/components/date-picker/DatePicker.js +0 -1
  216. package/components/date-picker/DatePicker.js.map +1 -1
  217. package/components/date-picker/DatePickerCalc.js +2 -1
  218. package/components/date-picker/DatePickerCalc.js.map +1 -1
  219. package/components/date-picker/DatePickerInput.d.ts +3 -0
  220. package/components/date-picker/DatePickerInput.js +9 -2
  221. package/components/date-picker/DatePickerInput.js.map +1 -1
  222. package/components/dropdown/Dropdown.js +3 -2
  223. package/components/dropdown/Dropdown.js.map +1 -1
  224. package/components/flex/Container.js +15 -2
  225. package/components/flex/Container.js.map +1 -1
  226. package/components/flex/export.d.ts +1 -0
  227. package/components/flex/export.js +1 -0
  228. package/components/flex/export.js.map +1 -1
  229. package/components/flex/utils.d.ts +1 -1
  230. package/components/flex/utils.js +11 -1
  231. package/components/flex/utils.js.map +1 -1
  232. package/components/flex/withChildren.d.ts +6 -0
  233. package/components/flex/withChildren.js +6 -0
  234. package/components/flex/withChildren.js.map +1 -0
  235. package/components/input/Input.js +3 -3
  236. package/components/input/Input.js.map +1 -1
  237. package/components/input/style/themes/dnb-input-theme-ui.css +2 -0
  238. package/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  239. package/components/input/style/themes/dnb-input-theme-ui.scss +2 -0
  240. package/components/input-masked/InputMaskedHooks.d.ts +1 -0
  241. package/components/input-masked/InputMaskedHooks.js +13 -8
  242. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  243. package/components/input-masked/MultiInputMask.d.ts +10 -2
  244. package/components/input-masked/MultiInputMask.js +39 -14
  245. package/components/input-masked/MultiInputMask.js.map +1 -1
  246. package/components/input-masked/hooks/useHandleCursorPosition.js +7 -3
  247. package/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  248. package/components/input-masked/hooks/useMultiInputValues.d.ts +2 -2
  249. package/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
  250. package/components/number-format/NumberFormat.js +1 -1
  251. package/components/number-format/NumberFormat.js.map +1 -1
  252. package/components/textarea/style/dnb-textarea.css +5 -0
  253. package/components/textarea/style/dnb-textarea.min.css +1 -1
  254. package/components/textarea/style/dnb-textarea.scss +4 -0
  255. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +8 -1
  256. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -1
  257. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +6 -1
  258. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +4 -0
  259. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.min.css +1 -1
  260. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +5 -0
  261. package/components/visually-hidden/VisuallyHidden.js +1 -1
  262. package/components/visually-hidden/VisuallyHidden.js.map +1 -1
  263. package/es/components/anchor/Anchor.js +9 -5
  264. package/es/components/anchor/Anchor.js.map +1 -1
  265. package/es/components/anchor/style/anchor-mixins.scss +0 -11
  266. package/es/components/anchor/style/dnb-anchor.css +0 -16
  267. package/es/components/anchor/style/dnb-anchor.min.css +1 -1
  268. package/es/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +16 -4
  269. package/es/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  270. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.css +16 -4
  271. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  272. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.scss +10 -2
  273. package/es/components/autocomplete/Autocomplete.js +2 -2
  274. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  275. package/es/components/button/style/dnb-button.css +13 -0
  276. package/es/components/button/style/dnb-button.min.css +1 -1
  277. package/es/components/button/style/dnb-button.scss +16 -0
  278. package/es/components/button/style/themes/dnb-button-theme-eiendom.css +12 -1
  279. package/es/components/button/style/themes/dnb-button-theme-eiendom.min.css +1 -1
  280. package/es/components/button/style/themes/dnb-button-theme-sbanken.css +12 -0
  281. package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +2 -2
  282. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +10 -0
  283. package/es/components/button/style/themes/dnb-button-theme-ui.css +12 -1
  284. package/es/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
  285. package/es/components/button/style/themes/dnb-button-theme-ui.scss +12 -3
  286. package/es/components/date-picker/DatePicker.d.ts +14 -1
  287. package/es/components/date-picker/DatePicker.js +0 -1
  288. package/es/components/date-picker/DatePicker.js.map +1 -1
  289. package/es/components/date-picker/DatePickerCalc.js +2 -1
  290. package/es/components/date-picker/DatePickerCalc.js.map +1 -1
  291. package/es/components/date-picker/DatePickerInput.d.ts +3 -0
  292. package/es/components/date-picker/DatePickerInput.js +9 -2
  293. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  294. package/es/components/dropdown/Dropdown.js +3 -2
  295. package/es/components/dropdown/Dropdown.js.map +1 -1
  296. package/es/components/flex/Container.js +15 -2
  297. package/es/components/flex/Container.js.map +1 -1
  298. package/es/components/flex/export.d.ts +1 -0
  299. package/es/components/flex/export.js +1 -0
  300. package/es/components/flex/export.js.map +1 -1
  301. package/es/components/flex/utils.d.ts +1 -1
  302. package/es/components/flex/utils.js +11 -1
  303. package/es/components/flex/utils.js.map +1 -1
  304. package/es/components/flex/withChildren.d.ts +6 -0
  305. package/es/components/flex/withChildren.js +6 -0
  306. package/es/components/flex/withChildren.js.map +1 -0
  307. package/es/components/input/Input.js +3 -3
  308. package/es/components/input/Input.js.map +1 -1
  309. package/es/components/input/style/themes/dnb-input-theme-ui.css +2 -0
  310. package/es/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  311. package/es/components/input/style/themes/dnb-input-theme-ui.scss +2 -0
  312. package/es/components/input-masked/InputMaskedHooks.d.ts +1 -0
  313. package/es/components/input-masked/InputMaskedHooks.js +13 -8
  314. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  315. package/es/components/input-masked/MultiInputMask.d.ts +10 -2
  316. package/es/components/input-masked/MultiInputMask.js +39 -13
  317. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  318. package/es/components/input-masked/hooks/useHandleCursorPosition.js +7 -3
  319. package/es/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  320. package/es/components/input-masked/hooks/useMultiInputValues.d.ts +2 -2
  321. package/es/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
  322. package/es/components/number-format/NumberFormat.js +1 -1
  323. package/es/components/number-format/NumberFormat.js.map +1 -1
  324. package/es/components/textarea/style/dnb-textarea.css +5 -0
  325. package/es/components/textarea/style/dnb-textarea.min.css +1 -1
  326. package/es/components/textarea/style/dnb-textarea.scss +4 -0
  327. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +8 -1
  328. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -1
  329. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +6 -1
  330. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +4 -0
  331. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.min.css +1 -1
  332. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +5 -0
  333. package/es/components/visually-hidden/VisuallyHidden.js +1 -1
  334. package/es/components/visually-hidden/VisuallyHidden.js.map +1 -1
  335. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +8 -4
  336. package/es/extensions/forms/DataContext/Provider/Provider.js +22 -4
  337. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  338. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +15 -15
  339. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  340. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +12 -2
  341. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  342. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +12 -2
  343. package/es/extensions/forms/Field/Currency/Currency.d.ts +1 -5
  344. package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
  345. package/es/extensions/forms/Field/Date/Date.d.ts +3 -1
  346. package/es/extensions/forms/Field/Date/Date.js +45 -9
  347. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  348. package/es/extensions/forms/Field/Expiry/Expiry.d.ts +1 -1
  349. package/es/extensions/forms/Field/Expiry/Expiry.js +20 -11
  350. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  351. package/es/extensions/forms/Field/Number/Number.d.ts +5 -1
  352. package/es/extensions/forms/Field/Number/Number.js +109 -31
  353. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  354. package/es/extensions/forms/Field/Number/style/dnb-number.css +192 -0
  355. package/es/extensions/forms/Field/Number/style/dnb-number.min.css +1 -0
  356. package/es/extensions/forms/Field/Number/style/dnb-number.scss +176 -0
  357. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.css +74 -0
  358. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.min.css +3 -0
  359. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.scss +81 -0
  360. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.css +15 -0
  361. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.min.css +5 -0
  362. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.scss +15 -0
  363. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +7 -10
  364. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  365. package/es/extensions/forms/Field/Selection/Selection.d.ts +7 -1
  366. package/es/extensions/forms/Field/Selection/Selection.js +4 -9
  367. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  368. package/es/extensions/forms/Field/String/String.d.ts +0 -1
  369. package/es/extensions/forms/Field/String/String.js +23 -9
  370. package/es/extensions/forms/Field/String/String.js.map +1 -1
  371. package/es/extensions/forms/Field/Toggle/Toggle.js +0 -4
  372. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  373. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  374. package/es/extensions/forms/FieldBlock/FieldBlock.js +14 -23
  375. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  376. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +9 -9
  377. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  378. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +2 -11
  379. package/es/extensions/forms/Form/Handler/Handler.js +1 -0
  380. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  381. package/{extensions/forms → es/extensions/forms/Form}/Visibility/Visibility.d.ts +5 -2
  382. package/es/extensions/forms/{Visibility → Form/Visibility}/Visibility.js +7 -2
  383. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -0
  384. package/es/extensions/forms/Form/Visibility/index.js.map +1 -0
  385. package/es/extensions/forms/Form/hooks/useData.d.ts +10 -0
  386. package/es/extensions/forms/Form/hooks/useData.js +29 -0
  387. package/es/extensions/forms/Form/hooks/useData.js.map +1 -0
  388. package/es/extensions/forms/Form/index.d.ts +2 -0
  389. package/es/extensions/forms/Form/index.js +2 -0
  390. package/es/extensions/forms/Form/index.js.map +1 -1
  391. package/es/extensions/forms/Iterate/Array/Array.js +0 -4
  392. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  393. package/es/extensions/forms/hooks/useDataValue.js +26 -33
  394. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  395. package/es/extensions/forms/hooks/useId.d.ts +1 -0
  396. package/es/extensions/forms/hooks/useId.js +11 -0
  397. package/es/extensions/forms/hooks/useId.js.map +1 -0
  398. package/es/extensions/forms/index.d.ts +6 -1
  399. package/es/extensions/forms/index.js +3 -1
  400. package/es/extensions/forms/index.js.map +1 -1
  401. package/es/extensions/forms/style/dnb-forms.css +214 -11
  402. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  403. package/es/extensions/forms/types.d.ts +16 -18
  404. package/es/extensions/forms/types.js.map +1 -1
  405. package/es/extensions/forms/utils/TestElement/TestElement.d.ts +5 -1
  406. package/es/extensions/forms/utils/TestElement/TestElement.js +1 -0
  407. package/es/extensions/forms/utils/TestElement/TestElement.js.map +1 -1
  408. package/es/shared/Eufemia.d.ts +1 -1
  409. package/es/shared/Eufemia.js +2 -2
  410. package/es/shared/Eufemia.js.map +1 -1
  411. package/es/shared/helpers/EventEmitter.d.ts +5 -0
  412. package/es/shared/helpers/EventEmitter.js.map +1 -1
  413. package/es/shared/helpers/useEventEmitter.d.ts +2 -0
  414. package/es/shared/helpers/useEventEmitter.js.map +1 -1
  415. package/es/shared/helpers/useSharedState.d.ts +15 -0
  416. package/es/shared/helpers/useSharedState.js +63 -0
  417. package/es/shared/helpers/useSharedState.js.map +1 -0
  418. package/es/style/core/utilities.scss +1 -2
  419. package/es/style/dnb-ui-components.css +232 -27
  420. package/es/style/dnb-ui-components.min.css +3 -3
  421. package/es/style/dnb-ui-extensions.css +214 -11
  422. package/es/style/dnb-ui-extensions.min.css +1 -1
  423. package/es/style/dnb-ui-forms.css +214 -11
  424. package/es/style/dnb-ui-forms.min.css +1 -1
  425. package/es/style/dnb-ui-forms.scss +1 -0
  426. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +498 -44
  427. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +9 -5
  428. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +230 -11
  429. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +5 -1
  430. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  431. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +230 -12
  432. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +5 -1
  433. package/es/style/themes/theme-eiendom/eiendom-theme-forms.scss +2 -0
  434. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +541 -40
  435. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +8 -6
  436. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +289 -11
  437. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +3 -1
  438. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  439. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +289 -12
  440. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +3 -1
  441. package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +2 -0
  442. package/es/style/themes/theme-ui/ui-theme-components.css +496 -44
  443. package/es/style/themes/theme-ui/ui-theme-components.min.css +9 -5
  444. package/es/style/themes/theme-ui/ui-theme-extensions.css +230 -11
  445. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +5 -1
  446. package/es/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  447. package/es/style/themes/theme-ui/ui-theme-forms.css +230 -12
  448. package/es/style/themes/theme-ui/ui-theme-forms.min.css +5 -1
  449. package/es/style/themes/theme-ui/ui-theme-forms.scss +2 -0
  450. package/es/style/themes/theme-ui/ui-theme-tags.css +8 -10
  451. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  452. package/esm/dnb-ui-basis.min.mjs +1 -1
  453. package/esm/dnb-ui-components.min.mjs +1 -1
  454. package/esm/dnb-ui-elements.min.mjs +1 -1
  455. package/esm/dnb-ui-extensions.min.mjs +3 -3
  456. package/esm/dnb-ui-lib.min.mjs +1 -1
  457. package/extensions/forms/DataContext/Provider/Provider.d.ts +8 -4
  458. package/extensions/forms/DataContext/Provider/Provider.js +22 -4
  459. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  460. package/extensions/forms/Field/ArraySelection/ArraySelection.js +15 -15
  461. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  462. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +12 -2
  463. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  464. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +12 -2
  465. package/extensions/forms/Field/Currency/Currency.d.ts +1 -5
  466. package/extensions/forms/Field/Currency/Currency.js.map +1 -1
  467. package/extensions/forms/Field/Date/Date.d.ts +3 -1
  468. package/extensions/forms/Field/Date/Date.js +48 -11
  469. package/extensions/forms/Field/Date/Date.js.map +1 -1
  470. package/extensions/forms/Field/Expiry/Expiry.d.ts +1 -1
  471. package/extensions/forms/Field/Expiry/Expiry.js +21 -11
  472. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  473. package/extensions/forms/Field/Number/Number.d.ts +5 -1
  474. package/extensions/forms/Field/Number/Number.js +110 -31
  475. package/extensions/forms/Field/Number/Number.js.map +1 -1
  476. package/extensions/forms/Field/Number/style/dnb-number.css +192 -0
  477. package/extensions/forms/Field/Number/style/dnb-number.min.css +1 -0
  478. package/extensions/forms/Field/Number/style/dnb-number.scss +176 -0
  479. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.css +74 -0
  480. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.min.css +3 -0
  481. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.scss +81 -0
  482. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.css +15 -0
  483. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.min.css +5 -0
  484. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.scss +15 -0
  485. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +7 -10
  486. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  487. package/extensions/forms/Field/Selection/Selection.d.ts +7 -1
  488. package/extensions/forms/Field/Selection/Selection.js +4 -9
  489. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  490. package/extensions/forms/Field/String/String.d.ts +0 -1
  491. package/extensions/forms/Field/String/String.js +23 -9
  492. package/extensions/forms/Field/String/String.js.map +1 -1
  493. package/extensions/forms/Field/Toggle/Toggle.js +0 -4
  494. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  495. package/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  496. package/extensions/forms/FieldBlock/FieldBlock.js +16 -26
  497. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  498. package/extensions/forms/FieldBlock/style/dnb-field-block.css +9 -9
  499. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  500. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +2 -11
  501. package/extensions/forms/Form/Handler/Handler.js +1 -0
  502. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  503. package/{es/extensions/forms → extensions/forms/Form}/Visibility/Visibility.d.ts +5 -2
  504. package/extensions/forms/{Visibility → Form/Visibility}/Visibility.js +7 -2
  505. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -0
  506. package/extensions/forms/Form/Visibility/index.js.map +1 -0
  507. package/extensions/forms/Form/hooks/useData.d.ts +10 -0
  508. package/extensions/forms/Form/hooks/useData.js +30 -0
  509. package/extensions/forms/Form/hooks/useData.js.map +1 -0
  510. package/extensions/forms/Form/index.d.ts +2 -0
  511. package/extensions/forms/Form/index.js +2 -0
  512. package/extensions/forms/Form/index.js.map +1 -1
  513. package/extensions/forms/Iterate/Array/Array.js +0 -4
  514. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  515. package/extensions/forms/hooks/useDataValue.js +26 -33
  516. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  517. package/extensions/forms/hooks/useId.d.ts +1 -0
  518. package/extensions/forms/hooks/useId.js +11 -0
  519. package/extensions/forms/hooks/useId.js.map +1 -0
  520. package/extensions/forms/index.d.ts +6 -1
  521. package/extensions/forms/index.js +3 -1
  522. package/extensions/forms/index.js.map +1 -1
  523. package/extensions/forms/style/dnb-forms.css +214 -11
  524. package/extensions/forms/style/dnb-forms.min.css +1 -1
  525. package/extensions/forms/types.d.ts +16 -18
  526. package/extensions/forms/types.js.map +1 -1
  527. package/extensions/forms/utils/TestElement/TestElement.d.ts +5 -1
  528. package/extensions/forms/utils/TestElement/TestElement.js +1 -0
  529. package/extensions/forms/utils/TestElement/TestElement.js.map +1 -1
  530. package/package.json +1 -1
  531. package/shared/Eufemia.d.ts +1 -1
  532. package/shared/Eufemia.js +2 -2
  533. package/shared/Eufemia.js.map +1 -1
  534. package/shared/helpers/EventEmitter.d.ts +5 -0
  535. package/shared/helpers/EventEmitter.js.map +1 -1
  536. package/shared/helpers/useEventEmitter.d.ts +2 -0
  537. package/shared/helpers/useEventEmitter.js.map +1 -1
  538. package/shared/helpers/useSharedState.d.ts +15 -0
  539. package/shared/helpers/useSharedState.js +63 -0
  540. package/shared/helpers/useSharedState.js.map +1 -0
  541. package/style/core/utilities.scss +1 -2
  542. package/style/dnb-ui-components.css +232 -27
  543. package/style/dnb-ui-components.min.css +3 -3
  544. package/style/dnb-ui-extensions.css +214 -11
  545. package/style/dnb-ui-extensions.min.css +1 -1
  546. package/style/dnb-ui-forms.css +214 -11
  547. package/style/dnb-ui-forms.min.css +1 -1
  548. package/style/dnb-ui-forms.scss +1 -0
  549. package/style/themes/theme-eiendom/eiendom-theme-components.css +498 -44
  550. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +9 -5
  551. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +230 -11
  552. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +5 -1
  553. package/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  554. package/style/themes/theme-eiendom/eiendom-theme-forms.css +230 -12
  555. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +5 -1
  556. package/style/themes/theme-eiendom/eiendom-theme-forms.scss +2 -0
  557. package/style/themes/theme-sbanken/sbanken-theme-components.css +541 -40
  558. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +8 -6
  559. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +289 -11
  560. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +3 -1
  561. package/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  562. package/style/themes/theme-sbanken/sbanken-theme-forms.css +289 -12
  563. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +3 -1
  564. package/style/themes/theme-sbanken/sbanken-theme-forms.scss +2 -0
  565. package/style/themes/theme-ui/ui-theme-components.css +496 -44
  566. package/style/themes/theme-ui/ui-theme-components.min.css +9 -5
  567. package/style/themes/theme-ui/ui-theme-extensions.css +230 -11
  568. package/style/themes/theme-ui/ui-theme-extensions.min.css +5 -1
  569. package/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  570. package/style/themes/theme-ui/ui-theme-forms.css +230 -12
  571. package/style/themes/theme-ui/ui-theme-forms.min.css +5 -1
  572. package/style/themes/theme-ui/ui-theme-forms.scss +2 -0
  573. package/style/themes/theme-ui/ui-theme-tags.css +8 -10
  574. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  575. package/umd/dnb-ui-basis.min.js +1 -1
  576. package/umd/dnb-ui-components.min.js +1 -1
  577. package/umd/dnb-ui-elements.min.js +1 -1
  578. package/umd/dnb-ui-extensions.min.js +3 -3
  579. package/umd/dnb-ui-lib.min.js +1 -1
  580. package/cjs/extensions/forms/Visibility/Visibility.js.map +0 -1
  581. package/cjs/extensions/forms/Visibility/index.js.map +0 -1
  582. package/es/extensions/forms/Visibility/Visibility.js.map +0 -1
  583. package/es/extensions/forms/Visibility/index.js.map +0 -1
  584. package/extensions/forms/Visibility/Visibility.js.map +0 -1
  585. package/extensions/forms/Visibility/index.js.map +0 -1
  586. /package/cjs/extensions/forms/{Visibility → Form/Visibility}/index.d.ts +0 -0
  587. /package/cjs/extensions/forms/{Visibility → Form/Visibility}/index.js +0 -0
  588. /package/es/extensions/forms/{Visibility → Form/Visibility}/index.d.ts +0 -0
  589. /package/es/extensions/forms/{Visibility → Form/Visibility}/index.js +0 -0
  590. /package/extensions/forms/{Visibility → Form/Visibility}/index.d.ts +0 -0
  591. /package/extensions/forms/{Visibility → Form/Visibility}/index.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerInput.js","names":["_react","_interopRequireDefault","require","_propTypes","_addDays","_addMonths","_addYears","_isValid","_parseISO","_classnames","_TextMask","_Button","_Input","_interopRequireWildcard","_keycode","_componentHelper","_DatePickerCalc","_DatePickerContext","_excluded","_excluded2","_span","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","propertyIsEnumerable","sourceKeys","keys","_extends","assign","bind","arguments","apply","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","DatePickerInput","React","PureComponent","constructor","props","_listenForPropChanges","focusState","e","focusMode","success","clipboardData","window","getData","preventDefault","separators","possibleFormats","date","sep","replace","split","reverse","join","l","convertStringToDate","date_format","mode","state","context","setState","warn","updateState","hoverDate","hasHadValidDate","startDate","endDate","event","callOnChangeHandler","_ref","changeMonthViews","isValid","isRange","_ref2","getDates","reduce","acc","parseISO","returnObject","getReturnObject","is_valid","is_valid_start_date","is_valid_end_date","typedDates","start_date","end_date","dispatchCustomElementEvent","_ref3","keyCode","isDate","getAttribute","match","isInRange","count","addDays","addMonths","addYears","callOnChange","wait","selectAll","focus","setSelectionRange","onBlur","keycode","selectionStart","selectionEnd","selectStart","persist","prepareCounting","size","parseFloat","firstSelectionStart","secondSelectionStart","test","index","refList","findIndex","_ref4","current","nextSibling","prevSibling","endPos","setDate","type","fallback","year","getFullYear","month","getMonth","day","getDate","Date","isValidDate","callOnChangeAsInvalid","callOnType","params","id","startDateList","generateDateList","endDateList","createElement","className","maskOrder","separatorRexExp","maskList","cur","shift","_startDayRef","createRef","_startMonthRef","_startYearRef","_endDayRef","_endMonthRef","_endYearRef","componentWillUnmount","_shortcuts","remove","osShortcut","getPlaceholderChar","maskPlaceholder","map","slice","placeholderChar","input_element","translation","DatePicker","isRangeLabel","onKeyDown","onKeyDownHandler","onPaste","shortcutHandler","onFocus","onFocusHandler","onBlurHandler","DateField","isValidElement","InputElement","inputSizeClassName","Fragment","classnames","mask","inputRef","onChange","hidden","htmlFor","formatDate","open_picker_text","selectedDateTitle","render","_this$props","title","submitAttributes","onSubmit","showInput","locale","disabled","skeleton","opened","status","status_state","status_props","attributes","validateDOMAttributes","UsedButton","SubmitButton","Button","innerRef","ref","lang","code","label","input_state","renderInputElement","submit_element","icon","variant","on_submit","on_click","exports","DatePickerContext","process","env","NODE_ENV","propTypes","PropTypes","string","instanceOf","RegExp","bool","oneOf","oneOfType","func","node","select","_ref5","guide","showMask","keepCharPositions","autoComplete","autoCapitalize","spellCheck","autoCorrect","t","Promise","r","setTimeout"],"sources":["../../../../src/components/date-picker/DatePickerInput.js"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\n\n// date-fns\nimport addDays from 'date-fns/addDays'\nimport addMonths from 'date-fns/addMonths'\nimport addYears from 'date-fns/addYears'\nimport isValid from 'date-fns/isValid'\nimport parseISO from 'date-fns/parseISO'\n\nimport classnames from 'classnames'\nimport TextMask from '../input-masked/TextMask'\nimport Button from '../button/Button'\nimport Input, { SubmitButton } from '../input/Input'\nimport keycode from 'keycode'\nimport {\n warn,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { convertStringToDate } from './DatePickerCalc'\nimport DatePickerContext from './DatePickerContext'\n\nexport default class DatePickerInput extends React.PureComponent {\n static contextType = DatePickerContext\n\n static propTypes = {\n id: PropTypes.string,\n title: PropTypes.string,\n selectedDateTitle: PropTypes.string,\n maskOrder: PropTypes.string,\n maskPlaceholder: PropTypes.string,\n separatorRexExp: PropTypes.instanceOf(RegExp),\n submitAttributes: PropTypes.object,\n isRange: PropTypes.bool,\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n input_element: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n locale: PropTypes.object,\n disabled: PropTypes.bool,\n skeleton: PropTypes.bool,\n opened: PropTypes.bool,\n showInput: PropTypes.bool,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n title: null,\n selectedDateTitle: null,\n maskOrder: 'dd/mm/yyyy',\n maskPlaceholder: 'dd/mm/åååå',\n separatorRexExp: /[-/ ]/g,\n submitAttributes: null,\n isRange: null,\n size: null,\n status: null,\n status_state: 'error',\n status_props: null,\n input_element: null,\n disabled: null,\n locale: null,\n skeleton: null,\n opened: false,\n showInput: null,\n onChange: null,\n onSubmit: null,\n onFocus: null,\n onBlur: null,\n }\n\n state = {\n _listenForPropChanges: true,\n focusState: 'virgin',\n }\n\n constructor(props) {\n super(props)\n\n const separators = props.maskOrder.match(props.separatorRexExp)\n this.maskList = props.maskOrder\n .split(props.separatorRexExp)\n .reduce((acc, cur) => {\n if (cur) {\n acc.push(cur)\n if (separators.length > 0) {\n acc.push(separators.shift())\n }\n }\n return acc\n }, [])\n\n this._startDayRef = React.createRef()\n this._startMonthRef = React.createRef()\n this._startYearRef = React.createRef()\n this._endDayRef = React.createRef()\n this._endMonthRef = React.createRef()\n this._endYearRef = React.createRef()\n }\n\n componentWillUnmount() {\n if (this._shortcuts) {\n this._shortcuts.remove(this.osShortcut)\n }\n }\n\n shortcutHandler = async (e) => {\n if (this.focusMode) {\n const success = (\n e.clipboardData ||\n (typeof window !== 'undefined' && window.clipboardData)\n ).getData('text')\n if (success) {\n e.preventDefault()\n try {\n const separators = ['.', '/']\n const possibleFormats = ['yyyy-MM-dd']\n\n possibleFormats.forEach((date) => {\n separators.forEach((sep) => {\n possibleFormats.push(date.replace(/-/g, sep))\n })\n })\n possibleFormats.forEach((date) => {\n possibleFormats.push(date.split('').reverse().join(''))\n })\n\n let date\n for (let i = 0, l = possibleFormats.length; i < l; ++i) {\n date = convertStringToDate(success, {\n date_format: possibleFormats[i],\n })\n if (date) {\n break\n }\n }\n const mode = this.focusMode === 'start' ? 'startDate' : 'endDate'\n if (date && !this.state[mode]) {\n this.context.setState({\n [mode]: date,\n })\n }\n } catch (e) {\n warn(e)\n }\n }\n }\n }\n\n callOnChangeAsInvalid = (state) => {\n this.context.updateState(\n {\n hoverDate: null,\n },\n () => {\n if (this.context.hasHadValidDate) {\n const { startDate, endDate, event } = {\n ...this.context,\n ...state,\n }\n this.context.callOnChangeHandler({ startDate, endDate, event })\n }\n }\n )\n }\n\n callOnChange = ({ startDate, endDate, event }) => {\n const state = { changeMonthViews: true }\n if (typeof startDate !== 'undefined' && isValid(startDate)) {\n state.startDate = startDate\n }\n if (!this.props.isRange) {\n endDate = startDate\n }\n if (typeof endDate !== 'undefined' && isValid(endDate)) {\n state.endDate = endDate\n }\n\n this.context.updateState(state, () => {\n if (\n (typeof startDate !== 'undefined' && isValid(startDate)) ||\n (typeof endDate !== 'undefined' && isValid(endDate))\n ) {\n this.context.callOnChangeHandler({ event })\n }\n })\n }\n\n callOnType = ({ event }) => {\n const getDates = () =>\n ['start', 'end'].reduce((acc, mode) => {\n acc[`${mode}Date`] = [\n this[`_${mode}Year`] || this.context[`__${mode}Year`] || 'yyyy',\n this[`_${mode}Month`] || this.context[`__${mode}Month`] || 'mm',\n this[`_${mode}Day`] || this.context[`__${mode}Day`] || 'dd',\n ].join('-')\n return acc\n }, {})\n\n // Get the typed dates, so we can ...\n let { startDate, endDate } = getDates()\n\n startDate = parseISO(startDate)\n endDate = parseISO(endDate)\n\n // ... check if they were valid\n if (!isValid(startDate)) {\n startDate = null\n }\n if (!isValid(endDate)) {\n endDate = null\n }\n\n let returnObject = this.context.getReturnObject({\n startDate,\n endDate,\n event,\n })\n\n // Now, lets correct\n if (\n returnObject.is_valid === false ||\n returnObject.is_valid_start_date === false ||\n returnObject.is_valid_end_date === false\n ) {\n const { startDate, endDate } = getDates()\n\n const typedDates = this.props.isRange\n ? {\n start_date: startDate,\n end_date: endDate,\n }\n : { date: startDate }\n\n returnObject = {\n ...returnObject,\n ...typedDates,\n }\n }\n\n dispatchCustomElementEvent(this.context, 'on_type', returnObject)\n }\n\n prepareCounting = async ({ keyCode, target, event }) => {\n try {\n const isDate = target\n .getAttribute('class')\n .match(/__input--([day|month|year]+)($|\\s)/)[1]\n\n const isInRange = target\n .getAttribute('id')\n .match(/-([start|end]+)-/)[1]\n\n let date =\n isInRange === 'start'\n ? this.context.startDate\n : this.context.endDate\n\n // do nothing if date is not set yet\n if (!date) {\n return\n }\n\n const count = keyCode === 'up' ? 1 : -1\n\n if (keyCode === 'up' || keyCode === 'down') {\n switch (isDate) {\n case 'day':\n date = addDays(date, count)\n break\n case 'month':\n date = addMonths(date, count)\n break\n case 'year':\n date = addYears(date, count)\n break\n }\n }\n\n this.callOnChange({\n [isInRange === 'start' ? 'startDate' : 'endDate']: date,\n event,\n })\n\n await wait(1) // to get the correct position afterwards\n\n selectAll(target)\n } catch (e) {\n warn(e)\n }\n }\n\n selectStart = (target) => {\n target.focus()\n target.setSelectionRange(0, 0)\n }\n\n onFocusHandler = (event) => {\n try {\n selectAll(event.target)\n } catch (e) {\n warn(e)\n }\n\n this.setState({\n focusState: 'focus',\n _listenForPropChanges: false,\n })\n }\n\n onBlurHandler = (e) => {\n this.focusMode = null\n this.setState({\n focusState: 'blur',\n _listenForPropChanges: false,\n })\n\n if (this.props.onBlur) {\n this.props.onBlur(e)\n }\n }\n\n onKeyDownHandler = async (event) => {\n const keyCode = keycode(event)\n const target = event.target\n\n if (target.selectionStart !== target.selectionEnd) {\n this.selectStart(target)\n }\n\n // only to process key up and down press\n switch (keyCode) {\n case 'up':\n case 'down':\n event.persist()\n event.preventDefault()\n this.prepareCounting({ event, keyCode, target })\n return false\n case 'tab':\n // case 'backspace': // We need backspace down here\n return false\n }\n\n // the rest is for value entry\n\n const size = parseFloat(target.getAttribute('size'))\n const firstSelectionStart = target.selectionStart\n\n await wait(1) // to get the correct position afterwards\n\n const secondSelectionStart = target.selectionStart\n const isValid = /[0-9]/.test(keyCode)\n const index = this.refList.findIndex(\n ({ current }) => current === target\n )\n\n if (\n index < this.refList.length - 1 &&\n ((secondSelectionStart === size &&\n isValid &&\n keyCode !== 'left' &&\n keyCode !== 'backspace') ||\n (firstSelectionStart === size && keyCode === 'right'))\n ) {\n try {\n // stop in case there is no next input element\n if (!this.refList[index + 1].current) {\n return\n }\n const nextSibling = this.refList[index + 1].current\n if (nextSibling) {\n nextSibling.focus()\n nextSibling.setSelectionRange(0, 0)\n }\n } catch (e) {\n warn(e)\n }\n } else if (firstSelectionStart === 0 && index > 0) {\n switch (keyCode) {\n case 'left':\n case 'backspace':\n try {\n const prevSibling = this.refList[index - 1].current\n if (prevSibling) {\n const endPos = prevSibling.value.length\n prevSibling.focus()\n prevSibling.setSelectionRange(endPos, endPos)\n }\n } catch (e) {\n warn(e)\n }\n break\n }\n }\n }\n\n set_startDay = (event) => {\n this.setDate(event, 'start', 'Day')\n }\n\n set_startMonth = (event) => {\n this.setDate(event, 'start', 'Month')\n }\n\n set_startYear = (event) => {\n this.setDate(event, 'start', 'Year')\n }\n\n set_endDay = (event) => {\n this.setDate(event, 'end', 'Day')\n }\n\n set_endMonth = (event) => {\n this.setDate(event, 'end', 'Month')\n }\n\n set_endYear = (event) => {\n this.setDate(event, 'end', 'Year')\n }\n\n setDate = (event, mode, type) => {\n event.persist() // since we have later a state update and afterwards the callback\n\n const value = event.target.value\n\n this[`_${mode}${type}`] = value\n\n if (this.context[`${mode}Date`]) {\n this[`tmp_${mode}Date`] = this.context[`${mode}Date`]\n }\n\n const fallback = this[`tmp_${mode}Date`]\n\n // provide fallbacks to create a temp fallback\n const year =\n this[`_${mode}Year`] || (fallback && fallback.getFullYear())\n const month =\n this[`_${mode}Month`] || (fallback && fallback.getMonth() + 1)\n const day = this[`_${mode}Day`] || (fallback && fallback.getDate())\n\n // calculate new date\n const date = new Date(\n parseFloat(year),\n parseFloat(month) - 1,\n parseFloat(day)\n )\n\n const isValidDate =\n !/[^0-9]/.test(day) &&\n !/[^0-9]/.test(month) &&\n !/[^0-9]/.test(year) &&\n isValid(date) &&\n date.getDate() == parseFloat(day) &&\n date.getMonth() + 1 == parseFloat(month) &&\n date.getFullYear() == parseFloat(year)\n\n // update the date\n if (isValidDate) {\n this.callOnChange({\n [`${mode}Date`]: date,\n event,\n })\n } else {\n this.context.updateState({ [`${mode}Date`]: null })\n this.context.updateState({ [`__${mode}${type}`]: value })\n\n this.callOnChangeAsInvalid({\n [`${mode}Date`]: null,\n event,\n })\n }\n\n this.callOnType({\n event,\n })\n }\n\n renderInputElement = (params) => {\n const { id, isRange } = this.props\n this.refList = []\n const startDateList = this.generateDateList(params, 'start')\n const endDateList = this.generateDateList(params, 'end')\n return (\n <span id={`${id}-input`} className=\"dnb-date-picker__input__wrapper\">\n {startDateList}\n {isRange && (\n <span className=\"dnb-date-picker--separator\" aria-hidden>\n {' – '}\n </span>\n )}\n {isRange && endDateList}\n </span>\n )\n }\n\n getPlaceholderChar(value) {\n const index = this.props.maskOrder.indexOf(value)\n return this.props.maskPlaceholder[index]\n }\n\n generateDateList(params, mode) {\n return this.maskList.map((value, i) => {\n const state = value.slice(0, 1)\n const placeholderChar = this.getPlaceholderChar(value)\n const { input_element, separatorRexExp, isRange, size } = this.props\n const { day, month, year } = this.context.translation.DatePicker\n const isRangeLabel = isRange\n ? `${this.context.translation.DatePicker[mode]} `\n : ''\n\n if (!separatorRexExp.test(value)) {\n if (!input_element) {\n params = {\n ...params,\n onKeyDown: this.onKeyDownHandler,\n onPaste: this.shortcutHandler,\n onFocus: (e) => {\n this.focusMode = mode\n this.onFocusHandler(e)\n },\n onBlur: this.onBlurHandler,\n placeholderChar,\n }\n }\n\n // this makes it possible to use a vanilla <input /> like: input_element=\"input\"\n const DateField =\n input_element && React.isValidElement(input_element)\n ? input_element\n : InputElement\n\n const inputSizeClassName =\n size && `dnb-date-picker__input--${size}`\n\n switch (state) {\n case 'd':\n this.refList.push(this[`_${mode}DayRef`])\n\n return (\n <React.Fragment key={'dd' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-day`}\n key={'di' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--day',\n inputSizeClassName\n )}\n size=\"2\"\n mask={[/[0-3]/, /[0-9]/]}\n inputRef={this[`_${mode}DayRef`]}\n onChange={this[`set_${mode}Day`]}\n value={this.context[`__${mode}Day`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-day-label`}\n />\n <label\n key={'dl' + i}\n hidden\n id={`${this.props.id}-${mode}-day-label`}\n htmlFor={`${this.props.id}-${mode}-day`}\n >\n {isRangeLabel + day}\n </label>\n </React.Fragment>\n )\n case 'm':\n this.refList.push(this[`_${mode}MonthRef`])\n\n return (\n <React.Fragment key={'mm' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-month`}\n key={'mi' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--month',\n inputSizeClassName\n )}\n size=\"2\"\n mask={[/[0-1]/, /[0-9]/]}\n inputRef={this[`_${mode}MonthRef`]}\n onChange={this[`set_${mode}Month`]}\n value={this.context[`__${mode}Month`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-month-label`}\n />\n <label\n key={'ml' + i}\n hidden\n id={`${this.props.id}-${mode}-month-label`}\n htmlFor={`${this.props.id}-${mode}-month`}\n >\n {isRangeLabel + month}\n </label>\n </React.Fragment>\n )\n case 'y':\n this.refList.push(this[`_${mode}YearRef`])\n\n return (\n <React.Fragment key={'yy' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-year`}\n key={'yi' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--year',\n inputSizeClassName\n )}\n size=\"4\"\n mask={[/[1-2]/, /[0-9]/, /[0-9]/, /[0-9]/]}\n inputRef={this[`_${mode}YearRef`]}\n onChange={this[`set_${mode}Year`]}\n value={this.context[`__${mode}Year`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-year-label`}\n />\n <label\n key={'yl' + i}\n hidden\n id={`${this.props.id}-${mode}-year-label`}\n htmlFor={`${this.props.id}-${mode}-year`}\n >\n {isRangeLabel + year}\n </label>\n </React.Fragment>\n )\n }\n }\n return (\n <span\n key={'s' + i}\n className=\"dnb-date-picker--separator\"\n aria-hidden\n >\n {placeholderChar}\n </span>\n )\n })\n }\n\n formatDate() {\n const { open_picker_text } = this.context.translation.DatePicker\n\n const { selectedDateTitle } = this.props\n\n return selectedDateTitle\n ? `${selectedDateTitle}, ${open_picker_text}`\n : open_picker_text\n }\n\n render() {\n const {\n id,\n title,\n\n submitAttributes,\n isRange, // eslint-disable-line\n maskOrder, // eslint-disable-line\n maskPlaceholder, // eslint-disable-line\n separatorRexExp, // eslint-disable-line\n onChange, // eslint-disable-line\n onFocus, // eslint-disable-line\n onSubmit, // eslint-disable-line\n onBlur, // eslint-disable-line\n selectedDateTitle, // eslint-disable-line\n showInput, // eslint-disable-line\n input_element,\n locale,\n disabled,\n skeleton,\n opened,\n size,\n status,\n status_state,\n status_props,\n\n ...attributes\n } = this.props\n\n const { focusState } = this.state\n\n validateDOMAttributes(this.props, attributes)\n validateDOMAttributes(null, submitAttributes)\n\n const UsedButton = showInput ? SubmitButton : Button\n if (!showInput) {\n // Use Button inner ref\n submitAttributes.innerRef = submitAttributes.ref\n submitAttributes.ref = null\n }\n\n return (\n <fieldset className=\"dnb-date-picker__fieldset\" lang={locale?.code}>\n {this.context.props.label && (\n <legend className=\"dnb-sr-only\">\n {this.context.props.label}\n </legend>\n )}\n <Input\n id={`${id}__input`}\n input_state={disabled ? 'disabled' : focusState}\n input_element={\n input_element && typeof input_element !== 'string'\n ? typeof input_element === 'function'\n ? input_element(this.props)\n : input_element\n : this.renderInputElement\n }\n disabled={disabled || skeleton}\n skeleton={skeleton}\n size={size}\n status={!opened ? status : null}\n status_state={status_state}\n {...status_props}\n submit_element={\n <UsedButton\n id={id}\n disabled={disabled}\n skeleton={skeleton}\n className={classnames(\n showInput && 'dnb-button--input-button',\n opened ? 'dnb-button--active' : null\n )}\n aria-label={this.formatDate()}\n title={title}\n size={size}\n status={status}\n status_state={status_state}\n type=\"button\"\n icon=\"calendar\"\n variant=\"secondary\"\n on_submit={onSubmit}\n on_click={onSubmit}\n {...submitAttributes}\n {...status_props}\n />\n }\n lang={locale?.code}\n {...attributes}\n />\n </fieldset>\n )\n }\n}\n\nconst selectAll = (target) => {\n target.focus()\n target.select()\n}\n\nconst InputElement = ({ className, value, ...props }) => {\n return (\n <TextMask\n guide={true}\n showMask={true}\n keepCharPositions={false} // so we can overwrite next value, if it already exists\n autoComplete=\"off\"\n autoCapitalize=\"none\"\n spellCheck={false}\n autoCorrect=\"off\"\n className={classnames(\n className,\n /\\d+/.test(value) && 'dnb-date-picker__input--highlight'\n )}\n value={value}\n {...props}\n />\n )\n}\n\nconst wait = (t) => new Promise((r) => setTimeout(r, t))\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerInput.js","names":["_react","_interopRequireDefault","require","_propTypes","_addDays","_addMonths","_addYears","_isValid","_parseISO","_classnames","_TextMask","_Button","_Input","_interopRequireWildcard","_keycode","_componentHelper","_DatePickerCalc","_DatePickerContext","_excluded","_excluded2","_span","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","propertyIsEnumerable","sourceKeys","keys","_extends","assign","bind","arguments","apply","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","DatePickerInput","React","PureComponent","constructor","props","_listenForPropChanges","focusState","e","focusMode","success","clipboardData","window","getData","preventDefault","separators","possibleFormats","date","sep","replace","split","reverse","join","l","convertStringToDate","date_format","mode","state","context","setState","warn","updateState","hoverDate","hasHadValidDate","startDate","endDate","event","callOnChangeHandler","_ref","changeMonthViews","isValid","isRange","_ref2","getDates","reduce","acc","parseISO","returnObject","getReturnObject","is_valid","is_valid_start_date","is_valid_end_date","typedDates","start_date","end_date","dispatchCustomElementEvent","_ref3","keyCode","isDate","getAttribute","match","isInRange","count","addDays","addMonths","addYears","callOnChange","wait","selectAll","focus","setSelectionRange","onFocus","onBlur","keycode","selectionStart","selectionEnd","selectStart","persist","prepareCounting","size","parseFloat","firstSelectionStart","secondSelectionStart","test","index","refList","findIndex","_ref4","current","nextSibling","prevSibling","endPos","setDate","type","fallback","year","getFullYear","month","getMonth","day","getDate","Date","isValidDate","callOnChangeAsInvalid","callOnType","params","id","startDateList","generateDateList","endDateList","createElement","className","maskOrder","separatorRexExp","maskList","cur","shift","_startDayRef","createRef","_startMonthRef","_startYearRef","_endDayRef","_endMonthRef","_endYearRef","componentWillUnmount","_shortcuts","remove","osShortcut","getPlaceholderChar","maskPlaceholder","map","slice","placeholderChar","input_element","translation","DatePicker","isRangeLabel","onKeyDown","onKeyDownHandler","onPaste","shortcutHandler","onFocusHandler","onBlurHandler","DateField","isValidElement","InputElement","inputSizeClassName","Fragment","classnames","mask","inputRef","onChange","hidden","htmlFor","formatDate","open_picker_text","selectedDateTitle","render","_this$props","title","submitAttributes","onSubmit","showInput","locale","disabled","skeleton","opened","status","status_state","status_props","attributes","validateDOMAttributes","UsedButton","SubmitButton","Button","innerRef","ref","lang","code","label","input_state","renderInputElement","submit_element","icon","variant","on_submit","on_click","exports","DatePickerContext","process","env","NODE_ENV","propTypes","PropTypes","string","instanceOf","RegExp","bool","oneOf","oneOfType","func","node","select","_ref5","guide","showMask","keepCharPositions","autoComplete","autoCapitalize","spellCheck","autoCorrect","t","Promise","r","setTimeout"],"sources":["../../../../src/components/date-picker/DatePickerInput.js"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\n\n// date-fns\nimport addDays from 'date-fns/addDays'\nimport addMonths from 'date-fns/addMonths'\nimport addYears from 'date-fns/addYears'\nimport isValid from 'date-fns/isValid'\nimport parseISO from 'date-fns/parseISO'\n\nimport classnames from 'classnames'\nimport TextMask from '../input-masked/TextMask'\nimport Button from '../button/Button'\nimport Input, { SubmitButton } from '../input/Input'\nimport keycode from 'keycode'\nimport {\n warn,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { convertStringToDate } from './DatePickerCalc'\nimport DatePickerContext from './DatePickerContext'\n\nexport default class DatePickerInput extends React.PureComponent {\n static contextType = DatePickerContext\n\n static propTypes = {\n id: PropTypes.string,\n title: PropTypes.string,\n selectedDateTitle: PropTypes.string,\n maskOrder: PropTypes.string,\n maskPlaceholder: PropTypes.string,\n separatorRexExp: PropTypes.instanceOf(RegExp),\n submitAttributes: PropTypes.object,\n isRange: PropTypes.bool,\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n input_element: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n locale: PropTypes.object,\n disabled: PropTypes.bool,\n skeleton: PropTypes.bool,\n opened: PropTypes.bool,\n showInput: PropTypes.bool,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n title: null,\n selectedDateTitle: null,\n maskOrder: 'dd/mm/yyyy',\n maskPlaceholder: 'dd/mm/åååå',\n separatorRexExp: /[-/ ]/g,\n submitAttributes: null,\n isRange: null,\n size: null,\n status: null,\n status_state: 'error',\n status_props: null,\n input_element: null,\n disabled: null,\n locale: null,\n skeleton: null,\n opened: false,\n showInput: null,\n onChange: null,\n onSubmit: null,\n onFocus: null,\n onBlur: null,\n }\n\n state = {\n _listenForPropChanges: true,\n focusState: 'virgin',\n }\n\n constructor(props) {\n super(props)\n\n const separators = props.maskOrder.match(props.separatorRexExp)\n this.maskList = props.maskOrder\n .split(props.separatorRexExp)\n .reduce((acc, cur) => {\n if (cur) {\n acc.push(cur)\n if (separators.length > 0) {\n acc.push(separators.shift())\n }\n }\n return acc\n }, [])\n\n this._startDayRef = React.createRef()\n this._startMonthRef = React.createRef()\n this._startYearRef = React.createRef()\n this._endDayRef = React.createRef()\n this._endMonthRef = React.createRef()\n this._endYearRef = React.createRef()\n }\n\n componentWillUnmount() {\n if (this._shortcuts) {\n this._shortcuts.remove(this.osShortcut)\n }\n }\n\n shortcutHandler = async (e) => {\n if (this.focusMode) {\n const success = (\n e.clipboardData ||\n (typeof window !== 'undefined' && window.clipboardData)\n ).getData('text')\n if (success) {\n e.preventDefault()\n try {\n const separators = ['.', '/']\n const possibleFormats = ['yyyy-MM-dd']\n\n possibleFormats.forEach((date) => {\n separators.forEach((sep) => {\n possibleFormats.push(date.replace(/-/g, sep))\n })\n })\n possibleFormats.forEach((date) => {\n possibleFormats.push(date.split('').reverse().join(''))\n })\n\n let date\n for (let i = 0, l = possibleFormats.length; i < l; ++i) {\n date = convertStringToDate(success, {\n date_format: possibleFormats[i],\n })\n if (date) {\n break\n }\n }\n const mode = this.focusMode === 'start' ? 'startDate' : 'endDate'\n if (date && !this.state[mode]) {\n this.context.setState({\n [mode]: date,\n })\n }\n } catch (e) {\n warn(e)\n }\n }\n }\n }\n\n callOnChangeAsInvalid = (state) => {\n this.context.updateState(\n {\n hoverDate: null,\n },\n () => {\n if (this.context.hasHadValidDate) {\n const { startDate, endDate, event } = {\n ...this.context,\n ...state,\n }\n this.context.callOnChangeHandler({ startDate, endDate, event })\n }\n }\n )\n }\n\n callOnChange = ({ startDate, endDate, event }) => {\n const state = { changeMonthViews: true }\n if (typeof startDate !== 'undefined' && isValid(startDate)) {\n state.startDate = startDate\n }\n if (!this.props.isRange) {\n endDate = startDate\n }\n if (typeof endDate !== 'undefined' && isValid(endDate)) {\n state.endDate = endDate\n }\n\n this.context.updateState(state, () => {\n if (\n (typeof startDate !== 'undefined' && isValid(startDate)) ||\n (typeof endDate !== 'undefined' && isValid(endDate))\n ) {\n this.context.callOnChangeHandler({ event })\n }\n })\n }\n\n callOnType = ({ event }) => {\n const getDates = () =>\n ['start', 'end'].reduce((acc, mode) => {\n acc[`${mode}Date`] = [\n this[`_${mode}Year`] || this.context[`__${mode}Year`] || 'yyyy',\n this[`_${mode}Month`] || this.context[`__${mode}Month`] || 'mm',\n this[`_${mode}Day`] || this.context[`__${mode}Day`] || 'dd',\n ].join('-')\n return acc\n }, {})\n\n // Get the typed dates, so we can ...\n let { startDate, endDate } = getDates()\n\n startDate = parseISO(startDate)\n endDate = parseISO(endDate)\n\n // ... check if they were valid\n if (!isValid(startDate)) {\n startDate = null\n }\n if (!isValid(endDate)) {\n endDate = null\n }\n\n let returnObject = this.context.getReturnObject({\n startDate,\n endDate,\n event,\n })\n\n // Now, lets correct\n if (\n returnObject.is_valid === false ||\n returnObject.is_valid_start_date === false ||\n returnObject.is_valid_end_date === false\n ) {\n const { startDate, endDate } = getDates()\n\n const typedDates = this.props.isRange\n ? {\n start_date: startDate,\n end_date: endDate,\n }\n : { date: startDate }\n\n returnObject = {\n ...returnObject,\n ...typedDates,\n }\n }\n\n dispatchCustomElementEvent(this.context, 'on_type', returnObject)\n }\n\n prepareCounting = async ({ keyCode, target, event }) => {\n try {\n const isDate = target\n .getAttribute('class')\n .match(/__input--([day|month|year]+)($|\\s)/)[1]\n\n const isInRange = target\n .getAttribute('id')\n .match(/-([start|end]+)-/)[1]\n\n let date =\n isInRange === 'start'\n ? this.context.startDate\n : this.context.endDate\n\n // do nothing if date is not set yet\n if (!date) {\n return\n }\n\n const count = keyCode === 'up' ? 1 : -1\n\n if (keyCode === 'up' || keyCode === 'down') {\n switch (isDate) {\n case 'day':\n date = addDays(date, count)\n break\n case 'month':\n date = addMonths(date, count)\n break\n case 'year':\n date = addYears(date, count)\n break\n }\n }\n\n this.callOnChange({\n [isInRange === 'start' ? 'startDate' : 'endDate']: date,\n event,\n })\n\n await wait(1) // to get the correct position afterwards\n\n selectAll(target)\n } catch (e) {\n warn(e)\n }\n }\n\n selectStart = (target) => {\n target.focus()\n target.setSelectionRange(0, 0)\n }\n\n onFocusHandler = (event) => {\n try {\n selectAll(event.target)\n } catch (e) {\n warn(e)\n }\n\n this.setState({\n focusState: 'focus',\n _listenForPropChanges: false,\n })\n\n if (this.props.onFocus) {\n this.props.onFocus({\n ...event,\n ...this.context.getReturnObject({ event }),\n })\n }\n }\n\n onBlurHandler = (event) => {\n this.focusMode = null\n this.setState({\n focusState: 'blur',\n _listenForPropChanges: false,\n })\n\n if (this.props.onBlur) {\n this.props.onBlur({\n ...event,\n ...this.context.getReturnObject({ event }),\n })\n }\n }\n\n onKeyDownHandler = async (event) => {\n const keyCode = keycode(event)\n const target = event.target\n\n if (target.selectionStart !== target.selectionEnd) {\n this.selectStart(target)\n }\n\n // only to process key up and down press\n switch (keyCode) {\n case 'up':\n case 'down':\n event.persist()\n event.preventDefault()\n this.prepareCounting({ event, keyCode, target })\n return false\n case 'tab':\n // case 'backspace': // We need backspace down here\n return false\n }\n\n // the rest is for value entry\n\n const size = parseFloat(target.getAttribute('size'))\n const firstSelectionStart = target.selectionStart\n\n await wait(1) // to get the correct position afterwards\n\n const secondSelectionStart = target.selectionStart\n const isValid = /[0-9]/.test(keyCode)\n const index = this.refList.findIndex(\n ({ current }) => current === target\n )\n\n if (\n index < this.refList.length - 1 &&\n ((secondSelectionStart === size &&\n isValid &&\n keyCode !== 'left' &&\n keyCode !== 'backspace') ||\n (firstSelectionStart === size && keyCode === 'right'))\n ) {\n try {\n // stop in case there is no next input element\n if (!this.refList[index + 1].current) {\n return\n }\n const nextSibling = this.refList[index + 1].current\n if (nextSibling) {\n nextSibling.focus()\n nextSibling.setSelectionRange(0, 0)\n }\n } catch (e) {\n warn(e)\n }\n } else if (firstSelectionStart === 0 && index > 0) {\n switch (keyCode) {\n case 'left':\n case 'backspace':\n try {\n const prevSibling = this.refList[index - 1].current\n if (prevSibling) {\n const endPos = prevSibling.value.length\n prevSibling.focus()\n prevSibling.setSelectionRange(endPos, endPos)\n }\n } catch (e) {\n warn(e)\n }\n break\n }\n }\n }\n\n set_startDay = (event) => {\n this.setDate(event, 'start', 'Day')\n }\n\n set_startMonth = (event) => {\n this.setDate(event, 'start', 'Month')\n }\n\n set_startYear = (event) => {\n this.setDate(event, 'start', 'Year')\n }\n\n set_endDay = (event) => {\n this.setDate(event, 'end', 'Day')\n }\n\n set_endMonth = (event) => {\n this.setDate(event, 'end', 'Month')\n }\n\n set_endYear = (event) => {\n this.setDate(event, 'end', 'Year')\n }\n\n setDate = (event, mode, type) => {\n event.persist() // since we have later a state update and afterwards the callback\n\n const value = event.target.value\n\n this[`_${mode}${type}`] = value\n\n if (this.context[`${mode}Date`]) {\n this[`tmp_${mode}Date`] = this.context[`${mode}Date`]\n }\n\n const fallback = this[`tmp_${mode}Date`]\n\n // provide fallbacks to create a temp fallback\n const year =\n this[`_${mode}Year`] || (fallback && fallback.getFullYear())\n const month =\n this[`_${mode}Month`] || (fallback && fallback.getMonth() + 1)\n const day = this[`_${mode}Day`] || (fallback && fallback.getDate())\n\n // calculate new date\n const date = new Date(\n parseFloat(year),\n parseFloat(month) - 1,\n parseFloat(day)\n )\n\n const isValidDate =\n !/[^0-9]/.test(day) &&\n !/[^0-9]/.test(month) &&\n !/[^0-9]/.test(year) &&\n isValid(date) &&\n date.getDate() == parseFloat(day) &&\n date.getMonth() + 1 == parseFloat(month) &&\n date.getFullYear() == parseFloat(year)\n\n // update the date\n if (isValidDate) {\n this.callOnChange({\n [`${mode}Date`]: date,\n event,\n })\n } else {\n this.context.updateState({ [`${mode}Date`]: null })\n this.context.updateState({ [`__${mode}${type}`]: value })\n\n this.callOnChangeAsInvalid({\n [`${mode}Date`]: null,\n event,\n })\n }\n\n this.callOnType({\n event,\n })\n }\n\n renderInputElement = (params) => {\n const { id, isRange } = this.props\n this.refList = []\n const startDateList = this.generateDateList(params, 'start')\n const endDateList = this.generateDateList(params, 'end')\n return (\n <span id={`${id}-input`} className=\"dnb-date-picker__input__wrapper\">\n {startDateList}\n {isRange && (\n <span className=\"dnb-date-picker--separator\" aria-hidden>\n {' – '}\n </span>\n )}\n {isRange && endDateList}\n </span>\n )\n }\n\n getPlaceholderChar(value) {\n const index = this.props.maskOrder.indexOf(value)\n return this.props.maskPlaceholder[index]\n }\n\n generateDateList(params, mode) {\n return this.maskList.map((value, i) => {\n const state = value.slice(0, 1)\n const placeholderChar = this.getPlaceholderChar(value)\n const { input_element, separatorRexExp, isRange, size } = this.props\n const { day, month, year } = this.context.translation.DatePicker\n const isRangeLabel = isRange\n ? `${this.context.translation.DatePicker[mode]} `\n : ''\n\n if (!separatorRexExp.test(value)) {\n if (!input_element) {\n params = {\n ...params,\n onKeyDown: this.onKeyDownHandler,\n onPaste: this.shortcutHandler,\n onFocus: (e) => {\n this.focusMode = mode\n this.onFocusHandler(e)\n },\n onBlur: this.onBlurHandler,\n placeholderChar,\n }\n }\n\n // this makes it possible to use a vanilla <input /> like: input_element=\"input\"\n const DateField =\n input_element && React.isValidElement(input_element)\n ? input_element\n : InputElement\n\n const inputSizeClassName =\n size && `dnb-date-picker__input--${size}`\n\n switch (state) {\n case 'd':\n this.refList.push(this[`_${mode}DayRef`])\n\n return (\n <React.Fragment key={'dd' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-day`}\n key={'di' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--day',\n inputSizeClassName\n )}\n size=\"2\"\n mask={[/[0-3]/, /[0-9]/]}\n inputRef={this[`_${mode}DayRef`]}\n onChange={this[`set_${mode}Day`]}\n value={this.context[`__${mode}Day`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-day-label`}\n />\n <label\n key={'dl' + i}\n hidden\n id={`${this.props.id}-${mode}-day-label`}\n htmlFor={`${this.props.id}-${mode}-day`}\n >\n {isRangeLabel + day}\n </label>\n </React.Fragment>\n )\n case 'm':\n this.refList.push(this[`_${mode}MonthRef`])\n\n return (\n <React.Fragment key={'mm' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-month`}\n key={'mi' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--month',\n inputSizeClassName\n )}\n size=\"2\"\n mask={[/[0-1]/, /[0-9]/]}\n inputRef={this[`_${mode}MonthRef`]}\n onChange={this[`set_${mode}Month`]}\n value={this.context[`__${mode}Month`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-month-label`}\n />\n <label\n key={'ml' + i}\n hidden\n id={`${this.props.id}-${mode}-month-label`}\n htmlFor={`${this.props.id}-${mode}-month`}\n >\n {isRangeLabel + month}\n </label>\n </React.Fragment>\n )\n case 'y':\n this.refList.push(this[`_${mode}YearRef`])\n\n return (\n <React.Fragment key={'yy' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-year`}\n key={'yi' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--year',\n inputSizeClassName\n )}\n size=\"4\"\n mask={[/[1-2]/, /[0-9]/, /[0-9]/, /[0-9]/]}\n inputRef={this[`_${mode}YearRef`]}\n onChange={this[`set_${mode}Year`]}\n value={this.context[`__${mode}Year`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-year-label`}\n />\n <label\n key={'yl' + i}\n hidden\n id={`${this.props.id}-${mode}-year-label`}\n htmlFor={`${this.props.id}-${mode}-year`}\n >\n {isRangeLabel + year}\n </label>\n </React.Fragment>\n )\n }\n }\n return (\n <span\n key={'s' + i}\n className=\"dnb-date-picker--separator\"\n aria-hidden\n >\n {placeholderChar}\n </span>\n )\n })\n }\n\n formatDate() {\n const { open_picker_text } = this.context.translation.DatePicker\n\n const { selectedDateTitle } = this.props\n\n return selectedDateTitle\n ? `${selectedDateTitle}, ${open_picker_text}`\n : open_picker_text\n }\n\n render() {\n const {\n id,\n title,\n\n submitAttributes,\n isRange, // eslint-disable-line\n maskOrder, // eslint-disable-line\n maskPlaceholder, // eslint-disable-line\n separatorRexExp, // eslint-disable-line\n onChange, // eslint-disable-line\n onFocus, // eslint-disable-line\n onSubmit, // eslint-disable-line\n onBlur, // eslint-disable-line\n selectedDateTitle, // eslint-disable-line\n showInput, // eslint-disable-line\n input_element,\n locale,\n disabled,\n skeleton,\n opened,\n size,\n status,\n status_state,\n status_props,\n\n ...attributes\n } = this.props\n\n const { focusState } = this.state\n\n validateDOMAttributes(this.props, attributes)\n validateDOMAttributes(null, submitAttributes)\n\n const UsedButton = showInput ? SubmitButton : Button\n if (!showInput) {\n // Use Button inner ref\n submitAttributes.innerRef = submitAttributes.ref\n submitAttributes.ref = null\n }\n\n return (\n <fieldset className=\"dnb-date-picker__fieldset\" lang={locale?.code}>\n {this.context.props.label && (\n <legend className=\"dnb-sr-only\">\n {this.context.props.label}\n </legend>\n )}\n <Input\n id={`${id}__input`}\n input_state={disabled ? 'disabled' : focusState}\n input_element={\n input_element && typeof input_element !== 'string'\n ? typeof input_element === 'function'\n ? input_element(this.props)\n : input_element\n : this.renderInputElement\n }\n disabled={disabled || skeleton}\n skeleton={skeleton}\n size={size}\n status={!opened ? status : null}\n status_state={status_state}\n {...status_props}\n submit_element={\n <UsedButton\n id={id}\n disabled={disabled}\n skeleton={skeleton}\n className={classnames(\n showInput && 'dnb-button--input-button',\n opened ? 'dnb-button--active' : null\n )}\n aria-label={this.formatDate()}\n title={title}\n size={size}\n status={status}\n status_state={status_state}\n type=\"button\"\n icon=\"calendar\"\n variant=\"secondary\"\n on_submit={onSubmit}\n on_click={onSubmit}\n {...submitAttributes}\n {...status_props}\n />\n }\n lang={locale?.code}\n {...attributes}\n />\n </fieldset>\n )\n }\n}\n\nconst selectAll = (target) => {\n target.focus()\n target.select()\n}\n\nconst InputElement = ({ className, value, ...props }) => {\n return (\n <TextMask\n guide={true}\n showMask={true}\n keepCharPositions={false} // so we can overwrite next value, if it already exists\n autoComplete=\"off\"\n autoCapitalize=\"none\"\n spellCheck={false}\n autoCorrect=\"off\"\n className={classnames(\n className,\n /\\d+/.test(value) && 'dnb-date-picker__input--highlight'\n )}\n value={value}\n {...props}\n />\n )\n}\n\nconst wait = (t) => new Promise((r) => setTimeout(r, t))\n"],"mappings":";;;;;;AAKA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AAGA,IAAAE,QAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,UAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,SAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,QAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,SAAA,GAAAP,sBAAA,CAAAC,OAAA;AAEA,IAAAO,WAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,SAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,OAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,MAAA,GAAAC,uBAAA,CAAAX,OAAA;AACA,IAAAY,QAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,gBAAA,GAAAb,OAAA;AAKA,IAAAc,eAAA,GAAAd,OAAA;AACA,IAAAe,kBAAA,GAAAhB,sBAAA,CAAAC,OAAA;AAAmD,MAAAgB,SAAA;EAAAC,UAAA;AAAA,IAAAC,KAAA;AAAA,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAT,wBAAAa,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAAA,SAAA/B,uBAAAyB,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAiB,yBAAAC,MAAA,EAAAC,QAAA,QAAAD,MAAA,yBAAAE,MAAA,GAAAC,6BAAA,CAAAH,MAAA,EAAAC,QAAA,OAAAR,GAAA,EAAAW,CAAA,MAAAd,MAAA,CAAAe,qBAAA,QAAAC,gBAAA,GAAAhB,MAAA,CAAAe,qBAAA,CAAAL,MAAA,QAAAI,CAAA,MAAAA,CAAA,GAAAE,gBAAA,CAAAC,MAAA,EAAAH,CAAA,MAAAX,GAAA,GAAAa,gBAAA,CAAAF,CAAA,OAAAH,QAAA,CAAAO,OAAA,CAAAf,GAAA,uBAAAH,MAAA,CAAAI,SAAA,CAAAe,oBAAA,CAAAb,IAAA,CAAAI,MAAA,EAAAP,GAAA,aAAAS,MAAA,CAAAT,GAAA,IAAAO,MAAA,CAAAP,GAAA,cAAAS,MAAA;AAAA,SAAAC,8BAAAH,MAAA,EAAAC,QAAA,QAAAD,MAAA,yBAAAE,MAAA,WAAAQ,UAAA,GAAApB,MAAA,CAAAqB,IAAA,CAAAX,MAAA,OAAAP,GAAA,EAAAW,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAM,UAAA,CAAAH,MAAA,EAAAH,CAAA,MAAAX,GAAA,GAAAiB,UAAA,CAAAN,CAAA,OAAAH,QAAA,CAAAO,OAAA,CAAAf,GAAA,kBAAAS,MAAA,CAAAT,GAAA,IAAAO,MAAA,CAAAP,GAAA,YAAAS,MAAA;AAAA,SAAAU,SAAA,IAAAA,QAAA,GAAAtB,MAAA,CAAAuB,MAAA,GAAAvB,MAAA,CAAAuB,MAAA,CAAAC,IAAA,eAAAZ,MAAA,aAAAE,CAAA,MAAAA,CAAA,GAAAW,SAAA,CAAAR,MAAA,EAAAH,CAAA,UAAAJ,MAAA,GAAAe,SAAA,CAAAX,CAAA,YAAAX,GAAA,IAAAO,MAAA,QAAAV,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAI,MAAA,EAAAP,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAO,MAAA,CAAAP,GAAA,gBAAAS,MAAA,YAAAU,QAAA,CAAAI,KAAA,OAAAD,SAAA;AAAA,SAAAE,QAAAC,MAAA,EAAAC,cAAA,QAAAR,IAAA,GAAArB,MAAA,CAAAqB,IAAA,CAAAO,MAAA,OAAA5B,MAAA,CAAAe,qBAAA,QAAAe,OAAA,GAAA9B,MAAA,CAAAe,qBAAA,CAAAa,MAAA,GAAAC,cAAA,KAAAC,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAhC,MAAA,CAAAE,wBAAA,CAAA0B,MAAA,EAAAI,GAAA,EAAAC,UAAA,OAAAZ,IAAA,CAAAa,IAAA,CAAAR,KAAA,CAAAL,IAAA,EAAAS,OAAA,YAAAT,IAAA;AAAA,SAAAc,cAAAvB,MAAA,aAAAE,CAAA,MAAAA,CAAA,GAAAW,SAAA,CAAAR,MAAA,EAAAH,CAAA,UAAAJ,MAAA,WAAAe,SAAA,CAAAX,CAAA,IAAAW,SAAA,CAAAX,CAAA,QAAAA,CAAA,OAAAa,OAAA,CAAA3B,MAAA,CAAAU,MAAA,OAAA0B,OAAA,WAAAjC,GAAA,IAAAkC,eAAA,CAAAzB,MAAA,EAAAT,GAAA,EAAAO,MAAA,CAAAP,GAAA,SAAAH,MAAA,CAAAsC,yBAAA,GAAAtC,MAAA,CAAAuC,gBAAA,CAAA3B,MAAA,EAAAZ,MAAA,CAAAsC,yBAAA,CAAA5B,MAAA,KAAAiB,OAAA,CAAA3B,MAAA,CAAAU,MAAA,GAAA0B,OAAA,WAAAjC,GAAA,IAAAH,MAAA,CAAAC,cAAA,CAAAW,MAAA,EAAAT,GAAA,EAAAH,MAAA,CAAAE,wBAAA,CAAAQ,MAAA,EAAAP,GAAA,iBAAAS,MAAA;AAAA,SAAAyB,gBAAA7C,GAAA,EAAAW,GAAA,EAAAqC,KAAA,IAAArC,GAAA,GAAAsC,cAAA,CAAAtC,GAAA,OAAAA,GAAA,IAAAX,GAAA,IAAAQ,MAAA,CAAAC,cAAA,CAAAT,GAAA,EAAAW,GAAA,IAAAqC,KAAA,EAAAA,KAAA,EAAAP,UAAA,QAAAS,YAAA,QAAAC,QAAA,oBAAAnD,GAAA,CAAAW,GAAA,IAAAqC,KAAA,WAAAhD,GAAA;AAAA,SAAAiD,eAAAG,GAAA,QAAAzC,GAAA,GAAA0C,YAAA,CAAAD,GAAA,2BAAAzC,GAAA,gBAAAA,GAAA,GAAA2C,MAAA,CAAA3C,GAAA;AAAA,SAAA0C,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAA3C,IAAA,CAAAyC,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAEpC,MAAMS,eAAe,SAASC,cAAK,CAACC,aAAa,CAAC;EAmE/DC,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAACA,KAAK,CAAC;IAAAvB,eAAA,gBANN;MACNwB,qBAAqB,EAAE,IAAI;MAC3BC,UAAU,EAAE;IACd,CAAC;IAAAzB,eAAA,0BAgCiB,MAAO0B,CAAC,IAAK;MAC7B,IAAI,IAAI,CAACC,SAAS,EAAE;QAClB,MAAMC,OAAO,GAAG,CACdF,CAAC,CAACG,aAAa,IACd,OAAOC,MAAM,KAAK,WAAW,IAAIA,MAAM,CAACD,aAAc,EACvDE,OAAO,CAAC,MAAM,CAAC;QACjB,IAAIH,OAAO,EAAE;UACXF,CAAC,CAACM,cAAc,CAAC,CAAC;UAClB,IAAI;YACF,MAAMC,UAAU,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC;YAC7B,MAAMC,eAAe,GAAG,CAAC,YAAY,CAAC;YAEtCA,eAAe,CAACnC,OAAO,CAAEoC,IAAI,IAAK;cAChCF,UAAU,CAAClC,OAAO,CAAEqC,GAAG,IAAK;gBAC1BF,eAAe,CAACrC,IAAI,CAACsC,IAAI,CAACE,OAAO,CAAC,IAAI,EAAED,GAAG,CAAC,CAAC;cAC/C,CAAC,CAAC;YACJ,CAAC,CAAC;YACFF,eAAe,CAACnC,OAAO,CAAEoC,IAAI,IAAK;cAChCD,eAAe,CAACrC,IAAI,CAACsC,IAAI,CAACG,KAAK,CAAC,EAAE,CAAC,CAACC,OAAO,CAAC,CAAC,CAACC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzD,CAAC,CAAC;YAEF,IAAIL,IAAI;YACR,KAAK,IAAI1D,CAAC,GAAG,CAAC,EAAEgE,CAAC,GAAGP,eAAe,CAACtD,MAAM,EAAEH,CAAC,GAAGgE,CAAC,EAAE,EAAEhE,CAAC,EAAE;cACtD0D,IAAI,GAAG,IAAAO,mCAAmB,EAACd,OAAO,EAAE;gBAClCe,WAAW,EAAET,eAAe,CAACzD,CAAC;cAChC,CAAC,CAAC;cACF,IAAI0D,IAAI,EAAE;gBACR;cACF;YACF;YACA,MAAMS,IAAI,GAAG,IAAI,CAACjB,SAAS,KAAK,OAAO,GAAG,WAAW,GAAG,SAAS;YACjE,IAAIQ,IAAI,IAAI,CAAC,IAAI,CAACU,KAAK,CAACD,IAAI,CAAC,EAAE;cAC7B,IAAI,CAACE,OAAO,CAACC,QAAQ,CAAC;gBACpB,CAACH,IAAI,GAAGT;cACV,CAAC,CAAC;YACJ;UACF,CAAC,CAAC,OAAOT,CAAC,EAAE;YACV,IAAAsB,qBAAI,EAACtB,CAAC,CAAC;UACT;QACF;MACF;IACF,CAAC;IAAA1B,eAAA,gCAEwB6C,KAAK,IAAK;MACjC,IAAI,CAACC,OAAO,CAACG,WAAW,CACtB;QACEC,SAAS,EAAE;MACb,CAAC,EACD,MAAM;QACJ,IAAI,IAAI,CAACJ,OAAO,CAACK,eAAe,EAAE;UAChC,MAAM;YAAEC,SAAS;YAAEC,OAAO;YAAEC;UAAM,CAAC,GAAAxD,aAAA,CAAAA,aAAA,KAC9B,IAAI,CAACgD,OAAO,GACZD,KAAK,CACT;UACD,IAAI,CAACC,OAAO,CAACS,mBAAmB,CAAC;YAAEH,SAAS;YAAEC,OAAO;YAAEC;UAAM,CAAC,CAAC;QACjE;MACF,CACF,CAAC;IACH,CAAC;IAAAtD,eAAA,uBAEcwD,IAAA,IAAmC;MAAA,IAAlC;QAAEJ,SAAS;QAAEC,OAAO;QAAEC;MAAM,CAAC,GAAAE,IAAA;MAC3C,MAAMX,KAAK,GAAG;QAAEY,gBAAgB,EAAE;MAAK,CAAC;MACxC,IAAI,OAAOL,SAAS,KAAK,WAAW,IAAI,IAAAM,gBAAO,EAACN,SAAS,CAAC,EAAE;QAC1DP,KAAK,CAACO,SAAS,GAAGA,SAAS;MAC7B;MACA,IAAI,CAAC,IAAI,CAAC7B,KAAK,CAACoC,OAAO,EAAE;QACvBN,OAAO,GAAGD,SAAS;MACrB;MACA,IAAI,OAAOC,OAAO,KAAK,WAAW,IAAI,IAAAK,gBAAO,EAACL,OAAO,CAAC,EAAE;QACtDR,KAAK,CAACQ,OAAO,GAAGA,OAAO;MACzB;MAEA,IAAI,CAACP,OAAO,CAACG,WAAW,CAACJ,KAAK,EAAE,MAAM;QACpC,IACG,OAAOO,SAAS,KAAK,WAAW,IAAI,IAAAM,gBAAO,EAACN,SAAS,CAAC,IACtD,OAAOC,OAAO,KAAK,WAAW,IAAI,IAAAK,gBAAO,EAACL,OAAO,CAAE,EACpD;UACA,IAAI,CAACP,OAAO,CAACS,mBAAmB,CAAC;YAAED;UAAM,CAAC,CAAC;QAC7C;MACF,CAAC,CAAC;IACJ,CAAC;IAAAtD,eAAA,qBAEY4D,KAAA,IAAe;MAAA,IAAd;QAAEN;MAAM,CAAC,GAAAM,KAAA;MACrB,MAAMC,QAAQ,GAAGA,CAAA,KACf,CAAC,OAAO,EAAE,KAAK,CAAC,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEnB,IAAI,KAAK;QACrCmB,GAAG,CAAE,GAAEnB,IAAK,MAAK,CAAC,GAAG,CACnB,IAAI,CAAE,IAAGA,IAAK,MAAK,CAAC,IAAI,IAAI,CAACE,OAAO,CAAE,KAAIF,IAAK,MAAK,CAAC,IAAI,MAAM,EAC/D,IAAI,CAAE,IAAGA,IAAK,OAAM,CAAC,IAAI,IAAI,CAACE,OAAO,CAAE,KAAIF,IAAK,OAAM,CAAC,IAAI,IAAI,EAC/D,IAAI,CAAE,IAAGA,IAAK,KAAI,CAAC,IAAI,IAAI,CAACE,OAAO,CAAE,KAAIF,IAAK,KAAI,CAAC,IAAI,IAAI,CAC5D,CAACJ,IAAI,CAAC,GAAG,CAAC;QACX,OAAOuB,GAAG;MACZ,CAAC,EAAE,CAAC,CAAC,CAAC;MAGR,IAAI;QAAEX,SAAS;QAAEC;MAAQ,CAAC,GAAGQ,QAAQ,CAAC,CAAC;MAEvCT,SAAS,GAAG,IAAAY,iBAAQ,EAACZ,SAAS,CAAC;MAC/BC,OAAO,GAAG,IAAAW,iBAAQ,EAACX,OAAO,CAAC;MAG3B,IAAI,CAAC,IAAAK,gBAAO,EAACN,SAAS,CAAC,EAAE;QACvBA,SAAS,GAAG,IAAI;MAClB;MACA,IAAI,CAAC,IAAAM,gBAAO,EAACL,OAAO,CAAC,EAAE;QACrBA,OAAO,GAAG,IAAI;MAChB;MAEA,IAAIY,YAAY,GAAG,IAAI,CAACnB,OAAO,CAACoB,eAAe,CAAC;QAC9Cd,SAAS;QACTC,OAAO;QACPC;MACF,CAAC,CAAC;MAGF,IACEW,YAAY,CAACE,QAAQ,KAAK,KAAK,IAC/BF,YAAY,CAACG,mBAAmB,KAAK,KAAK,IAC1CH,YAAY,CAACI,iBAAiB,KAAK,KAAK,EACxC;QACA,MAAM;UAAEjB,SAAS;UAAEC;QAAQ,CAAC,GAAGQ,QAAQ,CAAC,CAAC;QAEzC,MAAMS,UAAU,GAAG,IAAI,CAAC/C,KAAK,CAACoC,OAAO,GACjC;UACEY,UAAU,EAAEnB,SAAS;UACrBoB,QAAQ,EAAEnB;QACZ,CAAC,GACD;UAAElB,IAAI,EAAEiB;QAAU,CAAC;QAEvBa,YAAY,GAAAnE,aAAA,CAAAA,aAAA,KACPmE,YAAY,GACZK,UAAU,CACd;MACH;MAEA,IAAAG,2CAA0B,EAAC,IAAI,CAAC3B,OAAO,EAAE,SAAS,EAAEmB,YAAY,CAAC;IACnE,CAAC;IAAAjE,eAAA,0BAEiB,MAAA0E,KAAA,IAAsC;MAAA,IAA/B;QAAEC,OAAO;QAAEpG,MAAM;QAAE+E;MAAM,CAAC,GAAAoB,KAAA;MACjD,IAAI;QACF,MAAME,MAAM,GAAGrG,MAAM,CAClBsG,YAAY,CAAC,OAAO,CAAC,CACrBC,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC,CAAC;QAEjD,MAAMC,SAAS,GAAGxG,MAAM,CACrBsG,YAAY,CAAC,IAAI,CAAC,CAClBC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAE/B,IAAI3C,IAAI,GACN4C,SAAS,KAAK,OAAO,GACjB,IAAI,CAACjC,OAAO,CAACM,SAAS,GACtB,IAAI,CAACN,OAAO,CAACO,OAAO;QAG1B,IAAI,CAAClB,IAAI,EAAE;UACT;QACF;QAEA,MAAM6C,KAAK,GAAGL,OAAO,KAAK,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAIA,OAAO,KAAK,IAAI,IAAIA,OAAO,KAAK,MAAM,EAAE;UAC1C,QAAQC,MAAM;YACZ,KAAK,KAAK;cACRzC,IAAI,GAAG,IAAA8C,gBAAO,EAAC9C,IAAI,EAAE6C,KAAK,CAAC;cAC3B;YACF,KAAK,OAAO;cACV7C,IAAI,GAAG,IAAA+C,kBAAS,EAAC/C,IAAI,EAAE6C,KAAK,CAAC;cAC7B;YACF,KAAK,MAAM;cACT7C,IAAI,GAAG,IAAAgD,iBAAQ,EAAChD,IAAI,EAAE6C,KAAK,CAAC;cAC5B;UACJ;QACF;QAEA,IAAI,CAACI,YAAY,CAAC;UAChB,CAACL,SAAS,KAAK,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG5C,IAAI;UACvDmB;QACF,CAAC,CAAC;QAEF,MAAM+B,IAAI,CAAC,CAAC,CAAC;QAEbC,SAAS,CAAC/G,MAAM,CAAC;MACnB,CAAC,CAAC,OAAOmD,CAAC,EAAE;QACV,IAAAsB,qBAAI,EAACtB,CAAC,CAAC;MACT;IACF,CAAC;IAAA1B,eAAA,sBAEczB,MAAM,IAAK;MACxBA,MAAM,CAACgH,KAAK,CAAC,CAAC;MACdhH,MAAM,CAACiH,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;IAAAxF,eAAA,yBAEiBsD,KAAK,IAAK;MAC1B,IAAI;QACFgC,SAAS,CAAChC,KAAK,CAAC/E,MAAM,CAAC;MACzB,CAAC,CAAC,OAAOmD,CAAC,EAAE;QACV,IAAAsB,qBAAI,EAACtB,CAAC,CAAC;MACT;MAEA,IAAI,CAACqB,QAAQ,CAAC;QACZtB,UAAU,EAAE,OAAO;QACnBD,qBAAqB,EAAE;MACzB,CAAC,CAAC;MAEF,IAAI,IAAI,CAACD,KAAK,CAACkE,OAAO,EAAE;QACtB,IAAI,CAAClE,KAAK,CAACkE,OAAO,CAAA3F,aAAA,CAAAA,aAAA,KACbwD,KAAK,GACL,IAAI,CAACR,OAAO,CAACoB,eAAe,CAAC;UAAEZ;QAAM,CAAC,CAAC,CAC3C,CAAC;MACJ;IACF,CAAC;IAAAtD,eAAA,wBAEgBsD,KAAK,IAAK;MACzB,IAAI,CAAC3B,SAAS,GAAG,IAAI;MACrB,IAAI,CAACoB,QAAQ,CAAC;QACZtB,UAAU,EAAE,MAAM;QAClBD,qBAAqB,EAAE;MACzB,CAAC,CAAC;MAEF,IAAI,IAAI,CAACD,KAAK,CAACmE,MAAM,EAAE;QACrB,IAAI,CAACnE,KAAK,CAACmE,MAAM,CAAA5F,aAAA,CAAAA,aAAA,KACZwD,KAAK,GACL,IAAI,CAACR,OAAO,CAACoB,eAAe,CAAC;UAAEZ;QAAM,CAAC,CAAC,CAC3C,CAAC;MACJ;IACF,CAAC;IAAAtD,eAAA,2BAEkB,MAAOsD,KAAK,IAAK;MAClC,MAAMqB,OAAO,GAAG,IAAAgB,gBAAO,EAACrC,KAAK,CAAC;MAC9B,MAAM/E,MAAM,GAAG+E,KAAK,CAAC/E,MAAM;MAE3B,IAAIA,MAAM,CAACqH,cAAc,KAAKrH,MAAM,CAACsH,YAAY,EAAE;QACjD,IAAI,CAACC,WAAW,CAACvH,MAAM,CAAC;MAC1B;MAGA,QAAQoG,OAAO;QACb,KAAK,IAAI;QACT,KAAK,MAAM;UACTrB,KAAK,CAACyC,OAAO,CAAC,CAAC;UACfzC,KAAK,CAACtB,cAAc,CAAC,CAAC;UACtB,IAAI,CAACgE,eAAe,CAAC;YAAE1C,KAAK;YAAEqB,OAAO;YAAEpG;UAAO,CAAC,CAAC;UAChD,OAAO,KAAK;QACd,KAAK,KAAK;UAER,OAAO,KAAK;MAChB;MAIA,MAAM0H,IAAI,GAAGC,UAAU,CAAC3H,MAAM,CAACsG,YAAY,CAAC,MAAM,CAAC,CAAC;MACpD,MAAMsB,mBAAmB,GAAG5H,MAAM,CAACqH,cAAc;MAEjD,MAAMP,IAAI,CAAC,CAAC,CAAC;MAEb,MAAMe,oBAAoB,GAAG7H,MAAM,CAACqH,cAAc;MAClD,MAAMlC,OAAO,GAAG,OAAO,CAAC2C,IAAI,CAAC1B,OAAO,CAAC;MACrC,MAAM2B,KAAK,GAAG,IAAI,CAACC,OAAO,CAACC,SAAS,CAClCC,KAAA;QAAA,IAAC;UAAEC;QAAQ,CAAC,GAAAD,KAAA;QAAA,OAAKC,OAAO,KAAKnI,MAAM;MAAA,CACrC,CAAC;MAED,IACE+H,KAAK,GAAG,IAAI,CAACC,OAAO,CAAC3H,MAAM,GAAG,CAAC,KAC7BwH,oBAAoB,KAAKH,IAAI,IAC7BvC,OAAO,IACPiB,OAAO,KAAK,MAAM,IAClBA,OAAO,KAAK,WAAW,IACtBwB,mBAAmB,KAAKF,IAAI,IAAItB,OAAO,KAAK,OAAQ,CAAC,EACxD;QACA,IAAI;UAEF,IAAI,CAAC,IAAI,CAAC4B,OAAO,CAACD,KAAK,GAAG,CAAC,CAAC,CAACI,OAAO,EAAE;YACpC;UACF;UACA,MAAMC,WAAW,GAAG,IAAI,CAACJ,OAAO,CAACD,KAAK,GAAG,CAAC,CAAC,CAACI,OAAO;UACnD,IAAIC,WAAW,EAAE;YACfA,WAAW,CAACpB,KAAK,CAAC,CAAC;YACnBoB,WAAW,CAACnB,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;UACrC;QACF,CAAC,CAAC,OAAO9D,CAAC,EAAE;UACV,IAAAsB,qBAAI,EAACtB,CAAC,CAAC;QACT;MACF,CAAC,MAAM,IAAIyE,mBAAmB,KAAK,CAAC,IAAIG,KAAK,GAAG,CAAC,EAAE;QACjD,QAAQ3B,OAAO;UACb,KAAK,MAAM;UACX,KAAK,WAAW;YACd,IAAI;cACF,MAAMiC,WAAW,GAAG,IAAI,CAACL,OAAO,CAACD,KAAK,GAAG,CAAC,CAAC,CAACI,OAAO;cACnD,IAAIE,WAAW,EAAE;gBACf,MAAMC,MAAM,GAAGD,WAAW,CAACzG,KAAK,CAACvB,MAAM;gBACvCgI,WAAW,CAACrB,KAAK,CAAC,CAAC;gBACnBqB,WAAW,CAACpB,iBAAiB,CAACqB,MAAM,EAAEA,MAAM,CAAC;cAC/C;YACF,CAAC,CAAC,OAAOnF,CAAC,EAAE;cACV,IAAAsB,qBAAI,EAACtB,CAAC,CAAC;YACT;YACA;QACJ;MACF;IACF,CAAC;IAAA1B,eAAA,uBAEesD,KAAK,IAAK;MACxB,IAAI,CAACwD,OAAO,CAACxD,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC;IACrC,CAAC;IAAAtD,eAAA,yBAEiBsD,KAAK,IAAK;MAC1B,IAAI,CAACwD,OAAO,CAACxD,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;IACvC,CAAC;IAAAtD,eAAA,wBAEgBsD,KAAK,IAAK;MACzB,IAAI,CAACwD,OAAO,CAACxD,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;IACtC,CAAC;IAAAtD,eAAA,qBAEasD,KAAK,IAAK;MACtB,IAAI,CAACwD,OAAO,CAACxD,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;IACnC,CAAC;IAAAtD,eAAA,uBAEesD,KAAK,IAAK;MACxB,IAAI,CAACwD,OAAO,CAACxD,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC;IACrC,CAAC;IAAAtD,eAAA,sBAEcsD,KAAK,IAAK;MACvB,IAAI,CAACwD,OAAO,CAACxD,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC;IACpC,CAAC;IAAAtD,eAAA,kBAES,CAACsD,KAAK,EAAEV,IAAI,EAAEmE,IAAI,KAAK;MAC/BzD,KAAK,CAACyC,OAAO,CAAC,CAAC;MAEf,MAAM5F,KAAK,GAAGmD,KAAK,CAAC/E,MAAM,CAAC4B,KAAK;MAEhC,IAAI,CAAE,IAAGyC,IAAK,GAAEmE,IAAK,EAAC,CAAC,GAAG5G,KAAK;MAE/B,IAAI,IAAI,CAAC2C,OAAO,CAAE,GAAEF,IAAK,MAAK,CAAC,EAAE;QAC/B,IAAI,CAAE,OAAMA,IAAK,MAAK,CAAC,GAAG,IAAI,CAACE,OAAO,CAAE,GAAEF,IAAK,MAAK,CAAC;MACvD;MAEA,MAAMoE,QAAQ,GAAG,IAAI,CAAE,OAAMpE,IAAK,MAAK,CAAC;MAGxC,MAAMqE,IAAI,GACR,IAAI,CAAE,IAAGrE,IAAK,MAAK,CAAC,IAAKoE,QAAQ,IAAIA,QAAQ,CAACE,WAAW,CAAC,CAAE;MAC9D,MAAMC,KAAK,GACT,IAAI,CAAE,IAAGvE,IAAK,OAAM,CAAC,IAAKoE,QAAQ,IAAIA,QAAQ,CAACI,QAAQ,CAAC,CAAC,GAAG,CAAE;MAChE,MAAMC,GAAG,GAAG,IAAI,CAAE,IAAGzE,IAAK,KAAI,CAAC,IAAKoE,QAAQ,IAAIA,QAAQ,CAACM,OAAO,CAAC,CAAE;MAGnE,MAAMnF,IAAI,GAAG,IAAIoF,IAAI,CACnBrB,UAAU,CAACe,IAAI,CAAC,EAChBf,UAAU,CAACiB,KAAK,CAAC,GAAG,CAAC,EACrBjB,UAAU,CAACmB,GAAG,CAChB,CAAC;MAED,MAAMG,WAAW,GACf,CAAC,QAAQ,CAACnB,IAAI,CAACgB,GAAG,CAAC,IACnB,CAAC,QAAQ,CAAChB,IAAI,CAACc,KAAK,CAAC,IACrB,CAAC,QAAQ,CAACd,IAAI,CAACY,IAAI,CAAC,IACpB,IAAAvD,gBAAO,EAACvB,IAAI,CAAC,IACbA,IAAI,CAACmF,OAAO,CAAC,CAAC,IAAIpB,UAAU,CAACmB,GAAG,CAAC,IACjClF,IAAI,CAACiF,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAIlB,UAAU,CAACiB,KAAK,CAAC,IACxChF,IAAI,CAAC+E,WAAW,CAAC,CAAC,IAAIhB,UAAU,CAACe,IAAI,CAAC;MAGxC,IAAIO,WAAW,EAAE;QACf,IAAI,CAACpC,YAAY,CAAC;UAChB,CAAE,GAAExC,IAAK,MAAK,GAAGT,IAAI;UACrBmB;QACF,CAAC,CAAC;MACJ,CAAC,MAAM;QACL,IAAI,CAACR,OAAO,CAACG,WAAW,CAAC;UAAE,CAAE,GAAEL,IAAK,MAAK,GAAG;QAAK,CAAC,CAAC;QACnD,IAAI,CAACE,OAAO,CAACG,WAAW,CAAC;UAAE,CAAE,KAAIL,IAAK,GAAEmE,IAAK,EAAC,GAAG5G;QAAM,CAAC,CAAC;QAEzD,IAAI,CAACsH,qBAAqB,CAAC;UACzB,CAAE,GAAE7E,IAAK,MAAK,GAAG,IAAI;UACrBU;QACF,CAAC,CAAC;MACJ;MAEA,IAAI,CAACoE,UAAU,CAAC;QACdpE;MACF,CAAC,CAAC;IACJ,CAAC;IAAAtD,eAAA,6BAEqB2H,MAAM,IAAK;MAC/B,MAAM;QAAEC,EAAE;QAAEjE;MAAQ,CAAC,GAAG,IAAI,CAACpC,KAAK;MAClC,IAAI,CAACgF,OAAO,GAAG,EAAE;MACjB,MAAMsB,aAAa,GAAG,IAAI,CAACC,gBAAgB,CAACH,MAAM,EAAE,OAAO,CAAC;MAC5D,MAAMI,WAAW,GAAG,IAAI,CAACD,gBAAgB,CAACH,MAAM,EAAE,KAAK,CAAC;MACxD,OACElM,MAAA,CAAA4B,OAAA,CAAA2K,aAAA;QAAMJ,EAAE,EAAG,GAAEA,EAAG,QAAQ;QAACK,SAAS,EAAC;MAAiC,GACjEJ,aAAa,EACblE,OAAO,KAAA9G,KAAA,KAAAA,KAAA,GACNpB,MAAA,CAAA4B,OAAA,CAAA2K,aAAA;QAAMC,SAAS,EAAC,4BAA4B;QAAC;MAAW,GACrD,KACG,CAAC,EACR,EACAtE,OAAO,IAAIoE,WACR,CAAC;IAEX,CAAC;IAxaC,MAAM9F,WAAU,GAAGV,KAAK,CAAC2G,SAAS,CAACpD,KAAK,CAACvD,KAAK,CAAC4G,eAAe,CAAC;IAC/D,IAAI,CAACC,QAAQ,GAAG7G,KAAK,CAAC2G,SAAS,CAC5B5F,KAAK,CAACf,KAAK,CAAC4G,eAAe,CAAC,CAC5BrE,MAAM,CAAC,CAACC,GAAG,EAAEsE,GAAG,KAAK;MACpB,IAAIA,GAAG,EAAE;QACPtE,GAAG,CAAClE,IAAI,CAACwI,GAAG,CAAC;QACb,IAAIpG,WAAU,CAACrD,MAAM,GAAG,CAAC,EAAE;UACzBmF,GAAG,CAAClE,IAAI,CAACoC,WAAU,CAACqG,KAAK,CAAC,CAAC,CAAC;QAC9B;MACF;MACA,OAAOvE,GAAG;IACZ,CAAC,EAAE,EAAE,CAAC;IAER,IAAI,CAACwE,YAAY,GAAGnH,cAAK,CAACoH,SAAS,CAAC,CAAC;IACrC,IAAI,CAACC,cAAc,GAAGrH,cAAK,CAACoH,SAAS,CAAC,CAAC;IACvC,IAAI,CAACE,aAAa,GAAGtH,cAAK,CAACoH,SAAS,CAAC,CAAC;IACtC,IAAI,CAACG,UAAU,GAAGvH,cAAK,CAACoH,SAAS,CAAC,CAAC;IACnC,IAAI,CAACI,YAAY,GAAGxH,cAAK,CAACoH,SAAS,CAAC,CAAC;IACrC,IAAI,CAACK,WAAW,GAAGzH,cAAK,CAACoH,SAAS,CAAC,CAAC;EACtC;EAEAM,oBAAoBA,CAAA,EAAG;IACrB,IAAI,IAAI,CAACC,UAAU,EAAE;MACnB,IAAI,CAACA,UAAU,CAACC,MAAM,CAAC,IAAI,CAACC,UAAU,CAAC;IACzC;EACF;EAiZAC,kBAAkBA,CAAC/I,KAAK,EAAE;IACxB,MAAMmG,KAAK,GAAG,IAAI,CAAC/E,KAAK,CAAC2G,SAAS,CAACrJ,OAAO,CAACsB,KAAK,CAAC;IACjD,OAAO,IAAI,CAACoB,KAAK,CAAC4H,eAAe,CAAC7C,KAAK,CAAC;EAC1C;EAEAwB,gBAAgBA,CAACH,MAAM,EAAE/E,IAAI,EAAE;IAC7B,OAAO,IAAI,CAACwF,QAAQ,CAACgB,GAAG,CAAC,CAACjJ,KAAK,EAAE1B,CAAC,KAAK;MACrC,MAAMoE,KAAK,GAAG1C,KAAK,CAACkJ,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;MAC/B,MAAMC,eAAe,GAAG,IAAI,CAACJ,kBAAkB,CAAC/I,KAAK,CAAC;MACtD,MAAM;QAAEoJ,aAAa;QAAEpB,eAAe;QAAExE,OAAO;QAAEsC;MAAK,CAAC,GAAG,IAAI,CAAC1E,KAAK;MACpE,MAAM;QAAE8F,GAAG;QAAEF,KAAK;QAAEF;MAAK,CAAC,GAAG,IAAI,CAACnE,OAAO,CAAC0G,WAAW,CAACC,UAAU;MAChE,MAAMC,YAAY,GAAG/F,OAAO,GACvB,GAAE,IAAI,CAACb,OAAO,CAAC0G,WAAW,CAACC,UAAU,CAAC7G,IAAI,CAAE,GAAE,GAC/C,EAAE;MAEN,IAAI,CAACuF,eAAe,CAAC9B,IAAI,CAAClG,KAAK,CAAC,EAAE;QAChC,IAAI,CAACoJ,aAAa,EAAE;UAClB5B,MAAM,GAAA7H,aAAA,CAAAA,aAAA,KACD6H,MAAM;YACTgC,SAAS,EAAE,IAAI,CAACC,gBAAgB;YAChCC,OAAO,EAAE,IAAI,CAACC,eAAe;YAC7BrE,OAAO,EAAG/D,CAAC,IAAK;cACd,IAAI,CAACC,SAAS,GAAGiB,IAAI;cACrB,IAAI,CAACmH,cAAc,CAACrI,CAAC,CAAC;YACxB,CAAC;YACDgE,MAAM,EAAE,IAAI,CAACsE,aAAa;YAC1BV;UAAe,EAChB;QACH;QAGA,MAAMW,SAAS,GACbV,aAAa,IAAInI,cAAK,CAAC8I,cAAc,CAACX,aAAa,CAAC,GAChDA,aAAa,GACbY,YAAY;QAElB,MAAMC,kBAAkB,GACtBnE,IAAI,IAAK,2BAA0BA,IAAK,EAAC;QAE3C,QAAQpD,KAAK;UACX,KAAK,GAAG;YACN,IAAI,CAAC0D,OAAO,CAAC1G,IAAI,CAAC,IAAI,CAAE,IAAG+C,IAAK,QAAO,CAAC,CAAC;YAEzC,OACEnH,MAAA,CAAA4B,OAAA,CAAA2K,aAAA,CAACvM,MAAA,CAAA4B,OAAK,CAACgN,QAAQ;cAACvM,GAAG,EAAE,IAAI,GAAGW;YAAE,GAC5BhD,MAAA,CAAA4B,OAAA,CAAA2K,aAAA,CAACiC,SAAS,EAAAhL,QAAA,KACJ0I,MAAM;cACVC,EAAE,EAAG,GAAE,IAAI,CAACrG,KAAK,CAACqG,EAAG,IAAGhF,IAAK,MAAM;cACnC9E,GAAG,EAAE,IAAI,GAAGW,CAAE;cACdwJ,SAAS,EAAE,IAAAqC,mBAAU,wDACnB3C,MAAM,CAACM,SAAS,EAGhBmC,kBACF,CAAE;cACFnE,IAAI,EAAC,GAAG;cACRsE,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAE;cACzBC,QAAQ,EAAE,IAAI,CAAE,IAAG5H,IAAK,QAAO,CAAE;cACjC6H,QAAQ,EAAE,IAAI,CAAE,OAAM7H,IAAK,KAAI,CAAE;cACjCzC,KAAK,EAAE,IAAI,CAAC2C,OAAO,CAAE,KAAIF,IAAK,KAAI,CAAC,IAAI,EAAG;cAC1C,mBAAkB,GAAE,IAAI,CAACrB,KAAK,CAACqG,EAAG,IAAGhF,IAAK;YAAY,EACvD,CAAC,EACFnH,MAAA,CAAA4B,OAAA,CAAA2K,aAAA;cACElK,GAAG,EAAE,IAAI,GAAGW,CAAE;cACdiM,MAAM;cACN9C,EAAE,EAAG,GAAE,IAAI,CAACrG,KAAK,CAACqG,EAAG,IAAGhF,IAAK,YAAY;cACzC+H,OAAO,EAAG,GAAE,IAAI,CAACpJ,KAAK,CAACqG,EAAG,IAAGhF,IAAK;YAAM,GAEvC8G,YAAY,GAAGrC,GACX,CACO,CAAC;UAErB,KAAK,GAAG;YACN,IAAI,CAACd,OAAO,CAAC1G,IAAI,CAAC,IAAI,CAAE,IAAG+C,IAAK,UAAS,CAAC,CAAC;YAE3C,OACEnH,MAAA,CAAA4B,OAAA,CAAA2K,aAAA,CAACvM,MAAA,CAAA4B,OAAK,CAACgN,QAAQ;cAACvM,GAAG,EAAE,IAAI,GAAGW;YAAE,GAC5BhD,MAAA,CAAA4B,OAAA,CAAA2K,aAAA,CAACiC,SAAS,EAAAhL,QAAA,KACJ0I,MAAM;cACVC,EAAE,EAAG,GAAE,IAAI,CAACrG,KAAK,CAACqG,EAAG,IAAGhF,IAAK,QAAQ;cACrC9E,GAAG,EAAE,IAAI,GAAGW,CAAE;cACdwJ,SAAS,EAAE,IAAAqC,mBAAU,0DACnB3C,MAAM,CAACM,SAAS,EAGhBmC,kBACF,CAAE;cACFnE,IAAI,EAAC,GAAG;cACRsE,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAE;cACzBC,QAAQ,EAAE,IAAI,CAAE,IAAG5H,IAAK,UAAS,CAAE;cACnC6H,QAAQ,EAAE,IAAI,CAAE,OAAM7H,IAAK,OAAM,CAAE;cACnCzC,KAAK,EAAE,IAAI,CAAC2C,OAAO,CAAE,KAAIF,IAAK,OAAM,CAAC,IAAI,EAAG;cAC5C,mBAAkB,GAAE,IAAI,CAACrB,KAAK,CAACqG,EAAG,IAAGhF,IAAK;YAAc,EACzD,CAAC,EACFnH,MAAA,CAAA4B,OAAA,CAAA2K,aAAA;cACElK,GAAG,EAAE,IAAI,GAAGW,CAAE;cACdiM,MAAM;cACN9C,EAAE,EAAG,GAAE,IAAI,CAACrG,KAAK,CAACqG,EAAG,IAAGhF,IAAK,cAAc;cAC3C+H,OAAO,EAAG,GAAE,IAAI,CAACpJ,KAAK,CAACqG,EAAG,IAAGhF,IAAK;YAAQ,GAEzC8G,YAAY,GAAGvC,KACX,CACO,CAAC;UAErB,KAAK,GAAG;YACN,IAAI,CAACZ,OAAO,CAAC1G,IAAI,CAAC,IAAI,CAAE,IAAG+C,IAAK,SAAQ,CAAC,CAAC;YAE1C,OACEnH,MAAA,CAAA4B,OAAA,CAAA2K,aAAA,CAACvM,MAAA,CAAA4B,OAAK,CAACgN,QAAQ;cAACvM,GAAG,EAAE,IAAI,GAAGW;YAAE,GAC5BhD,MAAA,CAAA4B,OAAA,CAAA2K,aAAA,CAACiC,SAAS,EAAAhL,QAAA,KACJ0I,MAAM;cACVC,EAAE,EAAG,GAAE,IAAI,CAACrG,KAAK,CAACqG,EAAG,IAAGhF,IAAK,OAAO;cACpC9E,GAAG,EAAE,IAAI,GAAGW,CAAE;cACdwJ,SAAS,EAAE,IAAAqC,mBAAU,yDACnB3C,MAAM,CAACM,SAAS,EAGhBmC,kBACF,CAAE;cACFnE,IAAI,EAAC,GAAG;cACRsE,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAE;cAC3CC,QAAQ,EAAE,IAAI,CAAE,IAAG5H,IAAK,SAAQ,CAAE;cAClC6H,QAAQ,EAAE,IAAI,CAAE,OAAM7H,IAAK,MAAK,CAAE;cAClCzC,KAAK,EAAE,IAAI,CAAC2C,OAAO,CAAE,KAAIF,IAAK,MAAK,CAAC,IAAI,EAAG;cAC3C,mBAAkB,GAAE,IAAI,CAACrB,KAAK,CAACqG,EAAG,IAAGhF,IAAK;YAAa,EACxD,CAAC,EACFnH,MAAA,CAAA4B,OAAA,CAAA2K,aAAA;cACElK,GAAG,EAAE,IAAI,GAAGW,CAAE;cACdiM,MAAM;cACN9C,EAAE,EAAG,GAAE,IAAI,CAACrG,KAAK,CAACqG,EAAG,IAAGhF,IAAK,aAAa;cAC1C+H,OAAO,EAAG,GAAE,IAAI,CAACpJ,KAAK,CAACqG,EAAG,IAAGhF,IAAK;YAAO,GAExC8G,YAAY,GAAGzC,IACX,CACO,CAAC;QAEvB;MACF;MACA,OACExL,MAAA,CAAA4B,OAAA,CAAA2K,aAAA;QACElK,GAAG,EAAE,GAAG,GAAGW,CAAE;QACbwJ,SAAS,EAAC,4BAA4B;QACtC;MAAW,GAEVqB,eACG,CAAC;IAEX,CAAC,CAAC;EACJ;EAEAsB,UAAUA,CAAA,EAAG;IACX,MAAM;MAAEC;IAAiB,CAAC,GAAG,IAAI,CAAC/H,OAAO,CAAC0G,WAAW,CAACC,UAAU;IAEhE,MAAM;MAAEqB;IAAkB,CAAC,GAAG,IAAI,CAACvJ,KAAK;IAExC,OAAOuJ,iBAAiB,GACnB,GAAEA,iBAAkB,KAAID,gBAAiB,EAAC,GAC3CA,gBAAgB;EACtB;EAEAE,MAAMA,CAAA,EAAG;IACP,MAAAC,WAAA,GA0BI,IAAI,CAACzJ,KAAK;MA1BR;QACJqG,EAAE;QACFqD,KAAK;QAELC,gBAAgB;QAChBvH,OAAO;QACPuE,SAAS;QACTiB,eAAe;QACfhB,eAAe;QACfsC,QAAQ;QACRhF,OAAO;QACP0F,QAAQ;QACRzF,MAAM;QACNoF,iBAAiB;QACjBM,SAAS;QACT7B,aAAa;QACb8B,MAAM;QACNC,QAAQ;QACRC,QAAQ;QACRC,MAAM;QACNvF,IAAI;QACJwF,MAAM;QACNC,YAAY;QACZC;MAGF,CAAC,GAAAX,WAAA;MADIY,UAAU,GAAAxN,wBAAA,CAAA4M,WAAA,EAAArO,SAAA;IAGf,MAAM;MAAE8E;IAAW,CAAC,GAAG,IAAI,CAACoB,KAAK;IAEjC,IAAAgJ,sCAAqB,EAAC,IAAI,CAACtK,KAAK,EAAEqK,UAAU,CAAC;IAC7C,IAAAC,sCAAqB,EAAC,IAAI,EAAEX,gBAAgB,CAAC;IAE7C,MAAMY,UAAU,GAAGV,SAAS,GAAGW,mBAAY,GAAGC,eAAM;IACpD,IAAI,CAACZ,SAAS,EAAE;MAEdF,gBAAgB,CAACe,QAAQ,GAAGf,gBAAgB,CAACgB,GAAG;MAChDhB,gBAAgB,CAACgB,GAAG,GAAG,IAAI;IAC7B;IAEA,OACEzQ,MAAA,CAAA4B,OAAA,CAAA2K,aAAA;MAAUC,SAAS,EAAC,2BAA2B;MAACkE,IAAI,EAAEd,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEe;IAAK,GAChE,IAAI,CAACtJ,OAAO,CAACvB,KAAK,CAAC8K,KAAK,IACvB5Q,MAAA,CAAA4B,OAAA,CAAA2K,aAAA;MAAQC,SAAS,EAAC;IAAa,GAC5B,IAAI,CAACnF,OAAO,CAACvB,KAAK,CAAC8K,KACd,CACT,EACD5Q,MAAA,CAAA4B,OAAA,CAAA2K,aAAA,CAAC3L,MAAA,CAAAgB,OAAK,EAAA4B,QAAA;MACJ2I,EAAE,EAAG,GAAEA,EAAG,SAAS;MACnB0E,WAAW,EAAEhB,QAAQ,GAAG,UAAU,GAAG7J,UAAW;MAChD8H,aAAa,EACXA,aAAa,IAAI,OAAOA,aAAa,KAAK,QAAQ,GAC9C,OAAOA,aAAa,KAAK,UAAU,GACjCA,aAAa,CAAC,IAAI,CAAChI,KAAK,CAAC,GACzBgI,aAAa,GACf,IAAI,CAACgD,kBACV;MACDjB,QAAQ,EAAEA,QAAQ,IAAIC,QAAS;MAC/BA,QAAQ,EAAEA,QAAS;MACnBtF,IAAI,EAAEA,IAAK;MACXwF,MAAM,EAAE,CAACD,MAAM,GAAGC,MAAM,GAAG,IAAK;MAChCC,YAAY,EAAEA;IAAa,GACvBC,YAAY;MAChBa,cAAc,EACZ/Q,MAAA,CAAA4B,OAAA,CAAA2K,aAAA,CAAC8D,UAAU,EAAA7M,QAAA;QACT2I,EAAE,EAAEA,EAAG;QACP0D,QAAQ,EAAEA,QAAS;QACnBC,QAAQ,EAAEA,QAAS;QACnBtD,SAAS,EAAE,IAAAqC,mBAAU,EACnBc,SAAS,IAAI,0BAA0B,EACvCI,MAAM,IAAG,oBACX,CAAE;QACF,cAAY,IAAI,CAACZ,UAAU,CAAC,CAAE;QAC9BK,KAAK,EAAEA,KAAM;QACbhF,IAAI,EAAEA,IAAK;QACXwF,MAAM,EAAEA,MAAO;QACfC,YAAY,EAAEA,YAAa;QAC3B3E,IAAI,EAAC,QAAQ;QACb0F,IAAI,EAAC,UAAU;QACfC,OAAO,EAAC,WAAW;QACnBC,SAAS,EAAExB,QAAS;QACpByB,QAAQ,EAAEzB;MAAS,GACfD,gBAAgB,EAChBS,YAAY,CACjB,CACF;MACDQ,IAAI,EAAEd,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEe;IAAK,GACfR,UAAU,CACf,CACO,CAAC;EAEf;AACF;AAACiB,OAAA,CAAAxP,OAAA,GAAA8D,eAAA;AAAAnB,eAAA,CA7uBoBmB,eAAe,iBACb2L,0BAAiB;AAAA9M,eAAA,CADnBmB,eAAe,kBAqCZ;EACpByG,EAAE,EAAE,IAAI;EACRqD,KAAK,EAAE,IAAI;EACXH,iBAAiB,EAAE,IAAI;EACvB5C,SAAS,EAAE,YAAY;EACvBiB,eAAe,EAAE,YAAY;EAC7BhB,eAAe,EAAE,QAAQ;EACzB+C,gBAAgB,EAAE,IAAI;EACtBvH,OAAO,EAAE,IAAI;EACbsC,IAAI,EAAE,IAAI;EACVwF,MAAM,EAAE,IAAI;EACZC,YAAY,EAAE,OAAO;EACrBC,YAAY,EAAE,IAAI;EAClBpC,aAAa,EAAE,IAAI;EACnB+B,QAAQ,EAAE,IAAI;EACdD,MAAM,EAAE,IAAI;EACZE,QAAQ,EAAE,IAAI;EACdC,MAAM,EAAE,KAAK;EACbJ,SAAS,EAAE,IAAI;EACfX,QAAQ,EAAE,IAAI;EACdU,QAAQ,EAAE,IAAI;EACd1F,OAAO,EAAE,IAAI;EACbC,MAAM,EAAE;AACV,CAAC;AAAAqH,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBA5DkB9L,eAAe,CAG3B+L,SAAS,GAAG;EACjBtF,EAAE,EAAEuF,kBAAS,CAACC,MAAM;EACpBnC,KAAK,EAAEkC,kBAAS,CAACC,MAAM;EACvBtC,iBAAiB,EAAEqC,kBAAS,CAACC,MAAM;EACnClF,SAAS,EAAEiF,kBAAS,CAACC,MAAM;EAC3BjE,eAAe,EAAEgE,kBAAS,CAACC,MAAM;EACjCjF,eAAe,EAAEgF,kBAAS,CAACE,UAAU,CAACC,MAAM,CAAC;EAC7CpC,gBAAgB,EAAEiC,kBAAS,CAAC5N,MAAM;EAClCoE,OAAO,EAAEwJ,kBAAS,CAACI,IAAI;EACvBtH,IAAI,EAAEkH,kBAAS,CAACK,KAAK,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;EAC9D/B,MAAM,EAAE0B,kBAAS,CAACM,SAAS,CAAC,CAC1BN,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACI,IAAI,EACdJ,kBAAS,CAACO,IAAI,EACdP,kBAAS,CAACQ,IAAI,CACf,CAAC;EACFjC,YAAY,EAAEyB,kBAAS,CAACC,MAAM;EAC9BzB,YAAY,EAAEwB,kBAAS,CAAC5N,MAAM;EAC9BgK,aAAa,EAAE4D,kBAAS,CAACM,SAAS,CAAC,CACjCN,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACO,IAAI,EACdP,kBAAS,CAACQ,IAAI,CACf,CAAC;EACFtC,MAAM,EAAE8B,kBAAS,CAAC5N,MAAM;EACxB+L,QAAQ,EAAE6B,kBAAS,CAACI,IAAI;EACxBhC,QAAQ,EAAE4B,kBAAS,CAACI,IAAI;EACxB/B,MAAM,EAAE2B,kBAAS,CAACI,IAAI;EACtBnC,SAAS,EAAE+B,kBAAS,CAACI,IAAI;EACzB9C,QAAQ,EAAE0C,kBAAS,CAACO,IAAI;EACxBvC,QAAQ,EAAEgC,kBAAS,CAACO,IAAI;EACxBjI,OAAO,EAAE0H,kBAAS,CAACO,IAAI;EACvBhI,MAAM,EAAEyH,kBAAS,CAACO;AACpB,CAAC;AA4sBH,MAAMpI,SAAS,GAAI/G,MAAM,IAAK;EAC5BA,MAAM,CAACgH,KAAK,CAAC,CAAC;EACdhH,MAAM,CAACqP,MAAM,CAAC,CAAC;AACjB,CAAC;AAED,MAAMzD,YAAY,GAAG0D,KAAA,IAAoC;EAAA,IAAnC;MAAE5F,SAAS;MAAE9H;IAAgB,CAAC,GAAA0N,KAAA;IAAPtM,KAAK,GAAAnD,wBAAA,CAAAyP,KAAA,EAAAjR,UAAA;EAChD,OACEnB,MAAA,CAAA4B,OAAA,CAAA2K,aAAA,CAAC7L,SAAA,CAAAkB,OAAQ,EAAA4B,QAAA;IACP6O,KAAK,EAAE,IAAK;IACZC,QAAQ,EAAE,IAAK;IACfC,iBAAiB,EAAE,KAAM;IACzBC,YAAY,EAAC,KAAK;IAClBC,cAAc,EAAC,MAAM;IACrBC,UAAU,EAAE,KAAM;IAClBC,WAAW,EAAC,KAAK;IACjBnG,SAAS,EAAE,IAAAqC,mBAAU,EACnBrC,SAAS,EACT,KAAK,CAAC5B,IAAI,CAAClG,KAAK,CAAC,IAAI,mCACvB,CAAE;IACFA,KAAK,EAAEA;EAAM,GACToB,KAAK,CACV,CAAC;AAEN,CAAC;AAED,MAAM8D,IAAI,GAAIgJ,CAAC,IAAK,IAAIC,OAAO,CAAEC,CAAC,IAAKC,UAAU,CAACD,CAAC,EAAEF,CAAC,CAAC,CAAC"}
@@ -392,7 +392,7 @@ class DropdownInstance extends _react.default.PureComponent {
392
392
  onKeyDown: this.onTriggerKeyDownHandler
393
393
  });
394
394
  if (opened) {
395
- triggerParams['aria-controls'] = `${id}-drawer-list`;
395
+ triggerParams['aria-controls'] = `${id}-ul`;
396
396
  }
397
397
  if (showStatus || suffix) {
398
398
  triggerParams['aria-describedby'] = (0, _componentHelper.combineDescribedBy)(triggerParams, showStatus ? id + '-status' : null, suffix ? id + '-suffix' : null);
@@ -479,7 +479,8 @@ class DropdownInstance extends _react.default.PureComponent {
479
479
  })), suffix && _react.default.createElement(_Suffix.default, {
480
480
  className: "dnb-dropdown__suffix",
481
481
  id: id + '-suffix',
482
- context: props
482
+ context: props,
483
+ onClick: this.setHidden
483
484
  }, suffix))));
484
485
  }
485
486
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_keycode","_componentHelper","_AlignmentHelper2","_SpacingHelper","_filterValidProps","_Suffix","_IconPrimary","_FormLabel","_FormStatus","_Button","_interopRequireWildcard","_DrawerList","_DrawerListContext","_DrawerListProvider","_DrawerListHelpers","_AlignmentHelper","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_extends","assign","bind","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Dropdown","React","PureComponent","render","id","props","makeUniqueId","more_menu","action_menu","prevent_selection","children","data","createElement","opened","tagName","ignore_events","isTrue","DropdownInstance","exports","title","variant","icon","icon_size","icon_position","triangle_position","label","label_direction","label_sr_only","status","status_state","status_props","status_no_animation","globalStatus","innerRef","buttonRef","suffix","scrollable","focusable","max_height","direction","skip_portal","portal_class","no_animation","no_scroll_animation","independent_width","size","align_dropdown","trigger_element","default_value","open_on_focus","prevent_close","keep_open","disabled","stretch","skeleton","class","className","on_show","on_hide","on_change","on_select","on_state_update","process","env","NODE_ENV","propTypes","spacingPropTypes","drawerListPropTypes","drawerListProviderPropTypes","PropTypes","string","oneOfType","node","buttonVariantPropType","func","oneOf","bool","shape","message","number","arrayOf","selectedKey","selected_key","selected_value","content","array","constructor","_this","this","context","drawerList","setWrapperElement","_refWrapper","current","setVisible","setHidden","hidden","isOpen","e","keycode","preventDefault","args","attributes","dispatchCustomElementEvent","setFocus","clearTimeout","_focusTimeout","setTimeout","element","_refButton","focus","preventHideFocus","preventScroll","parseFloat","active_item","_id","state","_ref","createRef","componentDidMount","componentWillUnmount","getTitle","currentOptionData","getCurrentData","selected_item","parseContentTitle","_this$context","_this$context2","_this$context3","extendPropsWithContextInClassComponent","defaultProps","getTranslation","pickFormElementProps","FormRow","formElement","fixed_position","enable_body_lock","CustomTrigger","_className","_title","_icon","_align_dropdown","_icon_position","_data","_children","_direction","_opened","_value","handleAsMenu","isPopupMenu","showStatus","getStatusState","validateDOMAttributes","mainParams","classnames","createSpacingClasses","triggerParams","onFocus","onFocusHandler","onBlur","onBlurHandler","onClick","onClickHandler","onKeyDown","onTriggerKeyDownHandler","combineDescribedBy","combineLabelledBy","ref","for_id","text","sr_only","show","text_id","custom_content","Fragment","role","list_class","is_popup","align_drawer","onChangeHandler","onSelectHandler","onHideHandler","DrawerListContext","HorizontalItem","DrawerList","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/dropdown/Dropdown.js"],"sourcesContent":["/**\n * Web Dropdown Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n combineLabelledBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nimport Suffix from '../../shared/helpers/Suffix'\nimport Icon from '../icon-primary/IconPrimary'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport Button, { buttonVariantPropType } from '../button/Button'\nimport DrawerList from '../../fragments/drawer-list/DrawerList'\nimport DrawerListContext from '../../fragments/drawer-list/DrawerListContext'\nimport DrawerListProvider from '../../fragments/drawer-list/DrawerListProvider'\nimport {\n drawerListPropTypes,\n drawerListProviderPropTypes,\n parseContentTitle,\n getCurrentData,\n} from '../../fragments/drawer-list/DrawerListHelpers'\n\nexport default class Dropdown extends React.PureComponent {\n static propTypes = {\n ...spacingPropTypes,\n ...drawerListPropTypes,\n ...drawerListProviderPropTypes,\n\n id: PropTypes.string,\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n variant: buttonVariantPropType.variant,\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.string,\n icon_position: PropTypes.oneOf(['left', 'right']),\n triangle_position: PropTypes.oneOf(['left', 'right']),\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n innerRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n buttonRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n scrollable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n focusable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n direction: PropTypes.oneOf(['auto', 'top', 'bottom']),\n max_height: PropTypes.number,\n skip_portal: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n portal_class: PropTypes.string,\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_scroll_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n prevent_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n more_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n action_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n independent_width: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n align_dropdown: PropTypes.oneOf(['left', 'right']),\n trigger_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n data: PropTypes.oneOfType([\n PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n ]),\n PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n PropTypes.shape({\n selectedKey: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_key: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n ])\n ),\n ]),\n default_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n open_on_focus: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n prevent_close: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_open: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n opened: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n class: PropTypes.string,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n PropTypes.array,\n ]),\n\n on_show: PropTypes.func,\n on_hide: PropTypes.func,\n on_change: PropTypes.func,\n on_select: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n title: 'Option Menu',\n variant: 'secondary',\n icon: null,\n icon_size: null,\n icon_position: null,\n triangle_position: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n innerRef: null,\n buttonRef: null,\n suffix: null,\n scrollable: true,\n focusable: false,\n max_height: null,\n direction: 'auto',\n skip_portal: null,\n portal_class: null,\n no_animation: false,\n no_scroll_animation: false,\n prevent_selection: false,\n more_menu: false,\n action_menu: false,\n independent_width: false,\n size: 'default',\n align_dropdown: null,\n trigger_element: null,\n data: null,\n default_value: null,\n value: 'initval',\n open_on_focus: false,\n prevent_close: false,\n keep_open: false,\n opened: false,\n disabled: null,\n stretch: null,\n skeleton: null,\n class: null,\n\n className: null,\n children: null,\n\n on_show: null,\n on_hide: null,\n\n on_change: null,\n on_select: null,\n on_state_update: null,\n }\n\n render() {\n // generate ID here, so we can send it along the provider\n const id = this.props.id || makeUniqueId()\n const { more_menu, action_menu, prevent_selection, children, data } =\n this.props\n\n return (\n <DrawerListProvider\n {...this.props}\n id={id}\n data={data || children}\n opened={null}\n tagName=\"dnb-dropdown\"\n ignore_events={false}\n prevent_selection={\n isTrue(more_menu) ||\n isTrue(action_menu) ||\n isTrue(prevent_selection)\n }\n >\n <DropdownInstance {...this.props} id={id} />\n </DrawerListProvider>\n )\n }\n}\n\nclass DropdownInstance extends React.PureComponent {\n static propTypes = Dropdown.propTypes\n static defaultProps = Dropdown.defaultProps\n static contextType = DrawerListContext\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n\n this.attributes = {}\n this.state = this.state || {}\n\n this._ref = props.innerRef || React.createRef()\n this._refWrapper = React.createRef()\n this._refButton = props.buttonRef || React.createRef()\n }\n\n componentDidMount() {\n if (isTrue(this.props.opened)) {\n this.setVisible()\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._focusTimeout)\n }\n\n setVisible = () => {\n this.context.drawerList\n .setWrapperElement(this._refWrapper.current)\n .setVisible()\n }\n\n setHidden = (...args) => {\n this.context.drawerList.setHidden(...args)\n }\n\n onFocusHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setVisible()\n }\n }\n\n onBlurHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setHidden()\n }\n }\n\n onClickHandler = () => {\n if (isTrue(this.props.disabled)) {\n return // stop here\n }\n if (\n !this.context.drawerList.hidden &&\n this.context.drawerList.isOpen\n ) {\n this.setHidden()\n } else {\n this.setVisible()\n }\n }\n\n onTriggerKeyDownHandler = (e) => {\n switch (keycode(e)) {\n case 'enter':\n case 'space':\n e.preventDefault()\n this.setVisible()\n break\n\n case 'up':\n case 'down':\n e.preventDefault()\n this.setVisible()\n\n break\n\n case 'esc':\n this.setHidden()\n break\n\n case 'home':\n case 'end':\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n onHideHandler = (args = {}) => {\n const attributes = this.attributes || {}\n const res = dispatchCustomElementEvent(this, 'on_hide', {\n ...args,\n attributes,\n })\n\n if (res !== false) {\n this.setFocus(args)\n }\n\n return res\n }\n\n setFocus = (args) => {\n clearTimeout(this._focusTimeout)\n this._focusTimeout = setTimeout(() => {\n try {\n const element = this._refButton.current\n if (element && typeof element.focus === 'function') {\n if (args.preventHideFocus !== true) {\n element.focus({ preventScroll: true })\n }\n dispatchCustomElementEvent(this, 'on_hide_focus', { element })\n }\n } catch (e) {\n // do noting\n }\n }, 1) // NVDA / Firefox needs a delay to set this focus\n }\n\n onSelectHandler = (args) => {\n if (parseFloat(args.active_item) > -1) {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_select', {\n ...args,\n attributes,\n })\n }\n }\n\n onChangeHandler = (args) => {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_change', {\n ...args,\n attributes,\n })\n }\n\n getTitle(title = null) {\n const { data } = this.context.drawerList\n if (data && data.length > 0) {\n const currentOptionData = getCurrentData(\n this.context.drawerList.selected_item,\n data\n )\n if (currentOptionData) {\n title =\n currentOptionData.selected_value ||\n parseContentTitle(currentOptionData)\n }\n }\n return title\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Dropdown.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Dropdown,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Dropdown\n )\n\n const {\n label,\n label_direction,\n label_sr_only,\n icon_size,\n size,\n fixed_position,\n enable_body_lock,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n scrollable,\n focusable,\n keep_open,\n prevent_close,\n no_animation,\n no_scroll_animation,\n triangle_position,\n skip_portal,\n portal_class,\n trigger_element: CustomTrigger,\n more_menu,\n action_menu,\n independent_width,\n prevent_selection,\n max_height,\n default_value,\n className,\n class: _className,\n disabled,\n stretch,\n skeleton,\n variant,\n\n title: _title,\n icon: _icon, // eslint-disable-line\n align_dropdown: _align_dropdown, // eslint-disable-line\n icon_position: _icon_position, // eslint-disable-line\n data: _data, // eslint-disable-line\n children: _children, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n id: _id, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n buttonRef, // eslint-disable-line\n innerRef, // eslint-disable-line\n\n ...attributes\n } = props\n\n let { icon, icon_position, align_dropdown } = props\n const id = this._id\n\n const handleAsMenu =\n isTrue(action_menu) || isTrue(more_menu) || isTrue(prevent_selection)\n const isPopupMenu = isTrue(more_menu) || !(_title && _title.length > 0)\n if (isPopupMenu) {\n icon = icon || (isTrue(more_menu) ? 'more' : 'chevron_down')\n }\n if (isPopupMenu || isTrue(action_menu)) {\n if (icon_position !== 'right' && align_dropdown !== 'right') {\n icon_position = 'left'\n align_dropdown = 'left'\n }\n }\n\n const { selected_item, direction, opened } = this.context.drawerList\n const showStatus = getStatusState(status)\n const title = this.getTitle(_title)\n\n // make it possible to grab the rest attributes and return it with all events\n Object.assign(\n this.context.drawerList.attributes,\n validateDOMAttributes(null, attributes)\n )\n\n const mainParams = {\n className: classnames(\n 'dnb-dropdown',\n `dnb-dropdown--${direction}`,\n opened && 'dnb-dropdown--opened',\n label_direction && `dnb-dropdown--${label_direction}`,\n `dnb-dropdown--icon-position-${icon_position || 'right'}`,\n isPopupMenu && 'dnb-dropdown--is-popup',\n isTrue(action_menu) && `dnb-dropdown--action-menu`,\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-dropdown--independent-width',\n size && `dnb-dropdown--${size}`,\n isTrue(stretch) && `dnb-dropdown--stretch`,\n `dnb-dropdown--${align_dropdown || 'right'}`,\n status && `dnb-dropdown__status--${status_state}`,\n showStatus && 'dnb-dropdown__form-status',\n 'dnb-form-component',\n createSpacingClasses(props),\n _className,\n className\n ),\n }\n\n const triggerParams = {\n className: classnames(\n 'dnb-dropdown__trigger',\n opened && 'dnb-button--active'\n ),\n id,\n disabled,\n 'aria-haspopup': handleAsMenu ? true : 'listbox',\n 'aria-expanded': opened,\n // 'aria-controls': `${id}-drawer-list`,\n ...attributes,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n onClick: this.onClickHandler,\n onKeyDown: this.onTriggerKeyDownHandler,\n }\n\n if (opened) {\n triggerParams['aria-controls'] = `${id}-drawer-list`\n }\n\n if (showStatus || suffix) {\n triggerParams['aria-describedby'] = combineDescribedBy(\n triggerParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n\n if (label) {\n triggerParams['aria-labelledby'] = combineLabelledBy(\n triggerParams,\n id + '-label',\n id // used to read the current value\n )\n }\n\n // also used for code markup simulation\n validateDOMAttributes(null, mainParams)\n validateDOMAttributes(this.props, triggerParams)\n\n // make it possible to grab the rest attributes and return it with all events\n this.attributes = validateDOMAttributes(null, attributes)\n\n return (\n <span ref={this._ref} {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n label_direction={label_direction}\n sr_only={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n onClick={this.onClickHandler}\n />\n )}\n\n <span className=\"dnb-dropdown__inner\" ref={this._refWrapper}>\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-dropdown__row\">\n <span className=\"dnb-dropdown__shell\">\n {CustomTrigger ? (\n <CustomTrigger {...triggerParams} />\n ) : (\n <Button\n variant={variant}\n icon={false} // only to suppress the warning about the icon when tertiary variant is used\n size={size === 'default' ? 'medium' : size}\n innerRef={this._refButton}\n custom_content={\n <>\n {!isPopupMenu && (\n <span className=\"dnb-dropdown__text dnb-button__text\">\n <span className=\"dnb-dropdown__text__inner\">\n {title}\n </span>\n </span>\n )}\n <span\n aria-hidden\n className={classnames(\n 'dnb-dropdown__icon',\n parseFloat(selected_item) === 0 &&\n 'dnb-dropdown__icon--first'\n )}\n >\n {icon !== false && (\n <Icon\n icon={icon || 'chevron_down'}\n size={\n icon_size ||\n (size === 'large' ? 'medium' : 'default')\n }\n />\n )}\n </span>\n </>\n }\n {...triggerParams}\n />\n )}\n\n <DrawerList\n id={id}\n role={handleAsMenu ? 'menu' : 'listbox'}\n portal_class={portal_class}\n list_class=\"dnb-dropdown__list\"\n value={selected_item}\n default_value={default_value}\n scrollable={scrollable}\n focusable={focusable}\n no_animation={no_animation}\n no_scroll_animation={no_scroll_animation}\n skip_portal={skip_portal}\n prevent_selection={handleAsMenu}\n action_menu={action_menu}\n triangle_position={\n triangle_position || icon_position || 'right'\n }\n keep_open={keep_open}\n prevent_close={prevent_close}\n independent_width={\n isTrue(independent_width) || isPopupMenu || action_menu\n }\n is_popup={isPopupMenu || action_menu}\n align_drawer={align_dropdown || 'left'}\n fixed_position={fixed_position}\n enable_body_lock={enable_body_lock}\n disabled={disabled}\n max_height={max_height}\n direction={direction}\n size={size}\n on_change={this.onChangeHandler}\n on_select={this.onSelectHandler}\n on_hide={this.onHideHandler}\n />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-dropdown__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }\n}\n\nDropdown.HorizontalItem = DrawerList.HorizontalItem\nDropdown._formElement = true\nDropdown._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_keycode","_componentHelper","_AlignmentHelper2","_SpacingHelper","_filterValidProps","_Suffix","_IconPrimary","_FormLabel","_FormStatus","_Button","_interopRequireWildcard","_DrawerList","_DrawerListContext","_DrawerListProvider","_DrawerListHelpers","_AlignmentHelper","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_extends","assign","bind","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Dropdown","React","PureComponent","render","id","props","makeUniqueId","more_menu","action_menu","prevent_selection","children","data","createElement","opened","tagName","ignore_events","isTrue","DropdownInstance","exports","title","variant","icon","icon_size","icon_position","triangle_position","label","label_direction","label_sr_only","status","status_state","status_props","status_no_animation","globalStatus","innerRef","buttonRef","suffix","scrollable","focusable","max_height","direction","skip_portal","portal_class","no_animation","no_scroll_animation","independent_width","size","align_dropdown","trigger_element","default_value","open_on_focus","prevent_close","keep_open","disabled","stretch","skeleton","class","className","on_show","on_hide","on_change","on_select","on_state_update","process","env","NODE_ENV","propTypes","spacingPropTypes","drawerListPropTypes","drawerListProviderPropTypes","PropTypes","string","oneOfType","node","buttonVariantPropType","func","oneOf","bool","shape","message","number","arrayOf","selectedKey","selected_key","selected_value","content","array","constructor","_this","this","context","drawerList","setWrapperElement","_refWrapper","current","setVisible","setHidden","hidden","isOpen","e","keycode","preventDefault","args","attributes","dispatchCustomElementEvent","setFocus","clearTimeout","_focusTimeout","setTimeout","element","_refButton","focus","preventHideFocus","preventScroll","parseFloat","active_item","_id","state","_ref","createRef","componentDidMount","componentWillUnmount","getTitle","currentOptionData","getCurrentData","selected_item","parseContentTitle","_this$context","_this$context2","_this$context3","extendPropsWithContextInClassComponent","defaultProps","getTranslation","pickFormElementProps","FormRow","formElement","fixed_position","enable_body_lock","CustomTrigger","_className","_title","_icon","_align_dropdown","_icon_position","_data","_children","_direction","_opened","_value","handleAsMenu","isPopupMenu","showStatus","getStatusState","validateDOMAttributes","mainParams","classnames","createSpacingClasses","triggerParams","onFocus","onFocusHandler","onBlur","onBlurHandler","onClick","onClickHandler","onKeyDown","onTriggerKeyDownHandler","combineDescribedBy","combineLabelledBy","ref","for_id","text","sr_only","show","text_id","custom_content","Fragment","role","list_class","is_popup","align_drawer","onChangeHandler","onSelectHandler","onHideHandler","DrawerListContext","HorizontalItem","DrawerList","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/dropdown/Dropdown.js"],"sourcesContent":["/**\n * Web Dropdown Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n combineLabelledBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nimport Suffix from '../../shared/helpers/Suffix'\nimport Icon from '../icon-primary/IconPrimary'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport Button, { buttonVariantPropType } from '../button/Button'\nimport DrawerList from '../../fragments/drawer-list/DrawerList'\nimport DrawerListContext from '../../fragments/drawer-list/DrawerListContext'\nimport DrawerListProvider from '../../fragments/drawer-list/DrawerListProvider'\nimport {\n drawerListPropTypes,\n drawerListProviderPropTypes,\n parseContentTitle,\n getCurrentData,\n} from '../../fragments/drawer-list/DrawerListHelpers'\n\nexport default class Dropdown extends React.PureComponent {\n static propTypes = {\n ...spacingPropTypes,\n ...drawerListPropTypes,\n ...drawerListProviderPropTypes,\n\n id: PropTypes.string,\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n variant: buttonVariantPropType.variant,\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.string,\n icon_position: PropTypes.oneOf(['left', 'right']),\n triangle_position: PropTypes.oneOf(['left', 'right']),\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n innerRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n buttonRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n scrollable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n focusable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n direction: PropTypes.oneOf(['auto', 'top', 'bottom']),\n max_height: PropTypes.number,\n skip_portal: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n portal_class: PropTypes.string,\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_scroll_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n prevent_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n more_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n action_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n independent_width: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n align_dropdown: PropTypes.oneOf(['left', 'right']),\n trigger_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n data: PropTypes.oneOfType([\n PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n ]),\n PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n PropTypes.shape({\n selectedKey: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_key: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n ])\n ),\n ]),\n default_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n open_on_focus: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n prevent_close: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_open: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n opened: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n class: PropTypes.string,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n PropTypes.array,\n ]),\n\n on_show: PropTypes.func,\n on_hide: PropTypes.func,\n on_change: PropTypes.func,\n on_select: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n title: 'Option Menu',\n variant: 'secondary',\n icon: null,\n icon_size: null,\n icon_position: null,\n triangle_position: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n innerRef: null,\n buttonRef: null,\n suffix: null,\n scrollable: true,\n focusable: false,\n max_height: null,\n direction: 'auto',\n skip_portal: null,\n portal_class: null,\n no_animation: false,\n no_scroll_animation: false,\n prevent_selection: false,\n more_menu: false,\n action_menu: false,\n independent_width: false,\n size: 'default',\n align_dropdown: null,\n trigger_element: null,\n data: null,\n default_value: null,\n value: 'initval',\n open_on_focus: false,\n prevent_close: false,\n keep_open: false,\n opened: false,\n disabled: null,\n stretch: null,\n skeleton: null,\n class: null,\n\n className: null,\n children: null,\n\n on_show: null,\n on_hide: null,\n\n on_change: null,\n on_select: null,\n on_state_update: null,\n }\n\n render() {\n // generate ID here, so we can send it along the provider\n const id = this.props.id || makeUniqueId()\n const { more_menu, action_menu, prevent_selection, children, data } =\n this.props\n\n return (\n <DrawerListProvider\n {...this.props}\n id={id}\n data={data || children}\n opened={null}\n tagName=\"dnb-dropdown\"\n ignore_events={false}\n prevent_selection={\n isTrue(more_menu) ||\n isTrue(action_menu) ||\n isTrue(prevent_selection)\n }\n >\n <DropdownInstance {...this.props} id={id} />\n </DrawerListProvider>\n )\n }\n}\n\nclass DropdownInstance extends React.PureComponent {\n static propTypes = Dropdown.propTypes\n static defaultProps = Dropdown.defaultProps\n static contextType = DrawerListContext\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n\n this.attributes = {}\n this.state = this.state || {}\n\n this._ref = props.innerRef || React.createRef()\n this._refWrapper = React.createRef()\n this._refButton = props.buttonRef || React.createRef()\n }\n\n componentDidMount() {\n if (isTrue(this.props.opened)) {\n this.setVisible()\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._focusTimeout)\n }\n\n setVisible = () => {\n this.context.drawerList\n .setWrapperElement(this._refWrapper.current)\n .setVisible()\n }\n\n setHidden = (...args) => {\n this.context.drawerList.setHidden(...args)\n }\n\n onFocusHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setVisible()\n }\n }\n\n onBlurHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setHidden()\n }\n }\n\n onClickHandler = () => {\n if (isTrue(this.props.disabled)) {\n return // stop here\n }\n if (\n !this.context.drawerList.hidden &&\n this.context.drawerList.isOpen\n ) {\n this.setHidden()\n } else {\n this.setVisible()\n }\n }\n\n onTriggerKeyDownHandler = (e) => {\n switch (keycode(e)) {\n case 'enter':\n case 'space':\n e.preventDefault()\n this.setVisible()\n break\n\n case 'up':\n case 'down':\n e.preventDefault()\n this.setVisible()\n\n break\n\n case 'esc':\n this.setHidden()\n break\n\n case 'home':\n case 'end':\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n onHideHandler = (args = {}) => {\n const attributes = this.attributes || {}\n const res = dispatchCustomElementEvent(this, 'on_hide', {\n ...args,\n attributes,\n })\n\n if (res !== false) {\n this.setFocus(args)\n }\n\n return res\n }\n\n setFocus = (args) => {\n clearTimeout(this._focusTimeout)\n this._focusTimeout = setTimeout(() => {\n try {\n const element = this._refButton.current\n if (element && typeof element.focus === 'function') {\n if (args.preventHideFocus !== true) {\n element.focus({ preventScroll: true })\n }\n dispatchCustomElementEvent(this, 'on_hide_focus', { element })\n }\n } catch (e) {\n // do noting\n }\n }, 1) // NVDA / Firefox needs a delay to set this focus\n }\n\n onSelectHandler = (args) => {\n if (parseFloat(args.active_item) > -1) {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_select', {\n ...args,\n attributes,\n })\n }\n }\n\n onChangeHandler = (args) => {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_change', {\n ...args,\n attributes,\n })\n }\n\n getTitle(title = null) {\n const { data } = this.context.drawerList\n if (data && data.length > 0) {\n const currentOptionData = getCurrentData(\n this.context.drawerList.selected_item,\n data\n )\n if (currentOptionData) {\n title =\n currentOptionData.selected_value ||\n parseContentTitle(currentOptionData)\n }\n }\n return title\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Dropdown.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Dropdown,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Dropdown\n )\n\n const {\n label,\n label_direction,\n label_sr_only,\n icon_size,\n size,\n fixed_position,\n enable_body_lock,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n scrollable,\n focusable,\n keep_open,\n prevent_close,\n no_animation,\n no_scroll_animation,\n triangle_position,\n skip_portal,\n portal_class,\n trigger_element: CustomTrigger,\n more_menu,\n action_menu,\n independent_width,\n prevent_selection,\n max_height,\n default_value,\n className,\n class: _className,\n disabled,\n stretch,\n skeleton,\n variant,\n\n title: _title,\n icon: _icon, // eslint-disable-line\n align_dropdown: _align_dropdown, // eslint-disable-line\n icon_position: _icon_position, // eslint-disable-line\n data: _data, // eslint-disable-line\n children: _children, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n id: _id, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n buttonRef, // eslint-disable-line\n innerRef, // eslint-disable-line\n\n ...attributes\n } = props\n\n let { icon, icon_position, align_dropdown } = props\n const id = this._id\n\n const handleAsMenu =\n isTrue(action_menu) || isTrue(more_menu) || isTrue(prevent_selection)\n const isPopupMenu = isTrue(more_menu) || !(_title && _title.length > 0)\n if (isPopupMenu) {\n icon = icon || (isTrue(more_menu) ? 'more' : 'chevron_down')\n }\n if (isPopupMenu || isTrue(action_menu)) {\n if (icon_position !== 'right' && align_dropdown !== 'right') {\n icon_position = 'left'\n align_dropdown = 'left'\n }\n }\n\n const { selected_item, direction, opened } = this.context.drawerList\n const showStatus = getStatusState(status)\n const title = this.getTitle(_title)\n\n // make it possible to grab the rest attributes and return it with all events\n Object.assign(\n this.context.drawerList.attributes,\n validateDOMAttributes(null, attributes)\n )\n\n const mainParams = {\n className: classnames(\n 'dnb-dropdown',\n `dnb-dropdown--${direction}`,\n opened && 'dnb-dropdown--opened',\n label_direction && `dnb-dropdown--${label_direction}`,\n `dnb-dropdown--icon-position-${icon_position || 'right'}`,\n isPopupMenu && 'dnb-dropdown--is-popup',\n isTrue(action_menu) && `dnb-dropdown--action-menu`,\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-dropdown--independent-width',\n size && `dnb-dropdown--${size}`,\n isTrue(stretch) && `dnb-dropdown--stretch`,\n `dnb-dropdown--${align_dropdown || 'right'}`,\n status && `dnb-dropdown__status--${status_state}`,\n showStatus && 'dnb-dropdown__form-status',\n 'dnb-form-component',\n createSpacingClasses(props),\n _className,\n className\n ),\n }\n\n const triggerParams = {\n className: classnames(\n 'dnb-dropdown__trigger',\n opened && 'dnb-button--active'\n ),\n id,\n disabled,\n 'aria-haspopup': handleAsMenu ? true : 'listbox',\n 'aria-expanded': opened,\n ...attributes,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n onClick: this.onClickHandler,\n onKeyDown: this.onTriggerKeyDownHandler,\n }\n\n if (opened) {\n triggerParams['aria-controls'] = `${id}-ul`\n }\n\n if (showStatus || suffix) {\n triggerParams['aria-describedby'] = combineDescribedBy(\n triggerParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n\n if (label) {\n triggerParams['aria-labelledby'] = combineLabelledBy(\n triggerParams,\n id + '-label',\n id // used to read the current value\n )\n }\n\n // also used for code markup simulation\n validateDOMAttributes(null, mainParams)\n validateDOMAttributes(this.props, triggerParams)\n\n // make it possible to grab the rest attributes and return it with all events\n this.attributes = validateDOMAttributes(null, attributes)\n\n return (\n <span ref={this._ref} {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n label_direction={label_direction}\n sr_only={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n onClick={this.onClickHandler}\n />\n )}\n\n <span className=\"dnb-dropdown__inner\" ref={this._refWrapper}>\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-dropdown__row\">\n <span className=\"dnb-dropdown__shell\">\n {CustomTrigger ? (\n <CustomTrigger {...triggerParams} />\n ) : (\n <Button\n variant={variant}\n icon={false} // only to suppress the warning about the icon when tertiary variant is used\n size={size === 'default' ? 'medium' : size}\n innerRef={this._refButton}\n custom_content={\n <>\n {!isPopupMenu && (\n <span className=\"dnb-dropdown__text dnb-button__text\">\n <span className=\"dnb-dropdown__text__inner\">\n {title}\n </span>\n </span>\n )}\n <span\n aria-hidden\n className={classnames(\n 'dnb-dropdown__icon',\n parseFloat(selected_item) === 0 &&\n 'dnb-dropdown__icon--first'\n )}\n >\n {icon !== false && (\n <Icon\n icon={icon || 'chevron_down'}\n size={\n icon_size ||\n (size === 'large' ? 'medium' : 'default')\n }\n />\n )}\n </span>\n </>\n }\n {...triggerParams}\n />\n )}\n\n <DrawerList\n id={id}\n role={handleAsMenu ? 'menu' : 'listbox'}\n portal_class={portal_class}\n list_class=\"dnb-dropdown__list\"\n value={selected_item}\n default_value={default_value}\n scrollable={scrollable}\n focusable={focusable}\n no_animation={no_animation}\n no_scroll_animation={no_scroll_animation}\n skip_portal={skip_portal}\n prevent_selection={handleAsMenu}\n action_menu={action_menu}\n triangle_position={\n triangle_position || icon_position || 'right'\n }\n keep_open={keep_open}\n prevent_close={prevent_close}\n independent_width={\n isTrue(independent_width) || isPopupMenu || action_menu\n }\n is_popup={isPopupMenu || action_menu}\n align_drawer={align_dropdown || 'left'}\n fixed_position={fixed_position}\n enable_body_lock={enable_body_lock}\n disabled={disabled}\n max_height={max_height}\n direction={direction}\n size={size}\n on_change={this.onChangeHandler}\n on_select={this.onSelectHandler}\n on_hide={this.onHideHandler}\n />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-dropdown__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n onClick={this.setHidden}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }\n}\n\nDropdown.HorizontalItem = DrawerList.HorizontalItem\nDropdown._formElement = true\nDropdown._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -51,7 +51,7 @@ function FlexContainer(props) {
51
51
  queries
52
52
  } = props,
53
53
  rest = _objectWithoutProperties(props, _excluded);
54
- const childrenArray = _react.default.Children.toArray(children);
54
+ const childrenArray = wrapChildren(props, children);
55
55
  const hasHeading = childrenArray.some((child, i) => {
56
56
  const previousChild = childrenArray === null || childrenArray === void 0 ? void 0 : childrenArray[i - 1];
57
57
  return (0, _utils.isHeadingElement)(child) || i > 0 && (0, _utils.isHeadingElement)(previousChild);
@@ -68,13 +68,15 @@ function FlexContainer(props) {
68
68
  queries
69
69
  });
70
70
  const content = childrenArray.map((child, i) => {
71
+ var _previousChild$type;
71
72
  const isFirst = i === 0;
72
73
  const previousChild = childrenArray === null || childrenArray === void 0 ? void 0 : childrenArray[i - 1];
73
74
  const start = direction === 'horizontal' ? 'left' : 'top';
74
75
  const end = direction === 'horizontal' ? 'right' : 'bottom';
75
76
  const endSpacing = 0;
76
77
  let startSpacing = null;
77
- if (divider === 'line' && !isFirst && !hasHeading) {
78
+ const isHeading = hasHeading && (0, _utils.isHeadingElement)(previousChild);
79
+ if (divider === 'line' && !isFirst && !isHeading) {
78
80
  var _getSpaceValue, _getSpaceValue2;
79
81
  const spaceAboveLine = (_getSpaceValue = (0, _utils.getSpaceValue)(end, previousChild)) !== null && _getSpaceValue !== void 0 ? _getSpaceValue : spacing;
80
82
  startSpacing = (_getSpaceValue2 = (0, _utils.getSpaceValue)(start, child)) !== null && _getSpaceValue2 !== void 0 ? _getSpaceValue2 : spacing;
@@ -98,6 +100,9 @@ function FlexContainer(props) {
98
100
  var _ref2, _getSpaceValue3;
99
101
  startSpacing = (_ref2 = (_getSpaceValue3 = (0, _utils.getSpaceValue)(start, child)) !== null && _getSpaceValue3 !== void 0 ? _getSpaceValue3 : (0, _utils.getSpaceValue)(end, previousChild)) !== null && _ref2 !== void 0 ? _ref2 : spacing;
100
102
  }
103
+ if (_react.default.isValidElement(previousChild) && (previousChild === null || previousChild === void 0 ? void 0 : (_previousChild$type = previousChild.type) === null || _previousChild$type === void 0 ? void 0 : _previousChild$type['_supportsSpacingProps']) === false) {
104
+ startSpacing = 0;
105
+ }
101
106
  const space = direction === 'horizontal' ? {
102
107
  [start]: endSpacing,
103
108
  [end]: startSpacing
@@ -121,6 +126,14 @@ function FlexContainer(props) {
121
126
  }, style) : style
122
127
  }, rest), content);
123
128
  }
129
+ function wrapChildren(props, children) {
130
+ return _react.default.Children.toArray(children).map(child => {
131
+ if (_react.default.isValidElement(child) && child.type['_supportsSpacingProps'] === 'children') {
132
+ return _react.default.cloneElement(child, child.props, _react.default.createElement(FlexContainer, props, child.props.children));
133
+ }
134
+ return child;
135
+ });
136
+ }
124
137
  FlexContainer._supportsSpacingProps = true;
125
138
  var _default = FlexContainer;
126
139
  exports.default = _default;