@dnb/eufemia 10.22.0 → 10.23.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 (1077) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/cjs/components/accordion/Accordion.js +1 -1
  3. package/cjs/components/accordion/Accordion.js.map +1 -1
  4. package/cjs/components/accordion/AccordionContext.d.ts +1 -1
  5. package/cjs/components/accordion/AccordionGroup.js +1 -1
  6. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  7. package/cjs/components/anchor/Anchor.d.ts +2 -3
  8. package/cjs/components/anchor/Anchor.js +14 -23
  9. package/cjs/components/anchor/Anchor.js.map +1 -1
  10. package/cjs/components/anchor/style/anchor-mixins.scss +16 -10
  11. package/cjs/components/anchor/style/dnb-anchor.css +6 -12
  12. package/cjs/components/anchor/style/dnb-anchor.min.css +1 -1
  13. package/cjs/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +8 -16
  14. package/cjs/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  15. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +126 -78
  16. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  17. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +55 -52
  18. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.css +8 -16
  19. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  20. package/cjs/components/aria-live/useAriaLive.d.ts +1 -1
  21. package/cjs/components/breadcrumb/Breadcrumb.js +26 -17
  22. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  23. package/cjs/components/breadcrumb/BreadcrumbItem.d.ts +6 -4
  24. package/cjs/components/breadcrumb/BreadcrumbItem.js +17 -9
  25. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  26. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +29 -4
  27. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  28. package/cjs/components/breadcrumb/style/dnb-breadcrumb.scss +32 -4
  29. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +9 -0
  30. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -1
  31. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +7 -0
  32. package/cjs/components/button/style/button--tertiary.scss +30 -75
  33. package/cjs/components/button/style/dnb-button.css +43 -49
  34. package/cjs/components/button/style/dnb-button.min.css +1 -1
  35. package/cjs/components/button/style/dnb-button.scss +46 -59
  36. package/cjs/components/button/style/themes/button-mixins.scss +26 -5
  37. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.css +29 -60
  38. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.min.css +12 -2
  39. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +44 -72
  40. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +16 -4
  41. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +14 -16
  42. package/cjs/components/button/style/themes/dnb-button-theme-ui.css +29 -60
  43. package/cjs/components/button/style/themes/dnb-button-theme-ui.min.css +12 -2
  44. package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  45. package/cjs/components/card/Card.d.ts +15 -2
  46. package/cjs/components/card/Card.js +19 -7
  47. package/cjs/components/card/Card.js.map +1 -1
  48. package/cjs/components/card/CardDocs.d.ts +2 -0
  49. package/cjs/components/card/CardDocs.js +65 -0
  50. package/cjs/components/card/CardDocs.js.map +1 -0
  51. package/cjs/components/card/style/dnb-card.css +24 -5
  52. package/cjs/components/card/style/dnb-card.min.css +1 -1
  53. package/cjs/components/card/style/dnb-card.scss +47 -16
  54. package/cjs/components/checkbox/style/dnb-checkbox.css +3 -0
  55. package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
  56. package/cjs/components/checkbox/style/dnb-checkbox.scss +7 -0
  57. package/cjs/components/date-picker/DatePicker.d.ts +2 -0
  58. package/cjs/components/date-picker/DatePicker.js +2 -1
  59. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  60. package/cjs/components/date-picker/DatePickerInput.js +19 -3
  61. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  62. package/cjs/components/date-picker/DatePickerProvider.js +8 -3
  63. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  64. package/cjs/components/dropdown/style/dnb-dropdown.css +3 -0
  65. package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
  66. package/cjs/components/dropdown/style/dnb-dropdown.scss +4 -0
  67. package/cjs/components/form-label/FormLabel.js +1 -1
  68. package/cjs/components/form-label/FormLabel.js.map +1 -1
  69. package/cjs/components/form-label/style/dnb-form-label.css +3 -0
  70. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  71. package/cjs/components/form-label/style/dnb-form-label.scss +4 -0
  72. package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +0 -3
  73. package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -1
  74. package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +0 -8
  75. package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.css +0 -6
  76. package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
  77. package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.scss +0 -8
  78. package/cjs/components/heading/HeadingContext.d.ts +1 -1
  79. package/cjs/components/height-animation/style/dnb-height-animation.css +2 -2
  80. package/cjs/components/height-animation/style/dnb-height-animation.min.css +1 -1
  81. package/cjs/components/height-animation/style/dnb-height-animation.scss +3 -2
  82. package/cjs/components/number-format/NumberUtils.d.ts +1 -1
  83. package/cjs/components/radio/style/dnb-radio.css +4 -0
  84. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  85. package/cjs/components/radio/style/dnb-radio.scss +9 -0
  86. package/cjs/components/section/style/themes/dnb-section-theme-ui.css +3 -6
  87. package/cjs/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  88. package/cjs/components/skeleton/SkeletonHelper.d.ts +6 -6
  89. package/cjs/components/skeleton/style/dnb-skeleton.css +1 -0
  90. package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
  91. package/cjs/components/skeleton/style/dnb-skeleton.scss +1 -0
  92. package/cjs/components/slider/SliderInstance.js +1 -0
  93. package/cjs/components/slider/SliderInstance.js.map +1 -1
  94. package/cjs/components/slider/SliderThumb.js +4 -2
  95. package/cjs/components/slider/SliderThumb.js.map +1 -1
  96. package/cjs/components/step-indicator/StepIndicator.js +11 -5
  97. package/cjs/components/step-indicator/StepIndicator.js.map +1 -1
  98. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.css +1 -1
  99. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.min.css +1 -1
  100. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.scss +1 -1
  101. package/cjs/components/table/TableScrollView.d.ts +5 -1
  102. package/cjs/components/table/TableScrollView.js +1 -0
  103. package/cjs/components/table/TableScrollView.js.map +1 -1
  104. package/cjs/components/table/TableTr.d.ts +1 -2
  105. package/cjs/components/table/TableTr.js.map +1 -1
  106. package/cjs/components/table/style/dnb-table.css +8 -1
  107. package/cjs/components/table/style/dnb-table.min.css +1 -1
  108. package/cjs/components/table/style/dnb-table.scss +7 -1
  109. package/cjs/components/table/style/table-header-buttons.scss +4 -1
  110. package/cjs/components/table/useTableAnimationHandler.d.ts +1 -1
  111. package/cjs/components/table/useTableAnimationHandler.js +3 -3
  112. package/cjs/components/table/useTableAnimationHandler.js.map +1 -1
  113. package/cjs/components/tag/Tag.d.ts +11 -0
  114. package/cjs/components/tag/Tag.js +55 -40
  115. package/cjs/components/tag/Tag.js.map +1 -1
  116. package/cjs/components/tag/style/dnb-tag.css +50 -86
  117. package/cjs/components/tag/style/dnb-tag.min.css +1 -1
  118. package/cjs/components/tag/style/dnb-tag.scss +37 -45
  119. package/cjs/components/tag/style/themes/tag-mixins.scss +24 -6
  120. package/cjs/components/tooltip/Tooltip.js +1 -1
  121. package/cjs/components/tooltip/Tooltip.js.map +1 -1
  122. package/cjs/elements/Element.d.ts +3 -4
  123. package/cjs/elements/Element.js.map +1 -1
  124. package/cjs/elements/code/style/themes/dnb-code-theme-sbanken.scss +5 -3
  125. package/cjs/extensions/forms/DataContext/At/At.js.map +1 -1
  126. package/cjs/extensions/forms/DataContext/Context.d.ts +31 -8
  127. package/cjs/extensions/forms/DataContext/Context.js +14 -3
  128. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  129. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +29 -16
  130. package/cjs/extensions/forms/DataContext/Provider/Provider.js +324 -77
  131. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  132. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.d.ts +3 -0
  133. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +93 -0
  134. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -0
  135. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
  136. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  137. package/cjs/extensions/forms/Field/Date/Date.js +3 -3
  138. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  139. package/cjs/extensions/forms/Field/Expiry/Expiry.js +4 -4
  140. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  141. package/cjs/extensions/forms/Field/Number/Number.js +3 -3
  142. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  143. package/cjs/extensions/forms/Field/Password/Password.d.ts +1 -1
  144. package/cjs/extensions/forms/Field/Password/Password.js.map +1 -1
  145. package/cjs/extensions/forms/Field/Password/style/dnb-password.scss +1 -1
  146. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +4 -4
  147. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  148. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -1
  149. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  150. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +3 -3
  151. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  152. package/cjs/extensions/forms/Field/Selection/Selection.js +5 -5
  153. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  154. package/cjs/extensions/forms/Field/String/String.js +3 -3
  155. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  156. package/cjs/extensions/forms/Field/String/StringDocs.js +9 -4
  157. package/cjs/extensions/forms/Field/String/StringDocs.js.map +1 -1
  158. package/cjs/extensions/forms/Field/Toggle/Toggle.js +7 -7
  159. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  160. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -1
  161. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +41 -19
  162. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  163. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  164. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  165. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  166. package/cjs/extensions/forms/Form/Handler/Handler.js +50 -8
  167. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  168. package/cjs/extensions/forms/Form/Handler/HandlerDocs.d.ts +3 -0
  169. package/cjs/extensions/forms/Form/Handler/HandlerDocs.js +49 -0
  170. package/cjs/extensions/forms/Form/Handler/HandlerDocs.js.map +1 -0
  171. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.d.ts +6 -1
  172. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js +19 -10
  173. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  174. package/cjs/extensions/forms/Form/SubmitButton/SubmitButtonDocs.d.ts +2 -0
  175. package/cjs/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js +30 -0
  176. package/cjs/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js.map +1 -0
  177. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.d.ts +14 -0
  178. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +81 -0
  179. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -0
  180. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.d.ts +2 -0
  181. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js +25 -0
  182. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js.map +1 -0
  183. package/cjs/extensions/forms/Form/SubmitIndicator/index.d.ts +2 -0
  184. package/cjs/extensions/forms/Form/SubmitIndicator/index.js +27 -0
  185. package/cjs/extensions/forms/Form/SubmitIndicator/index.js.map +1 -0
  186. package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +99 -0
  187. package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -0
  188. package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +117 -0
  189. package/cjs/extensions/forms/Form/SubmitIndicator/style/index.d.ts +5 -0
  190. package/cjs/extensions/forms/Form/SubmitIndicator/style/index.js +4 -0
  191. package/cjs/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -0
  192. package/cjs/extensions/forms/Form/data-context/getData.d.ts +1 -1
  193. package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -1
  194. package/cjs/extensions/forms/Form/data-context/useData.d.ts +3 -3
  195. package/cjs/extensions/forms/Form/data-context/useData.js +32 -12
  196. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  197. package/cjs/extensions/forms/Form/data-context/useError.d.ts +3 -2
  198. package/cjs/extensions/forms/Form/data-context/useError.js +8 -5
  199. package/cjs/extensions/forms/Form/data-context/useError.js.map +1 -1
  200. package/cjs/extensions/forms/Form/index.d.ts +1 -0
  201. package/cjs/extensions/forms/Form/index.js +7 -0
  202. package/cjs/extensions/forms/Form/index.js.map +1 -1
  203. package/cjs/extensions/forms/Iterate/Array/Array.js +1 -1
  204. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  205. package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +1 -1
  206. package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  207. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +1 -1
  208. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  209. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.d.ts +1 -3
  210. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js +4 -3
  211. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  212. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.d.ts +1 -3
  213. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +6 -2
  214. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  215. package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +2 -2
  216. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +54 -25
  217. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  218. package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +3 -0
  219. package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.js +58 -0
  220. package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +1 -0
  221. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -1
  222. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  223. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +11 -1
  224. package/cjs/extensions/forms/Value/Boolean/Boolean.js +1 -1
  225. package/cjs/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  226. package/cjs/extensions/forms/Value/Number/Number.js +5 -5
  227. package/cjs/extensions/forms/Value/Number/Number.js.map +1 -1
  228. package/cjs/extensions/forms/Value/String/String.js +1 -1
  229. package/cjs/extensions/forms/Value/String/String.js.map +1 -1
  230. package/cjs/extensions/forms/hooks/DataValueDocs.js +3 -3
  231. package/cjs/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  232. package/cjs/extensions/forms/hooks/index.d.ts +6 -3
  233. package/cjs/extensions/forms/hooks/index.js +4 -12
  234. package/cjs/extensions/forms/hooks/index.js.map +1 -1
  235. package/cjs/extensions/forms/hooks/useFieldProps.d.ts +23 -0
  236. package/cjs/extensions/forms/hooks/useFieldProps.js +774 -0
  237. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -0
  238. package/cjs/extensions/forms/style/dnb-forms.css +105 -1
  239. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  240. package/cjs/extensions/forms/types.d.ts +67 -4
  241. package/cjs/extensions/forms/types.js +3 -2
  242. package/cjs/extensions/forms/types.js.map +1 -1
  243. package/cjs/extensions/forms/utils/ajv.d.ts +9 -7
  244. package/cjs/extensions/forms/utils/ajv.js +29 -16
  245. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  246. package/cjs/fragments/scroll-view/ScrollView.d.ts +2 -2
  247. package/cjs/fragments/scroll-view/ScrollView.js +4 -1
  248. package/cjs/fragments/scroll-view/ScrollView.js.map +1 -1
  249. package/cjs/shared/Context.d.ts +20 -11
  250. package/cjs/shared/Context.js.map +1 -1
  251. package/cjs/shared/Eufemia.d.ts +2 -2
  252. package/cjs/shared/Eufemia.js +2 -2
  253. package/cjs/shared/Eufemia.js.map +1 -1
  254. package/cjs/shared/Provider.js.map +1 -1
  255. package/cjs/shared/defaults.d.ts +3 -3
  256. package/cjs/shared/defaults.js.map +1 -1
  257. package/cjs/shared/helpers/debounce.d.ts +21 -30
  258. package/cjs/shared/helpers/debounce.js +23 -11
  259. package/cjs/shared/helpers/debounce.js.map +1 -1
  260. package/cjs/shared/helpers/isAsync.d.ts +7 -0
  261. package/cjs/shared/helpers/isAsync.js +20 -0
  262. package/cjs/shared/helpers/isAsync.js.map +1 -0
  263. package/cjs/shared/helpers/runCssVersionMismatchWarning.d.ts +8 -0
  264. package/cjs/shared/helpers/runCssVersionMismatchWarning.js +31 -0
  265. package/cjs/shared/helpers/runCssVersionMismatchWarning.js.map +1 -0
  266. package/cjs/{extensions/forms/hooks → shared/helpers}/useId.js +1 -1
  267. package/cjs/shared/helpers/useId.js.map +1 -0
  268. package/cjs/shared/helpers/useMountEffect.js.map +1 -0
  269. package/cjs/shared/helpers/useMounted.js.map +1 -0
  270. package/cjs/shared/helpers/useSharedState.js +15 -9
  271. package/cjs/shared/helpers/useSharedState.js.map +1 -1
  272. package/cjs/shared/helpers/useUnmountEffect.js.map +1 -0
  273. package/cjs/shared/helpers/useUpdateEffect.js.map +1 -0
  274. package/cjs/shared/helpers.js +2 -0
  275. package/cjs/shared/helpers.js.map +1 -1
  276. package/cjs/shared/index.d.ts +10 -10
  277. package/cjs/shared/index.js +7 -1
  278. package/cjs/shared/index.js.map +1 -1
  279. package/cjs/shared/locales/en-GB.d.ts +1 -0
  280. package/cjs/shared/locales/en-GB.js +2 -1
  281. package/cjs/shared/locales/en-GB.js.map +1 -1
  282. package/cjs/shared/locales/en-US.d.ts +1 -0
  283. package/cjs/shared/locales/index.d.ts +4 -2
  284. package/cjs/shared/locales/index.js +2 -1
  285. package/cjs/shared/locales/index.js.map +1 -1
  286. package/cjs/shared/locales/nb-NO.d.ts +1 -0
  287. package/cjs/shared/locales/nb-NO.js +2 -1
  288. package/cjs/shared/locales/nb-NO.js.map +1 -1
  289. package/cjs/shared/types.d.ts +4 -1
  290. package/cjs/shared/types.js.map +1 -1
  291. package/cjs/shared/useLocale.d.ts +2 -0
  292. package/cjs/shared/useLocale.js +37 -0
  293. package/cjs/shared/useLocale.js.map +1 -0
  294. package/cjs/style/core/scopes.scss +3 -0
  295. package/cjs/style/dnb-ui-basis.css +1 -0
  296. package/cjs/style/dnb-ui-basis.min.css +1 -1
  297. package/cjs/style/dnb-ui-body.css +1 -0
  298. package/cjs/style/dnb-ui-body.min.css +1 -1
  299. package/cjs/style/dnb-ui-components.css +281 -160
  300. package/cjs/style/dnb-ui-components.min.css +3 -3
  301. package/cjs/style/dnb-ui-core.css +1 -0
  302. package/cjs/style/dnb-ui-core.min.css +1 -1
  303. package/cjs/style/dnb-ui-extensions.css +105 -1
  304. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  305. package/cjs/style/dnb-ui-forms.css +105 -1
  306. package/cjs/style/dnb-ui-forms.min.css +1 -1
  307. package/cjs/style/dnb-ui-forms.scss +1 -0
  308. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +3 -6
  309. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  310. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +427 -250
  311. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +16 -6
  312. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +3 -6
  313. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  314. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +105 -1
  315. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  316. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +105 -1
  317. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  318. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +5 -2
  319. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  320. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +566 -315
  321. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +20 -8
  322. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +5 -2
  323. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  324. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +105 -1
  325. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  326. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +105 -1
  327. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  328. package/cjs/style/themes/theme-ui/ui-theme-basis.css +3 -6
  329. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  330. package/cjs/style/themes/theme-ui/ui-theme-components.css +427 -250
  331. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +16 -6
  332. package/cjs/style/themes/theme-ui/ui-theme-elements.css +3 -6
  333. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  334. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +105 -1
  335. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  336. package/cjs/style/themes/theme-ui/ui-theme-forms.css +105 -1
  337. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  338. package/cjs/style/themes/theme-ui/ui-theme-tags.css +3 -6
  339. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  340. package/components/accordion/Accordion.js +1 -1
  341. package/components/accordion/Accordion.js.map +1 -1
  342. package/components/accordion/AccordionContext.d.ts +1 -1
  343. package/components/accordion/AccordionGroup.js +1 -1
  344. package/components/accordion/AccordionGroup.js.map +1 -1
  345. package/components/anchor/Anchor.d.ts +2 -3
  346. package/components/anchor/Anchor.js +14 -23
  347. package/components/anchor/Anchor.js.map +1 -1
  348. package/components/anchor/style/anchor-mixins.scss +16 -10
  349. package/components/anchor/style/dnb-anchor.css +6 -12
  350. package/components/anchor/style/dnb-anchor.min.css +1 -1
  351. package/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +8 -16
  352. package/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  353. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +126 -78
  354. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  355. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +55 -52
  356. package/components/anchor/style/themes/dnb-anchor-theme-ui.css +8 -16
  357. package/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  358. package/components/aria-live/useAriaLive.d.ts +1 -1
  359. package/components/breadcrumb/Breadcrumb.js +27 -18
  360. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  361. package/components/breadcrumb/BreadcrumbItem.d.ts +6 -4
  362. package/components/breadcrumb/BreadcrumbItem.js +18 -10
  363. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  364. package/components/breadcrumb/style/dnb-breadcrumb.css +29 -4
  365. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  366. package/components/breadcrumb/style/dnb-breadcrumb.scss +32 -4
  367. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +9 -0
  368. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -1
  369. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +7 -0
  370. package/components/button/style/button--tertiary.scss +30 -75
  371. package/components/button/style/dnb-button.css +43 -49
  372. package/components/button/style/dnb-button.min.css +1 -1
  373. package/components/button/style/dnb-button.scss +46 -59
  374. package/components/button/style/themes/button-mixins.scss +26 -5
  375. package/components/button/style/themes/dnb-button-theme-eiendom.css +29 -60
  376. package/components/button/style/themes/dnb-button-theme-eiendom.min.css +12 -2
  377. package/components/button/style/themes/dnb-button-theme-sbanken.css +44 -72
  378. package/components/button/style/themes/dnb-button-theme-sbanken.min.css +16 -4
  379. package/components/button/style/themes/dnb-button-theme-sbanken.scss +14 -16
  380. package/components/button/style/themes/dnb-button-theme-ui.css +29 -60
  381. package/components/button/style/themes/dnb-button-theme-ui.min.css +12 -2
  382. package/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  383. package/components/card/Card.d.ts +15 -2
  384. package/components/card/Card.js +19 -7
  385. package/components/card/Card.js.map +1 -1
  386. package/components/card/CardDocs.d.ts +2 -0
  387. package/components/card/CardDocs.js +58 -0
  388. package/components/card/CardDocs.js.map +1 -0
  389. package/components/card/style/dnb-card.css +24 -5
  390. package/components/card/style/dnb-card.min.css +1 -1
  391. package/components/card/style/dnb-card.scss +47 -16
  392. package/components/checkbox/style/dnb-checkbox.css +3 -0
  393. package/components/checkbox/style/dnb-checkbox.min.css +1 -1
  394. package/components/checkbox/style/dnb-checkbox.scss +7 -0
  395. package/components/date-picker/DatePicker.d.ts +2 -0
  396. package/components/date-picker/DatePicker.js +2 -1
  397. package/components/date-picker/DatePicker.js.map +1 -1
  398. package/components/date-picker/DatePickerInput.js +19 -3
  399. package/components/date-picker/DatePickerInput.js.map +1 -1
  400. package/components/date-picker/DatePickerProvider.js +8 -3
  401. package/components/date-picker/DatePickerProvider.js.map +1 -1
  402. package/components/dropdown/style/dnb-dropdown.css +3 -0
  403. package/components/dropdown/style/dnb-dropdown.min.css +1 -1
  404. package/components/dropdown/style/dnb-dropdown.scss +4 -0
  405. package/components/form-label/FormLabel.js +1 -1
  406. package/components/form-label/FormLabel.js.map +1 -1
  407. package/components/form-label/style/dnb-form-label.css +3 -0
  408. package/components/form-label/style/dnb-form-label.min.css +1 -1
  409. package/components/form-label/style/dnb-form-label.scss +4 -0
  410. package/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +0 -3
  411. package/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -1
  412. package/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +0 -8
  413. package/components/form-label/style/themes/dnb-form-label-theme-ui.css +0 -6
  414. package/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
  415. package/components/form-label/style/themes/dnb-form-label-theme-ui.scss +0 -8
  416. package/components/heading/HeadingContext.d.ts +1 -1
  417. package/components/height-animation/style/dnb-height-animation.css +2 -2
  418. package/components/height-animation/style/dnb-height-animation.min.css +1 -1
  419. package/components/height-animation/style/dnb-height-animation.scss +3 -2
  420. package/components/number-format/NumberUtils.d.ts +1 -1
  421. package/components/radio/style/dnb-radio.css +4 -0
  422. package/components/radio/style/dnb-radio.min.css +1 -1
  423. package/components/radio/style/dnb-radio.scss +9 -0
  424. package/components/section/style/themes/dnb-section-theme-ui.css +3 -6
  425. package/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  426. package/components/skeleton/SkeletonHelper.d.ts +6 -6
  427. package/components/skeleton/style/dnb-skeleton.css +1 -0
  428. package/components/skeleton/style/dnb-skeleton.min.css +1 -1
  429. package/components/skeleton/style/dnb-skeleton.scss +1 -0
  430. package/components/slider/SliderInstance.js +1 -0
  431. package/components/slider/SliderInstance.js.map +1 -1
  432. package/components/slider/SliderThumb.js +4 -2
  433. package/components/slider/SliderThumb.js.map +1 -1
  434. package/components/step-indicator/StepIndicator.js +11 -6
  435. package/components/step-indicator/StepIndicator.js.map +1 -1
  436. package/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.css +1 -1
  437. package/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.min.css +1 -1
  438. package/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.scss +1 -1
  439. package/components/table/TableScrollView.d.ts +5 -1
  440. package/components/table/TableScrollView.js +1 -0
  441. package/components/table/TableScrollView.js.map +1 -1
  442. package/components/table/TableTr.d.ts +1 -2
  443. package/components/table/TableTr.js.map +1 -1
  444. package/components/table/style/dnb-table.css +8 -1
  445. package/components/table/style/dnb-table.min.css +1 -1
  446. package/components/table/style/dnb-table.scss +7 -1
  447. package/components/table/style/table-header-buttons.scss +4 -1
  448. package/components/table/useTableAnimationHandler.d.ts +1 -1
  449. package/components/table/useTableAnimationHandler.js +3 -3
  450. package/components/table/useTableAnimationHandler.js.map +1 -1
  451. package/components/tag/Tag.d.ts +11 -0
  452. package/components/tag/Tag.js +54 -39
  453. package/components/tag/Tag.js.map +1 -1
  454. package/components/tag/style/dnb-tag.css +50 -86
  455. package/components/tag/style/dnb-tag.min.css +1 -1
  456. package/components/tag/style/dnb-tag.scss +37 -45
  457. package/components/tag/style/themes/tag-mixins.scss +24 -6
  458. package/components/tooltip/Tooltip.js +1 -1
  459. package/components/tooltip/Tooltip.js.map +1 -1
  460. package/elements/Element.d.ts +3 -4
  461. package/elements/Element.js.map +1 -1
  462. package/elements/code/style/themes/dnb-code-theme-sbanken.scss +5 -3
  463. package/es/components/accordion/Accordion.js +1 -1
  464. package/es/components/accordion/Accordion.js.map +1 -1
  465. package/es/components/accordion/AccordionContext.d.ts +1 -1
  466. package/es/components/accordion/AccordionGroup.js +1 -1
  467. package/es/components/accordion/AccordionGroup.js.map +1 -1
  468. package/es/components/anchor/Anchor.d.ts +2 -3
  469. package/es/components/anchor/Anchor.js +14 -23
  470. package/es/components/anchor/Anchor.js.map +1 -1
  471. package/es/components/anchor/style/anchor-mixins.scss +16 -10
  472. package/es/components/anchor/style/dnb-anchor.css +6 -12
  473. package/es/components/anchor/style/dnb-anchor.min.css +1 -1
  474. package/es/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +8 -16
  475. package/es/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  476. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +126 -78
  477. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  478. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +55 -52
  479. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.css +8 -16
  480. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  481. package/es/components/aria-live/useAriaLive.d.ts +1 -1
  482. package/es/components/breadcrumb/Breadcrumb.js +27 -18
  483. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  484. package/es/components/breadcrumb/BreadcrumbItem.d.ts +6 -4
  485. package/es/components/breadcrumb/BreadcrumbItem.js +18 -10
  486. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  487. package/es/components/breadcrumb/style/dnb-breadcrumb.css +29 -4
  488. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  489. package/es/components/breadcrumb/style/dnb-breadcrumb.scss +32 -4
  490. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +9 -0
  491. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -1
  492. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +7 -0
  493. package/es/components/button/style/button--tertiary.scss +30 -75
  494. package/es/components/button/style/dnb-button.css +43 -49
  495. package/es/components/button/style/dnb-button.min.css +1 -1
  496. package/es/components/button/style/dnb-button.scss +46 -59
  497. package/es/components/button/style/themes/button-mixins.scss +26 -5
  498. package/es/components/button/style/themes/dnb-button-theme-eiendom.css +29 -60
  499. package/es/components/button/style/themes/dnb-button-theme-eiendom.min.css +12 -2
  500. package/es/components/button/style/themes/dnb-button-theme-sbanken.css +44 -72
  501. package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +16 -4
  502. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +14 -16
  503. package/es/components/button/style/themes/dnb-button-theme-ui.css +29 -60
  504. package/es/components/button/style/themes/dnb-button-theme-ui.min.css +12 -2
  505. package/es/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  506. package/es/components/card/Card.d.ts +15 -2
  507. package/es/components/card/Card.js +19 -7
  508. package/es/components/card/Card.js.map +1 -1
  509. package/es/components/card/CardDocs.d.ts +2 -0
  510. package/es/components/card/CardDocs.js +58 -0
  511. package/es/components/card/CardDocs.js.map +1 -0
  512. package/es/components/card/style/dnb-card.css +24 -5
  513. package/es/components/card/style/dnb-card.min.css +1 -1
  514. package/es/components/card/style/dnb-card.scss +47 -16
  515. package/es/components/checkbox/style/dnb-checkbox.css +3 -0
  516. package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
  517. package/es/components/checkbox/style/dnb-checkbox.scss +7 -0
  518. package/es/components/date-picker/DatePicker.d.ts +2 -0
  519. package/es/components/date-picker/DatePicker.js +2 -1
  520. package/es/components/date-picker/DatePicker.js.map +1 -1
  521. package/es/components/date-picker/DatePickerInput.js +19 -3
  522. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  523. package/es/components/date-picker/DatePickerProvider.js +8 -3
  524. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  525. package/es/components/dropdown/style/dnb-dropdown.css +3 -0
  526. package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
  527. package/es/components/dropdown/style/dnb-dropdown.scss +4 -0
  528. package/es/components/form-label/FormLabel.js +1 -1
  529. package/es/components/form-label/FormLabel.js.map +1 -1
  530. package/es/components/form-label/style/dnb-form-label.css +3 -0
  531. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  532. package/es/components/form-label/style/dnb-form-label.scss +4 -0
  533. package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +0 -3
  534. package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -1
  535. package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +0 -8
  536. package/es/components/form-label/style/themes/dnb-form-label-theme-ui.css +0 -6
  537. package/es/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
  538. package/es/components/form-label/style/themes/dnb-form-label-theme-ui.scss +0 -8
  539. package/es/components/heading/HeadingContext.d.ts +1 -1
  540. package/es/components/height-animation/style/dnb-height-animation.css +2 -2
  541. package/es/components/height-animation/style/dnb-height-animation.min.css +1 -1
  542. package/es/components/height-animation/style/dnb-height-animation.scss +3 -2
  543. package/es/components/number-format/NumberUtils.d.ts +1 -1
  544. package/es/components/radio/style/dnb-radio.css +4 -0
  545. package/es/components/radio/style/dnb-radio.min.css +1 -1
  546. package/es/components/radio/style/dnb-radio.scss +9 -0
  547. package/es/components/section/style/themes/dnb-section-theme-ui.css +3 -6
  548. package/es/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  549. package/es/components/skeleton/SkeletonHelper.d.ts +6 -6
  550. package/es/components/skeleton/style/dnb-skeleton.css +1 -0
  551. package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
  552. package/es/components/skeleton/style/dnb-skeleton.scss +1 -0
  553. package/es/components/slider/SliderInstance.js +1 -0
  554. package/es/components/slider/SliderInstance.js.map +1 -1
  555. package/es/components/slider/SliderThumb.js +4 -2
  556. package/es/components/slider/SliderThumb.js.map +1 -1
  557. package/es/components/step-indicator/StepIndicator.js +11 -6
  558. package/es/components/step-indicator/StepIndicator.js.map +1 -1
  559. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.css +1 -1
  560. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.min.css +1 -1
  561. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.scss +1 -1
  562. package/es/components/table/TableScrollView.d.ts +5 -1
  563. package/es/components/table/TableScrollView.js +1 -0
  564. package/es/components/table/TableScrollView.js.map +1 -1
  565. package/es/components/table/TableTr.d.ts +1 -2
  566. package/es/components/table/TableTr.js.map +1 -1
  567. package/es/components/table/style/dnb-table.css +8 -1
  568. package/es/components/table/style/dnb-table.min.css +1 -1
  569. package/es/components/table/style/dnb-table.scss +7 -1
  570. package/es/components/table/style/table-header-buttons.scss +4 -1
  571. package/es/components/table/useTableAnimationHandler.d.ts +1 -1
  572. package/es/components/table/useTableAnimationHandler.js +3 -3
  573. package/es/components/table/useTableAnimationHandler.js.map +1 -1
  574. package/es/components/tag/Tag.d.ts +11 -0
  575. package/es/components/tag/Tag.js +54 -39
  576. package/es/components/tag/Tag.js.map +1 -1
  577. package/es/components/tag/style/dnb-tag.css +50 -86
  578. package/es/components/tag/style/dnb-tag.min.css +1 -1
  579. package/es/components/tag/style/dnb-tag.scss +37 -45
  580. package/es/components/tag/style/themes/tag-mixins.scss +24 -6
  581. package/es/components/tooltip/Tooltip.js +1 -1
  582. package/es/components/tooltip/Tooltip.js.map +1 -1
  583. package/es/elements/Element.d.ts +3 -4
  584. package/es/elements/Element.js.map +1 -1
  585. package/es/elements/code/style/themes/dnb-code-theme-sbanken.scss +5 -3
  586. package/es/extensions/forms/DataContext/At/At.js.map +1 -1
  587. package/es/extensions/forms/DataContext/Context.d.ts +31 -8
  588. package/es/extensions/forms/DataContext/Context.js +14 -3
  589. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  590. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +29 -16
  591. package/es/extensions/forms/DataContext/Provider/Provider.js +321 -75
  592. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  593. package/es/extensions/forms/DataContext/Provider/ProviderDocs.d.ts +3 -0
  594. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +85 -0
  595. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -0
  596. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +2 -2
  597. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  598. package/es/extensions/forms/Field/Date/Date.js +4 -4
  599. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  600. package/es/extensions/forms/Field/Expiry/Expiry.js +5 -5
  601. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  602. package/es/extensions/forms/Field/Number/Number.js +4 -4
  603. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  604. package/es/extensions/forms/Field/Password/Password.d.ts +1 -1
  605. package/es/extensions/forms/Field/Password/Password.js.map +1 -1
  606. package/es/extensions/forms/Field/Password/style/dnb-password.scss +1 -1
  607. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +5 -5
  608. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  609. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -1
  610. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  611. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
  612. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  613. package/es/extensions/forms/Field/Selection/Selection.js +6 -6
  614. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  615. package/es/extensions/forms/Field/String/String.js +4 -4
  616. package/es/extensions/forms/Field/String/String.js.map +1 -1
  617. package/es/extensions/forms/Field/String/StringDocs.js +9 -4
  618. package/es/extensions/forms/Field/String/StringDocs.js.map +1 -1
  619. package/es/extensions/forms/Field/Toggle/Toggle.js +8 -8
  620. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  621. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -1
  622. package/es/extensions/forms/FieldBlock/FieldBlock.js +41 -20
  623. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  624. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  625. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  626. package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  627. package/es/extensions/forms/Form/Handler/Handler.js +45 -9
  628. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  629. package/es/extensions/forms/Form/Handler/HandlerDocs.d.ts +3 -0
  630. package/es/extensions/forms/Form/Handler/HandlerDocs.js +39 -0
  631. package/es/extensions/forms/Form/Handler/HandlerDocs.js.map +1 -0
  632. package/es/extensions/forms/Form/SubmitButton/SubmitButton.d.ts +6 -1
  633. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js +21 -12
  634. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  635. package/es/extensions/forms/Form/SubmitButton/SubmitButtonDocs.d.ts +2 -0
  636. package/es/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js +23 -0
  637. package/es/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js.map +1 -0
  638. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.d.ts +14 -0
  639. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +69 -0
  640. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -0
  641. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.d.ts +2 -0
  642. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js +18 -0
  643. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js.map +1 -0
  644. package/es/extensions/forms/Form/SubmitIndicator/index.d.ts +2 -0
  645. package/es/extensions/forms/Form/SubmitIndicator/index.js +3 -0
  646. package/es/extensions/forms/Form/SubmitIndicator/index.js.map +1 -0
  647. package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +99 -0
  648. package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -0
  649. package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +117 -0
  650. package/es/extensions/forms/Form/SubmitIndicator/style/index.d.ts +5 -0
  651. package/es/extensions/forms/Form/SubmitIndicator/style/index.js +1 -0
  652. package/es/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -0
  653. package/es/extensions/forms/Form/data-context/getData.d.ts +1 -1
  654. package/es/extensions/forms/Form/data-context/getData.js.map +1 -1
  655. package/es/extensions/forms/Form/data-context/useData.d.ts +3 -3
  656. package/es/extensions/forms/Form/data-context/useData.js +30 -12
  657. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  658. package/es/extensions/forms/Form/data-context/useError.d.ts +3 -2
  659. package/es/extensions/forms/Form/data-context/useError.js +7 -6
  660. package/es/extensions/forms/Form/data-context/useError.js.map +1 -1
  661. package/es/extensions/forms/Form/index.d.ts +1 -0
  662. package/es/extensions/forms/Form/index.js +1 -0
  663. package/es/extensions/forms/Form/index.js.map +1 -1
  664. package/es/extensions/forms/Iterate/Array/Array.js +2 -2
  665. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  666. package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +2 -2
  667. package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  668. package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +2 -2
  669. package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  670. package/es/extensions/forms/StepsLayout/NextButton/NextButton.d.ts +1 -3
  671. package/es/extensions/forms/StepsLayout/NextButton/NextButton.js +4 -3
  672. package/es/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  673. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.d.ts +1 -3
  674. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +6 -2
  675. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  676. package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +2 -2
  677. package/es/extensions/forms/StepsLayout/StepsLayout.js +55 -26
  678. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  679. package/es/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +3 -0
  680. package/es/extensions/forms/StepsLayout/StepsLayoutDocs.js +50 -0
  681. package/es/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +1 -0
  682. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -1
  683. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  684. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +11 -1
  685. package/es/extensions/forms/Value/Boolean/Boolean.js +2 -2
  686. package/es/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  687. package/es/extensions/forms/Value/Number/Number.js +5 -5
  688. package/es/extensions/forms/Value/Number/Number.js.map +1 -1
  689. package/es/extensions/forms/Value/String/String.js +2 -2
  690. package/es/extensions/forms/Value/String/String.js.map +1 -1
  691. package/es/extensions/forms/hooks/DataValueDocs.js +3 -3
  692. package/es/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  693. package/es/extensions/forms/hooks/index.d.ts +6 -3
  694. package/es/extensions/forms/hooks/index.js +2 -3
  695. package/es/extensions/forms/hooks/index.js.map +1 -1
  696. package/es/extensions/forms/hooks/useFieldProps.d.ts +23 -0
  697. package/es/extensions/forms/hooks/useFieldProps.js +749 -0
  698. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -0
  699. package/es/extensions/forms/style/dnb-forms.css +105 -1
  700. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  701. package/es/extensions/forms/types.d.ts +67 -4
  702. package/es/extensions/forms/types.js +3 -2
  703. package/es/extensions/forms/types.js.map +1 -1
  704. package/es/extensions/forms/utils/ajv.d.ts +9 -7
  705. package/es/extensions/forms/utils/ajv.js +29 -14
  706. package/es/extensions/forms/utils/ajv.js.map +1 -1
  707. package/es/fragments/scroll-view/ScrollView.d.ts +2 -2
  708. package/es/fragments/scroll-view/ScrollView.js +4 -1
  709. package/es/fragments/scroll-view/ScrollView.js.map +1 -1
  710. package/es/shared/Context.d.ts +20 -11
  711. package/es/shared/Context.js.map +1 -1
  712. package/es/shared/Eufemia.d.ts +2 -2
  713. package/es/shared/Eufemia.js +2 -2
  714. package/es/shared/Eufemia.js.map +1 -1
  715. package/es/shared/Provider.js.map +1 -1
  716. package/es/shared/defaults.d.ts +3 -3
  717. package/es/shared/defaults.js.map +1 -1
  718. package/es/shared/helpers/debounce.d.ts +21 -30
  719. package/es/shared/helpers/debounce.js +21 -9
  720. package/es/shared/helpers/debounce.js.map +1 -1
  721. package/es/shared/helpers/isAsync.d.ts +7 -0
  722. package/es/shared/helpers/isAsync.js +14 -0
  723. package/es/shared/helpers/isAsync.js.map +1 -0
  724. package/es/shared/helpers/runCssVersionMismatchWarning.d.ts +8 -0
  725. package/es/shared/helpers/runCssVersionMismatchWarning.js +25 -0
  726. package/es/shared/helpers/runCssVersionMismatchWarning.js.map +1 -0
  727. package/es/{extensions/forms/hooks → shared/helpers}/useId.js +1 -1
  728. package/es/shared/helpers/useId.js.map +1 -0
  729. package/es/shared/helpers/useMountEffect.js.map +1 -0
  730. package/es/shared/helpers/useMounted.js.map +1 -0
  731. package/es/shared/helpers/useSharedState.js +15 -9
  732. package/es/shared/helpers/useSharedState.js.map +1 -1
  733. package/es/shared/helpers/useUnmountEffect.js.map +1 -0
  734. package/es/shared/helpers/useUpdateEffect.js.map +1 -0
  735. package/es/shared/helpers.js +2 -0
  736. package/es/shared/helpers.js.map +1 -1
  737. package/es/shared/index.d.ts +10 -10
  738. package/es/shared/index.js +9 -11
  739. package/es/shared/index.js.map +1 -1
  740. package/es/shared/locales/en-GB.d.ts +1 -0
  741. package/es/shared/locales/en-GB.js +2 -1
  742. package/es/shared/locales/en-GB.js.map +1 -1
  743. package/es/shared/locales/en-US.d.ts +1 -0
  744. package/es/shared/locales/index.d.ts +4 -2
  745. package/es/shared/locales/index.js +2 -1
  746. package/es/shared/locales/index.js.map +1 -1
  747. package/es/shared/locales/nb-NO.d.ts +1 -0
  748. package/es/shared/locales/nb-NO.js +2 -1
  749. package/es/shared/locales/nb-NO.js.map +1 -1
  750. package/es/shared/types.d.ts +4 -1
  751. package/es/shared/types.js.map +1 -1
  752. package/es/shared/useLocale.d.ts +2 -0
  753. package/es/shared/useLocale.js +29 -0
  754. package/es/shared/useLocale.js.map +1 -0
  755. package/es/style/core/scopes.scss +3 -0
  756. package/es/style/dnb-ui-basis.css +1 -0
  757. package/es/style/dnb-ui-basis.min.css +1 -1
  758. package/es/style/dnb-ui-body.css +1 -0
  759. package/es/style/dnb-ui-body.min.css +1 -1
  760. package/es/style/dnb-ui-components.css +281 -160
  761. package/es/style/dnb-ui-components.min.css +3 -3
  762. package/es/style/dnb-ui-core.css +1 -0
  763. package/es/style/dnb-ui-core.min.css +1 -1
  764. package/es/style/dnb-ui-extensions.css +105 -1
  765. package/es/style/dnb-ui-extensions.min.css +1 -1
  766. package/es/style/dnb-ui-forms.css +105 -1
  767. package/es/style/dnb-ui-forms.min.css +1 -1
  768. package/es/style/dnb-ui-forms.scss +1 -0
  769. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +3 -6
  770. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  771. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +427 -250
  772. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +16 -6
  773. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +3 -6
  774. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  775. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +105 -1
  776. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  777. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +105 -1
  778. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  779. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +5 -2
  780. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  781. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +566 -315
  782. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +20 -8
  783. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +5 -2
  784. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  785. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +105 -1
  786. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  787. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +105 -1
  788. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  789. package/es/style/themes/theme-ui/ui-theme-basis.css +3 -6
  790. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  791. package/es/style/themes/theme-ui/ui-theme-components.css +427 -250
  792. package/es/style/themes/theme-ui/ui-theme-components.min.css +16 -6
  793. package/es/style/themes/theme-ui/ui-theme-elements.css +3 -6
  794. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  795. package/es/style/themes/theme-ui/ui-theme-extensions.css +105 -1
  796. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  797. package/es/style/themes/theme-ui/ui-theme-forms.css +105 -1
  798. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  799. package/es/style/themes/theme-ui/ui-theme-tags.css +3 -6
  800. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  801. package/esm/dnb-ui-basis.min.mjs +1 -1
  802. package/esm/dnb-ui-components.min.mjs +1 -1
  803. package/esm/dnb-ui-elements.min.mjs +1 -1
  804. package/esm/dnb-ui-extensions.min.mjs +3 -3
  805. package/esm/dnb-ui-lib.min.mjs +1 -1
  806. package/extensions/forms/DataContext/At/At.js.map +1 -1
  807. package/extensions/forms/DataContext/Context.d.ts +31 -8
  808. package/extensions/forms/DataContext/Context.js +14 -3
  809. package/extensions/forms/DataContext/Context.js.map +1 -1
  810. package/extensions/forms/DataContext/Provider/Provider.d.ts +29 -16
  811. package/extensions/forms/DataContext/Provider/Provider.js +325 -78
  812. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  813. package/extensions/forms/DataContext/Provider/ProviderDocs.d.ts +3 -0
  814. package/extensions/forms/DataContext/Provider/ProviderDocs.js +85 -0
  815. package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -0
  816. package/extensions/forms/Field/ArraySelection/ArraySelection.js +2 -2
  817. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  818. package/extensions/forms/Field/Date/Date.js +4 -4
  819. package/extensions/forms/Field/Date/Date.js.map +1 -1
  820. package/extensions/forms/Field/Expiry/Expiry.js +5 -5
  821. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  822. package/extensions/forms/Field/Number/Number.js +4 -4
  823. package/extensions/forms/Field/Number/Number.js.map +1 -1
  824. package/extensions/forms/Field/Password/Password.d.ts +1 -1
  825. package/extensions/forms/Field/Password/Password.js.map +1 -1
  826. package/extensions/forms/Field/Password/style/dnb-password.scss +1 -1
  827. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +5 -5
  828. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  829. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -1
  830. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  831. package/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
  832. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  833. package/extensions/forms/Field/Selection/Selection.js +6 -6
  834. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  835. package/extensions/forms/Field/String/String.js +4 -4
  836. package/extensions/forms/Field/String/String.js.map +1 -1
  837. package/extensions/forms/Field/String/StringDocs.js +9 -4
  838. package/extensions/forms/Field/String/StringDocs.js.map +1 -1
  839. package/extensions/forms/Field/Toggle/Toggle.js +8 -8
  840. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  841. package/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -1
  842. package/extensions/forms/FieldBlock/FieldBlock.js +42 -20
  843. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  844. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  845. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  846. package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  847. package/extensions/forms/Form/Handler/Handler.js +49 -9
  848. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  849. package/extensions/forms/Form/Handler/HandlerDocs.d.ts +3 -0
  850. package/extensions/forms/Form/Handler/HandlerDocs.js +39 -0
  851. package/extensions/forms/Form/Handler/HandlerDocs.js.map +1 -0
  852. package/extensions/forms/Form/SubmitButton/SubmitButton.d.ts +6 -1
  853. package/extensions/forms/Form/SubmitButton/SubmitButton.js +21 -12
  854. package/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  855. package/extensions/forms/Form/SubmitButton/SubmitButtonDocs.d.ts +2 -0
  856. package/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js +23 -0
  857. package/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js.map +1 -0
  858. package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.d.ts +14 -0
  859. package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +69 -0
  860. package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -0
  861. package/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.d.ts +2 -0
  862. package/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js +18 -0
  863. package/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js.map +1 -0
  864. package/extensions/forms/Form/SubmitIndicator/index.d.ts +2 -0
  865. package/extensions/forms/Form/SubmitIndicator/index.js +3 -0
  866. package/extensions/forms/Form/SubmitIndicator/index.js.map +1 -0
  867. package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +99 -0
  868. package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -0
  869. package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +117 -0
  870. package/extensions/forms/Form/SubmitIndicator/style/index.d.ts +5 -0
  871. package/extensions/forms/Form/SubmitIndicator/style/index.js +1 -0
  872. package/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -0
  873. package/extensions/forms/Form/data-context/getData.d.ts +1 -1
  874. package/extensions/forms/Form/data-context/getData.js.map +1 -1
  875. package/extensions/forms/Form/data-context/useData.d.ts +3 -3
  876. package/extensions/forms/Form/data-context/useData.js +32 -12
  877. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  878. package/extensions/forms/Form/data-context/useError.d.ts +3 -2
  879. package/extensions/forms/Form/data-context/useError.js +8 -6
  880. package/extensions/forms/Form/data-context/useError.js.map +1 -1
  881. package/extensions/forms/Form/index.d.ts +1 -0
  882. package/extensions/forms/Form/index.js +1 -0
  883. package/extensions/forms/Form/index.js.map +1 -1
  884. package/extensions/forms/Iterate/Array/Array.js +2 -2
  885. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  886. package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +2 -2
  887. package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  888. package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +2 -2
  889. package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  890. package/extensions/forms/StepsLayout/NextButton/NextButton.d.ts +1 -3
  891. package/extensions/forms/StepsLayout/NextButton/NextButton.js +4 -3
  892. package/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  893. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.d.ts +1 -3
  894. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +6 -2
  895. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  896. package/extensions/forms/StepsLayout/StepsLayout.d.ts +2 -2
  897. package/extensions/forms/StepsLayout/StepsLayout.js +55 -26
  898. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  899. package/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +3 -0
  900. package/extensions/forms/StepsLayout/StepsLayoutDocs.js +50 -0
  901. package/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +1 -0
  902. package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -1
  903. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  904. package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +11 -1
  905. package/extensions/forms/Value/Boolean/Boolean.js +2 -2
  906. package/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  907. package/extensions/forms/Value/Number/Number.js +5 -5
  908. package/extensions/forms/Value/Number/Number.js.map +1 -1
  909. package/extensions/forms/Value/String/String.js +2 -2
  910. package/extensions/forms/Value/String/String.js.map +1 -1
  911. package/extensions/forms/hooks/DataValueDocs.js +3 -3
  912. package/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  913. package/extensions/forms/hooks/index.d.ts +6 -3
  914. package/extensions/forms/hooks/index.js +2 -3
  915. package/extensions/forms/hooks/index.js.map +1 -1
  916. package/extensions/forms/hooks/useFieldProps.d.ts +23 -0
  917. package/extensions/forms/hooks/useFieldProps.js +764 -0
  918. package/extensions/forms/hooks/useFieldProps.js.map +1 -0
  919. package/extensions/forms/style/dnb-forms.css +105 -1
  920. package/extensions/forms/style/dnb-forms.min.css +1 -1
  921. package/extensions/forms/types.d.ts +67 -4
  922. package/extensions/forms/types.js +3 -2
  923. package/extensions/forms/types.js.map +1 -1
  924. package/extensions/forms/utils/ajv.d.ts +9 -7
  925. package/extensions/forms/utils/ajv.js +29 -14
  926. package/extensions/forms/utils/ajv.js.map +1 -1
  927. package/fragments/scroll-view/ScrollView.d.ts +2 -2
  928. package/fragments/scroll-view/ScrollView.js +4 -1
  929. package/fragments/scroll-view/ScrollView.js.map +1 -1
  930. package/package.json +1 -1
  931. package/shared/Context.d.ts +20 -11
  932. package/shared/Context.js.map +1 -1
  933. package/shared/Eufemia.d.ts +2 -2
  934. package/shared/Eufemia.js +2 -2
  935. package/shared/Eufemia.js.map +1 -1
  936. package/shared/Provider.js.map +1 -1
  937. package/shared/defaults.d.ts +3 -3
  938. package/shared/defaults.js.map +1 -1
  939. package/shared/helpers/debounce.d.ts +21 -30
  940. package/shared/helpers/debounce.js +23 -11
  941. package/shared/helpers/debounce.js.map +1 -1
  942. package/shared/helpers/isAsync.d.ts +7 -0
  943. package/shared/helpers/isAsync.js +14 -0
  944. package/shared/helpers/isAsync.js.map +1 -0
  945. package/shared/helpers/runCssVersionMismatchWarning.d.ts +8 -0
  946. package/shared/helpers/runCssVersionMismatchWarning.js +25 -0
  947. package/shared/helpers/runCssVersionMismatchWarning.js.map +1 -0
  948. package/{extensions/forms/hooks → shared/helpers}/useId.js +1 -1
  949. package/shared/helpers/useId.js.map +1 -0
  950. package/shared/helpers/useMountEffect.js.map +1 -0
  951. package/shared/helpers/useMounted.js.map +1 -0
  952. package/shared/helpers/useSharedState.js +15 -9
  953. package/shared/helpers/useSharedState.js.map +1 -1
  954. package/shared/helpers/useUnmountEffect.js.map +1 -0
  955. package/shared/helpers/useUpdateEffect.js.map +1 -0
  956. package/shared/helpers.js +2 -0
  957. package/shared/helpers.js.map +1 -1
  958. package/shared/index.d.ts +10 -10
  959. package/shared/index.js +9 -11
  960. package/shared/index.js.map +1 -1
  961. package/shared/locales/en-GB.d.ts +1 -0
  962. package/shared/locales/en-GB.js +2 -1
  963. package/shared/locales/en-GB.js.map +1 -1
  964. package/shared/locales/en-US.d.ts +1 -0
  965. package/shared/locales/index.d.ts +4 -2
  966. package/shared/locales/index.js +2 -1
  967. package/shared/locales/index.js.map +1 -1
  968. package/shared/locales/nb-NO.d.ts +1 -0
  969. package/shared/locales/nb-NO.js +2 -1
  970. package/shared/locales/nb-NO.js.map +1 -1
  971. package/shared/types.d.ts +4 -1
  972. package/shared/types.js.map +1 -1
  973. package/shared/useLocale.d.ts +2 -0
  974. package/shared/useLocale.js +29 -0
  975. package/shared/useLocale.js.map +1 -0
  976. package/style/core/scopes.scss +3 -0
  977. package/style/dnb-ui-basis.css +1 -0
  978. package/style/dnb-ui-basis.min.css +1 -1
  979. package/style/dnb-ui-body.css +1 -0
  980. package/style/dnb-ui-body.min.css +1 -1
  981. package/style/dnb-ui-components.css +281 -160
  982. package/style/dnb-ui-components.min.css +3 -3
  983. package/style/dnb-ui-core.css +1 -0
  984. package/style/dnb-ui-core.min.css +1 -1
  985. package/style/dnb-ui-extensions.css +105 -1
  986. package/style/dnb-ui-extensions.min.css +1 -1
  987. package/style/dnb-ui-forms.css +105 -1
  988. package/style/dnb-ui-forms.min.css +1 -1
  989. package/style/dnb-ui-forms.scss +1 -0
  990. package/style/themes/theme-eiendom/eiendom-theme-basis.css +3 -6
  991. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  992. package/style/themes/theme-eiendom/eiendom-theme-components.css +427 -250
  993. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +16 -6
  994. package/style/themes/theme-eiendom/eiendom-theme-elements.css +3 -6
  995. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  996. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +105 -1
  997. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  998. package/style/themes/theme-eiendom/eiendom-theme-forms.css +105 -1
  999. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  1000. package/style/themes/theme-sbanken/sbanken-theme-basis.css +5 -2
  1001. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1002. package/style/themes/theme-sbanken/sbanken-theme-components.css +566 -315
  1003. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +20 -8
  1004. package/style/themes/theme-sbanken/sbanken-theme-elements.css +5 -2
  1005. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  1006. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +105 -1
  1007. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1008. package/style/themes/theme-sbanken/sbanken-theme-forms.css +105 -1
  1009. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  1010. package/style/themes/theme-ui/ui-theme-basis.css +3 -6
  1011. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1012. package/style/themes/theme-ui/ui-theme-components.css +427 -250
  1013. package/style/themes/theme-ui/ui-theme-components.min.css +16 -6
  1014. package/style/themes/theme-ui/ui-theme-elements.css +3 -6
  1015. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1016. package/style/themes/theme-ui/ui-theme-extensions.css +105 -1
  1017. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1018. package/style/themes/theme-ui/ui-theme-forms.css +105 -1
  1019. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  1020. package/style/themes/theme-ui/ui-theme-tags.css +3 -6
  1021. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1022. package/umd/dnb-ui-basis.min.js +1 -1
  1023. package/umd/dnb-ui-components.min.js +1 -1
  1024. package/umd/dnb-ui-elements.min.js +1 -1
  1025. package/umd/dnb-ui-extensions.min.js +3 -3
  1026. package/umd/dnb-ui-lib.min.js +1 -1
  1027. package/cjs/extensions/forms/hooks/useDataValue.d.ts +0 -18
  1028. package/cjs/extensions/forms/hooks/useDataValue.js +0 -461
  1029. package/cjs/extensions/forms/hooks/useDataValue.js.map +0 -1
  1030. package/cjs/extensions/forms/hooks/useId.js.map +0 -1
  1031. package/cjs/extensions/forms/hooks/useMountEffect.js.map +0 -1
  1032. package/cjs/extensions/forms/hooks/useMounted.js.map +0 -1
  1033. package/cjs/extensions/forms/hooks/useUnmountEffect.js.map +0 -1
  1034. package/cjs/extensions/forms/hooks/useUpdateEffect.js.map +0 -1
  1035. package/es/extensions/forms/hooks/useDataValue.d.ts +0 -18
  1036. package/es/extensions/forms/hooks/useDataValue.js +0 -443
  1037. package/es/extensions/forms/hooks/useDataValue.js.map +0 -1
  1038. package/es/extensions/forms/hooks/useId.js.map +0 -1
  1039. package/es/extensions/forms/hooks/useMountEffect.js.map +0 -1
  1040. package/es/extensions/forms/hooks/useMounted.js.map +0 -1
  1041. package/es/extensions/forms/hooks/useUnmountEffect.js.map +0 -1
  1042. package/es/extensions/forms/hooks/useUpdateEffect.js.map +0 -1
  1043. package/extensions/forms/hooks/useDataValue.d.ts +0 -18
  1044. package/extensions/forms/hooks/useDataValue.js +0 -451
  1045. package/extensions/forms/hooks/useDataValue.js.map +0 -1
  1046. package/extensions/forms/hooks/useId.js.map +0 -1
  1047. package/extensions/forms/hooks/useMountEffect.js.map +0 -1
  1048. package/extensions/forms/hooks/useMounted.js.map +0 -1
  1049. package/extensions/forms/hooks/useUnmountEffect.js.map +0 -1
  1050. package/extensions/forms/hooks/useUpdateEffect.js.map +0 -1
  1051. /package/cjs/{extensions/forms/hooks → shared/helpers}/useId.d.ts +0 -0
  1052. /package/cjs/{extensions/forms/hooks → shared/helpers}/useMountEffect.d.ts +0 -0
  1053. /package/cjs/{extensions/forms/hooks → shared/helpers}/useMountEffect.js +0 -0
  1054. /package/cjs/{extensions/forms/hooks → shared/helpers}/useMounted.d.ts +0 -0
  1055. /package/cjs/{extensions/forms/hooks → shared/helpers}/useMounted.js +0 -0
  1056. /package/cjs/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.d.ts +0 -0
  1057. /package/cjs/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.js +0 -0
  1058. /package/cjs/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.d.ts +0 -0
  1059. /package/cjs/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.js +0 -0
  1060. /package/es/{extensions/forms/hooks → shared/helpers}/useId.d.ts +0 -0
  1061. /package/es/{extensions/forms/hooks → shared/helpers}/useMountEffect.d.ts +0 -0
  1062. /package/es/{extensions/forms/hooks → shared/helpers}/useMountEffect.js +0 -0
  1063. /package/es/{extensions/forms/hooks → shared/helpers}/useMounted.d.ts +0 -0
  1064. /package/es/{extensions/forms/hooks → shared/helpers}/useMounted.js +0 -0
  1065. /package/es/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.d.ts +0 -0
  1066. /package/es/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.js +0 -0
  1067. /package/es/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.d.ts +0 -0
  1068. /package/es/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.js +0 -0
  1069. /package/{extensions/forms/hooks → shared/helpers}/useId.d.ts +0 -0
  1070. /package/{extensions/forms/hooks → shared/helpers}/useMountEffect.d.ts +0 -0
  1071. /package/{extensions/forms/hooks → shared/helpers}/useMountEffect.js +0 -0
  1072. /package/{extensions/forms/hooks → shared/helpers}/useMounted.d.ts +0 -0
  1073. /package/{extensions/forms/hooks → shared/helpers}/useMounted.js +0 -0
  1074. /package/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.d.ts +0 -0
  1075. /package/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.js +0 -0
  1076. /package/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.d.ts +0 -0
  1077. /package/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerInput.js","names":["React","PropTypes","addDays","addMonths","addYears","isValid","parseISO","classnames","TextMask","Button","Input","SubmitButton","keycode","warn","validateDOMAttributes","dispatchCustomElementEvent","convertStringToDate","DatePickerContext","DatePickerInput","PureComponent","constructor","props","_defineProperty","_listenForPropChanges","focusState","e","focusMode","success","clipboardData","window","getData","preventDefault","separators","possibleFormats","forEach","date","sep","push","replace","split","reverse","join","i","l","length","date_format","mode","state","context","setState","updateState","hoverDate","hasHadValidDate","startDate","endDate","event","_objectSpread","callOnChangeHandler","_ref","changeMonthViews","isRange","_ref2","getDates","reduce","acc","returnObject","getReturnObject","is_valid","is_valid_start_date","is_valid_end_date","typedDates","start_date","end_date","_ref3","keyCode","target","isDate","getAttribute","match","isInRange","count","callOnChange","wait","selectAll","focus","setSelectionRange","onFocus","onBlur","selectionStart","selectionEnd","selectStart","persist","prepareCounting","size","parseFloat","firstSelectionStart","secondSelectionStart","test","index","refList","findIndex","_ref4","current","nextSibling","prevSibling","endPos","value","setDate","type","fallback","year","getFullYear","month","getMonth","day","getDate","Date","isValidDate","callOnChangeAsInvalid","callOnType","params","id","startDateList","generateDateList","endDateList","createElement","className","_span","maskOrder","separatorRexExp","maskList","cur","shift","_startDayRef","createRef","_startMonthRef","_startYearRef","_endDayRef","_endMonthRef","_endYearRef","componentWillUnmount","_shortcuts","remove","osShortcut","getPlaceholderChar","indexOf","maskPlaceholder","map","slice","placeholderChar","input_element","translation","DatePicker","isRangeLabel","onKeyDown","onKeyDownHandler","onPaste","shortcutHandler","onFocusHandler","onBlurHandler","DateField","isValidElement","InputElement","inputSizeClassName","Fragment","key","_extends","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","_objectWithoutProperties","_excluded","UsedButton","innerRef","ref","lang","code","label","input_state","renderInputElement","submit_element","icon","variant","on_submit","on_click","process","env","NODE_ENV","propTypes","string","instanceOf","RegExp","object","bool","oneOf","oneOfType","func","node","select","_ref5","_excluded2","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":"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"}
1
+ {"version":3,"file":"DatePickerInput.js","names":["React","PropTypes","addDays","addMonths","addYears","isValid","parseISO","classnames","TextMask","Button","Input","SubmitButton","keycode","warn","validateDOMAttributes","dispatchCustomElementEvent","convertStringToDate","DatePickerContext","DatePickerInput","PureComponent","constructor","props","_defineProperty","_listenForPropChanges","focusState","partialStartDate","partialEndDate","e","focusMode","success","clipboardData","window","getData","preventDefault","separators","possibleFormats","forEach","date","sep","push","replace","split","reverse","join","i","l","length","date_format","mode","state","context","setState","updateState","hoverDate","hasHadValidDate","startDate","endDate","event","_objectSpread","callOnChangeHandler","_ref","changeMonthViews","isRange","_ref2","getDates","reduce","acc","returnObject","getReturnObject","is_valid","is_valid_start_date","is_valid_end_date","typedDates","start_date","end_date","_ref3","keyCode","target","isDate","getAttribute","match","isInRange","count","callOnChange","wait","selectAll","focus","setSelectionRange","onFocus","onBlur","selectionStart","selectionEnd","selectStart","persist","prepareCounting","size","parseFloat","firstSelectionStart","secondSelectionStart","test","index","refList","findIndex","_ref4","current","nextSibling","prevSibling","endPos","value","setDate","type","fallback","year","getFullYear","month","getMonth","day","getDate","Date","isValidDate","callOnChangeAsInvalid","callOnType","params","id","startDateList","generateDateList","endDateList","createElement","className","_span","maskOrder","separatorRexExp","maskList","cur","shift","_startDayRef","createRef","_startMonthRef","_startYearRef","_endDayRef","_endMonthRef","_endYearRef","componentWillUnmount","_shortcuts","remove","osShortcut","getPlaceholderChar","indexOf","maskPlaceholder","map","slice","placeholderChar","input_element","translation","DatePicker","isRangeLabel","onKeyDown","onKeyDownHandler","onPaste","shortcutHandler","onFocusHandler","onBlurHandler","DateField","isValidElement","InputElement","inputSizeClassName","Fragment","key","_extends","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","_objectWithoutProperties","_excluded","UsedButton","innerRef","ref","lang","code","label","input_state","renderInputElement","submit_element","icon","variant","on_submit","on_click","process","env","NODE_ENV","propTypes","string","instanceOf","RegExp","object","bool","oneOf","oneOfType","func","node","select","_ref5","_excluded2","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 partialStartDate: '',\n partialEndDate: '',\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 // Get the partial dates, so we can know if something was typed or not in an optional date field\n const partialStartDate = startDate\n const partialEndDate = endDate\n this.setState({\n partialStartDate,\n partialEndDate,\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 partialStartDate,\n partialEndDate,\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 const { partialStartDate, partialEndDate } = this.state\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({\n event,\n partialStartDate,\n partialEndDate,\n }),\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,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAGlC,OAAOC,OAAO,MAAM,kBAAkB;AACtC,OAAOC,SAAS,MAAM,oBAAoB;AAC1C,OAAOC,QAAQ,MAAM,mBAAmB;AACxC,OAAOC,OAAO,MAAM,kBAAkB;AACtC,OAAOC,QAAQ,MAAM,mBAAmB;AAExC,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,QAAQ,MAAM,0BAA0B;AAC/C,OAAOC,MAAM,MAAM,kBAAkB;AACrC,OAAOC,KAAK,IAAIC,YAAY,QAAQ,gBAAgB;AACpD,OAAOC,OAAO,MAAM,SAAS;AAC7B,SACEC,IAAI,EACJC,qBAAqB,EACrBC,0BAA0B,QACrB,+BAA+B;AACtC,SAASC,mBAAmB,QAAQ,kBAAkB;AACtD,OAAOC,iBAAiB,MAAM,qBAAqB;AAEnD,eAAe,MAAMC,eAAe,SAASlB,KAAK,CAACmB,aAAa,CAAC;EAqE/DC,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAACA,KAAK,CAAC;IAAAC,eAAA,gBARN;MACNC,qBAAqB,EAAE,IAAI;MAC3BC,UAAU,EAAE,QAAQ;MACpBC,gBAAgB,EAAE,EAAE;MACpBC,cAAc,EAAE;IAClB,CAAC;IAAAJ,eAAA,0BAgCiB,MAAOK,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,CAACC,OAAO,CAAEC,IAAI,IAAK;cAChCH,UAAU,CAACE,OAAO,CAAEE,GAAG,IAAK;gBAC1BH,eAAe,CAACI,IAAI,CAACF,IAAI,CAACG,OAAO,CAAC,IAAI,EAAEF,GAAG,CAAC,CAAC;cAC/C,CAAC,CAAC;YACJ,CAAC,CAAC;YACFH,eAAe,CAACC,OAAO,CAAEC,IAAI,IAAK;cAChCF,eAAe,CAACI,IAAI,CAACF,IAAI,CAACI,KAAK,CAAC,EAAE,CAAC,CAACC,OAAO,CAAC,CAAC,CAACC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzD,CAAC,CAAC;YAEF,IAAIN,IAAI;YACR,KAAK,IAAIO,CAAC,GAAG,CAAC,EAAEC,CAAC,GAAGV,eAAe,CAACW,MAAM,EAAEF,CAAC,GAAGC,CAAC,EAAE,EAAED,CAAC,EAAE;cACtDP,IAAI,GAAGrB,mBAAmB,CAACa,OAAO,EAAE;gBAClCkB,WAAW,EAAEZ,eAAe,CAACS,CAAC;cAChC,CAAC,CAAC;cACF,IAAIP,IAAI,EAAE;gBACR;cACF;YACF;YACA,MAAMW,IAAI,GAAG,IAAI,CAACpB,SAAS,KAAK,OAAO,GAAG,WAAW,GAAG,SAAS;YACjE,IAAIS,IAAI,IAAI,CAAC,IAAI,CAACY,KAAK,CAACD,IAAI,CAAC,EAAE;cAC7B,IAAI,CAACE,OAAO,CAACC,QAAQ,CAAC;gBACpB,CAACH,IAAI,GAAGX;cACV,CAAC,CAAC;YACJ;UACF,CAAC,CAAC,OAAOV,CAAC,EAAE;YACVd,IAAI,CAACc,CAAC,CAAC;UACT;QACF;MACF;IACF,CAAC;IAAAL,eAAA,gCAEwB2B,KAAK,IAAK;MACjC,IAAI,CAACC,OAAO,CAACE,WAAW,CACtB;QACEC,SAAS,EAAE;MACb,CAAC,EACD,MAAM;QACJ,IAAI,IAAI,CAACH,OAAO,CAACI,eAAe,EAAE;UAChC,MAAM;YAAEC,SAAS;YAAEC,OAAO;YAAEC;UAAM,CAAC,GAAAC,aAAA,CAAAA,aAAA,KAC9B,IAAI,CAACR,OAAO,GACZD,KAAK,CACT;UACD,IAAI,CAACC,OAAO,CAACS,mBAAmB,CAAC;YAAEJ,SAAS;YAAEC,OAAO;YAAEC;UAAM,CAAC,CAAC;QACjE;MACF,CACF,CAAC;IACH,CAAC;IAAAnC,eAAA,uBAEcsC,IAAA,IAAmC;MAAA,IAAlC;QAAEL,SAAS;QAAEC,OAAO;QAAEC;MAAM,CAAC,GAAAG,IAAA;MAC3C,MAAMX,KAAK,GAAG;QAAEY,gBAAgB,EAAE;MAAK,CAAC;MACxC,IAAI,OAAON,SAAS,KAAK,WAAW,IAAIlD,OAAO,CAACkD,SAAS,CAAC,EAAE;QAC1DN,KAAK,CAACM,SAAS,GAAGA,SAAS;MAC7B;MACA,IAAI,CAAC,IAAI,CAAClC,KAAK,CAACyC,OAAO,EAAE;QACvBN,OAAO,GAAGD,SAAS;MACrB;MACA,IAAI,OAAOC,OAAO,KAAK,WAAW,IAAInD,OAAO,CAACmD,OAAO,CAAC,EAAE;QACtDP,KAAK,CAACO,OAAO,GAAGA,OAAO;MACzB;MAEA,IAAI,CAACN,OAAO,CAACE,WAAW,CAACH,KAAK,EAAE,MAAM;QACpC,IACG,OAAOM,SAAS,KAAK,WAAW,IAAIlD,OAAO,CAACkD,SAAS,CAAC,IACtD,OAAOC,OAAO,KAAK,WAAW,IAAInD,OAAO,CAACmD,OAAO,CAAE,EACpD;UACA,IAAI,CAACN,OAAO,CAACS,mBAAmB,CAAC;YAAEF;UAAM,CAAC,CAAC;QAC7C;MACF,CAAC,CAAC;IACJ,CAAC;IAAAnC,eAAA,qBAEYyC,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,EAAElB,IAAI,KAAK;QACrCkB,GAAG,CAAE,GAAElB,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,CAACL,IAAI,CAAC,GAAG,CAAC;QACX,OAAOuB,GAAG;MACZ,CAAC,EAAE,CAAC,CAAC,CAAC;MAGR,IAAI;QAAEX,SAAS;QAAEC;MAAQ,CAAC,GAAGQ,QAAQ,CAAC,CAAC;MAGvC,MAAMvC,gBAAgB,GAAG8B,SAAS;MAClC,MAAM7B,cAAc,GAAG8B,OAAO;MAC9B,IAAI,CAACL,QAAQ,CAAC;QACZ1B,gBAAgB;QAChBC;MACF,CAAC,CAAC;MACF6B,SAAS,GAAGjD,QAAQ,CAACiD,SAAS,CAAC;MAC/BC,OAAO,GAAGlD,QAAQ,CAACkD,OAAO,CAAC;MAG3B,IAAI,CAACnD,OAAO,CAACkD,SAAS,CAAC,EAAE;QACvBA,SAAS,GAAG,IAAI;MAClB;MACA,IAAI,CAAClD,OAAO,CAACmD,OAAO,CAAC,EAAE;QACrBA,OAAO,GAAG,IAAI;MAChB;MAEA,IAAIW,YAAY,GAAG,IAAI,CAACjB,OAAO,CAACkB,eAAe,CAAC;QAC9Cb,SAAS;QACTC,OAAO;QACPC,KAAK;QACLhC,gBAAgB;QAChBC;MACF,CAAC,CAAC;MAGF,IACEyC,YAAY,CAACE,QAAQ,KAAK,KAAK,IAC/BF,YAAY,CAACG,mBAAmB,KAAK,KAAK,IAC1CH,YAAY,CAACI,iBAAiB,KAAK,KAAK,EACxC;QACA,MAAM;UAAEhB,SAAS;UAAEC;QAAQ,CAAC,GAAGQ,QAAQ,CAAC,CAAC;QAEzC,MAAMQ,UAAU,GAAG,IAAI,CAACnD,KAAK,CAACyC,OAAO,GACjC;UACEW,UAAU,EAAElB,SAAS;UACrBmB,QAAQ,EAAElB;QACZ,CAAC,GACD;UAAEnB,IAAI,EAAEkB;QAAU,CAAC;QAEvBY,YAAY,GAAAT,aAAA,CAAAA,aAAA,KACPS,YAAY,GACZK,UAAU,CACd;MACH;MAEAzD,0BAA0B,CAAC,IAAI,CAACmC,OAAO,EAAE,SAAS,EAAEiB,YAAY,CAAC;IACnE,CAAC;IAAA7C,eAAA,0BAEiB,MAAAqD,KAAA,IAAsC;MAAA,IAA/B;QAAEC,OAAO;QAAEC,MAAM;QAAEpB;MAAM,CAAC,GAAAkB,KAAA;MACjD,IAAI;QACF,MAAMG,MAAM,GAAGD,MAAM,CAClBE,YAAY,CAAC,OAAO,CAAC,CACrBC,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC,CAAC;QAEjD,MAAMC,SAAS,GAAGJ,MAAM,CACrBE,YAAY,CAAC,IAAI,CAAC,CAClBC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAE/B,IAAI3C,IAAI,GACN4C,SAAS,KAAK,OAAO,GACjB,IAAI,CAAC/B,OAAO,CAACK,SAAS,GACtB,IAAI,CAACL,OAAO,CAACM,OAAO;QAG1B,IAAI,CAACnB,IAAI,EAAE;UACT;QACF;QAEA,MAAM6C,KAAK,GAAGN,OAAO,KAAK,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAIA,OAAO,KAAK,IAAI,IAAIA,OAAO,KAAK,MAAM,EAAE;UAC1C,QAAQE,MAAM;YACZ,KAAK,KAAK;cACRzC,IAAI,GAAGnC,OAAO,CAACmC,IAAI,EAAE6C,KAAK,CAAC;cAC3B;YACF,KAAK,OAAO;cACV7C,IAAI,GAAGlC,SAAS,CAACkC,IAAI,EAAE6C,KAAK,CAAC;cAC7B;YACF,KAAK,MAAM;cACT7C,IAAI,GAAGjC,QAAQ,CAACiC,IAAI,EAAE6C,KAAK,CAAC;cAC5B;UACJ;QACF;QAEA,IAAI,CAACC,YAAY,CAAC;UAChB,CAACF,SAAS,KAAK,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG5C,IAAI;UACvDoB;QACF,CAAC,CAAC;QAEF,MAAM2B,IAAI,CAAC,CAAC,CAAC;QAEbC,SAAS,CAACR,MAAM,CAAC;MACnB,CAAC,CAAC,OAAOlD,CAAC,EAAE;QACVd,IAAI,CAACc,CAAC,CAAC;MACT;IACF,CAAC;IAAAL,eAAA,sBAEcuD,MAAM,IAAK;MACxBA,MAAM,CAACS,KAAK,CAAC,CAAC;MACdT,MAAM,CAACU,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;IAAAjE,eAAA,yBAEiBmC,KAAK,IAAK;MAC1B,IAAI;QACF4B,SAAS,CAAC5B,KAAK,CAACoB,MAAM,CAAC;MACzB,CAAC,CAAC,OAAOlD,CAAC,EAAE;QACVd,IAAI,CAACc,CAAC,CAAC;MACT;MAEA,IAAI,CAACwB,QAAQ,CAAC;QACZ3B,UAAU,EAAE,OAAO;QACnBD,qBAAqB,EAAE;MACzB,CAAC,CAAC;MAEF,IAAI,IAAI,CAACF,KAAK,CAACmE,OAAO,EAAE;QACtB,IAAI,CAACnE,KAAK,CAACmE,OAAO,CAAA9B,aAAA,CAAAA,aAAA,KACbD,KAAK,GACL,IAAI,CAACP,OAAO,CAACkB,eAAe,CAAC;UAAEX;QAAM,CAAC,CAAC,CAC3C,CAAC;MACJ;IACF,CAAC;IAAAnC,eAAA,wBAEgBmC,KAAK,IAAK;MACzB,MAAM;QAAEhC,gBAAgB;QAAEC;MAAe,CAAC,GAAG,IAAI,CAACuB,KAAK;MACvD,IAAI,CAACrB,SAAS,GAAG,IAAI;MACrB,IAAI,CAACuB,QAAQ,CAAC;QACZ3B,UAAU,EAAE,MAAM;QAClBD,qBAAqB,EAAE;MACzB,CAAC,CAAC;MAEF,IAAI,IAAI,CAACF,KAAK,CAACoE,MAAM,EAAE;QACrB,IAAI,CAACpE,KAAK,CAACoE,MAAM,CAAA/B,aAAA,CAAAA,aAAA,KACZD,KAAK,GACL,IAAI,CAACP,OAAO,CAACkB,eAAe,CAAC;UAC9BX,KAAK;UACLhC,gBAAgB;UAChBC;QACF,CAAC,CAAC,CACH,CAAC;MACJ;IACF,CAAC;IAAAJ,eAAA,2BAEkB,MAAOmC,KAAK,IAAK;MAClC,MAAMmB,OAAO,GAAGhE,OAAO,CAAC6C,KAAK,CAAC;MAC9B,MAAMoB,MAAM,GAAGpB,KAAK,CAACoB,MAAM;MAE3B,IAAIA,MAAM,CAACa,cAAc,KAAKb,MAAM,CAACc,YAAY,EAAE;QACjD,IAAI,CAACC,WAAW,CAACf,MAAM,CAAC;MAC1B;MAGA,QAAQD,OAAO;QACb,KAAK,IAAI;QACT,KAAK,MAAM;UACTnB,KAAK,CAACoC,OAAO,CAAC,CAAC;UACfpC,KAAK,CAACxB,cAAc,CAAC,CAAC;UACtB,IAAI,CAAC6D,eAAe,CAAC;YAAErC,KAAK;YAAEmB,OAAO;YAAEC;UAAO,CAAC,CAAC;UAChD,OAAO,KAAK;QACd,KAAK,KAAK;UAER,OAAO,KAAK;MAChB;MAIA,MAAMkB,IAAI,GAAGC,UAAU,CAACnB,MAAM,CAACE,YAAY,CAAC,MAAM,CAAC,CAAC;MACpD,MAAMkB,mBAAmB,GAAGpB,MAAM,CAACa,cAAc;MAEjD,MAAMN,IAAI,CAAC,CAAC,CAAC;MAEb,MAAMc,oBAAoB,GAAGrB,MAAM,CAACa,cAAc;MAClD,MAAMrF,OAAO,GAAG,OAAO,CAAC8F,IAAI,CAACvB,OAAO,CAAC;MACrC,MAAMwB,KAAK,GAAG,IAAI,CAACC,OAAO,CAACC,SAAS,CAClCC,KAAA;QAAA,IAAC;UAAEC;QAAQ,CAAC,GAAAD,KAAA;QAAA,OAAKC,OAAO,KAAK3B,MAAM;MAAA,CACrC,CAAC;MAED,IACEuB,KAAK,GAAG,IAAI,CAACC,OAAO,CAACvD,MAAM,GAAG,CAAC,KAC7BoD,oBAAoB,KAAKH,IAAI,IAC7B1F,OAAO,IACPuE,OAAO,KAAK,MAAM,IAClBA,OAAO,KAAK,WAAW,IACtBqB,mBAAmB,KAAKF,IAAI,IAAInB,OAAO,KAAK,OAAQ,CAAC,EACxD;QACA,IAAI;UAEF,IAAI,CAAC,IAAI,CAACyB,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,CAACnB,KAAK,CAAC,CAAC;YACnBmB,WAAW,CAAClB,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;UACrC;QACF,CAAC,CAAC,OAAO5D,CAAC,EAAE;UACVd,IAAI,CAACc,CAAC,CAAC;QACT;MACF,CAAC,MAAM,IAAIsE,mBAAmB,KAAK,CAAC,IAAIG,KAAK,GAAG,CAAC,EAAE;QACjD,QAAQxB,OAAO;UACb,KAAK,MAAM;UACX,KAAK,WAAW;YACd,IAAI;cACF,MAAM8B,WAAW,GAAG,IAAI,CAACL,OAAO,CAACD,KAAK,GAAG,CAAC,CAAC,CAACI,OAAO;cACnD,IAAIE,WAAW,EAAE;gBACf,MAAMC,MAAM,GAAGD,WAAW,CAACE,KAAK,CAAC9D,MAAM;gBACvC4D,WAAW,CAACpB,KAAK,CAAC,CAAC;gBACnBoB,WAAW,CAACnB,iBAAiB,CAACoB,MAAM,EAAEA,MAAM,CAAC;cAC/C;YACF,CAAC,CAAC,OAAOhF,CAAC,EAAE;cACVd,IAAI,CAACc,CAAC,CAAC;YACT;YACA;QACJ;MACF;IACF,CAAC;IAAAL,eAAA,uBAEemC,KAAK,IAAK;MACxB,IAAI,CAACoD,OAAO,CAACpD,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC;IACrC,CAAC;IAAAnC,eAAA,yBAEiBmC,KAAK,IAAK;MAC1B,IAAI,CAACoD,OAAO,CAACpD,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;IACvC,CAAC;IAAAnC,eAAA,wBAEgBmC,KAAK,IAAK;MACzB,IAAI,CAACoD,OAAO,CAACpD,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;IACtC,CAAC;IAAAnC,eAAA,qBAEamC,KAAK,IAAK;MACtB,IAAI,CAACoD,OAAO,CAACpD,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;IACnC,CAAC;IAAAnC,eAAA,uBAEemC,KAAK,IAAK;MACxB,IAAI,CAACoD,OAAO,CAACpD,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC;IACrC,CAAC;IAAAnC,eAAA,sBAEcmC,KAAK,IAAK;MACvB,IAAI,CAACoD,OAAO,CAACpD,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC;IACpC,CAAC;IAAAnC,eAAA,kBAES,CAACmC,KAAK,EAAET,IAAI,EAAE8D,IAAI,KAAK;MAC/BrD,KAAK,CAACoC,OAAO,CAAC,CAAC;MAEf,MAAMe,KAAK,GAAGnD,KAAK,CAACoB,MAAM,CAAC+B,KAAK;MAEhC,IAAI,CAAE,IAAG5D,IAAK,GAAE8D,IAAK,EAAC,CAAC,GAAGF,KAAK;MAE/B,IAAI,IAAI,CAAC1D,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,MAAM+D,QAAQ,GAAG,IAAI,CAAE,OAAM/D,IAAK,MAAK,CAAC;MAGxC,MAAMgE,IAAI,GACR,IAAI,CAAE,IAAGhE,IAAK,MAAK,CAAC,IAAK+D,QAAQ,IAAIA,QAAQ,CAACE,WAAW,CAAC,CAAE;MAC9D,MAAMC,KAAK,GACT,IAAI,CAAE,IAAGlE,IAAK,OAAM,CAAC,IAAK+D,QAAQ,IAAIA,QAAQ,CAACI,QAAQ,CAAC,CAAC,GAAG,CAAE;MAChE,MAAMC,GAAG,GAAG,IAAI,CAAE,IAAGpE,IAAK,KAAI,CAAC,IAAK+D,QAAQ,IAAIA,QAAQ,CAACM,OAAO,CAAC,CAAE;MAGnE,MAAMhF,IAAI,GAAG,IAAIiF,IAAI,CACnBtB,UAAU,CAACgB,IAAI,CAAC,EAChBhB,UAAU,CAACkB,KAAK,CAAC,GAAG,CAAC,EACrBlB,UAAU,CAACoB,GAAG,CAChB,CAAC;MAED,MAAMG,WAAW,GACf,CAAC,QAAQ,CAACpB,IAAI,CAACiB,GAAG,CAAC,IACnB,CAAC,QAAQ,CAACjB,IAAI,CAACe,KAAK,CAAC,IACrB,CAAC,QAAQ,CAACf,IAAI,CAACa,IAAI,CAAC,IACpB3G,OAAO,CAACgC,IAAI,CAAC,IACbA,IAAI,CAACgF,OAAO,CAAC,CAAC,IAAIrB,UAAU,CAACoB,GAAG,CAAC,IACjC/E,IAAI,CAAC8E,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAInB,UAAU,CAACkB,KAAK,CAAC,IACxC7E,IAAI,CAAC4E,WAAW,CAAC,CAAC,IAAIjB,UAAU,CAACgB,IAAI,CAAC;MAGxC,IAAIO,WAAW,EAAE;QACf,IAAI,CAACpC,YAAY,CAAC;UAChB,CAAE,GAAEnC,IAAK,MAAK,GAAGX,IAAI;UACrBoB;QACF,CAAC,CAAC;MACJ,CAAC,MAAM;QACL,IAAI,CAACP,OAAO,CAACE,WAAW,CAAC;UAAE,CAAE,GAAEJ,IAAK,MAAK,GAAG;QAAK,CAAC,CAAC;QACnD,IAAI,CAACE,OAAO,CAACE,WAAW,CAAC;UAAE,CAAE,KAAIJ,IAAK,GAAE8D,IAAK,EAAC,GAAGF;QAAM,CAAC,CAAC;QAEzD,IAAI,CAACY,qBAAqB,CAAC;UACzB,CAAE,GAAExE,IAAK,MAAK,GAAG,IAAI;UACrBS;QACF,CAAC,CAAC;MACJ;MAEA,IAAI,CAACgE,UAAU,CAAC;QACdhE;MACF,CAAC,CAAC;IACJ,CAAC;IAAAnC,eAAA,6BAEqBoG,MAAM,IAAK;MAC/B,MAAM;QAAEC,EAAE;QAAE7D;MAAQ,CAAC,GAAG,IAAI,CAACzC,KAAK;MAClC,IAAI,CAACgF,OAAO,GAAG,EAAE;MACjB,MAAMuB,aAAa,GAAG,IAAI,CAACC,gBAAgB,CAACH,MAAM,EAAE,OAAO,CAAC;MAC5D,MAAMI,WAAW,GAAG,IAAI,CAACD,gBAAgB,CAACH,MAAM,EAAE,KAAK,CAAC;MACxD,OACE1H,KAAA,CAAA+H,aAAA;QAAMJ,EAAE,EAAG,GAAEA,EAAG,QAAQ;QAACK,SAAS,EAAC;MAAiC,GACjEJ,aAAa,EACb9D,OAAO,KAAAmE,KAAA,KAAAA,KAAA,GACNjI,KAAA,CAAA+H,aAAA;QAAMC,SAAS,EAAC,4BAA4B;QAAC;MAAW,GACrD,KACG,CAAC,EACR,EACAlE,OAAO,IAAIgE,WACR,CAAC;IAEX,CAAC;IAtbC,MAAM5F,WAAU,GAAGb,KAAK,CAAC6G,SAAS,CAAClD,KAAK,CAAC3D,KAAK,CAAC8G,eAAe,CAAC;IAC/D,IAAI,CAACC,QAAQ,GAAG/G,KAAK,CAAC6G,SAAS,CAC5BzF,KAAK,CAACpB,KAAK,CAAC8G,eAAe,CAAC,CAC5BlE,MAAM,CAAC,CAACC,GAAG,EAAEmE,GAAG,KAAK;MACpB,IAAIA,GAAG,EAAE;QACPnE,GAAG,CAAC3B,IAAI,CAAC8F,GAAG,CAAC;QACb,IAAInG,WAAU,CAACY,MAAM,GAAG,CAAC,EAAE;UACzBoB,GAAG,CAAC3B,IAAI,CAACL,WAAU,CAACoG,KAAK,CAAC,CAAC,CAAC;QAC9B;MACF;MACA,OAAOpE,GAAG;IACZ,CAAC,EAAE,EAAE,CAAC;IAER,IAAI,CAACqE,YAAY,GAAGvI,KAAK,CAACwI,SAAS,CAAC,CAAC;IACrC,IAAI,CAACC,cAAc,GAAGzI,KAAK,CAACwI,SAAS,CAAC,CAAC;IACvC,IAAI,CAACE,aAAa,GAAG1I,KAAK,CAACwI,SAAS,CAAC,CAAC;IACtC,IAAI,CAACG,UAAU,GAAG3I,KAAK,CAACwI,SAAS,CAAC,CAAC;IACnC,IAAI,CAACI,YAAY,GAAG5I,KAAK,CAACwI,SAAS,CAAC,CAAC;IACrC,IAAI,CAACK,WAAW,GAAG7I,KAAK,CAACwI,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;EA+ZAC,kBAAkBA,CAACtC,KAAK,EAAE;IACxB,MAAMR,KAAK,GAAG,IAAI,CAAC/E,KAAK,CAAC6G,SAAS,CAACiB,OAAO,CAACvC,KAAK,CAAC;IACjD,OAAO,IAAI,CAACvF,KAAK,CAAC+H,eAAe,CAAChD,KAAK,CAAC;EAC1C;EAEAyB,gBAAgBA,CAACH,MAAM,EAAE1E,IAAI,EAAE;IAC7B,OAAO,IAAI,CAACoF,QAAQ,CAACiB,GAAG,CAAC,CAACzC,KAAK,EAAEhE,CAAC,KAAK;MACrC,MAAMK,KAAK,GAAG2D,KAAK,CAAC0C,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;MAC/B,MAAMC,eAAe,GAAG,IAAI,CAACL,kBAAkB,CAACtC,KAAK,CAAC;MACtD,MAAM;QAAE4C,aAAa;QAAErB,eAAe;QAAErE,OAAO;QAAEiC;MAAK,CAAC,GAAG,IAAI,CAAC1E,KAAK;MACpE,MAAM;QAAE+F,GAAG;QAAEF,KAAK;QAAEF;MAAK,CAAC,GAAG,IAAI,CAAC9D,OAAO,CAACuG,WAAW,CAACC,UAAU;MAChE,MAAMC,YAAY,GAAG7F,OAAO,GACvB,GAAE,IAAI,CAACZ,OAAO,CAACuG,WAAW,CAACC,UAAU,CAAC1G,IAAI,CAAE,GAAE,GAC/C,EAAE;MAEN,IAAI,CAACmF,eAAe,CAAChC,IAAI,CAACS,KAAK,CAAC,EAAE;QAChC,IAAI,CAAC4C,aAAa,EAAE;UAClB9B,MAAM,GAAAhE,aAAA,CAAAA,aAAA,KACDgE,MAAM;YACTkC,SAAS,EAAE,IAAI,CAACC,gBAAgB;YAChCC,OAAO,EAAE,IAAI,CAACC,eAAe;YAC7BvE,OAAO,EAAG7D,CAAC,IAAK;cACd,IAAI,CAACC,SAAS,GAAGoB,IAAI;cACrB,IAAI,CAACgH,cAAc,CAACrI,CAAC,CAAC;YACxB,CAAC;YACD8D,MAAM,EAAE,IAAI,CAACwE,aAAa;YAC1BV;UAAe,EAChB;QACH;QAGA,MAAMW,SAAS,GACbV,aAAa,IAAIxJ,KAAK,CAACmK,cAAc,CAACX,aAAa,CAAC,GAChDA,aAAa,GACbY,YAAY;QAElB,MAAMC,kBAAkB,GACtBtE,IAAI,IAAK,2BAA0BA,IAAK,EAAC;QAE3C,QAAQ9C,KAAK;UACX,KAAK,GAAG;YACN,IAAI,CAACoD,OAAO,CAAC9D,IAAI,CAAC,IAAI,CAAE,IAAGS,IAAK,QAAO,CAAC,CAAC;YAEzC,OACEhD,KAAA,CAAA+H,aAAA,CAAC/H,KAAK,CAACsK,QAAQ;cAACC,GAAG,EAAE,IAAI,GAAG3H;YAAE,GAC5B5C,KAAA,CAAA+H,aAAA,CAACmC,SAAS,EAAAM,QAAA,KACJ9C,MAAM;cACVC,EAAE,EAAG,GAAE,IAAI,CAACtG,KAAK,CAACsG,EAAG,IAAG3E,IAAK,MAAM;cACnCuH,GAAG,EAAE,IAAI,GAAG3H,CAAE;cACdoF,SAAS,EAAEzH,UAAU,uDACnBmH,MAAM,CAACM,SAAS,EAGhBqC,kBACF,CAAE;cACFtE,IAAI,EAAC,GAAG;cACR0E,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAE;cACzBC,QAAQ,EAAE,IAAI,CAAE,IAAG1H,IAAK,QAAO,CAAE;cACjC2H,QAAQ,EAAE,IAAI,CAAE,OAAM3H,IAAK,KAAI,CAAE;cACjC4D,KAAK,EAAE,IAAI,CAAC1D,OAAO,CAAE,KAAIF,IAAK,KAAI,CAAC,IAAI,EAAG;cAC1C,mBAAkB,GAAE,IAAI,CAAC3B,KAAK,CAACsG,EAAG,IAAG3E,IAAK;YAAY,EACvD,CAAC,EACFhD,KAAA,CAAA+H,aAAA;cACEwC,GAAG,EAAE,IAAI,GAAG3H,CAAE;cACdgI,MAAM;cACNjD,EAAE,EAAG,GAAE,IAAI,CAACtG,KAAK,CAACsG,EAAG,IAAG3E,IAAK,YAAY;cACzC6H,OAAO,EAAG,GAAE,IAAI,CAACxJ,KAAK,CAACsG,EAAG,IAAG3E,IAAK;YAAM,GAEvC2G,YAAY,GAAGvC,GACX,CACO,CAAC;UAErB,KAAK,GAAG;YACN,IAAI,CAACf,OAAO,CAAC9D,IAAI,CAAC,IAAI,CAAE,IAAGS,IAAK,UAAS,CAAC,CAAC;YAE3C,OACEhD,KAAA,CAAA+H,aAAA,CAAC/H,KAAK,CAACsK,QAAQ;cAACC,GAAG,EAAE,IAAI,GAAG3H;YAAE,GAC5B5C,KAAA,CAAA+H,aAAA,CAACmC,SAAS,EAAAM,QAAA,KACJ9C,MAAM;cACVC,EAAE,EAAG,GAAE,IAAI,CAACtG,KAAK,CAACsG,EAAG,IAAG3E,IAAK,QAAQ;cACrCuH,GAAG,EAAE,IAAI,GAAG3H,CAAE;cACdoF,SAAS,EAAEzH,UAAU,yDACnBmH,MAAM,CAACM,SAAS,EAGhBqC,kBACF,CAAE;cACFtE,IAAI,EAAC,GAAG;cACR0E,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAE;cACzBC,QAAQ,EAAE,IAAI,CAAE,IAAG1H,IAAK,UAAS,CAAE;cACnC2H,QAAQ,EAAE,IAAI,CAAE,OAAM3H,IAAK,OAAM,CAAE;cACnC4D,KAAK,EAAE,IAAI,CAAC1D,OAAO,CAAE,KAAIF,IAAK,OAAM,CAAC,IAAI,EAAG;cAC5C,mBAAkB,GAAE,IAAI,CAAC3B,KAAK,CAACsG,EAAG,IAAG3E,IAAK;YAAc,EACzD,CAAC,EACFhD,KAAA,CAAA+H,aAAA;cACEwC,GAAG,EAAE,IAAI,GAAG3H,CAAE;cACdgI,MAAM;cACNjD,EAAE,EAAG,GAAE,IAAI,CAACtG,KAAK,CAACsG,EAAG,IAAG3E,IAAK,cAAc;cAC3C6H,OAAO,EAAG,GAAE,IAAI,CAACxJ,KAAK,CAACsG,EAAG,IAAG3E,IAAK;YAAQ,GAEzC2G,YAAY,GAAGzC,KACX,CACO,CAAC;UAErB,KAAK,GAAG;YACN,IAAI,CAACb,OAAO,CAAC9D,IAAI,CAAC,IAAI,CAAE,IAAGS,IAAK,SAAQ,CAAC,CAAC;YAE1C,OACEhD,KAAA,CAAA+H,aAAA,CAAC/H,KAAK,CAACsK,QAAQ;cAACC,GAAG,EAAE,IAAI,GAAG3H;YAAE,GAC5B5C,KAAA,CAAA+H,aAAA,CAACmC,SAAS,EAAAM,QAAA,KACJ9C,MAAM;cACVC,EAAE,EAAG,GAAE,IAAI,CAACtG,KAAK,CAACsG,EAAG,IAAG3E,IAAK,OAAO;cACpCuH,GAAG,EAAE,IAAI,GAAG3H,CAAE;cACdoF,SAAS,EAAEzH,UAAU,wDACnBmH,MAAM,CAACM,SAAS,EAGhBqC,kBACF,CAAE;cACFtE,IAAI,EAAC,GAAG;cACR0E,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAE;cAC3CC,QAAQ,EAAE,IAAI,CAAE,IAAG1H,IAAK,SAAQ,CAAE;cAClC2H,QAAQ,EAAE,IAAI,CAAE,OAAM3H,IAAK,MAAK,CAAE;cAClC4D,KAAK,EAAE,IAAI,CAAC1D,OAAO,CAAE,KAAIF,IAAK,MAAK,CAAC,IAAI,EAAG;cAC3C,mBAAkB,GAAE,IAAI,CAAC3B,KAAK,CAACsG,EAAG,IAAG3E,IAAK;YAAa,EACxD,CAAC,EACFhD,KAAA,CAAA+H,aAAA;cACEwC,GAAG,EAAE,IAAI,GAAG3H,CAAE;cACdgI,MAAM;cACNjD,EAAE,EAAG,GAAE,IAAI,CAACtG,KAAK,CAACsG,EAAG,IAAG3E,IAAK,aAAa;cAC1C6H,OAAO,EAAG,GAAE,IAAI,CAACxJ,KAAK,CAACsG,EAAG,IAAG3E,IAAK;YAAO,GAExC2G,YAAY,GAAG3C,IACX,CACO,CAAC;QAEvB;MACF;MACA,OACEhH,KAAA,CAAA+H,aAAA;QACEwC,GAAG,EAAE,GAAG,GAAG3H,CAAE;QACboF,SAAS,EAAC,4BAA4B;QACtC;MAAW,GAEVuB,eACG,CAAC;IAEX,CAAC,CAAC;EACJ;EAEAuB,UAAUA,CAAA,EAAG;IACX,MAAM;MAAEC;IAAiB,CAAC,GAAG,IAAI,CAAC7H,OAAO,CAACuG,WAAW,CAACC,UAAU;IAEhE,MAAM;MAAEsB;IAAkB,CAAC,GAAG,IAAI,CAAC3J,KAAK;IAExC,OAAO2J,iBAAiB,GACnB,GAAEA,iBAAkB,KAAID,gBAAiB,EAAC,GAC3CA,gBAAgB;EACtB;EAEAE,MAAMA,CAAA,EAAG;IACP,MAAAC,WAAA,GA0BI,IAAI,CAAC7J,KAAK;MA1BR;QACJsG,EAAE;QACFwD,KAAK;QAELC,gBAAgB;QAChBtH,OAAO;QACPoE,SAAS;QACTkB,eAAe;QACfjB,eAAe;QACfwC,QAAQ;QACRnF,OAAO;QACP6F,QAAQ;QACR5F,MAAM;QACNuF,iBAAiB;QACjBM,SAAS;QACT9B,aAAa;QACb+B,MAAM;QACNC,QAAQ;QACRC,QAAQ;QACRC,MAAM;QACN3F,IAAI;QACJ4F,MAAM;QACNC,YAAY;QACZC;MAGF,CAAC,GAAAX,WAAA;MADIY,UAAU,GAAAC,wBAAA,CAAAb,WAAA,EAAAc,SAAA;IAGf,MAAM;MAAExK;IAAW,CAAC,GAAG,IAAI,CAACyB,KAAK;IAEjCnC,qBAAqB,CAAC,IAAI,CAACO,KAAK,EAAEyK,UAAU,CAAC;IAC7ChL,qBAAqB,CAAC,IAAI,EAAEsK,gBAAgB,CAAC;IAE7C,MAAMa,UAAU,GAAGX,SAAS,GAAG3K,YAAY,GAAGF,MAAM;IACpD,IAAI,CAAC6K,SAAS,EAAE;MAEdF,gBAAgB,CAACc,QAAQ,GAAGd,gBAAgB,CAACe,GAAG;MAChDf,gBAAgB,CAACe,GAAG,GAAG,IAAI;IAC7B;IAEA,OACEnM,KAAA,CAAA+H,aAAA;MAAUC,SAAS,EAAC,2BAA2B;MAACoE,IAAI,EAAEb,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEc;IAAK,GAChE,IAAI,CAACnJ,OAAO,CAAC7B,KAAK,CAACiL,KAAK,IACvBtM,KAAA,CAAA+H,aAAA;MAAQC,SAAS,EAAC;IAAa,GAC5B,IAAI,CAAC9E,OAAO,CAAC7B,KAAK,CAACiL,KACd,CACT,EACDtM,KAAA,CAAA+H,aAAA,CAACrH,KAAK,EAAA8J,QAAA;MACJ7C,EAAE,EAAG,GAAEA,EAAG,SAAS;MACnB4E,WAAW,EAAEf,QAAQ,GAAG,UAAU,GAAGhK,UAAW;MAChDgI,aAAa,EACXA,aAAa,IAAI,OAAOA,aAAa,KAAK,QAAQ,GAC9C,OAAOA,aAAa,KAAK,UAAU,GACjCA,aAAa,CAAC,IAAI,CAACnI,KAAK,CAAC,GACzBmI,aAAa,GACf,IAAI,CAACgD,kBACV;MACDhB,QAAQ,EAAEA,QAAQ,IAAIC,QAAS;MAC/BA,QAAQ,EAAEA,QAAS;MACnB1F,IAAI,EAAEA,IAAK;MACX4F,MAAM,EAAE,CAACD,MAAM,GAAGC,MAAM,GAAG,IAAK;MAChCC,YAAY,EAAEA;IAAa,GACvBC,YAAY;MAChBY,cAAc,EACZzM,KAAA,CAAA+H,aAAA,CAACkE,UAAU,EAAAzB,QAAA;QACT7C,EAAE,EAAEA,EAAG;QACP6D,QAAQ,EAAEA,QAAS;QACnBC,QAAQ,EAAEA,QAAS;QACnBzD,SAAS,EAAEzH,UAAU,CACnB+K,SAAS,IAAI,0BAA0B,EACvCI,MAAM,IAAG,oBACX,CAAE;QACF,cAAY,IAAI,CAACZ,UAAU,CAAC,CAAE;QAC9BK,KAAK,EAAEA,KAAM;QACbpF,IAAI,EAAEA,IAAK;QACX4F,MAAM,EAAEA,MAAO;QACfC,YAAY,EAAEA,YAAa;QAC3B9E,IAAI,EAAC,QAAQ;QACb4F,IAAI,EAAC,UAAU;QACfC,OAAO,EAAC,WAAW;QACnBC,SAAS,EAAEvB,QAAS;QACpBwB,QAAQ,EAAExB;MAAS,GACfD,gBAAgB,EAChBS,YAAY,CACjB,CACF;MACDO,IAAI,EAAEb,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEc;IAAK,GACfP,UAAU,CACf,CACO,CAAC;EAEf;AACF;AAACxK,eAAA,CA7vBoBJ,eAAe,iBACbD,iBAAiB;AAAAK,eAAA,CADnBJ,eAAe,kBAqCZ;EACpByG,EAAE,EAAE,IAAI;EACRwD,KAAK,EAAE,IAAI;EACXH,iBAAiB,EAAE,IAAI;EACvB9C,SAAS,EAAE,YAAY;EACvBkB,eAAe,EAAE,YAAY;EAC7BjB,eAAe,EAAE,QAAQ;EACzBiD,gBAAgB,EAAE,IAAI;EACtBtH,OAAO,EAAE,IAAI;EACbiC,IAAI,EAAE,IAAI;EACV4F,MAAM,EAAE,IAAI;EACZC,YAAY,EAAE,OAAO;EACrBC,YAAY,EAAE,IAAI;EAClBrC,aAAa,EAAE,IAAI;EACnBgC,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;EACd7F,OAAO,EAAE,IAAI;EACbC,MAAM,EAAE;AACV,CAAC;AAAAqH,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBA5DkB9L,eAAe,CAG3B+L,SAAS,GAAG;EACjBtF,EAAE,EAAE1H,SAAS,CAACiN,MAAM;EACpB/B,KAAK,EAAElL,SAAS,CAACiN,MAAM;EACvBlC,iBAAiB,EAAE/K,SAAS,CAACiN,MAAM;EACnChF,SAAS,EAAEjI,SAAS,CAACiN,MAAM;EAC3B9D,eAAe,EAAEnJ,SAAS,CAACiN,MAAM;EACjC/E,eAAe,EAAElI,SAAS,CAACkN,UAAU,CAACC,MAAM,CAAC;EAC7ChC,gBAAgB,EAAEnL,SAAS,CAACoN,MAAM;EAClCvJ,OAAO,EAAE7D,SAAS,CAACqN,IAAI;EACvBvH,IAAI,EAAE9F,SAAS,CAACsN,KAAK,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;EAC9D5B,MAAM,EAAE1L,SAAS,CAACuN,SAAS,CAAC,CAC1BvN,SAAS,CAACiN,MAAM,EAChBjN,SAAS,CAACqN,IAAI,EACdrN,SAAS,CAACwN,IAAI,EACdxN,SAAS,CAACyN,IAAI,CACf,CAAC;EACF9B,YAAY,EAAE3L,SAAS,CAACiN,MAAM;EAC9BrB,YAAY,EAAE5L,SAAS,CAACoN,MAAM;EAC9B7D,aAAa,EAAEvJ,SAAS,CAACuN,SAAS,CAAC,CACjCvN,SAAS,CAACiN,MAAM,EAChBjN,SAAS,CAACwN,IAAI,EACdxN,SAAS,CAACyN,IAAI,CACf,CAAC;EACFnC,MAAM,EAAEtL,SAAS,CAACoN,MAAM;EACxB7B,QAAQ,EAAEvL,SAAS,CAACqN,IAAI;EACxB7B,QAAQ,EAAExL,SAAS,CAACqN,IAAI;EACxB5B,MAAM,EAAEzL,SAAS,CAACqN,IAAI;EACtBhC,SAAS,EAAErL,SAAS,CAACqN,IAAI;EACzB3C,QAAQ,EAAE1K,SAAS,CAACwN,IAAI;EACxBpC,QAAQ,EAAEpL,SAAS,CAACwN,IAAI;EACxBjI,OAAO,EAAEvF,SAAS,CAACwN,IAAI;EACvBhI,MAAM,EAAExF,SAAS,CAACwN;AACpB,CAAC;AA4tBH,MAAMpI,SAAS,GAAIR,MAAM,IAAK;EAC5BA,MAAM,CAACS,KAAK,CAAC,CAAC;EACdT,MAAM,CAAC8I,MAAM,CAAC,CAAC;AACjB,CAAC;AAED,MAAMvD,YAAY,GAAGwD,KAAA,IAAoC;EAAA,IAAnC;MAAE5F,SAAS;MAAEpB;IAAgB,CAAC,GAAAgH,KAAA;IAAPvM,KAAK,GAAA0K,wBAAA,CAAA6B,KAAA,EAAAC,UAAA;EAChD,OACE7N,KAAA,CAAA+H,aAAA,CAACvH,QAAQ,EAAAgK,QAAA;IACPsD,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;IACjBpG,SAAS,EAAEzH,UAAU,CACnByH,SAAS,EACT,KAAK,CAAC7B,IAAI,CAACS,KAAK,CAAC,IAAI,mCACvB,CAAE;IACFA,KAAK,EAAEA;EAAM,GACTvF,KAAK,CACV,CAAC;AAEN,CAAC;AAED,MAAM+D,IAAI,GAAIiJ,CAAC,IAAK,IAAIC,OAAO,CAAEC,CAAC,IAAKC,UAAU,CAACD,CAAC,EAAEF,CAAC,CAAC,CAAC"}
@@ -62,7 +62,7 @@ export default class DatePickerProvider extends React.PureComponent {
62
62
  });
63
63
  }
64
64
  }
65
- if (isTrue(props.correct_invalid_date) || (typeof props.min_date !== 'undefined' || typeof props.max_date !== 'undefined') && props.correct_invalid_date !== false) {
65
+ if (isTrue(props.correct_invalid_date)) {
66
66
  if (isDisabled(state.startDate, state.minDate, state.maxDate)) {
67
67
  state.startDate = state.minDate;
68
68
  }
@@ -164,7 +164,9 @@ export default class DatePickerProvider extends React.PureComponent {
164
164
  rest = _objectWithoutProperties(_ref, _excluded);
165
165
  const {
166
166
  startDate,
167
- endDate
167
+ endDate,
168
+ partialStartDate,
169
+ partialEndDate
168
170
  } = _objectSpread(_objectSpread({}, _this.state), rest);
169
171
  const attributes = _this.props.attributes || {};
170
172
  const returnFormat = correctV1Format(_this.props.return_format);
@@ -179,13 +181,16 @@ export default class DatePickerProvider extends React.PureComponent {
179
181
  start_date: startDateIsValid ? format(startDate, returnFormat) : null,
180
182
  end_date: endDateIsValid ? format(endDate, returnFormat) : null,
181
183
  is_valid_start_date: startDateIsValid,
182
- is_valid_end_date: endDateIsValid
184
+ is_valid_end_date: endDateIsValid,
185
+ partialStartDate,
186
+ partialEndDate
183
187
  };
184
188
  } else {
185
189
  ret = {
186
190
  event,
187
191
  attributes,
188
192
  date: startDateIsValid ? format(startDate, returnFormat) : null,
193
+ partialStartDate,
189
194
  is_valid: startDateIsValid
190
195
  };
191
196
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerProvider.js","names":["React","PropTypes","isSameMonth","isValid","format","differenceInCalendarDays","Context","isTrue","dispatchCustomElementEvent","convertStringToDate","correctV1Format","isDisabled","DatePickerContext","getViews","DatePickerProvider","PureComponent","getDerivedStateFromProps","props","state","isRange","range","_listenForPropChanges","startDate","undefined","date_format","date","_date","start_date","_startDate","endDate","end_date","_endDate","start_month","_startMonth","startMonth","end_month","_endMonth","endMonth","min_date","_minDate","minDate","max_date","_maxDate","maxDate","correct_invalid_date","lastEventCallCache","__startDay","pad","__startMonth","__startYear","hasHadValidDate","__endDay","__endMonth","__endYear","changeMonthViews","views","month","_month","constructor","_this","this","_defineProperty","cb","arguments","length","setState","_objectSpread","args","getReturnObject","_ref","event","rest","_objectWithoutProperties","_excluded","attributes","returnFormat","return_format","startDateIsValid","Boolean","endDateIsValid","ret","days_between","is_valid_start_date","is_valid_end_date","is_valid","setReturnObject","render","children","createElement","Provider","value","translation","context","setViews","updateState","callOnChangeHandler","enhanceWithMethods","process","env","NODE_ENV","propTypes","oneOfType","instanceOf","Date","string","bool","isRequired","func","object","node","num","size","substr"],"sources":["../../../../src/components/date-picker/DatePickerProvider.js"],"sourcesContent":["/**\n * Web DatePicker Provider\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\n\nimport isSameMonth from 'date-fns/isSameMonth'\nimport isValid from 'date-fns/isValid'\nimport format from 'date-fns/format'\nimport differenceInCalendarDays from 'date-fns/differenceInCalendarDays'\n\nimport Context from '../../shared/Context'\nimport {\n isTrue,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport {\n convertStringToDate,\n correctV1Format,\n isDisabled,\n} from './DatePickerCalc'\nimport DatePickerContext from './DatePickerContext'\nimport { getViews } from './DatePickerRange'\n\nexport default class DatePickerProvider extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n min_date: PropTypes.oneOfType([\n PropTypes.instanceOf(Date),\n PropTypes.string,\n ]),\n max_date: PropTypes.oneOfType([\n PropTypes.instanceOf(Date),\n PropTypes.string,\n ]),\n return_format: PropTypes.string,\n\n range: PropTypes.oneOfType([PropTypes.bool, PropTypes.string])\n .isRequired,\n setReturnObject: PropTypes.func.isRequired,\n enhanceWithMethods: PropTypes.object,\n\n attributes: PropTypes.object,\n children: PropTypes.node.isRequired,\n }\n\n static defaultProps = {\n min_date: null,\n max_date: null,\n return_format: 'yyyy-MM-dd', // used in date-fns v1: YYYY-MM-DD\n attributes: null,\n enhanceWithMethods: null,\n }\n\n state = { _listenForPropChanges: true, changeMonthViews: false }\n\n static getDerivedStateFromProps(props, state) {\n const isRange = isTrue(props.range)\n\n if (state._listenForPropChanges) {\n let startDate = undefined\n const date_format = props.date_format\n\n // Handle startDate/endDate\n if (\n typeof props.date !== 'undefined' &&\n props.date !== state._date\n ) {\n startDate = props.date\n }\n if (\n typeof props.start_date !== 'undefined' &&\n props.start_date !== state._startDate\n ) {\n startDate = props.start_date\n }\n if (\n typeof startDate !== 'undefined' &&\n startDate !== state.startDate\n ) {\n state.startDate =\n convertStringToDate(startDate, {\n date_format,\n }) || undefined\n\n if (!isTrue(props.range)) {\n state.endDate = state.startDate\n }\n }\n if (\n typeof props.end_date !== 'undefined' &&\n isTrue(props.range) &&\n props.end_date !== state._endDate\n ) {\n state.endDate =\n convertStringToDate(props.end_date, {\n date_format,\n }) || undefined\n }\n\n // Handle startMonth/endMonth\n if (\n typeof props.start_month !== 'undefined' &&\n props.start_month !== state._startMonth\n ) {\n state.startMonth = convertStringToDate(props.start_month, {\n date_format,\n })\n }\n if (\n typeof props.end_month !== 'undefined' &&\n props.end_month !== state._endMonth\n ) {\n state.endMonth = convertStringToDate(props.end_month, {\n date_format,\n })\n }\n\n // Handle minDate/maxDate\n if (\n typeof props.min_date !== 'undefined' &&\n props.min_date !== state._minDate\n ) {\n state.minDate = convertStringToDate(props.min_date, {\n date_format,\n })\n }\n if (\n typeof props.max_date !== 'undefined' &&\n props.max_date !== state._maxDate\n ) {\n state.maxDate = convertStringToDate(props.max_date, {\n date_format,\n })\n }\n }\n\n /**\n * Because now we do not any more relay on auto \"correction\",\n * but rather return \"is_valid_start_date=false\"\n */\n if (\n isTrue(props.correct_invalid_date) ||\n ((typeof props.min_date !== 'undefined' ||\n typeof props.max_date !== 'undefined') &&\n props.correct_invalid_date !== false)\n ) {\n if (isDisabled(state.startDate, state.minDate, state.maxDate)) {\n state.startDate = state.minDate\n }\n if (isDisabled(state.endDate, state.minDate, state.maxDate)) {\n // state.endDate is only used by the input if range is set to true.\n // this is done to make max_date correction work if the input is not a range and only max_date is defined.\n if (!props.range && !props.min_date) {\n state.startDate = state.maxDate\n } else {\n state.endDate = state.maxDate\n }\n }\n }\n\n if (\n state.lastEventCallCache &&\n (state.lastEventCallCache.startDate !== state.startDate ||\n state.lastEventCallCache.endDate !== state.endDate)\n ) {\n state.lastEventCallCache = {}\n }\n\n if (isValid(state.startDate)) {\n state.__startDay = pad(format(state.startDate, 'dd'), 2)\n state.__startMonth = pad(format(state.startDate, 'MM'), 2)\n state.__startYear = format(state.startDate, 'yyyy')\n state.hasHadValidDate = true\n } else if (state.startDate === undefined) {\n state.__startDay = null\n state.__startMonth = null\n state.__startYear = null\n }\n\n if (isValid(state.endDate)) {\n state.__endDay = pad(format(state.endDate, 'dd'), 2)\n state.__endMonth = pad(format(state.endDate, 'MM'), 2)\n state.__endYear = format(state.endDate, 'yyyy')\n state.hasHadValidDate = true\n } else if (state.endDate === undefined) {\n state.__endDay = null\n state.__endMonth = null\n state.__endYear = null\n }\n\n if (\n !state.startMonth ||\n state._date !== props.date ||\n (state.changeMonthViews &&\n !isSameMonth(state.startMonth, state.startDate))\n ) {\n state.startMonth = state.startDate\n }\n\n if (\n !state.endMonth ||\n state._date !== props.date ||\n (isRange &&\n state.changeMonthViews &&\n !isSameMonth(state.endMonth, state.endDate))\n ) {\n state.endMonth = state.endDate || state.startMonth\n }\n\n state.views = getViews(state, isRange)\n\n // Update the months, in case they do not exist\n if (!state.startMonth) {\n state.startMonth = state.views[0].month\n if (\n isRange &&\n !state.endMonth &&\n typeof state.views[1] !== 'undefined'\n ) {\n state.endMonth = state.views[1].month\n }\n }\n\n state.changeMonthViews = false\n state._listenForPropChanges = true\n state._date = props.date\n state._startDate = props.start_date || props.date\n state._endDate = props.end_date\n state._startMonth = props.start_month\n state._endMonth = props.end_month\n state._month = props.month\n state._minDate = props.min_date\n state._maxDate = props.max_date\n\n return state\n }\n\n constructor(props) {\n super(props)\n\n if (typeof props.setReturnObject === 'function') {\n props.setReturnObject(this.getReturnObject)\n }\n }\n\n setViews = (views, cb = null) => {\n this.setState({ views, _listenForPropChanges: false }, cb)\n }\n\n updateState = (state, cb = null) => {\n this.setState({ ...state, _listenForPropChanges: false }, cb)\n }\n\n callOnChangeHandler = (args) => {\n /**\n * Prevent on_change to be fired twice if date not has actually changed\n * We clear the cache inside getDerivedStateFromProps\n */\n if (\n this.state.lastEventCallCache &&\n this.state.lastEventCallCache.startDate === this.state.startDate &&\n this.state.lastEventCallCache.endDate === this.state.endDate\n ) {\n return // stop here\n }\n\n dispatchCustomElementEvent(\n this,\n 'on_change',\n this.getReturnObject(args)\n )\n\n const lastEventCallCache = {\n startDate: this.state.startDate,\n endDate: this.state.endDate,\n }\n this.setState({ lastEventCallCache })\n }\n\n getReturnObject = ({ event = null, ...rest } = {}) => {\n const { startDate, endDate } = { ...this.state, ...rest }\n const attributes = this.props.attributes || {}\n const returnFormat = correctV1Format(this.props.return_format)\n const startDateIsValid = Boolean(startDate && isValid(startDate))\n const endDateIsValid = Boolean(endDate && isValid(endDate))\n\n let ret = null\n\n if (isTrue(this.props.range)) {\n ret = {\n event,\n attributes,\n days_between:\n startDateIsValid && endDateIsValid\n ? differenceInCalendarDays(endDate, startDate)\n : null,\n start_date: startDateIsValid\n ? format(startDate, returnFormat)\n : null,\n end_date: endDateIsValid ? format(endDate, returnFormat) : null,\n is_valid_start_date: startDateIsValid,\n is_valid_end_date: endDateIsValid,\n }\n } else {\n ret = {\n event,\n attributes,\n date: startDateIsValid ? format(startDate, returnFormat) : null,\n is_valid: startDateIsValid,\n }\n }\n\n if (this.props.min_date || this.props.max_date) {\n if (isTrue(this.props.range)) {\n if (\n startDateIsValid &&\n isDisabled(startDate, this.state.minDate, this.state.maxDate)\n ) {\n ret.is_valid_start_date = false\n }\n if (\n endDateIsValid &&\n isDisabled(endDate, this.state.minDate, this.state.maxDate)\n ) {\n ret.is_valid_end_date = false\n }\n } else {\n if (\n startDateIsValid &&\n isDisabled(startDate, this.state.minDate, this.state.maxDate)\n ) {\n ret.is_valid = false\n }\n }\n }\n\n return ret\n }\n\n render() {\n const { children } = this.props\n\n return (\n <DatePickerContext.Provider\n value={{\n translation: this.context.translation,\n setViews: this.setViews,\n updateState: this.updateState,\n getReturnObject: this.getReturnObject,\n callOnChangeHandler: this.callOnChangeHandler,\n props: this.props,\n ...this.props.enhanceWithMethods,\n ...this.state,\n }}\n >\n {children}\n </DatePickerContext.Provider>\n )\n }\n}\n\nexport const pad = (num, size) => ('000000000' + num).substr(-size)\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerProvider.js","names":["React","PropTypes","isSameMonth","isValid","format","differenceInCalendarDays","Context","isTrue","dispatchCustomElementEvent","convertStringToDate","correctV1Format","isDisabled","DatePickerContext","getViews","DatePickerProvider","PureComponent","getDerivedStateFromProps","props","state","isRange","range","_listenForPropChanges","startDate","undefined","date_format","date","_date","start_date","_startDate","endDate","end_date","_endDate","start_month","_startMonth","startMonth","end_month","_endMonth","endMonth","min_date","_minDate","minDate","max_date","_maxDate","maxDate","correct_invalid_date","lastEventCallCache","__startDay","pad","__startMonth","__startYear","hasHadValidDate","__endDay","__endMonth","__endYear","changeMonthViews","views","month","_month","constructor","_this","this","_defineProperty","cb","arguments","length","setState","_objectSpread","args","getReturnObject","_ref","event","rest","_objectWithoutProperties","_excluded","partialStartDate","partialEndDate","attributes","returnFormat","return_format","startDateIsValid","Boolean","endDateIsValid","ret","days_between","is_valid_start_date","is_valid_end_date","is_valid","setReturnObject","render","children","createElement","Provider","value","translation","context","setViews","updateState","callOnChangeHandler","enhanceWithMethods","process","env","NODE_ENV","propTypes","oneOfType","instanceOf","Date","string","bool","isRequired","func","object","node","num","size","substr"],"sources":["../../../../src/components/date-picker/DatePickerProvider.js"],"sourcesContent":["/**\n * Web DatePicker Provider\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\n\nimport isSameMonth from 'date-fns/isSameMonth'\nimport isValid from 'date-fns/isValid'\nimport format from 'date-fns/format'\nimport differenceInCalendarDays from 'date-fns/differenceInCalendarDays'\n\nimport Context from '../../shared/Context'\nimport {\n isTrue,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport {\n convertStringToDate,\n correctV1Format,\n isDisabled,\n} from './DatePickerCalc'\nimport DatePickerContext from './DatePickerContext'\nimport { getViews } from './DatePickerRange'\n\nexport default class DatePickerProvider extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n min_date: PropTypes.oneOfType([\n PropTypes.instanceOf(Date),\n PropTypes.string,\n ]),\n max_date: PropTypes.oneOfType([\n PropTypes.instanceOf(Date),\n PropTypes.string,\n ]),\n return_format: PropTypes.string,\n\n range: PropTypes.oneOfType([PropTypes.bool, PropTypes.string])\n .isRequired,\n setReturnObject: PropTypes.func.isRequired,\n enhanceWithMethods: PropTypes.object,\n\n attributes: PropTypes.object,\n children: PropTypes.node.isRequired,\n }\n\n static defaultProps = {\n min_date: null,\n max_date: null,\n return_format: 'yyyy-MM-dd', // used in date-fns v1: YYYY-MM-DD\n attributes: null,\n enhanceWithMethods: null,\n }\n\n state = { _listenForPropChanges: true, changeMonthViews: false }\n\n static getDerivedStateFromProps(props, state) {\n const isRange = isTrue(props.range)\n\n if (state._listenForPropChanges) {\n let startDate = undefined\n const date_format = props.date_format\n\n // Handle startDate/endDate\n if (\n typeof props.date !== 'undefined' &&\n props.date !== state._date\n ) {\n startDate = props.date\n }\n if (\n typeof props.start_date !== 'undefined' &&\n props.start_date !== state._startDate\n ) {\n startDate = props.start_date\n }\n if (\n typeof startDate !== 'undefined' &&\n startDate !== state.startDate\n ) {\n state.startDate =\n convertStringToDate(startDate, {\n date_format,\n }) || undefined\n\n if (!isTrue(props.range)) {\n state.endDate = state.startDate\n }\n }\n if (\n typeof props.end_date !== 'undefined' &&\n isTrue(props.range) &&\n props.end_date !== state._endDate\n ) {\n state.endDate =\n convertStringToDate(props.end_date, {\n date_format,\n }) || undefined\n }\n\n // Handle startMonth/endMonth\n if (\n typeof props.start_month !== 'undefined' &&\n props.start_month !== state._startMonth\n ) {\n state.startMonth = convertStringToDate(props.start_month, {\n date_format,\n })\n }\n if (\n typeof props.end_month !== 'undefined' &&\n props.end_month !== state._endMonth\n ) {\n state.endMonth = convertStringToDate(props.end_month, {\n date_format,\n })\n }\n\n // Handle minDate/maxDate\n if (\n typeof props.min_date !== 'undefined' &&\n props.min_date !== state._minDate\n ) {\n state.minDate = convertStringToDate(props.min_date, {\n date_format,\n })\n }\n if (\n typeof props.max_date !== 'undefined' &&\n props.max_date !== state._maxDate\n ) {\n state.maxDate = convertStringToDate(props.max_date, {\n date_format,\n })\n }\n }\n\n /**\n * Because now we do not any more relay on auto \"correction\",\n * but rather return \"is_valid_start_date=false\"\n */\n if (isTrue(props.correct_invalid_date)) {\n if (isDisabled(state.startDate, state.minDate, state.maxDate)) {\n state.startDate = state.minDate\n }\n if (isDisabled(state.endDate, state.minDate, state.maxDate)) {\n // state.endDate is only used by the input if range is set to true.\n // this is done to make max_date correction work if the input is not a range and only max_date is defined.\n if (!props.range && !props.min_date) {\n state.startDate = state.maxDate\n } else {\n state.endDate = state.maxDate\n }\n }\n }\n\n if (\n state.lastEventCallCache &&\n (state.lastEventCallCache.startDate !== state.startDate ||\n state.lastEventCallCache.endDate !== state.endDate)\n ) {\n state.lastEventCallCache = {}\n }\n\n if (isValid(state.startDate)) {\n state.__startDay = pad(format(state.startDate, 'dd'), 2)\n state.__startMonth = pad(format(state.startDate, 'MM'), 2)\n state.__startYear = format(state.startDate, 'yyyy')\n state.hasHadValidDate = true\n } else if (state.startDate === undefined) {\n state.__startDay = null\n state.__startMonth = null\n state.__startYear = null\n }\n\n if (isValid(state.endDate)) {\n state.__endDay = pad(format(state.endDate, 'dd'), 2)\n state.__endMonth = pad(format(state.endDate, 'MM'), 2)\n state.__endYear = format(state.endDate, 'yyyy')\n state.hasHadValidDate = true\n } else if (state.endDate === undefined) {\n state.__endDay = null\n state.__endMonth = null\n state.__endYear = null\n }\n\n if (\n !state.startMonth ||\n state._date !== props.date ||\n (state.changeMonthViews &&\n !isSameMonth(state.startMonth, state.startDate))\n ) {\n state.startMonth = state.startDate\n }\n\n if (\n !state.endMonth ||\n state._date !== props.date ||\n (isRange &&\n state.changeMonthViews &&\n !isSameMonth(state.endMonth, state.endDate))\n ) {\n state.endMonth = state.endDate || state.startMonth\n }\n\n state.views = getViews(state, isRange)\n\n // Update the months, in case they do not exist\n if (!state.startMonth) {\n state.startMonth = state.views[0].month\n if (\n isRange &&\n !state.endMonth &&\n typeof state.views[1] !== 'undefined'\n ) {\n state.endMonth = state.views[1].month\n }\n }\n\n state.changeMonthViews = false\n state._listenForPropChanges = true\n state._date = props.date\n state._startDate = props.start_date || props.date\n state._endDate = props.end_date\n state._startMonth = props.start_month\n state._endMonth = props.end_month\n state._month = props.month\n state._minDate = props.min_date\n state._maxDate = props.max_date\n\n return state\n }\n\n constructor(props) {\n super(props)\n\n if (typeof props.setReturnObject === 'function') {\n props.setReturnObject(this.getReturnObject)\n }\n }\n\n setViews = (views, cb = null) => {\n this.setState({ views, _listenForPropChanges: false }, cb)\n }\n\n updateState = (state, cb = null) => {\n this.setState({ ...state, _listenForPropChanges: false }, cb)\n }\n\n callOnChangeHandler = (args) => {\n /**\n * Prevent on_change to be fired twice if date not has actually changed\n * We clear the cache inside getDerivedStateFromProps\n */\n if (\n this.state.lastEventCallCache &&\n this.state.lastEventCallCache.startDate === this.state.startDate &&\n this.state.lastEventCallCache.endDate === this.state.endDate\n ) {\n return // stop here\n }\n\n dispatchCustomElementEvent(\n this,\n 'on_change',\n this.getReturnObject(args)\n )\n\n const lastEventCallCache = {\n startDate: this.state.startDate,\n endDate: this.state.endDate,\n }\n this.setState({ lastEventCallCache })\n }\n\n getReturnObject = ({ event = null, ...rest } = {}) => {\n const { startDate, endDate, partialStartDate, partialEndDate } = {\n ...this.state,\n ...rest,\n }\n const attributes = this.props.attributes || {}\n const returnFormat = correctV1Format(this.props.return_format)\n const startDateIsValid = Boolean(startDate && isValid(startDate))\n const endDateIsValid = Boolean(endDate && isValid(endDate))\n\n let ret = null\n\n if (isTrue(this.props.range)) {\n ret = {\n event,\n attributes,\n days_between:\n startDateIsValid && endDateIsValid\n ? differenceInCalendarDays(endDate, startDate)\n : null,\n start_date: startDateIsValid\n ? format(startDate, returnFormat)\n : null,\n end_date: endDateIsValid ? format(endDate, returnFormat) : null,\n is_valid_start_date: startDateIsValid,\n is_valid_end_date: endDateIsValid,\n partialStartDate,\n partialEndDate,\n }\n } else {\n ret = {\n event,\n attributes,\n date: startDateIsValid ? format(startDate, returnFormat) : null,\n partialStartDate,\n is_valid: startDateIsValid,\n }\n }\n\n if (this.props.min_date || this.props.max_date) {\n if (isTrue(this.props.range)) {\n if (\n startDateIsValid &&\n isDisabled(startDate, this.state.minDate, this.state.maxDate)\n ) {\n ret.is_valid_start_date = false\n }\n if (\n endDateIsValid &&\n isDisabled(endDate, this.state.minDate, this.state.maxDate)\n ) {\n ret.is_valid_end_date = false\n }\n } else {\n if (\n startDateIsValid &&\n isDisabled(startDate, this.state.minDate, this.state.maxDate)\n ) {\n ret.is_valid = false\n }\n }\n }\n\n return ret\n }\n\n render() {\n const { children } = this.props\n\n return (\n <DatePickerContext.Provider\n value={{\n translation: this.context.translation,\n setViews: this.setViews,\n updateState: this.updateState,\n getReturnObject: this.getReturnObject,\n callOnChangeHandler: this.callOnChangeHandler,\n props: this.props,\n ...this.props.enhanceWithMethods,\n ...this.state,\n }}\n >\n {children}\n </DatePickerContext.Provider>\n )\n }\n}\n\nexport const pad = (num, size) => ('000000000' + num).substr(-size)\n"],"mappings":";;;;;;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,OAAOC,WAAW,MAAM,sBAAsB;AAC9C,OAAOC,OAAO,MAAM,kBAAkB;AACtC,OAAOC,MAAM,MAAM,iBAAiB;AACpC,OAAOC,wBAAwB,MAAM,mCAAmC;AAExE,OAAOC,OAAO,MAAM,sBAAsB;AAC1C,SACEC,MAAM,EACNC,0BAA0B,QACrB,+BAA+B;AACtC,SACEC,mBAAmB,EACnBC,eAAe,EACfC,UAAU,QACL,kBAAkB;AACzB,OAAOC,iBAAiB,MAAM,qBAAqB;AACnD,SAASC,QAAQ,QAAQ,mBAAmB;AAE5C,eAAe,MAAMC,kBAAkB,SAASd,KAAK,CAACe,aAAa,CAAC;EAiClE,OAAOC,wBAAwBA,CAACC,KAAK,EAAEC,KAAK,EAAE;IAC5C,MAAMC,OAAO,GAAGZ,MAAM,CAACU,KAAK,CAACG,KAAK,CAAC;IAEnC,IAAIF,KAAK,CAACG,qBAAqB,EAAE;MAC/B,IAAIC,SAAS,GAAGC,SAAS;MACzB,MAAMC,WAAW,GAAGP,KAAK,CAACO,WAAW;MAGrC,IACE,OAAOP,KAAK,CAACQ,IAAI,KAAK,WAAW,IACjCR,KAAK,CAACQ,IAAI,KAAKP,KAAK,CAACQ,KAAK,EAC1B;QACAJ,SAAS,GAAGL,KAAK,CAACQ,IAAI;MACxB;MACA,IACE,OAAOR,KAAK,CAACU,UAAU,KAAK,WAAW,IACvCV,KAAK,CAACU,UAAU,KAAKT,KAAK,CAACU,UAAU,EACrC;QACAN,SAAS,GAAGL,KAAK,CAACU,UAAU;MAC9B;MACA,IACE,OAAOL,SAAS,KAAK,WAAW,IAChCA,SAAS,KAAKJ,KAAK,CAACI,SAAS,EAC7B;QACAJ,KAAK,CAACI,SAAS,GACbb,mBAAmB,CAACa,SAAS,EAAE;UAC7BE;QACF,CAAC,CAAC,IAAID,SAAS;QAEjB,IAAI,CAAChB,MAAM,CAACU,KAAK,CAACG,KAAK,CAAC,EAAE;UACxBF,KAAK,CAACW,OAAO,GAAGX,KAAK,CAACI,SAAS;QACjC;MACF;MACA,IACE,OAAOL,KAAK,CAACa,QAAQ,KAAK,WAAW,IACrCvB,MAAM,CAACU,KAAK,CAACG,KAAK,CAAC,IACnBH,KAAK,CAACa,QAAQ,KAAKZ,KAAK,CAACa,QAAQ,EACjC;QACAb,KAAK,CAACW,OAAO,GACXpB,mBAAmB,CAACQ,KAAK,CAACa,QAAQ,EAAE;UAClCN;QACF,CAAC,CAAC,IAAID,SAAS;MACnB;MAGA,IACE,OAAON,KAAK,CAACe,WAAW,KAAK,WAAW,IACxCf,KAAK,CAACe,WAAW,KAAKd,KAAK,CAACe,WAAW,EACvC;QACAf,KAAK,CAACgB,UAAU,GAAGzB,mBAAmB,CAACQ,KAAK,CAACe,WAAW,EAAE;UACxDR;QACF,CAAC,CAAC;MACJ;MACA,IACE,OAAOP,KAAK,CAACkB,SAAS,KAAK,WAAW,IACtClB,KAAK,CAACkB,SAAS,KAAKjB,KAAK,CAACkB,SAAS,EACnC;QACAlB,KAAK,CAACmB,QAAQ,GAAG5B,mBAAmB,CAACQ,KAAK,CAACkB,SAAS,EAAE;UACpDX;QACF,CAAC,CAAC;MACJ;MAGA,IACE,OAAOP,KAAK,CAACqB,QAAQ,KAAK,WAAW,IACrCrB,KAAK,CAACqB,QAAQ,KAAKpB,KAAK,CAACqB,QAAQ,EACjC;QACArB,KAAK,CAACsB,OAAO,GAAG/B,mBAAmB,CAACQ,KAAK,CAACqB,QAAQ,EAAE;UAClDd;QACF,CAAC,CAAC;MACJ;MACA,IACE,OAAOP,KAAK,CAACwB,QAAQ,KAAK,WAAW,IACrCxB,KAAK,CAACwB,QAAQ,KAAKvB,KAAK,CAACwB,QAAQ,EACjC;QACAxB,KAAK,CAACyB,OAAO,GAAGlC,mBAAmB,CAACQ,KAAK,CAACwB,QAAQ,EAAE;UAClDjB;QACF,CAAC,CAAC;MACJ;IACF;IAMA,IAAIjB,MAAM,CAACU,KAAK,CAAC2B,oBAAoB,CAAC,EAAE;MACtC,IAAIjC,UAAU,CAACO,KAAK,CAACI,SAAS,EAAEJ,KAAK,CAACsB,OAAO,EAAEtB,KAAK,CAACyB,OAAO,CAAC,EAAE;QAC7DzB,KAAK,CAACI,SAAS,GAAGJ,KAAK,CAACsB,OAAO;MACjC;MACA,IAAI7B,UAAU,CAACO,KAAK,CAACW,OAAO,EAAEX,KAAK,CAACsB,OAAO,EAAEtB,KAAK,CAACyB,OAAO,CAAC,EAAE;QAG3D,IAAI,CAAC1B,KAAK,CAACG,KAAK,IAAI,CAACH,KAAK,CAACqB,QAAQ,EAAE;UACnCpB,KAAK,CAACI,SAAS,GAAGJ,KAAK,CAACyB,OAAO;QACjC,CAAC,MAAM;UACLzB,KAAK,CAACW,OAAO,GAAGX,KAAK,CAACyB,OAAO;QAC/B;MACF;IACF;IAEA,IACEzB,KAAK,CAAC2B,kBAAkB,KACvB3B,KAAK,CAAC2B,kBAAkB,CAACvB,SAAS,KAAKJ,KAAK,CAACI,SAAS,IACrDJ,KAAK,CAAC2B,kBAAkB,CAAChB,OAAO,KAAKX,KAAK,CAACW,OAAO,CAAC,EACrD;MACAX,KAAK,CAAC2B,kBAAkB,GAAG,CAAC,CAAC;IAC/B;IAEA,IAAI1C,OAAO,CAACe,KAAK,CAACI,SAAS,CAAC,EAAE;MAC5BJ,KAAK,CAAC4B,UAAU,GAAGC,GAAG,CAAC3C,MAAM,CAACc,KAAK,CAACI,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;MACxDJ,KAAK,CAAC8B,YAAY,GAAGD,GAAG,CAAC3C,MAAM,CAACc,KAAK,CAACI,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;MAC1DJ,KAAK,CAAC+B,WAAW,GAAG7C,MAAM,CAACc,KAAK,CAACI,SAAS,EAAE,MAAM,CAAC;MACnDJ,KAAK,CAACgC,eAAe,GAAG,IAAI;IAC9B,CAAC,MAAM,IAAIhC,KAAK,CAACI,SAAS,KAAKC,SAAS,EAAE;MACxCL,KAAK,CAAC4B,UAAU,GAAG,IAAI;MACvB5B,KAAK,CAAC8B,YAAY,GAAG,IAAI;MACzB9B,KAAK,CAAC+B,WAAW,GAAG,IAAI;IAC1B;IAEA,IAAI9C,OAAO,CAACe,KAAK,CAACW,OAAO,CAAC,EAAE;MAC1BX,KAAK,CAACiC,QAAQ,GAAGJ,GAAG,CAAC3C,MAAM,CAACc,KAAK,CAACW,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;MACpDX,KAAK,CAACkC,UAAU,GAAGL,GAAG,CAAC3C,MAAM,CAACc,KAAK,CAACW,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;MACtDX,KAAK,CAACmC,SAAS,GAAGjD,MAAM,CAACc,KAAK,CAACW,OAAO,EAAE,MAAM,CAAC;MAC/CX,KAAK,CAACgC,eAAe,GAAG,IAAI;IAC9B,CAAC,MAAM,IAAIhC,KAAK,CAACW,OAAO,KAAKN,SAAS,EAAE;MACtCL,KAAK,CAACiC,QAAQ,GAAG,IAAI;MACrBjC,KAAK,CAACkC,UAAU,GAAG,IAAI;MACvBlC,KAAK,CAACmC,SAAS,GAAG,IAAI;IACxB;IAEA,IACE,CAACnC,KAAK,CAACgB,UAAU,IACjBhB,KAAK,CAACQ,KAAK,KAAKT,KAAK,CAACQ,IAAI,IACzBP,KAAK,CAACoC,gBAAgB,IACrB,CAACpD,WAAW,CAACgB,KAAK,CAACgB,UAAU,EAAEhB,KAAK,CAACI,SAAS,CAAE,EAClD;MACAJ,KAAK,CAACgB,UAAU,GAAGhB,KAAK,CAACI,SAAS;IACpC;IAEA,IACE,CAACJ,KAAK,CAACmB,QAAQ,IACfnB,KAAK,CAACQ,KAAK,KAAKT,KAAK,CAACQ,IAAI,IACzBN,OAAO,IACND,KAAK,CAACoC,gBAAgB,IACtB,CAACpD,WAAW,CAACgB,KAAK,CAACmB,QAAQ,EAAEnB,KAAK,CAACW,OAAO,CAAE,EAC9C;MACAX,KAAK,CAACmB,QAAQ,GAAGnB,KAAK,CAACW,OAAO,IAAIX,KAAK,CAACgB,UAAU;IACpD;IAEAhB,KAAK,CAACqC,KAAK,GAAG1C,QAAQ,CAACK,KAAK,EAAEC,OAAO,CAAC;IAGtC,IAAI,CAACD,KAAK,CAACgB,UAAU,EAAE;MACrBhB,KAAK,CAACgB,UAAU,GAAGhB,KAAK,CAACqC,KAAK,CAAC,CAAC,CAAC,CAACC,KAAK;MACvC,IACErC,OAAO,IACP,CAACD,KAAK,CAACmB,QAAQ,IACf,OAAOnB,KAAK,CAACqC,KAAK,CAAC,CAAC,CAAC,KAAK,WAAW,EACrC;QACArC,KAAK,CAACmB,QAAQ,GAAGnB,KAAK,CAACqC,KAAK,CAAC,CAAC,CAAC,CAACC,KAAK;MACvC;IACF;IAEAtC,KAAK,CAACoC,gBAAgB,GAAG,KAAK;IAC9BpC,KAAK,CAACG,qBAAqB,GAAG,IAAI;IAClCH,KAAK,CAACQ,KAAK,GAAGT,KAAK,CAACQ,IAAI;IACxBP,KAAK,CAACU,UAAU,GAAGX,KAAK,CAACU,UAAU,IAAIV,KAAK,CAACQ,IAAI;IACjDP,KAAK,CAACa,QAAQ,GAAGd,KAAK,CAACa,QAAQ;IAC/BZ,KAAK,CAACe,WAAW,GAAGhB,KAAK,CAACe,WAAW;IACrCd,KAAK,CAACkB,SAAS,GAAGnB,KAAK,CAACkB,SAAS;IACjCjB,KAAK,CAACuC,MAAM,GAAGxC,KAAK,CAACuC,KAAK;IAC1BtC,KAAK,CAACqB,QAAQ,GAAGtB,KAAK,CAACqB,QAAQ;IAC/BpB,KAAK,CAACwB,QAAQ,GAAGzB,KAAK,CAACwB,QAAQ;IAE/B,OAAOvB,KAAK;EACd;EAEAwC,WAAWA,CAACzC,KAAK,EAAE;IAAA,IAAA0C,KAAA;IACjB,KAAK,CAAC1C,KAAK,CAAC;IAAA0C,KAAA,GAAAC,IAAA;IAAAC,eAAA,gBApLN;MAAExC,qBAAqB,EAAE,IAAI;MAAEiC,gBAAgB,EAAE;IAAM,CAAC;IAAAO,eAAA,mBA2LrD,UAACN,KAAK,EAAgB;MAAA,IAAdO,EAAE,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAxC,SAAA,GAAAwC,SAAA,MAAG,IAAI;MAC1BJ,KAAI,CAACM,QAAQ,CAAC;QAAEV,KAAK;QAAElC,qBAAqB,EAAE;MAAM,CAAC,EAAEyC,EAAE,CAAC;IAC5D,CAAC;IAAAD,eAAA,sBAEa,UAAC3C,KAAK,EAAgB;MAAA,IAAd4C,EAAE,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAxC,SAAA,GAAAwC,SAAA,MAAG,IAAI;MAC7BJ,KAAI,CAACM,QAAQ,CAAAC,aAAA,CAAAA,aAAA,KAAMhD,KAAK;QAAEG,qBAAqB,EAAE;MAAK,IAAIyC,EAAE,CAAC;IAC/D,CAAC;IAAAD,eAAA,8BAEsBM,IAAI,IAAK;MAK9B,IACE,IAAI,CAACjD,KAAK,CAAC2B,kBAAkB,IAC7B,IAAI,CAAC3B,KAAK,CAAC2B,kBAAkB,CAACvB,SAAS,KAAK,IAAI,CAACJ,KAAK,CAACI,SAAS,IAChE,IAAI,CAACJ,KAAK,CAAC2B,kBAAkB,CAAChB,OAAO,KAAK,IAAI,CAACX,KAAK,CAACW,OAAO,EAC5D;QACA;MACF;MAEArB,0BAA0B,CACxB,IAAI,EACJ,WAAW,EACX,IAAI,CAAC4D,eAAe,CAACD,IAAI,CAC3B,CAAC;MAED,MAAMtB,kBAAkB,GAAG;QACzBvB,SAAS,EAAE,IAAI,CAACJ,KAAK,CAACI,SAAS;QAC/BO,OAAO,EAAE,IAAI,CAACX,KAAK,CAACW;MACtB,CAAC;MACD,IAAI,CAACoC,QAAQ,CAAC;QAAEpB;MAAmB,CAAC,CAAC;IACvC,CAAC;IAAAgB,eAAA,0BAEiB,YAAoC;MAAA,IAAAQ,IAAA,GAAAN,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAxC,SAAA,GAAAwC,SAAA,MAAP,CAAC,CAAC;MAAA,IAA9B;UAAEO,KAAK,GAAG;QAAc,CAAC,GAAAD,IAAA;QAANE,IAAI,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;MACxC,MAAM;QAAEnD,SAAS;QAAEO,OAAO;QAAE6C,gBAAgB;QAAEC;MAAe,CAAC,GAAAT,aAAA,CAAAA,aAAA,KACzDP,KAAI,CAACzC,KAAK,GACVqD,IAAI,CACR;MACD,MAAMK,UAAU,GAAGjB,KAAI,CAAC1C,KAAK,CAAC2D,UAAU,IAAI,CAAC,CAAC;MAC9C,MAAMC,YAAY,GAAGnE,eAAe,CAACiD,KAAI,CAAC1C,KAAK,CAAC6D,aAAa,CAAC;MAC9D,MAAMC,gBAAgB,GAAGC,OAAO,CAAC1D,SAAS,IAAInB,OAAO,CAACmB,SAAS,CAAC,CAAC;MACjE,MAAM2D,cAAc,GAAGD,OAAO,CAACnD,OAAO,IAAI1B,OAAO,CAAC0B,OAAO,CAAC,CAAC;MAE3D,IAAIqD,GAAG,GAAG,IAAI;MAEd,IAAI3E,MAAM,CAACoD,KAAI,CAAC1C,KAAK,CAACG,KAAK,CAAC,EAAE;QAC5B8D,GAAG,GAAG;UACJZ,KAAK;UACLM,UAAU;UACVO,YAAY,EACVJ,gBAAgB,IAAIE,cAAc,GAC9B5E,wBAAwB,CAACwB,OAAO,EAAEP,SAAS,CAAC,GAC5C,IAAI;UACVK,UAAU,EAAEoD,gBAAgB,GACxB3E,MAAM,CAACkB,SAAS,EAAEuD,YAAY,CAAC,GAC/B,IAAI;UACR/C,QAAQ,EAAEmD,cAAc,GAAG7E,MAAM,CAACyB,OAAO,EAAEgD,YAAY,CAAC,GAAG,IAAI;UAC/DO,mBAAmB,EAAEL,gBAAgB;UACrCM,iBAAiB,EAAEJ,cAAc;UACjCP,gBAAgB;UAChBC;QACF,CAAC;MACH,CAAC,MAAM;QACLO,GAAG,GAAG;UACJZ,KAAK;UACLM,UAAU;UACVnD,IAAI,EAAEsD,gBAAgB,GAAG3E,MAAM,CAACkB,SAAS,EAAEuD,YAAY,CAAC,GAAG,IAAI;UAC/DH,gBAAgB;UAChBY,QAAQ,EAAEP;QACZ,CAAC;MACH;MAEA,IAAIpB,KAAI,CAAC1C,KAAK,CAACqB,QAAQ,IAAIqB,KAAI,CAAC1C,KAAK,CAACwB,QAAQ,EAAE;QAC9C,IAAIlC,MAAM,CAACoD,KAAI,CAAC1C,KAAK,CAACG,KAAK,CAAC,EAAE;UAC5B,IACE2D,gBAAgB,IAChBpE,UAAU,CAACW,SAAS,EAAEqC,KAAI,CAACzC,KAAK,CAACsB,OAAO,EAAEmB,KAAI,CAACzC,KAAK,CAACyB,OAAO,CAAC,EAC7D;YACAuC,GAAG,CAACE,mBAAmB,GAAG,KAAK;UACjC;UACA,IACEH,cAAc,IACdtE,UAAU,CAACkB,OAAO,EAAE8B,KAAI,CAACzC,KAAK,CAACsB,OAAO,EAAEmB,KAAI,CAACzC,KAAK,CAACyB,OAAO,CAAC,EAC3D;YACAuC,GAAG,CAACG,iBAAiB,GAAG,KAAK;UAC/B;QACF,CAAC,MAAM;UACL,IACEN,gBAAgB,IAChBpE,UAAU,CAACW,SAAS,EAAEqC,KAAI,CAACzC,KAAK,CAACsB,OAAO,EAAEmB,KAAI,CAACzC,KAAK,CAACyB,OAAO,CAAC,EAC7D;YACAuC,GAAG,CAACI,QAAQ,GAAG,KAAK;UACtB;QACF;MACF;MAEA,OAAOJ,GAAG;IACZ,CAAC;IAvGC,IAAI,OAAOjE,KAAK,CAACsE,eAAe,KAAK,UAAU,EAAE;MAC/CtE,KAAK,CAACsE,eAAe,CAAC,IAAI,CAACnB,eAAe,CAAC;IAC7C;EACF;EAsGAoB,MAAMA,CAAA,EAAG;IACP,MAAM;MAAEC;IAAS,CAAC,GAAG,IAAI,CAACxE,KAAK;IAE/B,OACEjB,KAAA,CAAA0F,aAAA,CAAC9E,iBAAiB,CAAC+E,QAAQ;MACzBC,KAAK,EAAA1B,aAAA,CAAAA,aAAA;QACH2B,WAAW,EAAE,IAAI,CAACC,OAAO,CAACD,WAAW;QACrCE,QAAQ,EAAE,IAAI,CAACA,QAAQ;QACvBC,WAAW,EAAE,IAAI,CAACA,WAAW;QAC7B5B,eAAe,EAAE,IAAI,CAACA,eAAe;QACrC6B,mBAAmB,EAAE,IAAI,CAACA,mBAAmB;QAC7ChF,KAAK,EAAE,IAAI,CAACA;MAAK,GACd,IAAI,CAACA,KAAK,CAACiF,kBAAkB,GAC7B,IAAI,CAAChF,KAAK;IACb,GAEDuE,QACyB,CAAC;EAEjC;AACF;AAAC5B,eAAA,CAlVoB/C,kBAAkB,iBAChBR,OAAO;AAAAuD,eAAA,CADT/C,kBAAkB,kBAuBf;EACpBwB,QAAQ,EAAE,IAAI;EACdG,QAAQ,EAAE,IAAI;EACdqC,aAAa,EAAE,YAAY;EAC3BF,UAAU,EAAE,IAAI;EAChBsB,kBAAkB,EAAE;AACtB,CAAC;AAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBA7BkBvF,kBAAkB,CAG9BwF,SAAS,GAAG;EACjBhE,QAAQ,EAAErC,SAAS,CAACsG,SAAS,CAAC,CAC5BtG,SAAS,CAACuG,UAAU,CAACC,IAAI,CAAC,EAC1BxG,SAAS,CAACyG,MAAM,CACjB,CAAC;EACFjE,QAAQ,EAAExC,SAAS,CAACsG,SAAS,CAAC,CAC5BtG,SAAS,CAACuG,UAAU,CAACC,IAAI,CAAC,EAC1BxG,SAAS,CAACyG,MAAM,CACjB,CAAC;EACF5B,aAAa,EAAE7E,SAAS,CAACyG,MAAM;EAE/BtF,KAAK,EAAEnB,SAAS,CAACsG,SAAS,CAAC,CAACtG,SAAS,CAAC0G,IAAI,EAAE1G,SAAS,CAACyG,MAAM,CAAC,CAAC,CAC3DE,UAAU;EACbrB,eAAe,EAAEtF,SAAS,CAAC4G,IAAI,CAACD,UAAU;EAC1CV,kBAAkB,EAAEjG,SAAS,CAAC6G,MAAM;EAEpClC,UAAU,EAAE3E,SAAS,CAAC6G,MAAM;EAC5BrB,QAAQ,EAAExF,SAAS,CAAC8G,IAAI,CAACH;AAC3B,CAAC;AA+TH,OAAO,MAAM7D,GAAG,GAAGA,CAACiE,GAAG,EAAEC,IAAI,KAAK,CAAC,WAAW,GAAGD,GAAG,EAAEE,MAAM,CAAC,CAACD,IAAI,CAAC"}
@@ -174,6 +174,9 @@ html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown
174
174
  .dnb-dropdown--icon-position-left .dnb-button--tertiary .dnb-dropdown__text, .dnb-dropdown--icon-position-right .dnb-button--tertiary .dnb-dropdown__text {
175
175
  padding: 0;
176
176
  }
177
+ .dnb-dropdown .dnb-button--tertiary {
178
+ padding: 0;
179
+ }
177
180
  .dnb-dropdown .dnb-button--tertiary:focus::before {
178
181
  left: 0 !important;
179
182
  right: 0 !important;
@@ -1 +1 @@
1
- .dnb-dropdown{--dropdown-width:16rem;--dropdown-height:2rem;--dropdown-height--small:1.5rem;--dropdown-height--medium:2.5rem;--dropdown-height--large:3rem;--dropdown-padding-horizontal:1rem;--dropdown-focus-border-width:0.125rem;--dropdown-error-border-width:0.125rem;--dropdown-text-padding:0.5rem;--dropdown-button-padding:0 1rem;--dropdown-border-radius:0.25rem;--dropdown-foreground-color-primary:var(--color-black-55);--dropdown-foreground-color-error:var(--color-fire-red);--dropdown-background-color-disabled:var(--color-black-3);--dropdown-background-color-error-active:var(--color-fire-red-8);align-items:center;display:inline-flex;font-size:var(--font-size-small);line-height:var(--dropdown-height)}.dnb-dropdown__inner{color:inherit;display:inline-flex;flex-direction:column;margin:0;padding:0;width:auto}.dnb-dropdown__shell{color:inherit;height:var(--dropdown-height);margin:0;padding:0;position:relative;width:var(--dropdown-width)}.dnb-dropdown__row{display:inline-flex}.dnb-dropdown--large .dnb-drawer-list__triangle{margin-left:calc(var(--dropdown-padding-horizontal) - .25rem)}.dnb-dropdown--icon-position-left.dnb-dropdown--large .dnb-drawer-list__triangle{margin-left:calc(var(--dropdown-padding-horizontal) + .25rem)}.dnb-dropdown__icon{display:inline-flex;justify-content:center;order:2;pointer-events:none;position:relative}.dnb-dropdown__trigger{position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:1}.dnb-dropdown__trigger.dnb-button{border-radius:var(--dropdown-border-radius);padding:var(--dropdown-button-padding)}.dnb-dropdown--is-popup .dnb-dropdown__trigger.dnb-button{border-radius:50%;padding:0}.dnb-dropdown__text{color:inherit;display:inline-block;font-size:var(--font-size-basis);line-height:inherit;order:1;overflow:hidden;position:relative;text-align:left;text-overflow:ellipsis;width:100%;z-index:4}.dnb-dropdown__text__inner{display:inherit;overflow:hidden;text-overflow:inherit;white-space:nowrap}.dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger{--border-color:var(--dropdown-foreground-color-error);--border-width:0.0625rem;border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:hover[disabled]{cursor:not-allowed}html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:hover:not([disabled]){--border-color:var(--dropdown-foreground-color-error);--border-width:var(--dropdown-error-border-width);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color);color:var(--dropdown-foreground-color-error)}html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:hover:not([disabled]) .dnb-dropdown__icon .dnb-icon{color:var(--dropdown-foreground-color-error)}.dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:active[disabled],html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:active[disabled]{cursor:not-allowed}.dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:active:not([disabled]){background-color:var(--dropdown-background-color-error-active);color:var(--dropdown-foreground-color-error)}.dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__icon,.dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger{color:var(--dropdown-foreground-color-error)}.dnb-dropdown>.dnb-form-status{transform:translateY(-.4375rem)}.dnb-dropdown--icon-position-left .dnb-dropdown__text{order:2;padding-left:var(--dropdown-text-padding);padding-right:0}.dnb-dropdown--icon-position-left .dnb-dropdown__icon{order:1}.dnb-dropdown--icon-position-right .dnb-dropdown__text{padding-right:var(--dropdown-text-padding)}.dnb-dropdown--independent-width .dnb-dropdown__shell{width:auto}@media screen and (max-width:40em){.dnb-dropdown--action-menu .dnb-dropdown__trigger.dnb-button{border-radius:50%;padding-left:.5rem;padding-right:.5rem}}@media screen and (min-width:40em){.dnb-dropdown--action-menu .dnb-dropdown__shell .dnb-dropdown__text{padding:0 .5rem}}@media screen and (max-width:40em){.dnb-dropdown--action-menu .dnb-dropdown__shell .dnb-dropdown__text{padding:0;width:0}}.dnb-dropdown--icon-position-left .dnb-button--tertiary~.dnb-drawer-list__root--portal{left:-.5rem}.dnb-dropdown--icon-position-right .dnb-button--tertiary~.dnb-drawer-list__root--portal{left:.5rem}.dnb-dropdown .dnb-button--tertiary.dnb-button--active{box-shadow:none}.dnb-dropdown .dnb-button--tertiary .dnb-button__text{margin:0 .5rem}.dnb-dropdown .dnb-button--tertiary .dnb-button__text:after{bottom:0}.dnb-dropdown--icon-position-left .dnb-button--tertiary .dnb-dropdown__text,.dnb-dropdown--icon-position-right .dnb-button--tertiary .dnb-dropdown__text{padding:0}.dnb-dropdown .dnb-button--tertiary:focus:before{left:0!important;right:0!important}.dnb-dropdown--default.dnb-dropdown--is-popup .dnb-dropdown__shell,.dnb-dropdown--is-popup .dnb-dropdown__trigger{height:var(--dropdown-height);padding:0;width:var(--dropdown-height)}.dnb-dropdown--is-popup .dnb-dropdown__icon{width:100%}.dnb-dropdown--is-popup.dnb-dropdown--scroll .dnb-dropdown__options{min-height:1rem}.dnb-dropdown--is-popup .dnb-drawer-list__root{width:var(--dropdown-width)}.dnb-dropdown--small.dnb-dropdown--is-popup .dnb-dropdown__shell,.dnb-dropdown--small.dnb-dropdown--is-popup .dnb-dropdown__trigger{width:var(--dropdown-height--small)}.dnb-dropdown--medium.dnb-dropdown--is-popup .dnb-dropdown__shell,.dnb-dropdown--medium.dnb-dropdown--is-popup .dnb-dropdown__trigger{width:var(--dropdown-height--medium)}.dnb-dropdown--large.dnb-dropdown--is-popup .dnb-dropdown__shell,.dnb-dropdown--large.dnb-dropdown--is-popup .dnb-dropdown__trigger{width:var(--dropdown-height--large)}.dnb-dropdown--small .dnb-dropdown__shell,.dnb-dropdown--small .dnb-dropdown__trigger{height:var(--dropdown-height--small)}.dnb-dropdown--small,.dnb-dropdown--small .dnb-dropdown__trigger.dnb-button{line-height:var(--dropdown-height--small)}.dnb-dropdown--medium .dnb-dropdown__shell,.dnb-dropdown--medium .dnb-dropdown__trigger{height:var(--dropdown-height--medium)}.dnb-dropdown--medium,.dnb-dropdown--medium .dnb-dropdown__trigger.dnb-button{line-height:var(--dropdown-height--medium)}.dnb-dropdown--large .dnb-dropdown__shell,.dnb-dropdown--large .dnb-dropdown__trigger{height:var(--dropdown-height--large)}.dnb-dropdown--large,.dnb-dropdown--large .dnb-dropdown__trigger.dnb-button{line-height:var(--dropdown-height--large)}.dnb-dropdown--large .dnb-dropdown__trigger.dnb-button .dnb-dropdown__text,.dnb-dropdown>.dnb-form-label{line-height:var(--line-height-basis)}.dnb-dropdown>.dnb-form-label{margin-right:1rem}@media screen and (max-width:40em){.dnb-dropdown{flex-wrap:wrap}.dnb-dropdown>.dnb-form-label{margin-bottom:.5rem;margin-top:.5rem}}.dnb-dropdown--stretch{display:flex;flex-grow:1}.dnb-dropdown--stretch .dnb-dropdown__inner{flex-grow:1}.dnb-dropdown--stretch .dnb-dropdown__inner,.dnb-dropdown--stretch .dnb-dropdown__row,.dnb-dropdown--stretch .dnb-dropdown__shell{width:100%}.dnb-dropdown--stretch .dnb-form-label+.dnb-dropdown__inner{width:auto}.dnb-dropdown--vertical.dnb-dropdown--stretch .dnb-dropdown__inner,.dnb-form-row--horizontal .dnb-dropdown--stretch{width:100%}label+.dnb-dropdown[class*=__form-status]{vertical-align:top}label+.dnb-dropdown[class*=__form-status] .dnb-dropdown__shell{top:-.375rem}.dnb-dropdown__inner>.dnb-form-status{margin-top:.5rem;order:2}.dnb-dropdown--vertical{align-items:flex-start;display:flex;flex-direction:column}.dnb-dropdown:not(.dnb-dropdown--vertical)[class*=__status]{align-items:flex-start}.dnb-dropdown:not(.dnb-dropdown--vertical)[class*=__status]>.dnb-form-label{margin-top:.25rem}@media screen and (max-width:40em){.dnb-responsive-component .dnb-dropdown{align-items:flex-start;display:flex;flex-direction:column;margin-bottom:.5rem}.dnb-responsive-component .dnb-dropdown>.dnb-form-label{margin-bottom:.5rem}.dnb-responsive-component .dnb-dropdown__helper{display:none}}
1
+ .dnb-dropdown{--dropdown-width:16rem;--dropdown-height:2rem;--dropdown-height--small:1.5rem;--dropdown-height--medium:2.5rem;--dropdown-height--large:3rem;--dropdown-padding-horizontal:1rem;--dropdown-focus-border-width:0.125rem;--dropdown-error-border-width:0.125rem;--dropdown-text-padding:0.5rem;--dropdown-button-padding:0 1rem;--dropdown-border-radius:0.25rem;--dropdown-foreground-color-primary:var(--color-black-55);--dropdown-foreground-color-error:var(--color-fire-red);--dropdown-background-color-disabled:var(--color-black-3);--dropdown-background-color-error-active:var(--color-fire-red-8);align-items:center;display:inline-flex;font-size:var(--font-size-small);line-height:var(--dropdown-height)}.dnb-dropdown__inner{color:inherit;display:inline-flex;flex-direction:column;margin:0;padding:0;width:auto}.dnb-dropdown__shell{color:inherit;height:var(--dropdown-height);margin:0;padding:0;position:relative;width:var(--dropdown-width)}.dnb-dropdown__row{display:inline-flex}.dnb-dropdown--large .dnb-drawer-list__triangle{margin-left:calc(var(--dropdown-padding-horizontal) - .25rem)}.dnb-dropdown--icon-position-left.dnb-dropdown--large .dnb-drawer-list__triangle{margin-left:calc(var(--dropdown-padding-horizontal) + .25rem)}.dnb-dropdown__icon{display:inline-flex;justify-content:center;order:2;pointer-events:none;position:relative}.dnb-dropdown__trigger{position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:1}.dnb-dropdown__trigger.dnb-button{border-radius:var(--dropdown-border-radius);padding:var(--dropdown-button-padding)}.dnb-dropdown--is-popup .dnb-dropdown__trigger.dnb-button{border-radius:50%;padding:0}.dnb-dropdown__text{color:inherit;display:inline-block;font-size:var(--font-size-basis);line-height:inherit;order:1;overflow:hidden;position:relative;text-align:left;text-overflow:ellipsis;width:100%;z-index:4}.dnb-dropdown__text__inner{display:inherit;overflow:hidden;text-overflow:inherit;white-space:nowrap}.dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger{--border-color:var(--dropdown-foreground-color-error);--border-width:0.0625rem;border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:hover[disabled]{cursor:not-allowed}html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:hover:not([disabled]){--border-color:var(--dropdown-foreground-color-error);--border-width:var(--dropdown-error-border-width);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color);color:var(--dropdown-foreground-color-error)}html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:hover:not([disabled]) .dnb-dropdown__icon .dnb-icon{color:var(--dropdown-foreground-color-error)}.dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:active[disabled],html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:active[disabled]{cursor:not-allowed}.dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger:active:not([disabled]){background-color:var(--dropdown-background-color-error-active);color:var(--dropdown-foreground-color-error)}.dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__icon,.dnb-dropdown__status--error:not(.dnb-dropdown--opened) .dnb-dropdown__trigger{color:var(--dropdown-foreground-color-error)}.dnb-dropdown>.dnb-form-status{transform:translateY(-.4375rem)}.dnb-dropdown--icon-position-left .dnb-dropdown__text{order:2;padding-left:var(--dropdown-text-padding);padding-right:0}.dnb-dropdown--icon-position-left .dnb-dropdown__icon{order:1}.dnb-dropdown--icon-position-right .dnb-dropdown__text{padding-right:var(--dropdown-text-padding)}.dnb-dropdown--independent-width .dnb-dropdown__shell{width:auto}@media screen and (max-width:40em){.dnb-dropdown--action-menu .dnb-dropdown__trigger.dnb-button{border-radius:50%;padding-left:.5rem;padding-right:.5rem}}@media screen and (min-width:40em){.dnb-dropdown--action-menu .dnb-dropdown__shell .dnb-dropdown__text{padding:0 .5rem}}@media screen and (max-width:40em){.dnb-dropdown--action-menu .dnb-dropdown__shell .dnb-dropdown__text{padding:0;width:0}}.dnb-dropdown--icon-position-left .dnb-button--tertiary~.dnb-drawer-list__root--portal{left:-.5rem}.dnb-dropdown--icon-position-right .dnb-button--tertiary~.dnb-drawer-list__root--portal{left:.5rem}.dnb-dropdown .dnb-button--tertiary.dnb-button--active{box-shadow:none}.dnb-dropdown .dnb-button--tertiary .dnb-button__text{margin:0 .5rem}.dnb-dropdown .dnb-button--tertiary .dnb-button__text:after{bottom:0}.dnb-dropdown .dnb-button--tertiary,.dnb-dropdown--icon-position-left .dnb-button--tertiary .dnb-dropdown__text,.dnb-dropdown--icon-position-right .dnb-button--tertiary .dnb-dropdown__text{padding:0}.dnb-dropdown .dnb-button--tertiary:focus:before{left:0!important;right:0!important}.dnb-dropdown--default.dnb-dropdown--is-popup .dnb-dropdown__shell,.dnb-dropdown--is-popup .dnb-dropdown__trigger{height:var(--dropdown-height);padding:0;width:var(--dropdown-height)}.dnb-dropdown--is-popup .dnb-dropdown__icon{width:100%}.dnb-dropdown--is-popup.dnb-dropdown--scroll .dnb-dropdown__options{min-height:1rem}.dnb-dropdown--is-popup .dnb-drawer-list__root{width:var(--dropdown-width)}.dnb-dropdown--small.dnb-dropdown--is-popup .dnb-dropdown__shell,.dnb-dropdown--small.dnb-dropdown--is-popup .dnb-dropdown__trigger{width:var(--dropdown-height--small)}.dnb-dropdown--medium.dnb-dropdown--is-popup .dnb-dropdown__shell,.dnb-dropdown--medium.dnb-dropdown--is-popup .dnb-dropdown__trigger{width:var(--dropdown-height--medium)}.dnb-dropdown--large.dnb-dropdown--is-popup .dnb-dropdown__shell,.dnb-dropdown--large.dnb-dropdown--is-popup .dnb-dropdown__trigger{width:var(--dropdown-height--large)}.dnb-dropdown--small .dnb-dropdown__shell,.dnb-dropdown--small .dnb-dropdown__trigger{height:var(--dropdown-height--small)}.dnb-dropdown--small,.dnb-dropdown--small .dnb-dropdown__trigger.dnb-button{line-height:var(--dropdown-height--small)}.dnb-dropdown--medium .dnb-dropdown__shell,.dnb-dropdown--medium .dnb-dropdown__trigger{height:var(--dropdown-height--medium)}.dnb-dropdown--medium,.dnb-dropdown--medium .dnb-dropdown__trigger.dnb-button{line-height:var(--dropdown-height--medium)}.dnb-dropdown--large .dnb-dropdown__shell,.dnb-dropdown--large .dnb-dropdown__trigger{height:var(--dropdown-height--large)}.dnb-dropdown--large,.dnb-dropdown--large .dnb-dropdown__trigger.dnb-button{line-height:var(--dropdown-height--large)}.dnb-dropdown--large .dnb-dropdown__trigger.dnb-button .dnb-dropdown__text,.dnb-dropdown>.dnb-form-label{line-height:var(--line-height-basis)}.dnb-dropdown>.dnb-form-label{margin-right:1rem}@media screen and (max-width:40em){.dnb-dropdown{flex-wrap:wrap}.dnb-dropdown>.dnb-form-label{margin-bottom:.5rem;margin-top:.5rem}}.dnb-dropdown--stretch{display:flex;flex-grow:1}.dnb-dropdown--stretch .dnb-dropdown__inner{flex-grow:1}.dnb-dropdown--stretch .dnb-dropdown__inner,.dnb-dropdown--stretch .dnb-dropdown__row,.dnb-dropdown--stretch .dnb-dropdown__shell{width:100%}.dnb-dropdown--stretch .dnb-form-label+.dnb-dropdown__inner{width:auto}.dnb-dropdown--vertical.dnb-dropdown--stretch .dnb-dropdown__inner,.dnb-form-row--horizontal .dnb-dropdown--stretch{width:100%}label+.dnb-dropdown[class*=__form-status]{vertical-align:top}label+.dnb-dropdown[class*=__form-status] .dnb-dropdown__shell{top:-.375rem}.dnb-dropdown__inner>.dnb-form-status{margin-top:.5rem;order:2}.dnb-dropdown--vertical{align-items:flex-start;display:flex;flex-direction:column}.dnb-dropdown:not(.dnb-dropdown--vertical)[class*=__status]{align-items:flex-start}.dnb-dropdown:not(.dnb-dropdown--vertical)[class*=__status]>.dnb-form-label{margin-top:.25rem}@media screen and (max-width:40em){.dnb-responsive-component .dnb-dropdown{align-items:flex-start;display:flex;flex-direction:column;margin-bottom:.5rem}.dnb-responsive-component .dnb-dropdown>.dnb-form-label{margin-bottom:.5rem}.dnb-responsive-component .dnb-dropdown__helper{display:none}}
@@ -226,6 +226,10 @@
226
226
  padding: 0;
227
227
  }
228
228
 
229
+ .dnb-button--tertiary {
230
+ padding: 0;
231
+ }
232
+
229
233
  .dnb-button--tertiary:focus::before {
230
234
  left: 0 !important;
231
235
  right: 0 !important;
@@ -34,7 +34,7 @@ export default function FormLabel(localProps) {
34
34
  } = props,
35
35
  attributes = _objectWithoutProperties(props, _excluded);
36
36
  const content = text || children;
37
- const isInteractive = !props.disabled && !srOnly && (typeof props.onClick === 'function' || forId);
37
+ const isInteractive = Boolean(!props.disabled && !srOnly && (typeof props.onClick === 'function' || forId));
38
38
  const params = _objectSpread({
39
39
  className: classnames('dnb-form-label', (isTrue(vertical) || labelDirection === 'vertical') && `dnb-form-label--vertical`, createSkeletonClass('font', skeleton, context), createSpacingClasses(content ? _objectSpread({
40
40
  right: 'small'
@@ -1 +1 @@
1
- {"version":3,"file":"FormLabel.js","names":["React","classnames","extendPropsWithContext","isTrue","validateDOMAttributes","createSpacingClasses","createSkeletonClass","skeletonDOMAttributes","pickFormElementProps","convertSnakeCaseProps","omitSpacingProps","Context","FormLabel","localProps","context","useContext","props","skeleton","FormRow","formElement","forId","text","srOnly","vertical","labelDirection","size","element","Element","innerRef","className","children","attributes","_objectWithoutProperties","_excluded","content","isInteractive","disabled","onClick","params","_objectSpread","right","htmlFor","createElement","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/form-label/FormLabel.tsx"],"sourcesContent":["/**\n * Web FormLabel Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport {\n extendPropsWithContext,\n isTrue,\n validateDOMAttributes,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport {\n createSkeletonClass,\n skeletonDOMAttributes,\n} from '../skeleton/SkeletonHelper'\nimport {\n FormElementProps,\n pickFormElementProps,\n} from '../../shared/helpers/filterValidProps'\nimport { convertSnakeCaseProps } from '../../shared/helpers/withSnakeCaseProps'\nimport { omitSpacingProps } from '../flex/utils'\nimport Context from '../../shared/Context'\nimport type {\n DynamicElement,\n DynamicElementParams,\n SpacingProps,\n} from '../../shared/types'\n\nexport type FormLabelProps = {\n forId?: string\n element?: DynamicElement<HTMLLabelElement>\n text?: React.ReactNode\n size?: 'basis' | 'medium' | 'large'\n id?: string\n skeleton?: boolean\n label?: React.ReactNode\n vertical?: boolean\n srOnly?: boolean\n innerRef?: React.RefObject<HTMLElement>\n\n /** Is not a part of HTMLLabelElement and not documented as of now */\n disabled?: boolean\n\n /**\n * For internal use only\n */\n labelDirection?: FormElementProps['labelDirection']\n\n /** @deprecated use forId instead */\n for_id?: string\n /** @deprecated use srOnly instead */\n sr_only?: boolean\n /** @deprecated use \"vertical\" (or \"labelDirection\" for internal use) instead (was not documented before) */\n label_direction?: FormElementProps['label_direction']\n}\n\nexport type FormLabelAllProps = FormLabelProps &\n React.HTMLAttributes<HTMLLabelElement> &\n SpacingProps\n\nexport default function FormLabel(localProps: FormLabelAllProps) {\n const context = React.useContext(Context)\n\n // use only the props from context, who are available here anyway\n const props = convertSnakeCaseProps(\n extendPropsWithContext(\n localProps,\n null,\n { skeleton: context?.skeleton },\n pickFormElementProps(context?.FormRow), // Deprecated – can be removed in v11\n pickFormElementProps(context?.formElement),\n context?.FormLabel\n )\n )\n\n const {\n forId,\n text,\n srOnly,\n vertical,\n labelDirection,\n size,\n skeleton,\n element: Element = 'label',\n innerRef,\n className,\n children,\n ...attributes\n } = props\n\n const content = text || children\n\n const isInteractive =\n !props.disabled &&\n !srOnly &&\n (typeof props.onClick === 'function' || forId)\n\n const params = {\n className: classnames(\n 'dnb-form-label',\n (isTrue(vertical) || labelDirection === 'vertical') &&\n `dnb-form-label--vertical`,\n srOnly && 'dnb-sr-only',\n size && `dnb-h--${size}`,\n isInteractive && 'dnb-form-label--interactive',\n createSkeletonClass('font', skeleton, context),\n createSpacingClasses(\n content ? { right: 'small', ...props } : omitSpacingProps(props)\n ),\n className\n ),\n htmlFor: forId,\n ...(attributes as DynamicElementParams),\n }\n\n params['ref'] = innerRef\n\n skeletonDOMAttributes(params, skeleton, context)\n validateDOMAttributes(localProps, params)\n\n return <Element {...params}>{content}</Element>\n}\n\nFormLabel._formElement = true\nFormLabel._supportsSpacingProps = true\n"],"mappings":";;;;;;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,sBAAsB,EACtBC,MAAM,EACNC,qBAAqB,QAChB,+BAA+B;AACtC,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SACEC,mBAAmB,EACnBC,qBAAqB,QAChB,4BAA4B;AACnC,SAEEC,oBAAoB,QACf,uCAAuC;AAC9C,SAASC,qBAAqB,QAAQ,yCAAyC;AAC/E,SAASC,gBAAgB,QAAQ,eAAe;AAChD,OAAOC,OAAO,MAAM,sBAAsB;AAuC1C,eAAe,SAASC,SAASA,CAACC,UAA6B,EAAE;EAC/D,MAAMC,OAAO,GAAGd,KAAK,CAACe,UAAU,CAACJ,OAAO,CAAC;EAGzC,MAAMK,KAAK,GAAGP,qBAAqB,CACjCP,sBAAsB,CACpBW,UAAU,EACV,IAAI,EACJ;IAAEI,QAAQ,EAAEH,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEG;EAAS,CAAC,EAC/BT,oBAAoB,CAACM,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEI,OAAO,CAAC,EACtCV,oBAAoB,CAACM,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEK,WAAW,CAAC,EAC1CL,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEF,SACX,CACF,CAAC;EAED,MAAM;MACJQ,KAAK;MACLC,IAAI;MACJC,MAAM;MACNC,QAAQ;MACRC,cAAc;MACdC,IAAI;MACJR,QAAQ;MACRS,OAAO,EAAEC,OAAO,GAAG,OAAO;MAC1BC,QAAQ;MACRC,SAAS;MACTC;IAEF,CAAC,GAAGd,KAAK;IADJe,UAAU,GAAAC,wBAAA,CACXhB,KAAK,EAAAiB,SAAA;EAET,MAAMC,OAAO,GAAGb,IAAI,IAAIS,QAAQ;EAEhC,MAAMK,aAAa,GACjB,CAACnB,KAAK,CAACoB,QAAQ,IACf,CAACd,MAAM,KACN,OAAON,KAAK,CAACqB,OAAO,KAAK,UAAU,IAAIjB,KAAK,CAAC;EAEhD,MAAMkB,MAAM,GAAAC,aAAA;IACVV,SAAS,EAAE5B,UAAU,CACnB,gBAAgB,EAChB,CAACE,MAAM,CAACoB,QAAQ,CAAC,IAAIC,cAAc,KAAK,UAAU,KAC/C,0BAAyB,EAI5BlB,mBAAmB,CAAC,MAAM,EAAEW,QAAQ,EAAEH,OAAO,CAAC,EAC9CT,oBAAoB,CAClB6B,OAAO,GAAAK,aAAA;MAAKC,KAAK,EAAE;IAAO,GAAKxB,KAAK,IAAKN,gBAAgB,CAACM,KAAK,CACjE,CAAC,EACDa,SAAS,EAPTP,MAAM,IAAI,aAAa,EACvBG,IAAI,IAAK,UAASA,IAAK,EAAC,EACxBU,aAAa,IAAI,6BAMnB,CAAC;IACDM,OAAO,EAAErB;EAAK,GACVW,UAAU,CACf;EAEDO,MAAM,CAAC,KAAK,CAAC,GAAGV,QAAQ;EAExBrB,qBAAqB,CAAC+B,MAAM,EAAErB,QAAQ,EAAEH,OAAO,CAAC;EAChDV,qBAAqB,CAACS,UAAU,EAAEyB,MAAM,CAAC;EAEzC,OAAOtC,KAAA,CAAA0C,aAAA,CAACf,OAAO,EAAKW,MAAM,EAAGJ,OAAiB,CAAC;AACjD;AAEAtB,SAAS,CAAC+B,YAAY,GAAG,IAAI;AAC7B/B,SAAS,CAACgC,qBAAqB,GAAG,IAAI"}
1
+ {"version":3,"file":"FormLabel.js","names":["React","classnames","extendPropsWithContext","isTrue","validateDOMAttributes","createSpacingClasses","createSkeletonClass","skeletonDOMAttributes","pickFormElementProps","convertSnakeCaseProps","omitSpacingProps","Context","FormLabel","localProps","context","useContext","props","skeleton","FormRow","formElement","forId","text","srOnly","vertical","labelDirection","size","element","Element","innerRef","className","children","attributes","_objectWithoutProperties","_excluded","content","isInteractive","Boolean","disabled","onClick","params","_objectSpread","right","htmlFor","createElement","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/form-label/FormLabel.tsx"],"sourcesContent":["/**\n * Web FormLabel Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport {\n extendPropsWithContext,\n isTrue,\n validateDOMAttributes,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport {\n createSkeletonClass,\n skeletonDOMAttributes,\n} from '../skeleton/SkeletonHelper'\nimport {\n FormElementProps,\n pickFormElementProps,\n} from '../../shared/helpers/filterValidProps'\nimport { convertSnakeCaseProps } from '../../shared/helpers/withSnakeCaseProps'\nimport { omitSpacingProps } from '../flex/utils'\nimport Context from '../../shared/Context'\nimport type {\n DynamicElement,\n DynamicElementParams,\n SpacingProps,\n} from '../../shared/types'\n\nexport type FormLabelProps = {\n forId?: string\n element?: DynamicElement<HTMLLabelElement>\n text?: React.ReactNode\n size?: 'basis' | 'medium' | 'large'\n id?: string\n skeleton?: boolean\n label?: React.ReactNode\n vertical?: boolean\n srOnly?: boolean\n innerRef?: React.RefObject<HTMLElement>\n\n /** Is not a part of HTMLLabelElement and not documented as of now */\n disabled?: boolean\n\n /**\n * For internal use only\n */\n labelDirection?: FormElementProps['labelDirection']\n\n /** @deprecated use forId instead */\n for_id?: string\n /** @deprecated use srOnly instead */\n sr_only?: boolean\n /** @deprecated use \"vertical\" (or \"labelDirection\" for internal use) instead (was not documented before) */\n label_direction?: FormElementProps['label_direction']\n}\n\nexport type FormLabelAllProps = FormLabelProps &\n React.HTMLAttributes<HTMLLabelElement> &\n SpacingProps\n\nexport default function FormLabel(localProps: FormLabelAllProps) {\n const context = React.useContext(Context)\n\n // use only the props from context, who are available here anyway\n const props = convertSnakeCaseProps(\n extendPropsWithContext(\n localProps,\n null,\n { skeleton: context?.skeleton },\n pickFormElementProps(context?.FormRow), // Deprecated – can be removed in v11\n pickFormElementProps(context?.formElement),\n context?.FormLabel\n )\n )\n\n const {\n forId,\n text,\n srOnly,\n vertical,\n labelDirection,\n size,\n skeleton,\n element: Element = 'label',\n innerRef,\n className,\n children,\n ...attributes\n } = props\n\n const content = text || children\n\n const isInteractive = Boolean(\n !props.disabled &&\n !srOnly &&\n (typeof props.onClick === 'function' || forId)\n )\n\n const params = {\n className: classnames(\n 'dnb-form-label',\n (isTrue(vertical) || labelDirection === 'vertical') &&\n `dnb-form-label--vertical`,\n srOnly && 'dnb-sr-only',\n size && `dnb-h--${size}`,\n isInteractive && 'dnb-form-label--interactive',\n createSkeletonClass('font', skeleton, context),\n createSpacingClasses(\n content ? { right: 'small', ...props } : omitSpacingProps(props)\n ),\n className\n ),\n htmlFor: forId,\n ...(attributes as DynamicElementParams),\n }\n\n params['ref'] = innerRef\n\n skeletonDOMAttributes(params, skeleton, context)\n validateDOMAttributes(localProps, params)\n\n return <Element {...params}>{content}</Element>\n}\n\nFormLabel._formElement = true\nFormLabel._supportsSpacingProps = true\n"],"mappings":";;;;;;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,sBAAsB,EACtBC,MAAM,EACNC,qBAAqB,QAChB,+BAA+B;AACtC,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SACEC,mBAAmB,EACnBC,qBAAqB,QAChB,4BAA4B;AACnC,SAEEC,oBAAoB,QACf,uCAAuC;AAC9C,SAASC,qBAAqB,QAAQ,yCAAyC;AAC/E,SAASC,gBAAgB,QAAQ,eAAe;AAChD,OAAOC,OAAO,MAAM,sBAAsB;AAuC1C,eAAe,SAASC,SAASA,CAACC,UAA6B,EAAE;EAC/D,MAAMC,OAAO,GAAGd,KAAK,CAACe,UAAU,CAACJ,OAAO,CAAC;EAGzC,MAAMK,KAAK,GAAGP,qBAAqB,CACjCP,sBAAsB,CACpBW,UAAU,EACV,IAAI,EACJ;IAAEI,QAAQ,EAAEH,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEG;EAAS,CAAC,EAC/BT,oBAAoB,CAACM,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEI,OAAO,CAAC,EACtCV,oBAAoB,CAACM,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEK,WAAW,CAAC,EAC1CL,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEF,SACX,CACF,CAAC;EAED,MAAM;MACJQ,KAAK;MACLC,IAAI;MACJC,MAAM;MACNC,QAAQ;MACRC,cAAc;MACdC,IAAI;MACJR,QAAQ;MACRS,OAAO,EAAEC,OAAO,GAAG,OAAO;MAC1BC,QAAQ;MACRC,SAAS;MACTC;IAEF,CAAC,GAAGd,KAAK;IADJe,UAAU,GAAAC,wBAAA,CACXhB,KAAK,EAAAiB,SAAA;EAET,MAAMC,OAAO,GAAGb,IAAI,IAAIS,QAAQ;EAEhC,MAAMK,aAAa,GAAGC,OAAO,CAC3B,CAACpB,KAAK,CAACqB,QAAQ,IACb,CAACf,MAAM,KACN,OAAON,KAAK,CAACsB,OAAO,KAAK,UAAU,IAAIlB,KAAK,CACjD,CAAC;EAED,MAAMmB,MAAM,GAAAC,aAAA;IACVX,SAAS,EAAE5B,UAAU,CACnB,gBAAgB,EAChB,CAACE,MAAM,CAACoB,QAAQ,CAAC,IAAIC,cAAc,KAAK,UAAU,KAC/C,0BAAyB,EAI5BlB,mBAAmB,CAAC,MAAM,EAAEW,QAAQ,EAAEH,OAAO,CAAC,EAC9CT,oBAAoB,CAClB6B,OAAO,GAAAM,aAAA;MAAKC,KAAK,EAAE;IAAO,GAAKzB,KAAK,IAAKN,gBAAgB,CAACM,KAAK,CACjE,CAAC,EACDa,SAAS,EAPTP,MAAM,IAAI,aAAa,EACvBG,IAAI,IAAK,UAASA,IAAK,EAAC,EACxBU,aAAa,IAAI,6BAMnB,CAAC;IACDO,OAAO,EAAEtB;EAAK,GACVW,UAAU,CACf;EAEDQ,MAAM,CAAC,KAAK,CAAC,GAAGX,QAAQ;EAExBrB,qBAAqB,CAACgC,MAAM,EAAEtB,QAAQ,EAAEH,OAAO,CAAC;EAChDV,qBAAqB,CAACS,UAAU,EAAE0B,MAAM,CAAC;EAEzC,OAAOvC,KAAA,CAAA2C,aAAA,CAAChB,OAAO,EAAKY,MAAM,EAAGL,OAAiB,CAAC;AACjD;AAEAtB,SAAS,CAACgC,YAAY,GAAG,IAAI;AAC7BhC,SAAS,CAACiC,qBAAqB,GAAG,IAAI"}
@@ -21,6 +21,9 @@
21
21
  margin-right: 0;
22
22
  margin-bottom: 0.5rem;
23
23
  }
24
+ .dnb-form-label--interactive {
25
+ cursor: pointer;
26
+ }
24
27
  .dnb-form-label[disabled] {
25
28
  cursor: not-allowed;
26
29
  }
@@ -1 +1 @@
1
- .dnb-form-label{color:inherit;display:inline-block;font-size:var(--font-size-basis);padding:0;text-align:left;vertical-align:baseline;white-space:pre-wrap;word-break:normal}.dnb-form-label[for]{width:-moz-fit-content;width:fit-content}.dnb-form-label--vertical{display:block;margin-bottom:.5rem;margin-right:0}.dnb-form-label[disabled]{cursor:not-allowed}legend.dnb-form-label{display:inline-block}
1
+ .dnb-form-label{color:inherit;display:inline-block;font-size:var(--font-size-basis);padding:0;text-align:left;vertical-align:baseline;white-space:pre-wrap;word-break:normal}.dnb-form-label[for]{width:-moz-fit-content;width:fit-content}.dnb-form-label--vertical{display:block;margin-bottom:.5rem;margin-right:0}.dnb-form-label--interactive{cursor:pointer}.dnb-form-label[disabled]{cursor:not-allowed}legend.dnb-form-label{display:inline-block}
@@ -27,6 +27,10 @@
27
27
  margin-bottom: 0.5rem;
28
28
  }
29
29
 
30
+ &--interactive {
31
+ cursor: pointer;
32
+ }
33
+
30
34
  &[disabled] {
31
35
  cursor: not-allowed;
32
36
  }
@@ -4,7 +4,4 @@
4
4
  */
5
5
  .dnb-form-label {
6
6
  color: var(--sb-color-text);
7
- }
8
- .dnb-checkbox .dnb-form-label[for]:not([disabled]), .dnb-switch .dnb-form-label[for]:not([disabled]), .dnb-radio .dnb-form-label[for]:not([disabled]) {
9
- cursor: pointer;
10
7
  }
@@ -1 +1 @@
1
- .dnb-form-label{color:var(--sb-color-text)}.dnb-checkbox .dnb-form-label[for]:not([disabled]),.dnb-radio .dnb-form-label[for]:not([disabled]),.dnb-switch .dnb-form-label[for]:not([disabled]){cursor:pointer}
1
+ .dnb-form-label{color:var(--sb-color-text)}
@@ -5,12 +5,4 @@
5
5
 
6
6
  .dnb-form-label {
7
7
  color: var(--sb-color-text);
8
-
9
- .dnb-checkbox &,
10
- .dnb-switch &,
11
- .dnb-radio & {
12
- &[for]:not([disabled]) {
13
- cursor: pointer;
14
- }
15
- }
16
8
  }
@@ -4,10 +4,4 @@
4
4
  */
5
5
  .dnb-form-label {
6
6
  color: var(--color-black-80);
7
- }
8
- .dnb-form-label--interactive {
9
- cursor: pointer;
10
- }
11
- .dnb-form-label--interactive:hover {
12
- color: var(--color-sea-green);
13
7
  }
@@ -1 +1 @@
1
- .dnb-form-label{color:var(--color-black-80)}.dnb-form-label--interactive{cursor:pointer}.dnb-form-label--interactive:hover{color:var(--color-sea-green)}
1
+ .dnb-form-label{color:var(--color-black-80)}
@@ -5,12 +5,4 @@
5
5
 
6
6
  .dnb-form-label {
7
7
  color: var(--color-black-80);
8
-
9
- &--interactive {
10
- cursor: pointer;
11
-
12
- &:hover {
13
- color: var(--color-sea-green);
14
- }
15
- }
16
8
  }
@@ -8,5 +8,5 @@ import { HeadingProps } from './Heading';
8
8
  export type HeadingContextProps = {
9
9
  heading?: HeadingProps;
10
10
  } & SkeletonContextProps;
11
- declare const HeadingContext: React.Context<HeadingContextProps>;
11
+ declare const HeadingContext: React.Context<any>;
12
12
  export default HeadingContext;