@dnb/eufemia 10.6.0 → 10.8.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 (1125) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/cjs/components/accordion/Accordion.d.ts +1 -1
  3. package/cjs/components/accordion/AccordionHeader.d.ts +4 -4
  4. package/cjs/components/accordion/AccordionHeader.js +18 -5
  5. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  6. package/cjs/components/accordion/style/dnb-accordion.css +22 -17
  7. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  8. package/cjs/components/accordion/style/dnb-accordion.scss +40 -18
  9. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +124 -0
  10. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -0
  11. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +125 -0
  12. package/cjs/components/anchor/Anchor.js +1 -1
  13. package/cjs/components/anchor/Anchor.js.map +1 -1
  14. package/cjs/components/anchor/style/anchor-mixins.scss +9 -3
  15. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +3 -1
  16. package/cjs/components/autocomplete/Autocomplete.d.ts +1 -1
  17. package/cjs/components/autocomplete/Autocomplete.js +4 -2
  18. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  19. package/cjs/components/avatar/style/index.d.ts +1 -1
  20. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -1
  21. package/cjs/components/breadcrumb/Breadcrumb.js +2 -2
  22. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  23. package/cjs/components/breadcrumb/BreadcrumbItem.js +23 -1
  24. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  25. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +23 -0
  26. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -0
  27. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +33 -0
  28. package/cjs/components/button/style/dnb-button--tertiary.css +53 -37
  29. package/cjs/components/button/style/dnb-button--tertiary.min.css +5 -1
  30. package/cjs/components/button/style/dnb-button--tertiary.scss +28 -34
  31. package/cjs/components/button/style/themes/button-mixins.scss +5 -3
  32. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.css +53 -37
  33. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.min.css +5 -1
  34. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +155 -136
  35. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +12 -2
  36. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +81 -115
  37. package/cjs/components/button/style/themes/dnb-button-theme-ui.css +53 -37
  38. package/cjs/components/button/style/themes/dnb-button-theme-ui.min.css +5 -1
  39. package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +3 -1
  40. package/cjs/components/checkbox/Checkbox.d.ts +4 -0
  41. package/cjs/components/checkbox/Checkbox.js +6 -4
  42. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  43. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +3 -1
  44. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +6 -2
  45. package/cjs/components/drawer/Drawer.d.ts +1 -1
  46. package/cjs/components/drawer/Drawer.js +3 -1
  47. package/cjs/components/drawer/Drawer.js.map +1 -1
  48. package/cjs/components/form-label/style/dnb-form-label.css +0 -1
  49. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  50. package/cjs/components/form-label/style/dnb-form-label.scss +0 -1
  51. package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +10 -0
  52. package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -0
  53. package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +16 -0
  54. package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.css +3 -0
  55. package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
  56. package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.scss +6 -2
  57. package/cjs/components/form-row/style/themes/dnb-form-row-theme-sbanken.css +4 -0
  58. package/cjs/components/form-row/style/themes/dnb-form-row-theme-sbanken.min.css +0 -0
  59. package/cjs/components/form-row/style/themes/dnb-form-row-theme-sbanken.scss +4 -0
  60. package/cjs/components/form-status/FormStatus.d.ts +2 -0
  61. package/cjs/components/form-status/FormStatus.js +70 -53
  62. package/cjs/components/form-status/FormStatus.js.map +1 -1
  63. package/cjs/components/form-status/style/dnb-form-status.scss +4 -2
  64. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +37 -0
  65. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -0
  66. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +35 -0
  67. package/cjs/components/global-status/GlobalStatus.d.ts +1 -1
  68. package/cjs/components/global-status/GlobalStatus.js +17 -7
  69. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  70. package/cjs/components/global-status/style/dnb-global-status.scss +2 -1
  71. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +22 -0
  72. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -0
  73. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +28 -0
  74. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.css +6 -3
  75. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  76. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.scss +13 -6
  77. package/cjs/components/heading/Heading.d.ts +8 -8
  78. package/cjs/components/heading/Heading.js +8 -16
  79. package/cjs/components/heading/Heading.js.map +1 -1
  80. package/cjs/components/heading/HeadingHelpers.d.ts +5 -1
  81. package/cjs/components/heading/HeadingHelpers.js +42 -1
  82. package/cjs/components/heading/HeadingHelpers.js.map +1 -1
  83. package/cjs/components/info-card/index.js.map +1 -1
  84. package/cjs/components/info-card/style.js.map +1 -1
  85. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.css +20 -20
  86. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -1
  87. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.scss +15 -23
  88. package/cjs/components/input/style/themes/dnb-input-theme-ui.css +1 -1
  89. package/cjs/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  90. package/cjs/components/input/style/themes/dnb-input-theme-ui.scss +9 -3
  91. package/cjs/components/input-masked/InputMaskedUtils.js +1 -1
  92. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  93. package/cjs/components/modal/Modal.js.map +1 -1
  94. package/cjs/components/modal/parts/ModalHeaderBar.js +0 -4
  95. package/cjs/components/modal/parts/ModalHeaderBar.js.map +1 -1
  96. package/cjs/components/pagination/Pagination.js.map +1 -1
  97. package/cjs/components/pagination/style/dnb-pagination.css +20 -0
  98. package/cjs/components/pagination/style/dnb-pagination.min.css +1 -1
  99. package/cjs/components/pagination/style/dnb-pagination.scss +24 -0
  100. package/cjs/components/pagination/style/themes/dnb-pagination-theme-sbanken.css +26 -0
  101. package/cjs/components/pagination/style/themes/dnb-pagination-theme-sbanken.min.css +1 -0
  102. package/cjs/components/pagination/style/themes/dnb-pagination-theme-sbanken.scss +35 -0
  103. package/cjs/components/pagination/style/themes/dnb-pagination-theme-ui.css +0 -24
  104. package/cjs/components/pagination/style/themes/dnb-pagination-theme-ui.min.css +1 -1
  105. package/cjs/components/pagination/style/themes/dnb-pagination-theme-ui.scss +0 -30
  106. package/cjs/components/radio/Radio.d.ts +4 -0
  107. package/cjs/components/radio/Radio.js +6 -4
  108. package/cjs/components/radio/Radio.js.map +1 -1
  109. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +15 -5
  110. package/cjs/components/section/Section.d.ts +26 -1
  111. package/cjs/components/section/Section.js +3 -2
  112. package/cjs/components/section/Section.js.map +1 -1
  113. package/cjs/components/section/style/dnb-section.css +1 -1
  114. package/cjs/components/section/style/dnb-section.scss +8 -3
  115. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.css +39 -0
  116. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -0
  117. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.scss +56 -0
  118. package/cjs/components/section/style/themes/dnb-section-theme-ui.css +28 -13
  119. package/cjs/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  120. package/cjs/components/section/style/themes/dnb-section-theme-ui.scss +37 -14
  121. package/cjs/components/skeleton/style/dnb-skeleton.scss +8 -5
  122. package/cjs/components/slider/style/dnb-slider.scss +4 -2
  123. package/cjs/components/space/SpacingUtils.js.map +1 -1
  124. package/cjs/components/step-indicator/StepIndicator.d.ts +89 -75
  125. package/cjs/components/step-indicator/StepIndicator.js +31 -26
  126. package/cjs/components/step-indicator/StepIndicator.js.map +1 -1
  127. package/cjs/components/step-indicator/StepIndicatorContext.d.ts +45 -15
  128. package/cjs/components/step-indicator/StepIndicatorContext.js +102 -121
  129. package/cjs/components/step-indicator/StepIndicatorContext.js.map +1 -1
  130. package/cjs/components/step-indicator/StepIndicatorItem.d.ts +59 -61
  131. package/cjs/components/step-indicator/StepIndicatorItem.js +183 -231
  132. package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
  133. package/cjs/components/step-indicator/StepIndicatorList.d.ts +6 -8
  134. package/cjs/components/step-indicator/StepIndicatorList.js +45 -50
  135. package/cjs/components/step-indicator/StepIndicatorList.js.map +1 -1
  136. package/cjs/components/step-indicator/StepIndicatorModal.d.ts +6 -14
  137. package/cjs/components/step-indicator/StepIndicatorModal.js +41 -53
  138. package/cjs/components/step-indicator/StepIndicatorModal.js.map +1 -1
  139. package/cjs/components/step-indicator/StepIndicatorProps.d.ts +2 -55
  140. package/cjs/components/step-indicator/StepIndicatorProps.js +4 -50
  141. package/cjs/components/step-indicator/StepIndicatorProps.js.map +1 -1
  142. package/cjs/components/step-indicator/StepIndicatorSidebar.d.ts +27 -21
  143. package/cjs/components/step-indicator/StepIndicatorSidebar.js +41 -51
  144. package/cjs/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  145. package/cjs/components/step-indicator/StepIndicatorTriggerButton.d.ts +16 -17
  146. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +65 -78
  147. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  148. package/cjs/components/switch/Switch.d.ts +4 -0
  149. package/cjs/components/switch/Switch.js +6 -4
  150. package/cjs/components/switch/Switch.js.map +1 -1
  151. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.scss +3 -1
  152. package/cjs/components/table/TableContainer.js.map +1 -1
  153. package/cjs/components/table/style/table-accordion.scss +18 -6
  154. package/cjs/components/table/style/table-header-buttons.scss +3 -1
  155. package/cjs/components/table/style/table-tr.scss +6 -2
  156. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.css +56 -7
  157. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  158. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.scss +21 -5
  159. package/cjs/components/table/style/themes/dnb-table-theme-ui.scss +3 -1
  160. package/cjs/components/timeline/TimelineItem.d.ts +3 -2
  161. package/cjs/components/timeline/TimelineItem.js +96 -62
  162. package/cjs/components/timeline/TimelineItem.js.map +1 -1
  163. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.css +3 -2
  164. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +3 -1
  165. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.scss +3 -2
  166. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +3 -1
  167. package/cjs/elements/lib.d.ts +1 -1
  168. package/cjs/elements/typography/H.d.ts +5 -3
  169. package/cjs/elements/typography/H.js +7 -3
  170. package/cjs/elements/typography/H.js.map +1 -1
  171. package/cjs/elements/typography/H1.js +2 -2
  172. package/cjs/elements/typography/H1.js.map +1 -1
  173. package/cjs/elements/typography/H2.js +2 -2
  174. package/cjs/elements/typography/H2.js.map +1 -1
  175. package/cjs/elements/typography/H3.js +2 -2
  176. package/cjs/elements/typography/H3.js.map +1 -1
  177. package/cjs/elements/typography/H4.js +2 -2
  178. package/cjs/elements/typography/H4.js.map +1 -1
  179. package/cjs/elements/typography/H5.js +2 -2
  180. package/cjs/elements/typography/H5.js.map +1 -1
  181. package/cjs/elements/typography/H6.js +2 -2
  182. package/cjs/elements/typography/H6.js.map +1 -1
  183. package/cjs/elements/typography/style/dnb-typography.scss +3 -0
  184. package/cjs/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +12 -2
  185. package/cjs/elements/typography/style/typography-mixins.scss +5 -0
  186. package/cjs/extensions/forms/DataContext/Provider.js +9 -9
  187. package/cjs/extensions/forms/DataContext/Provider.js.map +1 -1
  188. package/cjs/extensions/forms/DataContext/index.js.map +1 -1
  189. package/cjs/extensions/forms/Field/ArraySelection.d.ts +2 -1
  190. package/cjs/extensions/forms/Field/ArraySelection.js +52 -32
  191. package/cjs/extensions/forms/Field/ArraySelection.js.map +1 -1
  192. package/cjs/extensions/forms/Field/CountryCode.d.ts +10 -0
  193. package/cjs/extensions/forms/Field/CountryCode.js +78 -0
  194. package/cjs/extensions/forms/Field/CountryCode.js.map +1 -0
  195. package/cjs/extensions/forms/Field/Currency.d.ts +2 -2
  196. package/cjs/extensions/forms/Field/Currency.js +6 -38
  197. package/cjs/extensions/forms/Field/Currency.js.map +1 -1
  198. package/cjs/extensions/forms/Field/Date.d.ts +2 -2
  199. package/cjs/extensions/forms/Field/Date.js +10 -6
  200. package/cjs/extensions/forms/Field/Date.js.map +1 -1
  201. package/cjs/extensions/forms/Field/Number.d.ts +7 -3
  202. package/cjs/extensions/forms/Field/Number.js +48 -22
  203. package/cjs/extensions/forms/Field/Number.js.map +1 -1
  204. package/cjs/extensions/forms/Field/PhoneNumber.d.ts +7 -2
  205. package/cjs/extensions/forms/Field/PhoneNumber.js +43 -42
  206. package/cjs/extensions/forms/Field/PhoneNumber.js.map +1 -1
  207. package/cjs/extensions/forms/Field/PostalCodeAndCity.d.ts +1 -1
  208. package/cjs/extensions/forms/Field/PostalCodeAndCity.js +1 -1
  209. package/cjs/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  210. package/cjs/extensions/forms/Field/Selection.d.ts +6 -4
  211. package/cjs/extensions/forms/Field/Selection.js +88 -37
  212. package/cjs/extensions/forms/Field/Selection.js.map +1 -1
  213. package/cjs/extensions/forms/Field/String.d.ts +3 -3
  214. package/cjs/extensions/forms/Field/String.js +32 -17
  215. package/cjs/extensions/forms/Field/String.js.map +1 -1
  216. package/cjs/extensions/forms/Field/Toggle.js +11 -9
  217. package/cjs/extensions/forms/Field/Toggle.js.map +1 -1
  218. package/cjs/extensions/forms/Field/fields.scss +2 -2
  219. package/cjs/extensions/forms/Field/hooks/useField.d.ts +6 -8
  220. package/cjs/extensions/forms/Field/hooks/useField.js +34 -33
  221. package/cjs/extensions/forms/Field/hooks/useField.js.map +1 -1
  222. package/cjs/extensions/forms/Field/index.d.ts +2 -0
  223. package/cjs/extensions/forms/Field/index.js +3 -1
  224. package/cjs/extensions/forms/Field/index.js.map +1 -1
  225. package/cjs/extensions/forms/Field/style/dnb-array-selection.css +13 -0
  226. package/cjs/extensions/forms/Field/style/dnb-array-selection.min.css +1 -0
  227. package/cjs/extensions/forms/Field/style/dnb-array-selection.scss +15 -0
  228. package/cjs/extensions/forms/Field/style/dnb-country-code.css +12 -0
  229. package/cjs/extensions/forms/Field/style/dnb-country-code.min.css +1 -0
  230. package/cjs/extensions/forms/Field/style/dnb-country-code.scss +19 -0
  231. package/cjs/extensions/forms/Field/style/dnb-phone-number.css +6 -7
  232. package/cjs/extensions/forms/Field/style/dnb-phone-number.min.css +1 -1
  233. package/cjs/extensions/forms/Field/style/dnb-phone-number.scss +7 -8
  234. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.css +5 -2
  235. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -1
  236. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.scss +5 -1
  237. package/cjs/extensions/forms/Field/style/dnb-selection.css +5 -2
  238. package/cjs/extensions/forms/Field/style/dnb-selection.min.css +1 -1
  239. package/cjs/extensions/forms/Field/style/dnb-selection.scss +7 -1
  240. package/cjs/extensions/forms/Field/style/index.d.ts +2 -1
  241. package/cjs/extensions/forms/Field/style/index.js +2 -1
  242. package/cjs/extensions/forms/Field/style/index.js.map +1 -1
  243. package/cjs/extensions/forms/Field/style/index.scss +2 -2
  244. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +5 -0
  245. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +19 -9
  246. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  247. package/cjs/extensions/forms/FieldBlock/index.js.map +1 -1
  248. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +39 -1
  249. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  250. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +60 -1
  251. package/cjs/extensions/forms/FieldGroup/index.js.map +1 -1
  252. package/cjs/extensions/forms/Layout/Card.js +2 -2
  253. package/cjs/extensions/forms/Layout/Card.js.map +1 -1
  254. package/cjs/extensions/forms/Layout/FlexContainer.d.ts +1 -0
  255. package/cjs/extensions/forms/Layout/FlexContainer.js +5 -3
  256. package/cjs/extensions/forms/Layout/FlexContainer.js.map +1 -1
  257. package/cjs/extensions/forms/Layout/FlexItem.d.ts +1 -0
  258. package/cjs/extensions/forms/Layout/FlexItem.js +2 -1
  259. package/cjs/extensions/forms/Layout/FlexItem.js.map +1 -1
  260. package/cjs/extensions/forms/Layout/SubHeading.js +2 -1
  261. package/cjs/extensions/forms/Layout/SubHeading.js.map +1 -1
  262. package/cjs/extensions/forms/Layout/style/dnb-card.css +3 -3
  263. package/cjs/extensions/forms/Layout/style/dnb-card.min.css +1 -1
  264. package/cjs/extensions/forms/Layout/style/dnb-card.scss +6 -4
  265. package/cjs/extensions/forms/Layout/style/dnb-flex-container.css +9 -0
  266. package/cjs/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -1
  267. package/cjs/extensions/forms/Layout/style/dnb-flex-container.scss +14 -0
  268. package/cjs/extensions/forms/Layout/style/dnb-flex-item.css +9 -0
  269. package/cjs/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -1
  270. package/cjs/extensions/forms/Layout/style/dnb-flex-item.scss +14 -0
  271. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +1 -1
  272. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  273. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +11 -5
  274. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  275. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +10 -3
  276. package/cjs/extensions/forms/ValueBlock/index.js.map +1 -1
  277. package/cjs/extensions/forms/field-types.d.ts +7 -1
  278. package/cjs/extensions/forms/field-types.js.map +1 -1
  279. package/cjs/extensions/forms/style/dnb-forms.css +112 -42
  280. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  281. package/cjs/extensions/forms/style/index.d.ts +1 -0
  282. package/cjs/extensions/forms/style/index.js +4 -0
  283. package/cjs/extensions/forms/style/index.js.map +1 -0
  284. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -2
  285. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  286. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -2
  287. package/cjs/extensions/forms/utils/useWasChanged.d.ts +5 -0
  288. package/cjs/extensions/forms/utils/useWasChanged.js +62 -0
  289. package/cjs/extensions/forms/utils/useWasChanged.js.map +1 -0
  290. package/cjs/extensions/forms/variables.scss +3 -0
  291. package/cjs/extensions/lib.d.ts +1 -0
  292. package/cjs/extensions/payment-card/PaymentCard.d.ts +6 -2
  293. package/cjs/extensions/payment-card/PaymentCard.js +13 -2
  294. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  295. package/cjs/extensions/payment-card/icons/CardIn.d.ts +2 -0
  296. package/cjs/extensions/payment-card/icons/CardIn.js +26 -0
  297. package/cjs/extensions/payment-card/icons/CardIn.js.map +1 -0
  298. package/cjs/extensions/payment-card/icons/index.js +4 -1
  299. package/cjs/extensions/payment-card/icons/index.js.map +1 -1
  300. package/cjs/extensions/payment-card/style/dnb-payment-card.css +3 -2
  301. package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  302. package/cjs/extensions/payment-card/style/dnb-payment-card.scss +2 -2
  303. package/cjs/extensions/payment-card/utils/backgrounds/ung.js +1 -1
  304. package/cjs/extensions/payment-card/utils/backgrounds/ung.js.map +1 -1
  305. package/cjs/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  306. package/cjs/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  307. package/cjs/fragments/drawer-list/DrawerList.js +1 -1
  308. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  309. package/cjs/fragments/drawer-list/DrawerListPortal.js +2 -2
  310. package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  311. package/cjs/fragments/drawer-list/style/dnb-drawer-list.scss +3 -1
  312. package/cjs/shared/Context.d.ts +2 -0
  313. package/cjs/shared/Context.js.map +1 -1
  314. package/cjs/shared/Eufemia.d.ts +1 -1
  315. package/cjs/shared/Eufemia.js +2 -2
  316. package/cjs/shared/Eufemia.js.map +1 -1
  317. package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
  318. package/cjs/shared/helpers/withSnakeCaseProps.js.map +1 -1
  319. package/cjs/shared/libs/Shortcuts.js.map +1 -1
  320. package/cjs/shared/locales/en-GB.d.ts +2 -0
  321. package/cjs/shared/locales/en-GB.js +3 -1
  322. package/cjs/shared/locales/en-GB.js.map +1 -1
  323. package/cjs/shared/locales/en-US.d.ts +2 -0
  324. package/cjs/shared/locales/index.d.ts +4 -0
  325. package/cjs/shared/locales/nb-NO.d.ts +2 -0
  326. package/cjs/shared/locales/nb-NO.js +3 -1
  327. package/cjs/shared/locales/nb-NO.js.map +1 -1
  328. package/cjs/style/core/reset.scss +13 -3
  329. package/cjs/style/core/utilities.scss +3 -1
  330. package/cjs/style/dnb-ui-components.css +42 -19
  331. package/cjs/style/dnb-ui-components.min.css +1 -1
  332. package/cjs/style/dnb-ui-elements.css +6 -0
  333. package/cjs/style/dnb-ui-elements.min.css +1 -1
  334. package/cjs/style/dnb-ui-extensions.css +115 -44
  335. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  336. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +6 -0
  337. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  338. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +189 -135
  339. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +7 -1
  340. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +115 -44
  341. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  342. package/cjs/style/themes/theme-sbanken/customisations.scss +0 -8
  343. package/cjs/style/themes/theme-sbanken/properties.js +6 -6
  344. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  345. package/cjs/style/themes/theme-sbanken/properties.scss +6 -6
  346. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +27 -26
  347. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  348. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +574 -615
  349. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +14 -2
  350. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +8 -7
  351. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +21 -2
  352. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  353. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +115 -44
  354. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  355. package/cjs/style/themes/theme-ui/fonts.scss +8 -4
  356. package/cjs/style/themes/theme-ui/ui-theme-basis.css +6 -0
  357. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  358. package/cjs/style/themes/theme-ui/ui-theme-components.css +136 -98
  359. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +7 -1
  360. package/cjs/style/themes/theme-ui/ui-theme-elements.css +6 -0
  361. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  362. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +115 -44
  363. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  364. package/cjs/style/themes/theme-ui/ui-theme-tags.css +3 -0
  365. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  366. package/cjs/style/themes/theme-ui/ui-theme-tags.scss +9 -4
  367. package/components/accordion/Accordion.d.ts +1 -1
  368. package/components/accordion/AccordionHeader.d.ts +4 -4
  369. package/components/accordion/AccordionHeader.js +18 -5
  370. package/components/accordion/AccordionHeader.js.map +1 -1
  371. package/components/accordion/style/dnb-accordion.css +22 -17
  372. package/components/accordion/style/dnb-accordion.min.css +1 -1
  373. package/components/accordion/style/dnb-accordion.scss +40 -18
  374. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +124 -0
  375. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -0
  376. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +125 -0
  377. package/components/anchor/Anchor.js +1 -1
  378. package/components/anchor/Anchor.js.map +1 -1
  379. package/components/anchor/style/anchor-mixins.scss +9 -3
  380. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +3 -1
  381. package/components/autocomplete/Autocomplete.d.ts +1 -1
  382. package/components/autocomplete/Autocomplete.js +4 -2
  383. package/components/autocomplete/Autocomplete.js.map +1 -1
  384. package/components/avatar/style/index.d.ts +1 -1
  385. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -1
  386. package/components/breadcrumb/Breadcrumb.js +2 -2
  387. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  388. package/components/breadcrumb/BreadcrumbItem.js +23 -1
  389. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  390. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +23 -0
  391. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -0
  392. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +33 -0
  393. package/components/button/style/dnb-button--tertiary.css +53 -37
  394. package/components/button/style/dnb-button--tertiary.min.css +5 -1
  395. package/components/button/style/dnb-button--tertiary.scss +28 -34
  396. package/components/button/style/themes/button-mixins.scss +5 -3
  397. package/components/button/style/themes/dnb-button-theme-eiendom.css +53 -37
  398. package/components/button/style/themes/dnb-button-theme-eiendom.min.css +5 -1
  399. package/components/button/style/themes/dnb-button-theme-sbanken.css +155 -136
  400. package/components/button/style/themes/dnb-button-theme-sbanken.min.css +12 -2
  401. package/components/button/style/themes/dnb-button-theme-sbanken.scss +81 -115
  402. package/components/button/style/themes/dnb-button-theme-ui.css +53 -37
  403. package/components/button/style/themes/dnb-button-theme-ui.min.css +5 -1
  404. package/components/button/style/themes/dnb-button-theme-ui.scss +3 -1
  405. package/components/checkbox/Checkbox.d.ts +4 -0
  406. package/components/checkbox/Checkbox.js +6 -4
  407. package/components/checkbox/Checkbox.js.map +1 -1
  408. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +3 -1
  409. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +6 -2
  410. package/components/drawer/Drawer.d.ts +1 -1
  411. package/components/drawer/Drawer.js +3 -1
  412. package/components/drawer/Drawer.js.map +1 -1
  413. package/components/form-label/style/dnb-form-label.css +0 -1
  414. package/components/form-label/style/dnb-form-label.min.css +1 -1
  415. package/components/form-label/style/dnb-form-label.scss +0 -1
  416. package/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +10 -0
  417. package/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -0
  418. package/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +16 -0
  419. package/components/form-label/style/themes/dnb-form-label-theme-ui.css +3 -0
  420. package/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
  421. package/components/form-label/style/themes/dnb-form-label-theme-ui.scss +6 -2
  422. package/components/form-row/style/themes/dnb-form-row-theme-sbanken.css +4 -0
  423. package/components/form-row/style/themes/dnb-form-row-theme-sbanken.min.css +0 -0
  424. package/components/form-row/style/themes/dnb-form-row-theme-sbanken.scss +4 -0
  425. package/components/form-status/FormStatus.d.ts +2 -0
  426. package/components/form-status/FormStatus.js +70 -53
  427. package/components/form-status/FormStatus.js.map +1 -1
  428. package/components/form-status/style/dnb-form-status.scss +4 -2
  429. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +37 -0
  430. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -0
  431. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +35 -0
  432. package/components/global-status/GlobalStatus.d.ts +1 -1
  433. package/components/global-status/GlobalStatus.js +18 -8
  434. package/components/global-status/GlobalStatus.js.map +1 -1
  435. package/components/global-status/style/dnb-global-status.scss +2 -1
  436. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +22 -0
  437. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -0
  438. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +28 -0
  439. package/components/global-status/style/themes/dnb-global-status-theme-ui.css +6 -3
  440. package/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  441. package/components/global-status/style/themes/dnb-global-status-theme-ui.scss +13 -6
  442. package/components/heading/Heading.d.ts +8 -8
  443. package/components/heading/Heading.js +9 -15
  444. package/components/heading/Heading.js.map +1 -1
  445. package/components/heading/HeadingHelpers.d.ts +5 -1
  446. package/components/heading/HeadingHelpers.js +39 -0
  447. package/components/heading/HeadingHelpers.js.map +1 -1
  448. package/components/info-card/index.js.map +1 -1
  449. package/components/info-card/style.js.map +1 -1
  450. package/components/input/style/themes/dnb-input-theme-sbanken.css +20 -20
  451. package/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -1
  452. package/components/input/style/themes/dnb-input-theme-sbanken.scss +15 -23
  453. package/components/input/style/themes/dnb-input-theme-ui.css +1 -1
  454. package/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  455. package/components/input/style/themes/dnb-input-theme-ui.scss +9 -3
  456. package/components/input-masked/InputMaskedUtils.js +1 -1
  457. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  458. package/components/modal/Modal.js.map +1 -1
  459. package/components/modal/parts/ModalHeaderBar.js +0 -4
  460. package/components/modal/parts/ModalHeaderBar.js.map +1 -1
  461. package/components/pagination/Pagination.js.map +1 -1
  462. package/components/pagination/style/dnb-pagination.css +20 -0
  463. package/components/pagination/style/dnb-pagination.min.css +1 -1
  464. package/components/pagination/style/dnb-pagination.scss +24 -0
  465. package/components/pagination/style/themes/dnb-pagination-theme-sbanken.css +26 -0
  466. package/components/pagination/style/themes/dnb-pagination-theme-sbanken.min.css +1 -0
  467. package/components/pagination/style/themes/dnb-pagination-theme-sbanken.scss +35 -0
  468. package/components/pagination/style/themes/dnb-pagination-theme-ui.css +0 -24
  469. package/components/pagination/style/themes/dnb-pagination-theme-ui.min.css +1 -1
  470. package/components/pagination/style/themes/dnb-pagination-theme-ui.scss +0 -30
  471. package/components/radio/Radio.d.ts +4 -0
  472. package/components/radio/Radio.js +6 -4
  473. package/components/radio/Radio.js.map +1 -1
  474. package/components/radio/style/themes/dnb-radio-theme-ui.scss +15 -5
  475. package/components/section/Section.d.ts +26 -1
  476. package/components/section/Section.js +3 -2
  477. package/components/section/Section.js.map +1 -1
  478. package/components/section/style/dnb-section.css +1 -1
  479. package/components/section/style/dnb-section.scss +8 -3
  480. package/components/section/style/themes/dnb-section-theme-sbanken.css +39 -0
  481. package/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -0
  482. package/components/section/style/themes/dnb-section-theme-sbanken.scss +56 -0
  483. package/components/section/style/themes/dnb-section-theme-ui.css +28 -13
  484. package/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  485. package/components/section/style/themes/dnb-section-theme-ui.scss +37 -14
  486. package/components/skeleton/style/dnb-skeleton.scss +8 -5
  487. package/components/slider/style/dnb-slider.scss +4 -2
  488. package/components/space/SpacingUtils.js.map +1 -1
  489. package/components/step-indicator/StepIndicator.d.ts +89 -75
  490. package/components/step-indicator/StepIndicator.js +29 -25
  491. package/components/step-indicator/StepIndicator.js.map +1 -1
  492. package/components/step-indicator/StepIndicatorContext.d.ts +45 -15
  493. package/components/step-indicator/StepIndicatorContext.js +98 -120
  494. package/components/step-indicator/StepIndicatorContext.js.map +1 -1
  495. package/components/step-indicator/StepIndicatorItem.d.ts +59 -61
  496. package/components/step-indicator/StepIndicatorItem.js +177 -227
  497. package/components/step-indicator/StepIndicatorItem.js.map +1 -1
  498. package/components/step-indicator/StepIndicatorList.d.ts +6 -8
  499. package/components/step-indicator/StepIndicatorList.js +43 -48
  500. package/components/step-indicator/StepIndicatorList.js.map +1 -1
  501. package/components/step-indicator/StepIndicatorModal.d.ts +6 -14
  502. package/components/step-indicator/StepIndicatorModal.js +38 -50
  503. package/components/step-indicator/StepIndicatorModal.js.map +1 -1
  504. package/components/step-indicator/StepIndicatorProps.d.ts +2 -55
  505. package/components/step-indicator/StepIndicatorProps.js +3 -45
  506. package/components/step-indicator/StepIndicatorProps.js.map +1 -1
  507. package/components/step-indicator/StepIndicatorSidebar.d.ts +27 -21
  508. package/components/step-indicator/StepIndicatorSidebar.js +39 -52
  509. package/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  510. package/components/step-indicator/StepIndicatorTriggerButton.d.ts +16 -17
  511. package/components/step-indicator/StepIndicatorTriggerButton.js +62 -78
  512. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  513. package/components/switch/Switch.d.ts +4 -0
  514. package/components/switch/Switch.js +6 -4
  515. package/components/switch/Switch.js.map +1 -1
  516. package/components/switch/style/themes/dnb-switch-theme-ui.scss +3 -1
  517. package/components/table/TableContainer.js.map +1 -1
  518. package/components/table/style/table-accordion.scss +18 -6
  519. package/components/table/style/table-header-buttons.scss +3 -1
  520. package/components/table/style/table-tr.scss +6 -2
  521. package/components/table/style/themes/dnb-table-theme-sbanken.css +56 -7
  522. package/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  523. package/components/table/style/themes/dnb-table-theme-sbanken.scss +21 -5
  524. package/components/table/style/themes/dnb-table-theme-ui.scss +3 -1
  525. package/components/timeline/TimelineItem.d.ts +3 -2
  526. package/components/timeline/TimelineItem.js +95 -61
  527. package/components/timeline/TimelineItem.js.map +1 -1
  528. package/components/timeline/style/themes/dnb-timeline-theme-ui.css +3 -2
  529. package/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +3 -1
  530. package/components/timeline/style/themes/dnb-timeline-theme-ui.scss +3 -2
  531. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +3 -1
  532. package/elements/lib.d.ts +1 -1
  533. package/elements/typography/H.d.ts +5 -3
  534. package/elements/typography/H.js +8 -4
  535. package/elements/typography/H.js.map +1 -1
  536. package/elements/typography/H1.js +2 -2
  537. package/elements/typography/H1.js.map +1 -1
  538. package/elements/typography/H2.js +2 -2
  539. package/elements/typography/H2.js.map +1 -1
  540. package/elements/typography/H3.js +2 -2
  541. package/elements/typography/H3.js.map +1 -1
  542. package/elements/typography/H4.js +2 -2
  543. package/elements/typography/H4.js.map +1 -1
  544. package/elements/typography/H5.js +2 -2
  545. package/elements/typography/H5.js.map +1 -1
  546. package/elements/typography/H6.js +2 -2
  547. package/elements/typography/H6.js.map +1 -1
  548. package/elements/typography/style/dnb-typography.scss +3 -0
  549. package/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +12 -2
  550. package/elements/typography/style/typography-mixins.scss +5 -0
  551. package/es/components/accordion/Accordion.d.ts +1 -1
  552. package/es/components/accordion/AccordionHeader.d.ts +4 -4
  553. package/es/components/accordion/AccordionHeader.js +18 -5
  554. package/es/components/accordion/AccordionHeader.js.map +1 -1
  555. package/es/components/accordion/style/dnb-accordion.css +22 -17
  556. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  557. package/es/components/accordion/style/dnb-accordion.scss +40 -18
  558. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +124 -0
  559. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -0
  560. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +125 -0
  561. package/es/components/anchor/Anchor.js +1 -1
  562. package/es/components/anchor/Anchor.js.map +1 -1
  563. package/es/components/anchor/style/anchor-mixins.scss +9 -3
  564. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +3 -1
  565. package/es/components/autocomplete/Autocomplete.d.ts +1 -1
  566. package/es/components/autocomplete/Autocomplete.js +4 -2
  567. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  568. package/es/components/avatar/style/index.d.ts +1 -1
  569. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -1
  570. package/es/components/breadcrumb/Breadcrumb.js +2 -2
  571. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  572. package/es/components/breadcrumb/BreadcrumbItem.js +23 -1
  573. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  574. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +23 -0
  575. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -0
  576. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +33 -0
  577. package/es/components/button/style/dnb-button--tertiary.css +53 -37
  578. package/es/components/button/style/dnb-button--tertiary.min.css +5 -1
  579. package/es/components/button/style/dnb-button--tertiary.scss +28 -34
  580. package/es/components/button/style/themes/button-mixins.scss +5 -3
  581. package/es/components/button/style/themes/dnb-button-theme-eiendom.css +53 -37
  582. package/es/components/button/style/themes/dnb-button-theme-eiendom.min.css +5 -1
  583. package/es/components/button/style/themes/dnb-button-theme-sbanken.css +155 -136
  584. package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +12 -2
  585. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +81 -115
  586. package/es/components/button/style/themes/dnb-button-theme-ui.css +53 -37
  587. package/es/components/button/style/themes/dnb-button-theme-ui.min.css +5 -1
  588. package/es/components/button/style/themes/dnb-button-theme-ui.scss +3 -1
  589. package/es/components/checkbox/Checkbox.d.ts +4 -0
  590. package/es/components/checkbox/Checkbox.js +6 -4
  591. package/es/components/checkbox/Checkbox.js.map +1 -1
  592. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +3 -1
  593. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +6 -2
  594. package/es/components/drawer/Drawer.d.ts +1 -1
  595. package/es/components/drawer/Drawer.js +3 -1
  596. package/es/components/drawer/Drawer.js.map +1 -1
  597. package/es/components/form-label/style/dnb-form-label.css +0 -1
  598. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  599. package/es/components/form-label/style/dnb-form-label.scss +0 -1
  600. package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +10 -0
  601. package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -0
  602. package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +16 -0
  603. package/es/components/form-label/style/themes/dnb-form-label-theme-ui.css +3 -0
  604. package/es/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
  605. package/es/components/form-label/style/themes/dnb-form-label-theme-ui.scss +6 -2
  606. package/es/components/form-row/style/themes/dnb-form-row-theme-sbanken.css +4 -0
  607. package/es/components/form-row/style/themes/dnb-form-row-theme-sbanken.min.css +0 -0
  608. package/es/components/form-row/style/themes/dnb-form-row-theme-sbanken.scss +4 -0
  609. package/es/components/form-status/FormStatus.d.ts +2 -0
  610. package/es/components/form-status/FormStatus.js +70 -53
  611. package/es/components/form-status/FormStatus.js.map +1 -1
  612. package/es/components/form-status/style/dnb-form-status.scss +4 -2
  613. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +37 -0
  614. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -0
  615. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +35 -0
  616. package/es/components/global-status/GlobalStatus.d.ts +1 -1
  617. package/es/components/global-status/GlobalStatus.js +18 -8
  618. package/es/components/global-status/GlobalStatus.js.map +1 -1
  619. package/es/components/global-status/style/dnb-global-status.scss +2 -1
  620. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +22 -0
  621. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -0
  622. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +28 -0
  623. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.css +6 -3
  624. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  625. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.scss +13 -6
  626. package/es/components/heading/Heading.d.ts +8 -8
  627. package/es/components/heading/Heading.js +9 -15
  628. package/es/components/heading/Heading.js.map +1 -1
  629. package/es/components/heading/HeadingHelpers.d.ts +5 -1
  630. package/es/components/heading/HeadingHelpers.js +39 -0
  631. package/es/components/heading/HeadingHelpers.js.map +1 -1
  632. package/es/components/info-card/index.js.map +1 -1
  633. package/es/components/info-card/style.js.map +1 -1
  634. package/es/components/input/style/themes/dnb-input-theme-sbanken.css +20 -20
  635. package/es/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -1
  636. package/es/components/input/style/themes/dnb-input-theme-sbanken.scss +15 -23
  637. package/es/components/input/style/themes/dnb-input-theme-ui.css +1 -1
  638. package/es/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  639. package/es/components/input/style/themes/dnb-input-theme-ui.scss +9 -3
  640. package/es/components/input-masked/InputMaskedUtils.js +1 -1
  641. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  642. package/es/components/modal/Modal.js.map +1 -1
  643. package/es/components/modal/parts/ModalHeaderBar.js +0 -4
  644. package/es/components/modal/parts/ModalHeaderBar.js.map +1 -1
  645. package/es/components/pagination/Pagination.js.map +1 -1
  646. package/es/components/pagination/style/dnb-pagination.css +20 -0
  647. package/es/components/pagination/style/dnb-pagination.min.css +1 -1
  648. package/es/components/pagination/style/dnb-pagination.scss +24 -0
  649. package/es/components/pagination/style/themes/dnb-pagination-theme-sbanken.css +26 -0
  650. package/es/components/pagination/style/themes/dnb-pagination-theme-sbanken.min.css +1 -0
  651. package/es/components/pagination/style/themes/dnb-pagination-theme-sbanken.scss +35 -0
  652. package/es/components/pagination/style/themes/dnb-pagination-theme-ui.css +0 -24
  653. package/es/components/pagination/style/themes/dnb-pagination-theme-ui.min.css +1 -1
  654. package/es/components/pagination/style/themes/dnb-pagination-theme-ui.scss +0 -30
  655. package/es/components/radio/Radio.d.ts +4 -0
  656. package/es/components/radio/Radio.js +6 -4
  657. package/es/components/radio/Radio.js.map +1 -1
  658. package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +15 -5
  659. package/es/components/section/Section.d.ts +26 -1
  660. package/es/components/section/Section.js +3 -2
  661. package/es/components/section/Section.js.map +1 -1
  662. package/es/components/section/style/dnb-section.css +1 -1
  663. package/es/components/section/style/dnb-section.scss +8 -3
  664. package/es/components/section/style/themes/dnb-section-theme-sbanken.css +39 -0
  665. package/es/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -0
  666. package/es/components/section/style/themes/dnb-section-theme-sbanken.scss +56 -0
  667. package/es/components/section/style/themes/dnb-section-theme-ui.css +28 -13
  668. package/es/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  669. package/es/components/section/style/themes/dnb-section-theme-ui.scss +37 -14
  670. package/es/components/skeleton/style/dnb-skeleton.scss +8 -5
  671. package/es/components/slider/style/dnb-slider.scss +4 -2
  672. package/es/components/space/SpacingUtils.js.map +1 -1
  673. package/es/components/step-indicator/StepIndicator.d.ts +89 -75
  674. package/es/components/step-indicator/StepIndicator.js +29 -25
  675. package/es/components/step-indicator/StepIndicator.js.map +1 -1
  676. package/es/components/step-indicator/StepIndicatorContext.d.ts +45 -15
  677. package/es/components/step-indicator/StepIndicatorContext.js +94 -114
  678. package/es/components/step-indicator/StepIndicatorContext.js.map +1 -1
  679. package/es/components/step-indicator/StepIndicatorItem.d.ts +59 -61
  680. package/es/components/step-indicator/StepIndicatorItem.js +173 -223
  681. package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
  682. package/es/components/step-indicator/StepIndicatorList.d.ts +6 -8
  683. package/es/components/step-indicator/StepIndicatorList.js +43 -48
  684. package/es/components/step-indicator/StepIndicatorList.js.map +1 -1
  685. package/es/components/step-indicator/StepIndicatorModal.d.ts +6 -14
  686. package/es/components/step-indicator/StepIndicatorModal.js +38 -48
  687. package/es/components/step-indicator/StepIndicatorModal.js.map +1 -1
  688. package/es/components/step-indicator/StepIndicatorProps.d.ts +2 -55
  689. package/es/components/step-indicator/StepIndicatorProps.js +3 -45
  690. package/es/components/step-indicator/StepIndicatorProps.js.map +1 -1
  691. package/es/components/step-indicator/StepIndicatorSidebar.d.ts +27 -21
  692. package/es/components/step-indicator/StepIndicatorSidebar.js +39 -52
  693. package/es/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  694. package/es/components/step-indicator/StepIndicatorTriggerButton.d.ts +16 -17
  695. package/es/components/step-indicator/StepIndicatorTriggerButton.js +62 -78
  696. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  697. package/es/components/switch/Switch.d.ts +4 -0
  698. package/es/components/switch/Switch.js +6 -4
  699. package/es/components/switch/Switch.js.map +1 -1
  700. package/es/components/switch/style/themes/dnb-switch-theme-ui.scss +3 -1
  701. package/es/components/table/TableContainer.js.map +1 -1
  702. package/es/components/table/style/table-accordion.scss +18 -6
  703. package/es/components/table/style/table-header-buttons.scss +3 -1
  704. package/es/components/table/style/table-tr.scss +6 -2
  705. package/es/components/table/style/themes/dnb-table-theme-sbanken.css +56 -7
  706. package/es/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  707. package/es/components/table/style/themes/dnb-table-theme-sbanken.scss +21 -5
  708. package/es/components/table/style/themes/dnb-table-theme-ui.scss +3 -1
  709. package/es/components/timeline/TimelineItem.d.ts +3 -2
  710. package/es/components/timeline/TimelineItem.js +89 -58
  711. package/es/components/timeline/TimelineItem.js.map +1 -1
  712. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.css +3 -2
  713. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +3 -1
  714. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.scss +3 -2
  715. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +3 -1
  716. package/es/elements/lib.d.ts +1 -1
  717. package/es/elements/typography/H.d.ts +5 -3
  718. package/es/elements/typography/H.js +8 -4
  719. package/es/elements/typography/H.js.map +1 -1
  720. package/es/elements/typography/H1.js +2 -2
  721. package/es/elements/typography/H1.js.map +1 -1
  722. package/es/elements/typography/H2.js +2 -2
  723. package/es/elements/typography/H2.js.map +1 -1
  724. package/es/elements/typography/H3.js +2 -2
  725. package/es/elements/typography/H3.js.map +1 -1
  726. package/es/elements/typography/H4.js +2 -2
  727. package/es/elements/typography/H4.js.map +1 -1
  728. package/es/elements/typography/H5.js +2 -2
  729. package/es/elements/typography/H5.js.map +1 -1
  730. package/es/elements/typography/H6.js +2 -2
  731. package/es/elements/typography/H6.js.map +1 -1
  732. package/es/elements/typography/style/dnb-typography.scss +3 -0
  733. package/es/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +12 -2
  734. package/es/elements/typography/style/typography-mixins.scss +5 -0
  735. package/es/extensions/forms/DataContext/Provider.js +9 -9
  736. package/es/extensions/forms/DataContext/Provider.js.map +1 -1
  737. package/es/extensions/forms/DataContext/index.js.map +1 -1
  738. package/es/extensions/forms/Field/ArraySelection.d.ts +2 -1
  739. package/es/extensions/forms/Field/ArraySelection.js +49 -33
  740. package/es/extensions/forms/Field/ArraySelection.js.map +1 -1
  741. package/es/extensions/forms/Field/CountryCode.d.ts +10 -0
  742. package/es/extensions/forms/Field/CountryCode.js +67 -0
  743. package/es/extensions/forms/Field/CountryCode.js.map +1 -0
  744. package/es/extensions/forms/Field/Currency.d.ts +2 -2
  745. package/es/extensions/forms/Field/Currency.js +6 -37
  746. package/es/extensions/forms/Field/Currency.js.map +1 -1
  747. package/es/extensions/forms/Field/Date.d.ts +2 -2
  748. package/es/extensions/forms/Field/Date.js +11 -7
  749. package/es/extensions/forms/Field/Date.js.map +1 -1
  750. package/es/extensions/forms/Field/Number.d.ts +7 -3
  751. package/es/extensions/forms/Field/Number.js +47 -23
  752. package/es/extensions/forms/Field/Number.js.map +1 -1
  753. package/es/extensions/forms/Field/PhoneNumber.d.ts +7 -2
  754. package/es/extensions/forms/Field/PhoneNumber.js +44 -41
  755. package/es/extensions/forms/Field/PhoneNumber.js.map +1 -1
  756. package/es/extensions/forms/Field/PostalCodeAndCity.d.ts +1 -1
  757. package/es/extensions/forms/Field/PostalCodeAndCity.js +1 -1
  758. package/es/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  759. package/es/extensions/forms/Field/Selection.d.ts +6 -4
  760. package/es/extensions/forms/Field/Selection.js +86 -38
  761. package/es/extensions/forms/Field/Selection.js.map +1 -1
  762. package/es/extensions/forms/Field/String.d.ts +3 -3
  763. package/es/extensions/forms/Field/String.js +33 -18
  764. package/es/extensions/forms/Field/String.js.map +1 -1
  765. package/es/extensions/forms/Field/Toggle.js +11 -9
  766. package/es/extensions/forms/Field/Toggle.js.map +1 -1
  767. package/es/extensions/forms/Field/fields.scss +2 -2
  768. package/es/extensions/forms/Field/hooks/useField.d.ts +6 -8
  769. package/es/extensions/forms/Field/hooks/useField.js +34 -31
  770. package/es/extensions/forms/Field/hooks/useField.js.map +1 -1
  771. package/es/extensions/forms/Field/index.d.ts +2 -0
  772. package/es/extensions/forms/Field/index.js +3 -1
  773. package/es/extensions/forms/Field/index.js.map +1 -1
  774. package/es/extensions/forms/Field/style/dnb-array-selection.css +13 -0
  775. package/es/extensions/forms/Field/style/dnb-array-selection.min.css +1 -0
  776. package/es/extensions/forms/Field/style/dnb-array-selection.scss +15 -0
  777. package/es/extensions/forms/Field/style/dnb-country-code.css +12 -0
  778. package/es/extensions/forms/Field/style/dnb-country-code.min.css +1 -0
  779. package/es/extensions/forms/Field/style/dnb-country-code.scss +19 -0
  780. package/es/extensions/forms/Field/style/dnb-phone-number.css +6 -7
  781. package/es/extensions/forms/Field/style/dnb-phone-number.min.css +1 -1
  782. package/es/extensions/forms/Field/style/dnb-phone-number.scss +7 -8
  783. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.css +5 -2
  784. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -1
  785. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.scss +5 -1
  786. package/es/extensions/forms/Field/style/dnb-selection.css +5 -2
  787. package/es/extensions/forms/Field/style/dnb-selection.min.css +1 -1
  788. package/es/extensions/forms/Field/style/dnb-selection.scss +7 -1
  789. package/es/extensions/forms/Field/style/index.d.ts +2 -1
  790. package/es/extensions/forms/Field/style/index.js +2 -1
  791. package/es/extensions/forms/Field/style/index.js.map +1 -1
  792. package/es/extensions/forms/Field/style/index.scss +2 -2
  793. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +5 -0
  794. package/es/extensions/forms/FieldBlock/FieldBlock.js +19 -9
  795. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  796. package/es/extensions/forms/FieldBlock/index.js.map +1 -1
  797. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +39 -1
  798. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  799. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +60 -1
  800. package/es/extensions/forms/FieldGroup/index.js.map +1 -1
  801. package/es/extensions/forms/Layout/Card.js +2 -2
  802. package/es/extensions/forms/Layout/Card.js.map +1 -1
  803. package/es/extensions/forms/Layout/FlexContainer.d.ts +1 -0
  804. package/es/extensions/forms/Layout/FlexContainer.js +5 -3
  805. package/es/extensions/forms/Layout/FlexContainer.js.map +1 -1
  806. package/es/extensions/forms/Layout/FlexItem.d.ts +1 -0
  807. package/es/extensions/forms/Layout/FlexItem.js +2 -1
  808. package/es/extensions/forms/Layout/FlexItem.js.map +1 -1
  809. package/es/extensions/forms/Layout/SubHeading.js +2 -1
  810. package/es/extensions/forms/Layout/SubHeading.js.map +1 -1
  811. package/es/extensions/forms/Layout/style/dnb-card.css +3 -3
  812. package/es/extensions/forms/Layout/style/dnb-card.min.css +1 -1
  813. package/es/extensions/forms/Layout/style/dnb-card.scss +6 -4
  814. package/es/extensions/forms/Layout/style/dnb-flex-container.css +9 -0
  815. package/es/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -1
  816. package/es/extensions/forms/Layout/style/dnb-flex-container.scss +14 -0
  817. package/es/extensions/forms/Layout/style/dnb-flex-item.css +9 -0
  818. package/es/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -1
  819. package/es/extensions/forms/Layout/style/dnb-flex-item.scss +14 -0
  820. package/es/extensions/forms/StepsLayout/StepsLayout.js +1 -1
  821. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  822. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +11 -5
  823. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  824. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +10 -3
  825. package/es/extensions/forms/ValueBlock/index.js.map +1 -1
  826. package/es/extensions/forms/field-types.d.ts +7 -1
  827. package/es/extensions/forms/field-types.js.map +1 -1
  828. package/es/extensions/forms/style/dnb-forms.css +112 -42
  829. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  830. package/es/extensions/forms/style/index.d.ts +1 -0
  831. package/es/extensions/forms/style/index.js +1 -0
  832. package/es/extensions/forms/style/index.js.map +1 -0
  833. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -2
  834. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  835. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -2
  836. package/es/extensions/forms/utils/useWasChanged.d.ts +5 -0
  837. package/es/extensions/forms/utils/useWasChanged.js +51 -0
  838. package/es/extensions/forms/utils/useWasChanged.js.map +1 -0
  839. package/es/extensions/forms/variables.scss +3 -0
  840. package/es/extensions/lib.d.ts +1 -0
  841. package/es/extensions/payment-card/PaymentCard.d.ts +6 -2
  842. package/es/extensions/payment-card/PaymentCard.js +13 -2
  843. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  844. package/es/extensions/payment-card/icons/CardIn.d.ts +2 -0
  845. package/es/extensions/payment-card/icons/CardIn.js +18 -0
  846. package/es/extensions/payment-card/icons/CardIn.js.map +1 -0
  847. package/es/extensions/payment-card/icons/index.js +4 -1
  848. package/es/extensions/payment-card/icons/index.js.map +1 -1
  849. package/es/extensions/payment-card/style/dnb-payment-card.css +3 -2
  850. package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  851. package/es/extensions/payment-card/style/dnb-payment-card.scss +2 -2
  852. package/es/extensions/payment-card/utils/backgrounds/ung.js +1 -1
  853. package/es/extensions/payment-card/utils/backgrounds/ung.js.map +1 -1
  854. package/es/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  855. package/es/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  856. package/es/fragments/drawer-list/DrawerList.js +1 -1
  857. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  858. package/es/fragments/drawer-list/DrawerListPortal.js +2 -2
  859. package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  860. package/es/fragments/drawer-list/style/dnb-drawer-list.scss +3 -1
  861. package/es/shared/Context.d.ts +2 -0
  862. package/es/shared/Context.js.map +1 -1
  863. package/es/shared/Eufemia.d.ts +1 -1
  864. package/es/shared/Eufemia.js +2 -2
  865. package/es/shared/Eufemia.js.map +1 -1
  866. package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
  867. package/es/shared/helpers/withSnakeCaseProps.js.map +1 -1
  868. package/es/shared/libs/Shortcuts.js.map +1 -1
  869. package/es/shared/locales/en-GB.d.ts +2 -0
  870. package/es/shared/locales/en-GB.js +3 -1
  871. package/es/shared/locales/en-GB.js.map +1 -1
  872. package/es/shared/locales/en-US.d.ts +2 -0
  873. package/es/shared/locales/index.d.ts +4 -0
  874. package/es/shared/locales/nb-NO.d.ts +2 -0
  875. package/es/shared/locales/nb-NO.js +3 -1
  876. package/es/shared/locales/nb-NO.js.map +1 -1
  877. package/es/style/core/reset.scss +13 -3
  878. package/es/style/core/utilities.scss +3 -1
  879. package/es/style/dnb-ui-components.css +42 -19
  880. package/es/style/dnb-ui-components.min.css +1 -1
  881. package/es/style/dnb-ui-elements.css +6 -0
  882. package/es/style/dnb-ui-elements.min.css +1 -1
  883. package/es/style/dnb-ui-extensions.css +115 -44
  884. package/es/style/dnb-ui-extensions.min.css +1 -1
  885. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +6 -0
  886. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  887. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +189 -135
  888. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +7 -1
  889. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +115 -44
  890. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  891. package/es/style/themes/theme-sbanken/customisations.scss +0 -8
  892. package/es/style/themes/theme-sbanken/properties.js +6 -6
  893. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  894. package/es/style/themes/theme-sbanken/properties.scss +6 -6
  895. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +27 -26
  896. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  897. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +574 -615
  898. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +14 -2
  899. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +8 -7
  900. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +21 -2
  901. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  902. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +115 -44
  903. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  904. package/es/style/themes/theme-ui/fonts.scss +8 -4
  905. package/es/style/themes/theme-ui/ui-theme-basis.css +6 -0
  906. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  907. package/es/style/themes/theme-ui/ui-theme-components.css +136 -98
  908. package/es/style/themes/theme-ui/ui-theme-components.min.css +7 -1
  909. package/es/style/themes/theme-ui/ui-theme-elements.css +6 -0
  910. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  911. package/es/style/themes/theme-ui/ui-theme-extensions.css +115 -44
  912. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  913. package/es/style/themes/theme-ui/ui-theme-tags.css +3 -0
  914. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  915. package/es/style/themes/theme-ui/ui-theme-tags.scss +9 -4
  916. package/esm/dnb-ui-basis.min.mjs +1 -1
  917. package/esm/dnb-ui-components.min.mjs +1 -1
  918. package/esm/dnb-ui-elements.min.mjs +1 -1
  919. package/esm/dnb-ui-extensions.min.mjs +6 -6
  920. package/esm/dnb-ui-lib.min.mjs +1 -1
  921. package/extensions/forms/DataContext/Provider.js +9 -9
  922. package/extensions/forms/DataContext/Provider.js.map +1 -1
  923. package/extensions/forms/DataContext/index.js.map +1 -1
  924. package/extensions/forms/Field/ArraySelection.d.ts +2 -1
  925. package/extensions/forms/Field/ArraySelection.js +49 -33
  926. package/extensions/forms/Field/ArraySelection.js.map +1 -1
  927. package/extensions/forms/Field/CountryCode.d.ts +10 -0
  928. package/extensions/forms/Field/CountryCode.js +68 -0
  929. package/extensions/forms/Field/CountryCode.js.map +1 -0
  930. package/extensions/forms/Field/Currency.d.ts +2 -2
  931. package/extensions/forms/Field/Currency.js +6 -38
  932. package/extensions/forms/Field/Currency.js.map +1 -1
  933. package/extensions/forms/Field/Date.d.ts +2 -2
  934. package/extensions/forms/Field/Date.js +11 -7
  935. package/extensions/forms/Field/Date.js.map +1 -1
  936. package/extensions/forms/Field/Number.d.ts +7 -3
  937. package/extensions/forms/Field/Number.js +47 -23
  938. package/extensions/forms/Field/Number.js.map +1 -1
  939. package/extensions/forms/Field/PhoneNumber.d.ts +7 -2
  940. package/extensions/forms/Field/PhoneNumber.js +44 -43
  941. package/extensions/forms/Field/PhoneNumber.js.map +1 -1
  942. package/extensions/forms/Field/PostalCodeAndCity.d.ts +1 -1
  943. package/extensions/forms/Field/PostalCodeAndCity.js +1 -1
  944. package/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  945. package/extensions/forms/Field/Selection.d.ts +6 -4
  946. package/extensions/forms/Field/Selection.js +88 -39
  947. package/extensions/forms/Field/Selection.js.map +1 -1
  948. package/extensions/forms/Field/String.d.ts +3 -3
  949. package/extensions/forms/Field/String.js +33 -18
  950. package/extensions/forms/Field/String.js.map +1 -1
  951. package/extensions/forms/Field/Toggle.js +11 -9
  952. package/extensions/forms/Field/Toggle.js.map +1 -1
  953. package/extensions/forms/Field/fields.scss +2 -2
  954. package/extensions/forms/Field/hooks/useField.d.ts +6 -8
  955. package/extensions/forms/Field/hooks/useField.js +34 -33
  956. package/extensions/forms/Field/hooks/useField.js.map +1 -1
  957. package/extensions/forms/Field/index.d.ts +2 -0
  958. package/extensions/forms/Field/index.js +3 -1
  959. package/extensions/forms/Field/index.js.map +1 -1
  960. package/extensions/forms/Field/style/dnb-array-selection.css +13 -0
  961. package/extensions/forms/Field/style/dnb-array-selection.min.css +1 -0
  962. package/extensions/forms/Field/style/dnb-array-selection.scss +15 -0
  963. package/extensions/forms/Field/style/dnb-country-code.css +12 -0
  964. package/extensions/forms/Field/style/dnb-country-code.min.css +1 -0
  965. package/extensions/forms/Field/style/dnb-country-code.scss +19 -0
  966. package/extensions/forms/Field/style/dnb-phone-number.css +6 -7
  967. package/extensions/forms/Field/style/dnb-phone-number.min.css +1 -1
  968. package/extensions/forms/Field/style/dnb-phone-number.scss +7 -8
  969. package/extensions/forms/Field/style/dnb-postal-code-and-city.css +5 -2
  970. package/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -1
  971. package/extensions/forms/Field/style/dnb-postal-code-and-city.scss +5 -1
  972. package/extensions/forms/Field/style/dnb-selection.css +5 -2
  973. package/extensions/forms/Field/style/dnb-selection.min.css +1 -1
  974. package/extensions/forms/Field/style/dnb-selection.scss +7 -1
  975. package/extensions/forms/Field/style/index.d.ts +2 -1
  976. package/extensions/forms/Field/style/index.js +2 -1
  977. package/extensions/forms/Field/style/index.js.map +1 -1
  978. package/extensions/forms/Field/style/index.scss +2 -2
  979. package/extensions/forms/FieldBlock/FieldBlock.d.ts +5 -0
  980. package/extensions/forms/FieldBlock/FieldBlock.js +19 -9
  981. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  982. package/extensions/forms/FieldBlock/index.js.map +1 -1
  983. package/extensions/forms/FieldBlock/style/dnb-field-block.css +39 -1
  984. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  985. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +60 -1
  986. package/extensions/forms/FieldGroup/index.js.map +1 -1
  987. package/extensions/forms/Layout/Card.js +2 -2
  988. package/extensions/forms/Layout/Card.js.map +1 -1
  989. package/extensions/forms/Layout/FlexContainer.d.ts +1 -0
  990. package/extensions/forms/Layout/FlexContainer.js +5 -3
  991. package/extensions/forms/Layout/FlexContainer.js.map +1 -1
  992. package/extensions/forms/Layout/FlexItem.d.ts +1 -0
  993. package/extensions/forms/Layout/FlexItem.js +2 -1
  994. package/extensions/forms/Layout/FlexItem.js.map +1 -1
  995. package/extensions/forms/Layout/SubHeading.js +2 -1
  996. package/extensions/forms/Layout/SubHeading.js.map +1 -1
  997. package/extensions/forms/Layout/style/dnb-card.css +3 -3
  998. package/extensions/forms/Layout/style/dnb-card.min.css +1 -1
  999. package/extensions/forms/Layout/style/dnb-card.scss +6 -4
  1000. package/extensions/forms/Layout/style/dnb-flex-container.css +9 -0
  1001. package/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -1
  1002. package/extensions/forms/Layout/style/dnb-flex-container.scss +14 -0
  1003. package/extensions/forms/Layout/style/dnb-flex-item.css +9 -0
  1004. package/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -1
  1005. package/extensions/forms/Layout/style/dnb-flex-item.scss +14 -0
  1006. package/extensions/forms/StepsLayout/StepsLayout.js +1 -1
  1007. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  1008. package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +11 -5
  1009. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  1010. package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +10 -3
  1011. package/extensions/forms/ValueBlock/index.js.map +1 -1
  1012. package/extensions/forms/field-types.d.ts +7 -1
  1013. package/extensions/forms/field-types.js.map +1 -1
  1014. package/extensions/forms/style/dnb-forms.css +112 -42
  1015. package/extensions/forms/style/dnb-forms.min.css +1 -1
  1016. package/extensions/forms/style/index.d.ts +1 -0
  1017. package/extensions/forms/style/index.js +1 -0
  1018. package/extensions/forms/style/index.js.map +1 -0
  1019. package/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -2
  1020. package/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  1021. package/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -2
  1022. package/extensions/forms/utils/useWasChanged.d.ts +5 -0
  1023. package/extensions/forms/utils/useWasChanged.js +56 -0
  1024. package/extensions/forms/utils/useWasChanged.js.map +1 -0
  1025. package/extensions/forms/variables.scss +3 -0
  1026. package/extensions/lib.d.ts +1 -0
  1027. package/extensions/payment-card/PaymentCard.d.ts +6 -2
  1028. package/extensions/payment-card/PaymentCard.js +13 -2
  1029. package/extensions/payment-card/PaymentCard.js.map +1 -1
  1030. package/extensions/payment-card/icons/CardIn.d.ts +2 -0
  1031. package/extensions/payment-card/icons/CardIn.js +18 -0
  1032. package/extensions/payment-card/icons/CardIn.js.map +1 -0
  1033. package/extensions/payment-card/icons/index.js +4 -1
  1034. package/extensions/payment-card/icons/index.js.map +1 -1
  1035. package/extensions/payment-card/style/dnb-payment-card.css +3 -2
  1036. package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  1037. package/extensions/payment-card/style/dnb-payment-card.scss +2 -2
  1038. package/extensions/payment-card/utils/backgrounds/ung.js +1 -1
  1039. package/extensions/payment-card/utils/backgrounds/ung.js.map +1 -1
  1040. package/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  1041. package/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  1042. package/fragments/drawer-list/DrawerList.js +1 -1
  1043. package/fragments/drawer-list/DrawerList.js.map +1 -1
  1044. package/fragments/drawer-list/DrawerListPortal.js +2 -2
  1045. package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  1046. package/fragments/drawer-list/style/dnb-drawer-list.scss +3 -1
  1047. package/package.json +1 -1
  1048. package/shared/Context.d.ts +2 -0
  1049. package/shared/Context.js.map +1 -1
  1050. package/shared/Eufemia.d.ts +1 -1
  1051. package/shared/Eufemia.js +2 -2
  1052. package/shared/Eufemia.js.map +1 -1
  1053. package/shared/helpers/withCamelCaseProps.js.map +1 -1
  1054. package/shared/helpers/withSnakeCaseProps.js.map +1 -1
  1055. package/shared/libs/Shortcuts.js.map +1 -1
  1056. package/shared/locales/en-GB.d.ts +2 -0
  1057. package/shared/locales/en-GB.js +3 -1
  1058. package/shared/locales/en-GB.js.map +1 -1
  1059. package/shared/locales/en-US.d.ts +2 -0
  1060. package/shared/locales/index.d.ts +4 -0
  1061. package/shared/locales/nb-NO.d.ts +2 -0
  1062. package/shared/locales/nb-NO.js +3 -1
  1063. package/shared/locales/nb-NO.js.map +1 -1
  1064. package/style/core/reset.scss +13 -3
  1065. package/style/core/utilities.scss +3 -1
  1066. package/style/dnb-ui-components.css +42 -19
  1067. package/style/dnb-ui-components.min.css +1 -1
  1068. package/style/dnb-ui-elements.css +6 -0
  1069. package/style/dnb-ui-elements.min.css +1 -1
  1070. package/style/dnb-ui-extensions.css +115 -44
  1071. package/style/dnb-ui-extensions.min.css +1 -1
  1072. package/style/themes/theme-eiendom/eiendom-theme-basis.css +6 -0
  1073. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1074. package/style/themes/theme-eiendom/eiendom-theme-components.css +189 -135
  1075. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +7 -1
  1076. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +115 -44
  1077. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1078. package/style/themes/theme-sbanken/customisations.scss +0 -8
  1079. package/style/themes/theme-sbanken/properties.js +6 -6
  1080. package/style/themes/theme-sbanken/properties.js.map +1 -1
  1081. package/style/themes/theme-sbanken/properties.scss +6 -6
  1082. package/style/themes/theme-sbanken/sbanken-theme-basis.css +27 -26
  1083. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1084. package/style/themes/theme-sbanken/sbanken-theme-components.css +574 -615
  1085. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +14 -2
  1086. package/style/themes/theme-sbanken/sbanken-theme-components.scss +8 -7
  1087. package/style/themes/theme-sbanken/sbanken-theme-elements.css +21 -2
  1088. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  1089. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +115 -44
  1090. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1091. package/style/themes/theme-ui/fonts.scss +8 -4
  1092. package/style/themes/theme-ui/ui-theme-basis.css +6 -0
  1093. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1094. package/style/themes/theme-ui/ui-theme-components.css +136 -98
  1095. package/style/themes/theme-ui/ui-theme-components.min.css +7 -1
  1096. package/style/themes/theme-ui/ui-theme-elements.css +6 -0
  1097. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1098. package/style/themes/theme-ui/ui-theme-extensions.css +115 -44
  1099. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1100. package/style/themes/theme-ui/ui-theme-tags.css +3 -0
  1101. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1102. package/style/themes/theme-ui/ui-theme-tags.scss +9 -4
  1103. package/umd/dnb-ui-basis.min.js +1 -1
  1104. package/umd/dnb-ui-components.min.js +1 -1
  1105. package/umd/dnb-ui-elements.min.js +1 -1
  1106. package/umd/dnb-ui-extensions.min.js +6 -6
  1107. package/umd/dnb-ui-lib.min.js +1 -1
  1108. package/cjs/extensions/forms/Field/style/dnb-number.css +0 -11
  1109. package/cjs/extensions/forms/Field/style/dnb-number.min.css +0 -1
  1110. package/cjs/extensions/forms/Field/style/dnb-number.scss +0 -19
  1111. package/cjs/extensions/forms/Field/style/dnb-string.css +0 -11
  1112. package/cjs/extensions/forms/Field/style/dnb-string.min.css +0 -1
  1113. package/cjs/extensions/forms/Field/style/dnb-string.scss +0 -19
  1114. package/es/extensions/forms/Field/style/dnb-number.css +0 -11
  1115. package/es/extensions/forms/Field/style/dnb-number.min.css +0 -1
  1116. package/es/extensions/forms/Field/style/dnb-number.scss +0 -19
  1117. package/es/extensions/forms/Field/style/dnb-string.css +0 -11
  1118. package/es/extensions/forms/Field/style/dnb-string.min.css +0 -1
  1119. package/es/extensions/forms/Field/style/dnb-string.scss +0 -19
  1120. package/extensions/forms/Field/style/dnb-number.css +0 -11
  1121. package/extensions/forms/Field/style/dnb-number.min.css +0 -1
  1122. package/extensions/forms/Field/style/dnb-number.scss +0 -19
  1123. package/extensions/forms/Field/style/dnb-string.css +0 -11
  1124. package/extensions/forms/Field/style/dnb-string.min.css +0 -1
  1125. package/extensions/forms/Field/style/dnb-string.scss +0 -19
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerList.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_keycode","_componentHelper","_Theme","_SpacingHelper","_DrawerListContext","_DrawerListProvider","_DrawerListPortal","_DrawerListHelpers","_excluded","_excluded2","_excluded3","_excluded4","obj","__esModule","default","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","i","Object","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_extends","assign","bind","hasOwnProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","propsToFilterOut","on_show","on_hide","handle_dismiss_focus","on_change","on_pre_change","on_resize","on_select","on_state_update","on_key_down","options_render","wrapper_element","DrawerList","React","PureComponent","constructor","props","_id","id","makeUniqueId","render","_this$context","hasProvider","context","drawerList","createElement","DrawerListInstance","data","children","exports","DrawerListContext","DrawerListProvider","blurDelay","drawerListDefaultProps","process","env","NODE_ENV","propTypes","drawerListPropTypes","e","keycode","hasFocusOnElement","preventDefault","setHidden","event","selected_item","parseFloat","currentTarget","getAttribute","selectItemAndClose","fireSelectEvent","state","setState","entries","reduce","acc","_ref","triangle_position","_this$context2","extendPropsWithContextInClassComponent","defaultProps","getTranslation","role","align_drawer","fixed_position","independent_width","scrollable","focusable","size","no_animation","no_scroll_animation","prevent_selection","action_menu","is_popup","portal_class","list_class","ignore_events","className","class","_className","cache_hash","_cache_hash","_wrapper_element","_triangle_position","direction","_direction","max_height","_max_height","_data","prepared_data","_prepared_data","raw_data","_raw_data","opened","_opened","_value","attributes","hidden","active_item","showFocusRing","closestToTop","closestToBottom","usePortal","addObservers","removeObservers","_refShell","_refTriangle","_refUl","_refRoot","mainParams","classnames","isTrue","createSpacingClasses","listParams","ulParams","tabIndex","style","maxHeight","ref","validateDOMAttributes","ignoreEvents","Items","map","dataItem","__id","hash","liParams","class_name","active","selected","onClick","selectItemHandler","onKeyDown","preventTab","Item","mainList","Fragment","Options","triangleRef","OnMounted","rootRef","include_owner_width","getThemeClasses","theme","memo","forwardRef","rest","prevProps","nextProps","displayName","PropTypes","oneOfType","node","func","isRequired","string","bool","on_click","params","dispatchCustomElementEvent","ItemContent","number","_ref2","content","Array","isArray","item","n","suffix_value","HorizontalItem","_ref3","componentDidMount","componentWillUnmount"],"sources":["../../../../src/fragments/drawer-list/DrawerList.js"],"sourcesContent":["/**\n * Web List Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { getThemeClasses } from '../../shared/Theme'\nimport { createSpacingClasses } from '../../components/space/SpacingHelper'\n\nimport DrawerListContext from './DrawerListContext'\nimport DrawerListProvider from './DrawerListProvider'\nimport DrawerListPortal from './DrawerListPortal'\nimport {\n drawerListPropTypes,\n drawerListDefaultProps,\n} from './DrawerListHelpers'\n\nconst propsToFilterOut = {\n on_show: null,\n on_hide: null,\n handle_dismiss_focus: null,\n on_change: null,\n on_pre_change: null,\n on_resize: null,\n on_select: null,\n on_state_update: null,\n on_key_down: null,\n options_render: null,\n wrapper_element: null,\n}\n\nexport default class DrawerList extends React.PureComponent {\n static contextType = DrawerListContext // only used for the hasProvide check\n\n static blurDelay = DrawerListProvider.blurDelay // some ms more than \"DrawerListSlideDown 200ms\" = 201 // some ms more than \"DrawerListSlideDown 200ms\"\n\n static propTypes = {\n ...drawerListPropTypes,\n }\n\n static defaultProps = {\n ...drawerListDefaultProps,\n }\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n }\n\n render() {\n const hasProvider = this.context?.drawerList\n\n if (hasProvider) {\n return <DrawerListInstance {...this.props} />\n }\n\n return (\n <DrawerListProvider\n id={this._id}\n {...this.props}\n data={this.props.data || this.props.children}\n >\n <DrawerListInstance id={this._id} {...this.props} />\n </DrawerListProvider>\n )\n }\n}\n\nclass DrawerListInstance extends React.PureComponent {\n static propTypes = DrawerList.propTypes\n static defaultProps = DrawerList.defaultProps\n static contextType = DrawerListContext\n\n constructor(props, context) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n this.state = this.state || {}\n\n // send along the event handlers to the provider state\n context.drawerList.setState(\n Object.entries(propsToFilterOut).reduce((acc, [key]) => {\n if (props[key]) {\n acc[key] = props[key]\n }\n return acc\n }, {})\n )\n\n context.drawerList.setState({\n triangle_position: props.triangle_position,\n })\n }\n\n preventTab = (e) => {\n switch (keycode(e)) {\n case 'tab':\n if (!this.context.drawerList.hasFocusOnElement) {\n e.preventDefault()\n this.context.drawerList.setHidden()\n }\n break\n\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n selectItemHandler = (event) => {\n // In case we want to stop if the users makes a number selection.\n // Should optional\n // if (getPreviousSibling('dnb-number-format', event.target)) {\n // return // stop\n // }\n const selected_item = parseFloat(\n event.currentTarget.getAttribute('data-item')\n )\n if (selected_item > -1) {\n this.context.drawerList.selectItemAndClose(selected_item, {\n fireSelectEvent: true,\n event,\n })\n }\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n DrawerList.defaultProps,\n this.context.getTranslation(this.props).DrawerList\n )\n\n const {\n role,\n align_drawer,\n fixed_position,\n independent_width,\n scrollable,\n focusable,\n size,\n no_animation,\n no_scroll_animation,\n prevent_selection,\n action_menu,\n is_popup,\n portal_class,\n list_class,\n ignore_events,\n options_render,\n className,\n class: _className,\n cache_hash: _cache_hash, // eslint-disable-line\n wrapper_element: _wrapper_element, // eslint-disable-line\n triangle_position: _triangle_position, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n max_height: _max_height, // eslint-disable-line\n id: _id, // eslint-disable-line\n data: _data, // eslint-disable-line\n prepared_data: _prepared_data, // eslint-disable-line\n raw_data: _raw_data, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n children,\n\n ...attributes\n } = props\n\n const id = this._id\n\n const {\n data,\n opened,\n hidden,\n triangle_position,\n direction,\n max_height,\n cache_hash,\n selected_item,\n active_item,\n showFocusRing,\n closestToTop,\n closestToBottom,\n usePortal,\n addObservers,\n removeObservers,\n _refShell,\n _refTriangle,\n _refUl,\n _refRoot,\n } = this.context.drawerList\n\n const mainParams = {\n id: `${id}-drawer-list`,\n className: classnames(\n 'dnb-drawer-list',\n opened && 'dnb-drawer-list--opened',\n hidden && 'dnb-drawer-list--hidden',\n `dnb-drawer-list--${direction}`,\n triangle_position &&\n `dnb-drawer-list--triangle-position-${triangle_position}`,\n align_drawer && `dnb-drawer-list--${align_drawer}`,\n size && `dnb-drawer-list--${size}`,\n isTrue(action_menu) && `dnb-drawer-list--action-menu`,\n isTrue(is_popup) && 'dnb-drawer-list--is-popup',\n isTrue(independent_width) ||\n (isTrue(action_menu) && 'dnb-drawer-list--independent-width'),\n isTrue(scrollable) && 'dnb-drawer-list--scroll',\n isTrue(no_scroll_animation) &&\n 'dnb-drawer-list--no-scroll-animation',\n createSpacingClasses(props),\n _className,\n className\n ),\n ...attributes,\n }\n\n const listParams = {\n id: `${id}-listbox`,\n /**\n * We may consider to use the hidden attribute in future\n * Or we may add an prop to put the HTML in the DOM, if needed\n */\n // hidden: hidden !== false,\n className: classnames(\n 'dnb-drawer-list__list',\n isTrue(no_animation) && 'dnb-drawer-list__list--no-animation',\n list_class\n ),\n }\n\n const ulParams = {\n role,\n id: `${id}-ul`,\n 'aria-expanded': opened,\n 'aria-labelledby': `${id}-label`,\n tabIndex: '-1',\n style: {\n maxHeight: max_height > 0 ? `${max_height}rem` : null,\n },\n ref: _refUl,\n }\n\n if (\n !hidden &&\n (parseFloat(active_item) > -1 ||\n (!(parseFloat(active_item) > -1) &&\n !(parseFloat(selected_item) > -1)))\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${\n active_item || 0\n }`\n } else if (\n !isTrue(prevent_selection) &&\n !hidden &&\n parseFloat(selected_item) > -1\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${selected_item}`\n }\n\n if (isTrue(focusable)) {\n ulParams.tabIndex = '0'\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, mainParams)\n validateDOMAttributes(null, listParams)\n validateDOMAttributes(null, ulParams)\n\n // make it possible to grab the rest attributes and return it with all events\n Object.assign(\n this.context.drawerList.attributes,\n validateDOMAttributes(null, attributes)\n )\n\n const ignoreEvents = isTrue(ignore_events)\n\n const Items = () =>\n data.map((dataItem, i) => {\n const _id = dataItem.__id\n const hash = `option-${id}-${_id}-${i}`\n const liParams = {\n role: role === 'menu' ? 'menuitem' : 'option',\n 'data-item': _id,\n id: `option-${id}-${_id}`,\n hash,\n className: classnames(\n // helper classes\n i === closestToTop && 'closest-to-top',\n i === closestToBottom && 'closest-to-bottom',\n i === 0 && 'first-of-type', // because of the triangle element\n i === data.length - 1 && 'last-of-type', // because of the triangle element\n ignoreEvents || (dataItem.ignore_events && 'ignore-events'),\n dataItem.class_name\n ),\n active: _id == active_item,\n selected: !dataItem.ignore_events && _id == selected_item,\n onClick: this.selectItemHandler,\n onKeyDown: this.preventTab,\n }\n\n if (ignoreEvents) {\n liParams.active = null\n liParams.selected = null\n liParams.onClick = null\n liParams.onKeyDown = null\n liParams.className = classnames(\n liParams.className,\n 'dnb-drawer-list__option--ignore'\n )\n }\n\n return (\n <DrawerList.Item key={hash} {...liParams}>\n {dataItem}\n </DrawerList.Item>\n )\n })\n\n const mainList = (\n <span {...mainParams} ref={_refShell}>\n <span {...listParams}>\n {hidden === false && data && data.length > 0 ? (\n <>\n <DrawerList.Options\n cache_hash={\n cache_hash +\n active_item +\n selected_item +\n closestToTop +\n closestToBottom +\n direction +\n max_height\n }\n {...ulParams}\n showFocusRing={showFocusRing}\n triangleRef={_refTriangle}\n >\n {typeof options_render === 'function' ? (\n options_render({ data, Items, Item: DrawerList.Item })\n ) : (\n <Items />\n )}\n </DrawerList.Options>\n <OnMounted\n addObservers={addObservers}\n removeObservers={removeObservers}\n />\n </>\n ) : (\n children && (\n <span className=\"dnb-drawer-list__content\">\n {children}\n <span\n className=\"dnb-drawer-list__triangle\"\n ref={_refTriangle}\n />\n </span>\n )\n )}\n </span>\n </span>\n )\n\n return (\n <span\n className={classnames(\n 'dnb-drawer-list__root',\n usePortal && 'dnb-drawer-list__root--portal'\n )}\n ref={_refRoot}\n >\n {usePortal ? (\n <DrawerListPortal\n id={this._id}\n rootRef={_refRoot}\n opened={hidden === false}\n include_owner_width={align_drawer === 'right'}\n independent_width={isTrue(independent_width)}\n fixed_position={isTrue(fixed_position)}\n className={getThemeClasses(this.context?.theme, portal_class)}\n >\n {mainList}\n </DrawerListPortal>\n ) : (\n mainList\n )}\n </span>\n )\n }\n}\n\n// DrawerList List\nDrawerList.Options = React.memo(\n React.forwardRef((props, ref) => {\n const {\n children,\n className,\n class: _className,\n triangleRef = null,\n cache_hash, // eslint-disable-line\n showFocusRing,\n ...rest\n } = props\n\n return (\n <ul\n className={classnames(\n 'dnb-drawer-list__options',\n showFocusRing && 'dnb-drawer-list__options--focusring',\n className,\n _className\n )}\n {...rest}\n ref={ref}\n >\n {children}\n <li\n className=\"dnb-drawer-list__triangle\"\n aria-hidden\n ref={triangleRef}\n />\n </ul>\n )\n }),\n (prevProps, nextProps) => {\n if (!prevProps.cache_hash) {\n return null\n }\n return prevProps.cache_hash === nextProps.cache_hash\n }\n)\nDrawerList.Options.displayName = 'DrawerList.Options'\nDrawerList.Options.propTypes = {\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func])\n .isRequired,\n cache_hash: PropTypes.string,\n showFocusRing: PropTypes.bool,\n className: PropTypes.string,\n class: PropTypes.string,\n triangleRef: PropTypes.object,\n}\nDrawerList.Options.defaultProps = {\n cache_hash: null,\n showFocusRing: false,\n className: null,\n class: null,\n triangleRef: null,\n}\n\n// DrawerList Item\nDrawerList.Item = React.forwardRef((props, ref) => {\n const {\n role, // eslint-disable-line\n hash, // eslint-disable-line\n children, // eslint-disable-line\n className, // eslint-disable-line\n class: _className, // eslint-disable-line\n on_click, // eslint-disable-line\n selected, // eslint-disable-line\n active, // eslint-disable-line\n value, // eslint-disable-line\n ...rest\n } = props\n\n const params = {\n className: classnames(\n className,\n _className,\n 'dnb-drawer-list__option',\n selected && 'dnb-drawer-list__option--selected',\n active && 'dnb-drawer-list__option--focus'\n ),\n role,\n tabIndex: selected ? '0' : '-1',\n 'aria-selected': active,\n }\n if (selected) {\n params['aria-current'] = true // has best support on NVDA\n }\n\n if (on_click) {\n params.onClick = () =>\n dispatchCustomElementEvent(\n {\n props: { ...props, displayName: DrawerList.Item.displayName },\n },\n 'on_click',\n {\n selected,\n value,\n ...rest,\n }\n )\n }\n\n return (\n <li {...params} {...rest} ref={ref} key={'li' + hash}>\n <span className=\"dnb-drawer-list__option__inner\">\n <ItemContent hash={hash}>{children}</ItemContent>\n </span>\n </li>\n )\n})\nDrawerList.Item.displayName = 'DrawerList.Item'\nDrawerList.Item.propTypes = {\n role: PropTypes.string,\n hash: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.node,\n PropTypes.func,\n PropTypes.object,\n ]).isRequired,\n className: PropTypes.string,\n class: PropTypes.string,\n on_click: PropTypes.func,\n selected: PropTypes.bool,\n active: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n}\nDrawerList.Item.defaultProps = {\n role: 'option',\n hash: '',\n className: null,\n class: null,\n on_click: null,\n selected: null,\n active: null,\n value: null,\n}\n\nexport function ItemContent({ hash = '', children }) {\n let content = null\n\n if (Array.isArray(children.content || children)) {\n content = (children.content || children).map((item, n) => (\n <span\n key={hash + n}\n className={`dnb-drawer-list__option__item item-nr-${n + 1}`} // \"item-nr\" is used by CSS\n >\n {children.render ? children.render(item, hash + n) : item}\n </span>\n ))\n } else if (Object.prototype.hasOwnProperty.call(children, 'content')) {\n content = children.render\n ? children.render(children.content, hash, children)\n : children.content\n if (content) {\n content = (\n <span className=\"dnb-drawer-list__option__item\">{content}</span>\n )\n }\n } else {\n content = children && (\n <span className=\"dnb-drawer-list__option__item\">{children}</span>\n )\n }\n\n return Object.prototype.hasOwnProperty.call(children, 'suffix_value') ? (\n <>\n {content}\n\n <span className=\"dnb-drawer-list__option__item dnb-drawer-list__option__suffix\">\n {children.suffix_value}\n </span>\n </>\n ) : (\n content\n )\n}\nItemContent.propTypes = {\n hash: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.object]),\n}\n\nDrawerList.HorizontalItem = ({ className, ...props }) => (\n <span\n className={classnames([\n 'dnb-drawer-list__option__item dnb-drawer-list__option__item--horizontal',\n className,\n ])}\n {...props}\n />\n)\nDrawerList.HorizontalItem.propTypes = {\n className: PropTypes.string,\n}\nDrawerList.HorizontalItem.defaultProps = {\n className: null,\n}\n\nclass OnMounted extends React.PureComponent {\n static propTypes = {\n addObservers: PropTypes.func.isRequired,\n removeObservers: PropTypes.func.isRequired,\n }\n componentDidMount() {\n this.props.addObservers()\n }\n componentWillUnmount() {\n this.props.removeObservers()\n }\n render() {\n return null\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"DrawerList.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_keycode","_componentHelper","_Theme","_SpacingHelper","_DrawerListContext","_DrawerListProvider","_DrawerListPortal","_DrawerListHelpers","_excluded","_excluded2","_excluded3","_excluded4","obj","__esModule","default","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","i","Object","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_extends","assign","bind","hasOwnProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","propsToFilterOut","on_show","on_hide","handle_dismiss_focus","on_change","on_pre_change","on_resize","on_select","on_state_update","on_key_down","options_render","wrapper_element","DrawerList","React","PureComponent","constructor","props","_id","id","makeUniqueId","render","_this$context","hasProvider","context","drawerList","createElement","DrawerListInstance","data","children","exports","DrawerListContext","DrawerListProvider","blurDelay","drawerListDefaultProps","process","env","NODE_ENV","propTypes","drawerListPropTypes","e","keycode","hasFocusOnElement","preventDefault","setHidden","event","selected_item","parseFloat","currentTarget","getAttribute","selectItemAndClose","fireSelectEvent","state","setState","entries","reduce","acc","_ref","triangle_position","_this$context2","extendPropsWithContextInClassComponent","defaultProps","getTranslation","role","align_drawer","fixed_position","independent_width","scrollable","focusable","size","no_animation","no_scroll_animation","prevent_selection","action_menu","is_popup","portal_class","list_class","ignore_events","className","class","_className","cache_hash","_cache_hash","_wrapper_element","_triangle_position","direction","_direction","max_height","_max_height","_data","prepared_data","_prepared_data","raw_data","_raw_data","opened","_opened","_value","attributes","hidden","active_item","showFocusRing","closestToTop","closestToBottom","usePortal","addObservers","removeObservers","_refShell","_refTriangle","_refUl","_refRoot","mainParams","classnames","isTrue","createSpacingClasses","listParams","ulParams","tabIndex","style","maxHeight","ref","validateDOMAttributes","ignoreEvents","Items","map","dataItem","__id","hash","liParams","class_name","active","selected","onClick","selectItemHandler","onKeyDown","preventTab","Item","mainList","Fragment","Options","triangleRef","OnMounted","rootRef","include_owner_width","getThemeClasses","theme","memo","forwardRef","rest","prevProps","nextProps","displayName","PropTypes","oneOfType","node","func","isRequired","string","bool","on_click","params","dispatchCustomElementEvent","ItemContent","number","_ref2","content","Array","isArray","item","n","suffix_value","HorizontalItem","_ref3","componentDidMount","componentWillUnmount"],"sources":["../../../../src/fragments/drawer-list/DrawerList.js"],"sourcesContent":["/**\n * Web List Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { getThemeClasses } from '../../shared/Theme'\nimport { createSpacingClasses } from '../../components/space/SpacingHelper'\n\nimport DrawerListContext from './DrawerListContext'\nimport DrawerListProvider from './DrawerListProvider'\nimport DrawerListPortal from './DrawerListPortal'\nimport {\n drawerListPropTypes,\n drawerListDefaultProps,\n} from './DrawerListHelpers'\n\nconst propsToFilterOut = {\n on_show: null,\n on_hide: null,\n handle_dismiss_focus: null,\n on_change: null,\n on_pre_change: null,\n on_resize: null,\n on_select: null,\n on_state_update: null,\n on_key_down: null,\n options_render: null,\n wrapper_element: null,\n}\n\nexport default class DrawerList extends React.PureComponent {\n static contextType = DrawerListContext // only used for the hasProvide check\n\n static blurDelay = DrawerListProvider.blurDelay // some ms more than \"DrawerListSlideDown 200ms\" = 201 // some ms more than \"DrawerListSlideDown 200ms\"\n\n static propTypes = {\n ...drawerListPropTypes,\n }\n\n static defaultProps = {\n ...drawerListDefaultProps,\n }\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n }\n\n render() {\n const hasProvider = this.context?.drawerList\n\n if (hasProvider) {\n return <DrawerListInstance {...this.props} />\n }\n\n return (\n <DrawerListProvider\n id={this._id}\n {...this.props}\n data={this.props.data || this.props.children}\n >\n <DrawerListInstance id={this._id} {...this.props} />\n </DrawerListProvider>\n )\n }\n}\n\nclass DrawerListInstance extends React.PureComponent {\n static propTypes = DrawerList.propTypes\n static defaultProps = DrawerList.defaultProps\n static contextType = DrawerListContext\n\n constructor(props, context) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n this.state = this.state || {}\n\n // send along the event handlers to the provider state\n context.drawerList.setState(\n Object.entries(propsToFilterOut).reduce((acc, [key]) => {\n if (props[key]) {\n acc[key] = props[key]\n }\n return acc\n }, {})\n )\n\n context.drawerList.setState({\n triangle_position: props.triangle_position,\n })\n }\n\n preventTab = (e) => {\n switch (keycode(e)) {\n case 'tab':\n if (!this.context.drawerList.hasFocusOnElement) {\n e.preventDefault()\n this.context.drawerList.setHidden()\n }\n break\n\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n selectItemHandler = (event) => {\n // In case we want to stop if the users makes a number selection.\n // Should optional\n // if (getPreviousSibling('dnb-number-format', event.target)) {\n // return // stop\n // }\n const selected_item = parseFloat(\n event.currentTarget.getAttribute('data-item')\n )\n if (selected_item > -1) {\n this.context.drawerList.selectItemAndClose(selected_item, {\n fireSelectEvent: true,\n event,\n })\n }\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n DrawerList.defaultProps,\n this.context.getTranslation(this.props).DrawerList\n )\n\n const {\n role,\n align_drawer,\n fixed_position,\n independent_width,\n scrollable,\n focusable,\n size,\n no_animation,\n no_scroll_animation,\n prevent_selection,\n action_menu,\n is_popup,\n portal_class,\n list_class,\n ignore_events,\n options_render,\n className,\n class: _className,\n cache_hash: _cache_hash, // eslint-disable-line\n wrapper_element: _wrapper_element, // eslint-disable-line\n triangle_position: _triangle_position, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n max_height: _max_height, // eslint-disable-line\n id: _id, // eslint-disable-line\n data: _data, // eslint-disable-line\n prepared_data: _prepared_data, // eslint-disable-line\n raw_data: _raw_data, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n children,\n\n ...attributes\n } = props\n\n const id = this._id\n\n const {\n data,\n opened,\n hidden,\n triangle_position,\n direction,\n max_height,\n cache_hash,\n selected_item,\n active_item,\n showFocusRing,\n closestToTop,\n closestToBottom,\n usePortal,\n addObservers,\n removeObservers,\n _refShell,\n _refTriangle,\n _refUl,\n _refRoot,\n } = this.context.drawerList\n\n const mainParams = {\n id: `${id}-drawer-list`,\n className: classnames(\n 'dnb-drawer-list',\n opened && 'dnb-drawer-list--opened',\n hidden && 'dnb-drawer-list--hidden',\n `dnb-drawer-list--${direction}`,\n triangle_position &&\n `dnb-drawer-list--triangle-position-${triangle_position}`,\n align_drawer && `dnb-drawer-list--${align_drawer}`,\n size && `dnb-drawer-list--${size}`,\n isTrue(action_menu) && `dnb-drawer-list--action-menu`,\n isTrue(is_popup) && 'dnb-drawer-list--is-popup',\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-drawer-list--independent-width',\n isTrue(scrollable) && 'dnb-drawer-list--scroll',\n isTrue(no_scroll_animation) &&\n 'dnb-drawer-list--no-scroll-animation',\n createSpacingClasses(props),\n _className,\n className\n ),\n ...attributes,\n }\n\n const listParams = {\n id: `${id}-listbox`,\n /**\n * We may consider to use the hidden attribute in future\n * Or we may add an prop to put the HTML in the DOM, if needed\n */\n // hidden: hidden !== false,\n className: classnames(\n 'dnb-drawer-list__list',\n isTrue(no_animation) && 'dnb-drawer-list__list--no-animation',\n list_class\n ),\n }\n\n const ulParams = {\n role,\n id: `${id}-ul`,\n 'aria-expanded': opened,\n 'aria-labelledby': `${id}-label`,\n tabIndex: '-1',\n style: {\n maxHeight: max_height > 0 ? `${max_height}rem` : null,\n },\n ref: _refUl,\n }\n\n if (\n !hidden &&\n (parseFloat(active_item) > -1 ||\n (!(parseFloat(active_item) > -1) &&\n !(parseFloat(selected_item) > -1)))\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${\n active_item || 0\n }`\n } else if (\n !isTrue(prevent_selection) &&\n !hidden &&\n parseFloat(selected_item) > -1\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${selected_item}`\n }\n\n if (isTrue(focusable)) {\n ulParams.tabIndex = '0'\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, mainParams)\n validateDOMAttributes(null, listParams)\n validateDOMAttributes(null, ulParams)\n\n // make it possible to grab the rest attributes and return it with all events\n Object.assign(\n this.context.drawerList.attributes,\n validateDOMAttributes(null, attributes)\n )\n\n const ignoreEvents = isTrue(ignore_events)\n\n const Items = () =>\n data.map((dataItem, i) => {\n const _id = dataItem.__id\n const hash = `option-${id}-${_id}-${i}`\n const liParams = {\n role: role === 'menu' ? 'menuitem' : 'option',\n 'data-item': _id,\n id: `option-${id}-${_id}`,\n hash,\n className: classnames(\n // helper classes\n i === closestToTop && 'closest-to-top',\n i === closestToBottom && 'closest-to-bottom',\n i === 0 && 'first-of-type', // because of the triangle element\n i === data.length - 1 && 'last-of-type', // because of the triangle element\n ignoreEvents || (dataItem.ignore_events && 'ignore-events'),\n dataItem.class_name\n ),\n active: _id == active_item,\n selected: !dataItem.ignore_events && _id == selected_item,\n onClick: this.selectItemHandler,\n onKeyDown: this.preventTab,\n }\n\n if (ignoreEvents) {\n liParams.active = null\n liParams.selected = null\n liParams.onClick = null\n liParams.onKeyDown = null\n liParams.className = classnames(\n liParams.className,\n 'dnb-drawer-list__option--ignore'\n )\n }\n\n return (\n <DrawerList.Item key={hash} {...liParams}>\n {dataItem}\n </DrawerList.Item>\n )\n })\n\n const mainList = (\n <span {...mainParams} ref={_refShell}>\n <span {...listParams}>\n {hidden === false && data && data.length > 0 ? (\n <>\n <DrawerList.Options\n cache_hash={\n cache_hash +\n active_item +\n selected_item +\n closestToTop +\n closestToBottom +\n direction +\n max_height\n }\n {...ulParams}\n showFocusRing={showFocusRing}\n triangleRef={_refTriangle}\n >\n {typeof options_render === 'function' ? (\n options_render({ data, Items, Item: DrawerList.Item })\n ) : (\n <Items />\n )}\n </DrawerList.Options>\n <OnMounted\n addObservers={addObservers}\n removeObservers={removeObservers}\n />\n </>\n ) : (\n children && (\n <span className=\"dnb-drawer-list__content\">\n {children}\n <span\n className=\"dnb-drawer-list__triangle\"\n ref={_refTriangle}\n />\n </span>\n )\n )}\n </span>\n </span>\n )\n\n return (\n <span\n className={classnames(\n 'dnb-drawer-list__root',\n usePortal && 'dnb-drawer-list__root--portal'\n )}\n ref={_refRoot}\n >\n {usePortal ? (\n <DrawerListPortal\n id={this._id}\n rootRef={_refRoot}\n opened={hidden === false}\n include_owner_width={align_drawer === 'right'}\n independent_width={isTrue(independent_width)}\n fixed_position={isTrue(fixed_position)}\n className={getThemeClasses(this.context?.theme, portal_class)}\n >\n {mainList}\n </DrawerListPortal>\n ) : (\n mainList\n )}\n </span>\n )\n }\n}\n\n// DrawerList List\nDrawerList.Options = React.memo(\n React.forwardRef((props, ref) => {\n const {\n children,\n className,\n class: _className,\n triangleRef = null,\n cache_hash, // eslint-disable-line\n showFocusRing,\n ...rest\n } = props\n\n return (\n <ul\n className={classnames(\n 'dnb-drawer-list__options',\n showFocusRing && 'dnb-drawer-list__options--focusring',\n className,\n _className\n )}\n {...rest}\n ref={ref}\n >\n {children}\n <li\n className=\"dnb-drawer-list__triangle\"\n aria-hidden\n ref={triangleRef}\n />\n </ul>\n )\n }),\n (prevProps, nextProps) => {\n if (!prevProps.cache_hash) {\n return null\n }\n return prevProps.cache_hash === nextProps.cache_hash\n }\n)\nDrawerList.Options.displayName = 'DrawerList.Options'\nDrawerList.Options.propTypes = {\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func])\n .isRequired,\n cache_hash: PropTypes.string,\n showFocusRing: PropTypes.bool,\n className: PropTypes.string,\n class: PropTypes.string,\n triangleRef: PropTypes.object,\n}\nDrawerList.Options.defaultProps = {\n cache_hash: null,\n showFocusRing: false,\n className: null,\n class: null,\n triangleRef: null,\n}\n\n// DrawerList Item\nDrawerList.Item = React.forwardRef((props, ref) => {\n const {\n role, // eslint-disable-line\n hash, // eslint-disable-line\n children, // eslint-disable-line\n className, // eslint-disable-line\n class: _className, // eslint-disable-line\n on_click, // eslint-disable-line\n selected, // eslint-disable-line\n active, // eslint-disable-line\n value, // eslint-disable-line\n ...rest\n } = props\n\n const params = {\n className: classnames(\n className,\n _className,\n 'dnb-drawer-list__option',\n selected && 'dnb-drawer-list__option--selected',\n active && 'dnb-drawer-list__option--focus'\n ),\n role,\n tabIndex: selected ? '0' : '-1',\n 'aria-selected': active,\n }\n if (selected) {\n params['aria-current'] = true // has best support on NVDA\n }\n\n if (on_click) {\n params.onClick = () =>\n dispatchCustomElementEvent(\n {\n props: { ...props, displayName: DrawerList.Item.displayName },\n },\n 'on_click',\n {\n selected,\n value,\n ...rest,\n }\n )\n }\n\n return (\n <li {...params} {...rest} ref={ref} key={'li' + hash}>\n <span className=\"dnb-drawer-list__option__inner\">\n <ItemContent hash={hash}>{children}</ItemContent>\n </span>\n </li>\n )\n})\nDrawerList.Item.displayName = 'DrawerList.Item'\nDrawerList.Item.propTypes = {\n role: PropTypes.string,\n hash: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.node,\n PropTypes.func,\n PropTypes.object,\n ]).isRequired,\n className: PropTypes.string,\n class: PropTypes.string,\n on_click: PropTypes.func,\n selected: PropTypes.bool,\n active: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n}\nDrawerList.Item.defaultProps = {\n role: 'option',\n hash: '',\n className: null,\n class: null,\n on_click: null,\n selected: null,\n active: null,\n value: null,\n}\n\nexport function ItemContent({ hash = '', children }) {\n let content = null\n\n if (Array.isArray(children.content || children)) {\n content = (children.content || children).map((item, n) => (\n <span\n key={hash + n}\n className={`dnb-drawer-list__option__item item-nr-${n + 1}`} // \"item-nr\" is used by CSS\n >\n {children.render ? children.render(item, hash + n) : item}\n </span>\n ))\n } else if (Object.prototype.hasOwnProperty.call(children, 'content')) {\n content = children.render\n ? children.render(children.content, hash, children)\n : children.content\n if (content) {\n content = (\n <span className=\"dnb-drawer-list__option__item\">{content}</span>\n )\n }\n } else {\n content = children && (\n <span className=\"dnb-drawer-list__option__item\">{children}</span>\n )\n }\n\n return Object.prototype.hasOwnProperty.call(children, 'suffix_value') ? (\n <>\n {content}\n\n <span className=\"dnb-drawer-list__option__item dnb-drawer-list__option__suffix\">\n {children.suffix_value}\n </span>\n </>\n ) : (\n content\n )\n}\nItemContent.propTypes = {\n hash: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.object]),\n}\n\nDrawerList.HorizontalItem = ({ className, ...props }) => (\n <span\n className={classnames([\n 'dnb-drawer-list__option__item dnb-drawer-list__option__item--horizontal',\n className,\n ])}\n {...props}\n />\n)\nDrawerList.HorizontalItem.propTypes = {\n className: PropTypes.string,\n}\nDrawerList.HorizontalItem.defaultProps = {\n className: null,\n}\n\nclass OnMounted extends React.PureComponent {\n static propTypes = {\n addObservers: PropTypes.func.isRequired,\n removeObservers: PropTypes.func.isRequired,\n }\n componentDidMount() {\n this.props.addObservers()\n }\n componentWillUnmount() {\n this.props.removeObservers()\n }\n render() {\n return null\n }\n}\n"],"mappings":";;;;;;;AAKA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,QAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AAOA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AAEA,IAAAO,kBAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,mBAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,iBAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,kBAAA,GAAAV,OAAA;AAG4B,MAAAW,SAAA;EAAAC,UAAA;EAAAC,UAAA;EAAAC,UAAA;AAAA,SAAAf,uBAAAgB,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,MAAA,EAAAC,QAAA,QAAAD,MAAA,yBAAAE,MAAA,GAAAC,6BAAA,CAAAH,MAAA,EAAAC,QAAA,OAAAG,GAAA,EAAAC,CAAA,MAAAC,MAAA,CAAAC,qBAAA,QAAAC,gBAAA,GAAAF,MAAA,CAAAC,qBAAA,CAAAP,MAAA,QAAAK,CAAA,MAAAA,CAAA,GAAAG,gBAAA,CAAAC,MAAA,EAAAJ,CAAA,MAAAD,GAAA,GAAAI,gBAAA,CAAAH,CAAA,OAAAJ,QAAA,CAAAS,OAAA,CAAAN,GAAA,uBAAAE,MAAA,CAAAK,SAAA,CAAAC,oBAAA,CAAAC,IAAA,CAAAb,MAAA,EAAAI,GAAA,aAAAF,MAAA,CAAAE,GAAA,IAAAJ,MAAA,CAAAI,GAAA,cAAAF,MAAA;AAAA,SAAAC,8BAAAH,MAAA,EAAAC,QAAA,QAAAD,MAAA,yBAAAE,MAAA,WAAAY,UAAA,GAAAR,MAAA,CAAAS,IAAA,CAAAf,MAAA,OAAAI,GAAA,EAAAC,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAS,UAAA,CAAAL,MAAA,EAAAJ,CAAA,MAAAD,GAAA,GAAAU,UAAA,CAAAT,CAAA,OAAAJ,QAAA,CAAAS,OAAA,CAAAN,GAAA,kBAAAF,MAAA,CAAAE,GAAA,IAAAJ,MAAA,CAAAI,GAAA,YAAAF,MAAA;AAAA,SAAAc,QAAAC,MAAA,EAAAC,cAAA,QAAAH,IAAA,GAAAT,MAAA,CAAAS,IAAA,CAAAE,MAAA,OAAAX,MAAA,CAAAC,qBAAA,QAAAY,OAAA,GAAAb,MAAA,CAAAC,qBAAA,CAAAU,MAAA,GAAAC,cAAA,KAAAC,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAf,MAAA,CAAAgB,wBAAA,CAAAL,MAAA,EAAAI,GAAA,EAAAE,UAAA,OAAAR,IAAA,CAAAS,IAAA,CAAAC,KAAA,CAAAV,IAAA,EAAAI,OAAA,YAAAJ,IAAA;AAAA,SAAAW,cAAAxB,MAAA,aAAAG,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAlB,MAAA,EAAAJ,CAAA,UAAAL,MAAA,WAAA2B,SAAA,CAAAtB,CAAA,IAAAsB,SAAA,CAAAtB,CAAA,QAAAA,CAAA,OAAAW,OAAA,CAAAV,MAAA,CAAAN,MAAA,OAAA4B,OAAA,WAAAxB,GAAA,IAAAyB,eAAA,CAAA3B,MAAA,EAAAE,GAAA,EAAAJ,MAAA,CAAAI,GAAA,SAAAE,MAAA,CAAAwB,yBAAA,GAAAxB,MAAA,CAAAyB,gBAAA,CAAA7B,MAAA,EAAAI,MAAA,CAAAwB,yBAAA,CAAA9B,MAAA,KAAAgB,OAAA,CAAAV,MAAA,CAAAN,MAAA,GAAA4B,OAAA,WAAAxB,GAAA,IAAAE,MAAA,CAAA0B,cAAA,CAAA9B,MAAA,EAAAE,GAAA,EAAAE,MAAA,CAAAgB,wBAAA,CAAAtB,MAAA,EAAAI,GAAA,iBAAAF,MAAA;AAAA,SAAA+B,SAAA,IAAAA,QAAA,GAAA3B,MAAA,CAAA4B,MAAA,GAAA5B,MAAA,CAAA4B,MAAA,CAAAC,IAAA,eAAAjC,MAAA,aAAAG,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAlB,MAAA,EAAAJ,CAAA,UAAAL,MAAA,GAAA2B,SAAA,CAAAtB,CAAA,YAAAD,GAAA,IAAAJ,MAAA,QAAAM,MAAA,CAAAK,SAAA,CAAAyB,cAAA,CAAAvB,IAAA,CAAAb,MAAA,EAAAI,GAAA,KAAAF,MAAA,CAAAE,GAAA,IAAAJ,MAAA,CAAAI,GAAA,gBAAAF,MAAA,YAAA+B,QAAA,CAAAR,KAAA,OAAAE,SAAA;AAAA,SAAAE,gBAAAjC,GAAA,EAAAQ,GAAA,EAAAiC,KAAA,IAAAjC,GAAA,GAAAkC,cAAA,CAAAlC,GAAA,OAAAA,GAAA,IAAAR,GAAA,IAAAU,MAAA,CAAA0B,cAAA,CAAApC,GAAA,EAAAQ,GAAA,IAAAiC,KAAA,EAAAA,KAAA,EAAAd,UAAA,QAAAgB,YAAA,QAAAC,QAAA,oBAAA5C,GAAA,CAAAQ,GAAA,IAAAiC,KAAA,WAAAzC,GAAA;AAAA,SAAA0C,eAAAG,GAAA,QAAArC,GAAA,GAAAsC,YAAA,CAAAD,GAAA,2BAAArC,GAAA,gBAAAA,GAAA,GAAAuC,MAAA,CAAAvC,GAAA;AAAA,SAAAsC,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAjC,IAAA,CAAA+B,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAE5B,MAAMS,gBAAgB,GAAG;EACvBC,OAAO,EAAE,IAAI;EACbC,OAAO,EAAE,IAAI;EACbC,oBAAoB,EAAE,IAAI;EAC1BC,SAAS,EAAE,IAAI;EACfC,aAAa,EAAE,IAAI;EACnBC,SAAS,EAAE,IAAI;EACfC,SAAS,EAAE,IAAI;EACfC,eAAe,EAAE,IAAI;EACrBC,WAAW,EAAE,IAAI;EACjBC,cAAc,EAAE,IAAI;EACpBC,eAAe,EAAE;AACnB,CAAC;AAEc,MAAMC,UAAU,SAASC,cAAK,CAACC,aAAa,CAAC;EAa1DC,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAACA,KAAK,CAAC;IAEZ,IAAI,CAACC,GAAG,GAAGD,KAAK,CAACE,EAAE,IAAI,IAAAC,6BAAY,EAAC,CAAC;EACvC;EAEAC,MAAMA,CAAA,EAAG;IAAA,IAAAC,aAAA;IACP,MAAMC,WAAW,IAAAD,aAAA,GAAG,IAAI,CAACE,OAAO,cAAAF,aAAA,uBAAZA,aAAA,CAAcG,UAAU;IAE5C,IAAIF,WAAW,EAAE;MACf,OAAOhG,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAACC,kBAAkB,EAAK,IAAI,CAACV,KAAQ,CAAC;IAC/C;IAEA,OACE1F,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAACzF,mBAAA,CAAAS,OAAkB,EAAAmC,QAAA;MACjBsC,EAAE,EAAE,IAAI,CAACD;IAAI,GACT,IAAI,CAACD,KAAK;MACdW,IAAI,EAAE,IAAI,CAACX,KAAK,CAACW,IAAI,IAAI,IAAI,CAACX,KAAK,CAACY;IAAS,IAE7CtG,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAACC,kBAAkB,EAAA9C,QAAA;MAACsC,EAAE,EAAE,IAAI,CAACD;IAAI,GAAK,IAAI,CAACD,KAAK,CAAG,CACjC,CAAC;EAEzB;AACF;AAACa,OAAA,CAAApF,OAAA,GAAAmE,UAAA;AAAApC,eAAA,CApCoBoC,UAAU,iBACRkB,0BAAiB;AAAAtD,eAAA,CADnBoC,UAAU,eAGVmB,2BAAkB,CAACC,SAAS;AAAAxD,eAAA,CAH5BoC,UAAU,kBAAAvC,aAAA,KAUxB4D,yCAAsB;AAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAVRxB,UAAU,CAKtByB,SAAS,GAAAhE,aAAA,KACXiE,sCAAmB;AAgC1B,MAAMZ,kBAAkB,SAASb,cAAK,CAACC,aAAa,CAAC;EAKnDC,WAAWA,CAACC,KAAK,EAAEO,OAAO,EAAE;IAC1B,KAAK,CAACP,KAAK,CAAC;IAAAxC,eAAA,qBAoBA+D,CAAC,IAAK;MAClB,QAAQ,IAAAC,gBAAO,EAACD,CAAC,CAAC;QAChB,KAAK,KAAK;UACR,IAAI,CAAC,IAAI,CAAChB,OAAO,CAACC,UAAU,CAACiB,iBAAiB,EAAE;YAC9CF,CAAC,CAACG,cAAc,CAAC,CAAC;YAClB,IAAI,CAACnB,OAAO,CAACC,UAAU,CAACmB,SAAS,CAAC,CAAC;UACrC;UACA;QAEF,KAAK,WAAW;QAChB,KAAK,SAAS;UACZJ,CAAC,CAACG,cAAc,CAAC,CAAC;UAClB;MACJ;IACF,CAAC;IAAAlE,eAAA,4BAEoBoE,KAAK,IAAK;MAM7B,MAAMC,aAAa,GAAGC,UAAU,CAC9BF,KAAK,CAACG,aAAa,CAACC,YAAY,CAAC,WAAW,CAC9C,CAAC;MACD,IAAIH,aAAa,GAAG,CAAC,CAAC,EAAE;QACtB,IAAI,CAACtB,OAAO,CAACC,UAAU,CAACyB,kBAAkB,CAACJ,aAAa,EAAE;UACxDK,eAAe,EAAE,IAAI;UACrBN;QACF,CAAC,CAAC;MACJ;IACF,CAAC;IAjDC,IAAI,CAAC3B,GAAG,GAAGD,KAAK,CAACE,EAAE,IAAI,IAAAC,6BAAY,EAAC,CAAC;IACrC,IAAI,CAACgC,KAAK,GAAG,IAAI,CAACA,KAAK,IAAI,CAAC,CAAC;IAG7B5B,OAAO,CAACC,UAAU,CAAC4B,QAAQ,CACzBnG,MAAM,CAACoG,OAAO,CAACrD,gBAAgB,CAAC,CAACsD,MAAM,CAAC,CAACC,GAAG,EAAAC,IAAA,KAAY;MAAA,IAAV,CAACzG,GAAG,CAAC,GAAAyG,IAAA;MACjD,IAAIxC,KAAK,CAACjE,GAAG,CAAC,EAAE;QACdwG,GAAG,CAACxG,GAAG,CAAC,GAAGiE,KAAK,CAACjE,GAAG,CAAC;MACvB;MACA,OAAOwG,GAAG;IACZ,CAAC,EAAE,CAAC,CAAC,CACP,CAAC;IAEDhC,OAAO,CAACC,UAAU,CAAC4B,QAAQ,CAAC;MAC1BK,iBAAiB,EAAEzC,KAAK,CAACyC;IAC3B,CAAC,CAAC;EACJ;EAmCArC,MAAMA,CAAA,EAAG;IAAA,IAAAsC,cAAA;IAEP,MAAM1C,KAAK,GAAG,IAAA2C,uDAAsC,EAClD,IAAI,CAAC3C,KAAK,EACVJ,UAAU,CAACgD,YAAY,EACvB,IAAI,CAACrC,OAAO,CAACsC,cAAc,CAAC,IAAI,CAAC7C,KAAK,CAAC,CAACJ,UAC1C,CAAC;IAED,MAAM;QACJkD,IAAI;QACJC,YAAY;QACZC,cAAc;QACdC,iBAAiB;QACjBC,UAAU;QACVC,SAAS;QACTC,IAAI;QACJC,YAAY;QACZC,mBAAmB;QACnBC,iBAAiB;QACjBC,WAAW;QACXC,QAAQ;QACRC,YAAY;QACZC,UAAU;QACVC,aAAa;QACblE,cAAc;QACdmE,SAAS;QACTC,KAAK,EAAEC,UAAU;QACjBC,UAAU,EAAEC,WAAW;QACvBtE,eAAe,EAAEuE,gBAAgB;QACjCzB,iBAAiB,EAAE0B,kBAAkB;QACrCC,SAAS,EAAEC,UAAU;QACrBC,UAAU,EAAEC,WAAW;QACvBrE,EAAE,EAAED,GAAG;QACPU,IAAI,EAAE6D,KAAK;QACXC,aAAa,EAAEC,cAAc;QAC7BC,QAAQ,EAAEC,SAAS;QACnBC,MAAM,EAAEC,OAAO;QACf9G,KAAK,EAAE+G,MAAM;QACbnE;MAGF,CAAC,GAAGZ,KAAK;MADJgF,UAAU,GAAAtJ,wBAAA,CACXsE,KAAK,EAAA7E,SAAA;IAET,MAAM+E,EAAE,GAAG,IAAI,CAACD,GAAG;IAEnB,MAAM;MACJU,IAAI;MACJkE,MAAM;MACNI,MAAM;MACNxC,iBAAiB;MACjB2B,SAAS;MACTE,UAAU;MACVN,UAAU;MACVnC,aAAa;MACbqD,WAAW;MACXC,aAAa;MACbC,YAAY;MACZC,eAAe;MACfC,SAAS;MACTC,YAAY;MACZC,eAAe;MACfC,SAAS;MACTC,YAAY;MACZC,MAAM;MACNC;IACF,CAAC,GAAG,IAAI,CAACrF,OAAO,CAACC,UAAU;IAE3B,MAAMqF,UAAU,GAAAxI,aAAA;MACd6C,EAAE,EAAG,GAAEA,EAAG,cAAa;MACvB2D,SAAS,EAAE,IAAAiC,mBAAU,sCAIC1B,SAAU,IAO9B,CAAC,IAAA2B,uBAAM,EAAC9C,iBAAiB,CAAC,IAAI,IAAA8C,uBAAM,EAACvC,WAAW,CAAC,KAC/C,oCAAoC,EAItC,IAAAwC,mCAAoB,EAAChG,KAAK,CAAC,EAC3B+D,UAAU,EACVF,SAAS,EAhBTgB,MAAM,IAAI,yBAAyB,EACnCI,MAAM,IAAI,yBAAyB,EAEnCxC,iBAAiB,IACd,sCAAqCA,iBAAkB,EAAC,EAC3DM,YAAY,IAAK,oBAAmBA,YAAa,EAAC,EAClDK,IAAI,IAAK,oBAAmBA,IAAK,EAAC,EAClC,IAAA2C,uBAAM,EAACvC,WAAW,CAAC,IAAK,8BAA6B,EACrD,IAAAuC,uBAAM,EAACtC,QAAQ,CAAC,IAAI,2BAA2B,EAG/C,IAAAsC,uBAAM,EAAC7C,UAAU,CAAC,IAAI,yBAAyB,EAC/C,IAAA6C,uBAAM,EAACzC,mBAAmB,CAAC,IACzB,sCAIJ;IAAC,GACE0B,UAAU,CACd;IAED,MAAMiB,UAAU,GAAG;MACjB/F,EAAE,EAAG,GAAEA,EAAG,UAAS;MAMnB2D,SAAS,EAAE,IAAAiC,mBAAU,EACnB,uBAAuB,EAEvBnC,UAAU,EADV,IAAAoC,uBAAM,EAAC1C,YAAY,CAAC,IAAI,qCAE1B;IACF,CAAC;IAED,MAAM6C,QAAQ,GAAG;MACfpD,IAAI;MACJ5C,EAAE,EAAG,GAAEA,EAAG,KAAI;MACd,eAAe,EAAE2E,MAAM;MACvB,iBAAiB,EAAG,GAAE3E,EAAG,QAAO;MAChCiG,QAAQ,EAAE,IAAI;MACdC,KAAK,EAAE;QACLC,SAAS,EAAE/B,UAAU,GAAG,CAAC,GAAI,GAAEA,UAAW,KAAI,GAAG;MACnD,CAAC;MACDgC,GAAG,EAAEX;IACP,CAAC;IAED,IACE,CAACV,MAAM,KACNnD,UAAU,CAACoD,WAAW,CAAC,GAAG,CAAC,CAAC,IAC1B,EAAEpD,UAAU,CAACoD,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAC9B,EAAEpD,UAAU,CAACD,aAAa,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,EACvC;MACAqE,QAAQ,CAAC,uBAAuB,CAAC,GAAI,UAAShG,EAAG,IAC/CgF,WAAW,IAAI,CAChB,EAAC;IACJ,CAAC,MAAM,IACL,CAAC,IAAAa,uBAAM,EAACxC,iBAAiB,CAAC,IAC1B,CAAC0B,MAAM,IACPnD,UAAU,CAACD,aAAa,CAAC,GAAG,CAAC,CAAC,EAC9B;MACAqE,QAAQ,CAAC,uBAAuB,CAAC,GAAI,UAAShG,EAAG,IAAG2B,aAAc,EAAC;IACrE;IAEA,IAAI,IAAAkE,uBAAM,EAAC5C,SAAS,CAAC,EAAE;MACrB+C,QAAQ,CAACC,QAAQ,GAAG,GAAG;IACzB;IAGA,IAAAI,sCAAqB,EAAC,IAAI,CAACvG,KAAK,EAAE6F,UAAU,CAAC;IAC7C,IAAAU,sCAAqB,EAAC,IAAI,EAAEN,UAAU,CAAC;IACvC,IAAAM,sCAAqB,EAAC,IAAI,EAAEL,QAAQ,CAAC;IAGrCjK,MAAM,CAAC4B,MAAM,CACX,IAAI,CAAC0C,OAAO,CAACC,UAAU,CAACwE,UAAU,EAClC,IAAAuB,sCAAqB,EAAC,IAAI,EAAEvB,UAAU,CACxC,CAAC;IAED,MAAMwB,YAAY,GAAG,IAAAT,uBAAM,EAACnC,aAAa,CAAC;IAE1C,MAAM6C,KAAK,GAAGA,CAAA,KACZ9F,IAAI,CAAC+F,GAAG,CAAC,CAACC,QAAQ,EAAE3K,CAAC,KAAK;MACxB,MAAMiE,GAAG,GAAG0G,QAAQ,CAACC,IAAI;MACzB,MAAMC,IAAI,GAAI,UAAS3G,EAAG,IAAGD,GAAI,IAAGjE,CAAE,EAAC;MACvC,MAAM8K,QAAQ,GAAG;QACfhE,IAAI,EAAEA,IAAI,KAAK,MAAM,GAAG,UAAU,GAAG,QAAQ;QAC7C,WAAW,EAAE7C,GAAG;QAChBC,EAAE,EAAG,UAASA,EAAG,IAAGD,GAAI,EAAC;QACzB4G,IAAI;QACJhD,SAAS,EAAE,IAAAiC,mBAAU,EAMnBU,YAAY,IAAKG,QAAQ,CAAC/C,aAAa,IAAI,eAAgB,EAC3D+C,QAAQ,CAACI,UAAU,EALnB/K,CAAC,KAAKoJ,YAAY,IAAI,gBAAgB,EACtCpJ,CAAC,KAAKqJ,eAAe,IAAI,mBAAmB,EAC5CrJ,CAAC,KAAK,CAAC,IAAI,eAAe,EAC1BA,CAAC,KAAK2E,IAAI,CAACvE,MAAM,GAAG,CAAC,IAAI,cAG3B,CAAC;QACD4K,MAAM,EAAE/G,GAAG,IAAIiF,WAAW;QAC1B+B,QAAQ,EAAE,CAACN,QAAQ,CAAC/C,aAAa,IAAI3D,GAAG,IAAI4B,aAAa;QACzDqF,OAAO,EAAE,IAAI,CAACC,iBAAiB;QAC/BC,SAAS,EAAE,IAAI,CAACC;MAClB,CAAC;MAED,IAAIb,YAAY,EAAE;QAChBM,QAAQ,CAACE,MAAM,GAAG,IAAI;QACtBF,QAAQ,CAACG,QAAQ,GAAG,IAAI;QACxBH,QAAQ,CAACI,OAAO,GAAG,IAAI;QACvBJ,QAAQ,CAACM,SAAS,GAAG,IAAI;QACzBN,QAAQ,CAACjD,SAAS,GAAG,IAAAiC,mBAAU,EAC7BgB,QAAQ,CAACjD,SAAS,EAClB,iCACF,CAAC;MACH;MAEA,OACEvJ,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAACb,UAAU,CAAC0H,IAAI,EAAA1J,QAAA;QAAC7B,GAAG,EAAE8K;MAAK,GAAKC,QAAQ,GACrCH,QACc,CAAC;IAEtB,CAAC,CAAC;IAEJ,MAAMY,QAAQ,GACZjN,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,SAAA7C,QAAA,KAAUiI,UAAU;MAAES,GAAG,EAAEb;IAAU,IACnCnL,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,SAAUwF,UAAU,EACjBhB,MAAM,KAAK,KAAK,IAAItE,IAAI,IAAIA,IAAI,CAACvE,MAAM,GAAG,CAAC,GAC1C9B,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAAAnG,MAAA,CAAAmB,OAAA,CAAA+L,QAAA,QACElN,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAACb,UAAU,CAAC6H,OAAO,EAAA7J,QAAA;MACjBoG,UAAU,EACRA,UAAU,GACVkB,WAAW,GACXrD,aAAa,GACbuD,YAAY,GACZC,eAAe,GACfjB,SAAS,GACTE;IACD,GACG4B,QAAQ;MACZf,aAAa,EAAEA,aAAc;MAC7BuC,WAAW,EAAEhC;IAAa,IAEzB,OAAOhG,cAAc,KAAK,UAAU,GACnCA,cAAc,CAAC;MAAEiB,IAAI;MAAE8F,KAAK;MAAEa,IAAI,EAAE1H,UAAU,CAAC0H;IAAK,CAAC,CAAC,GAEtDhN,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAACgG,KAAK,MAAE,CAEQ,CAAC,EACrBnM,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAACkH,SAAS;MACRpC,YAAY,EAAEA,YAAa;MAC3BC,eAAe,EAAEA;IAAgB,CAClC,CACD,CAAC,GAEH5E,QAAQ,IACNtG,MAAA,CAAAmB,OAAA,CAAAgF,aAAA;MAAMoD,SAAS,EAAC;IAA0B,GACvCjD,QAAQ,EACTtG,MAAA,CAAAmB,OAAA,CAAAgF,aAAA;MACEoD,SAAS,EAAC,2BAA2B;MACrCyC,GAAG,EAAEZ;IAAa,CACnB,CACG,CAGN,CACF,CACP;IAED,OACEpL,MAAA,CAAAmB,OAAA,CAAAgF,aAAA;MACEoD,SAAS,EACP,uBAAuB,IACvByB,SAAS,yCACT;MACFgB,GAAG,EAAEV;IAAS,GAEbN,SAAS,GACRhL,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAACxF,iBAAA,CAAAQ,OAAgB;MACfyE,EAAE,EAAE,IAAI,CAACD,GAAI;MACb2H,OAAO,EAAEhC,QAAS;MAClBf,MAAM,EAAEI,MAAM,KAAK,KAAM;MACzB4C,mBAAmB,EAAE9E,YAAY,KAAK,OAAQ;MAC9CE,iBAAiB,EAAE,IAAA8C,uBAAM,EAAC9C,iBAAiB,CAAE;MAC7CD,cAAc,EAAE,IAAA+C,uBAAM,EAAC/C,cAAc,CAAE;MACvCa,SAAS,EAAE,IAAAiE,sBAAe,GAAApF,cAAA,GAAC,IAAI,CAACnC,OAAO,cAAAmC,cAAA,uBAAZA,cAAA,CAAcqF,KAAK,EAAErE,YAAY;IAAE,GAE7D6D,QACe,CAAC,GAEnBA,QAEE,CAAC;EAEX;AACF;AAAC/J,eAAA,CApUKkD,kBAAkB,kBAEAd,UAAU,CAACgD,YAAY;AAAApF,eAAA,CAFzCkD,kBAAkB,iBAGDI,0BAAiB;AAAAI,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAHlCV,kBAAkB,CACfW,SAAS,GAAGzB,UAAU,CAACyB,SAAS;AAsUzCzB,UAAU,CAAC6H,OAAO,GAAG5H,cAAK,CAACmI,IAAI,CAC7BnI,cAAK,CAACoI,UAAU,CAAC,CAACjI,KAAK,EAAEsG,GAAG,KAAK;EAC/B,MAAM;MACJ1F,QAAQ;MACRiD,SAAS;MACTC,KAAK,EAAEC,UAAU;MACjB2D,WAAW,GAAG,IAAI;MAClB1D,UAAU;MACVmB;IAEF,CAAC,GAAGnF,KAAK;IADJkI,IAAI,GAAAxM,wBAAA,CACLsE,KAAK,EAAA5E,UAAA;EAET,OACEd,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,OAAA7C,QAAA;IACEiG,SAAS,EAAE,IAAAiC,mBAAU,EACnB,0BAA0B,EAE1BjC,SAAS,EACTE,UAAU,EAFVoB,aAAa,IAAI,qCAGnB;EAAE,GACE+C,IAAI;IACR5B,GAAG,EAAEA;EAAI,IAER1F,QAAQ,EACTtG,MAAA,CAAAmB,OAAA,CAAAgF,aAAA;IACEoD,SAAS,EAAC,2BAA2B;IACrC,mBAAW;IACXyC,GAAG,EAAEoB;EAAY,CAClB,CACC,CAAC;AAET,CAAC,CAAC,EACF,CAACS,SAAS,EAAEC,SAAS,KAAK;EACxB,IAAI,CAACD,SAAS,CAACnE,UAAU,EAAE;IACzB,OAAO,IAAI;EACb;EACA,OAAOmE,SAAS,CAACnE,UAAU,KAAKoE,SAAS,CAACpE,UAAU;AACtD,CACF,CAAC;AACDpE,UAAU,CAAC6H,OAAO,CAACY,WAAW,GAAG,oBAAoB;AACrDzI,UAAU,CAAC6H,OAAO,CAACpG,SAAS,GAAG;EAC7BT,QAAQ,EAAE0H,kBAAS,CAACC,SAAS,CAAC,CAACD,kBAAS,CAACE,IAAI,EAAEF,kBAAS,CAACG,IAAI,CAAC,CAAC,CAC5DC,UAAU;EACb1E,UAAU,EAAEsE,kBAAS,CAACK,MAAM;EAC5BxD,aAAa,EAAEmD,kBAAS,CAACM,IAAI;EAC7B/E,SAAS,EAAEyE,kBAAS,CAACK,MAAM;EAC3B7E,KAAK,EAAEwE,kBAAS,CAACK,MAAM;EACvBjB,WAAW,EAAEY,kBAAS,CAAC1L;AACzB,CAAC;AACDgD,UAAU,CAAC6H,OAAO,CAAC7E,YAAY,GAAG;EAChCoB,UAAU,EAAE,IAAI;EAChBmB,aAAa,EAAE,KAAK;EACpBtB,SAAS,EAAE,IAAI;EACfC,KAAK,EAAE,IAAI;EACX4D,WAAW,EAAE;AACf,CAAC;AAGD9H,UAAU,CAAC0H,IAAI,GAAGzH,cAAK,CAACoI,UAAU,CAAC,CAACjI,KAAK,EAAEsG,GAAG,KAAK;EACjD,MAAM;MACJxD,IAAI;MACJ+D,IAAI;MACJjG,QAAQ;MACRiD,SAAS;MACTC,KAAK,EAAEC,UAAU;MACjB8E,QAAQ;MACR5B,QAAQ;MACRD,MAAM;MACNhJ;IAEF,CAAC,GAAGgC,KAAK;IADJkI,IAAI,GAAAxM,wBAAA,CACLsE,KAAK,EAAA3E,UAAA;EAET,MAAMyN,MAAM,GAAG;IACbjF,SAAS,EAAE,IAAAiC,mBAAU,EACnBjC,SAAS,EACTE,UAAU,EACV,yBAAyB,EACzBkD,QAAQ,IAAI,mCAAmC,EAC/CD,MAAM,IAAI,gCACZ,CAAC;IACDlE,IAAI;IACJqD,QAAQ,EAAEc,QAAQ,GAAG,GAAG,GAAG,IAAI;IAC/B,eAAe,EAAED;EACnB,CAAC;EACD,IAAIC,QAAQ,EAAE;IACZ6B,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI;EAC/B;EAEA,IAAID,QAAQ,EAAE;IACZC,MAAM,CAAC5B,OAAO,GAAG,MACf,IAAA6B,2CAA0B,EACxB;MACE/I,KAAK,EAAA3C,aAAA,CAAAA,aAAA,KAAO2C,KAAK;QAAEqI,WAAW,EAAEzI,UAAU,CAAC0H,IAAI,CAACe;MAAW;IAC7D,CAAC,EACD,UAAU,EAAAhL,aAAA;MAER4J,QAAQ;MACRjJ;IAAK,GACFkK,IAAI,CAEX,CAAC;EACL;EAEA,OACE5N,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,OAAA7C,QAAA,KAAQkL,MAAM,EAAMZ,IAAI;IAAE5B,GAAG,EAAEA,GAAI;IAACvK,GAAG,EAAE,IAAI,GAAG8K;EAAK,IACnDvM,MAAA,CAAAmB,OAAA,CAAAgF,aAAA;IAAMoD,SAAS,EAAC;EAAgC,GAC9CvJ,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAACuI,WAAW;IAACnC,IAAI,EAAEA;EAAK,GAAEjG,QAAsB,CAC5C,CACJ,CAAC;AAET,CAAC,CAAC;AACFhB,UAAU,CAAC0H,IAAI,CAACe,WAAW,GAAG,iBAAiB;AAC/CzI,UAAU,CAAC0H,IAAI,CAACjG,SAAS,GAAG;EAC1ByB,IAAI,EAAEwF,kBAAS,CAACK,MAAM;EACtB9B,IAAI,EAAEyB,kBAAS,CAACK,MAAM;EACtB/H,QAAQ,EAAE0H,kBAAS,CAACC,SAAS,CAAC,CAC5BD,kBAAS,CAACE,IAAI,EACdF,kBAAS,CAACG,IAAI,EACdH,kBAAS,CAAC1L,MAAM,CACjB,CAAC,CAAC8L,UAAU;EACb7E,SAAS,EAAEyE,kBAAS,CAACK,MAAM;EAC3B7E,KAAK,EAAEwE,kBAAS,CAACK,MAAM;EACvBE,QAAQ,EAAEP,kBAAS,CAACG,IAAI;EACxBxB,QAAQ,EAAEqB,kBAAS,CAACM,IAAI;EACxB5B,MAAM,EAAEsB,kBAAS,CAACM,IAAI;EACtB5K,KAAK,EAAEsK,kBAAS,CAACC,SAAS,CAAC,CAACD,kBAAS,CAACK,MAAM,EAAEL,kBAAS,CAACW,MAAM,CAAC;AACjE,CAAC;AACDrJ,UAAU,CAAC0H,IAAI,CAAC1E,YAAY,GAAG;EAC7BE,IAAI,EAAE,QAAQ;EACd+D,IAAI,EAAE,EAAE;EACRhD,SAAS,EAAE,IAAI;EACfC,KAAK,EAAE,IAAI;EACX+E,QAAQ,EAAE,IAAI;EACd5B,QAAQ,EAAE,IAAI;EACdD,MAAM,EAAE,IAAI;EACZhJ,KAAK,EAAE;AACT,CAAC;AAEM,SAASgL,WAAWA,CAAAE,KAAA,EAA0B;EAAA,IAAzB;IAAErC,IAAI,GAAG,EAAE;IAAEjG;EAAS,CAAC,GAAAsI,KAAA;EACjD,IAAIC,OAAO,GAAG,IAAI;EAElB,IAAIC,KAAK,CAACC,OAAO,CAACzI,QAAQ,CAACuI,OAAO,IAAIvI,QAAQ,CAAC,EAAE;IAC/CuI,OAAO,GAAG,CAACvI,QAAQ,CAACuI,OAAO,IAAIvI,QAAQ,EAAE8F,GAAG,CAAC,CAAC4C,IAAI,EAAEC,CAAC,KACnDjP,MAAA,CAAAmB,OAAA,CAAAgF,aAAA;MACE1E,GAAG,EAAE8K,IAAI,GAAG0C,CAAE;MACd1F,SAAS,EAAG,yCAAwC0F,CAAC,GAAG,CAAE;IAAE,GAE3D3I,QAAQ,CAACR,MAAM,GAAGQ,QAAQ,CAACR,MAAM,CAACkJ,IAAI,EAAEzC,IAAI,GAAG0C,CAAC,CAAC,GAAGD,IACjD,CACP,CAAC;EACJ,CAAC,MAAM,IAAIrN,MAAM,CAACK,SAAS,CAACyB,cAAc,CAACvB,IAAI,CAACoE,QAAQ,EAAE,SAAS,CAAC,EAAE;IACpEuI,OAAO,GAAGvI,QAAQ,CAACR,MAAM,GACrBQ,QAAQ,CAACR,MAAM,CAACQ,QAAQ,CAACuI,OAAO,EAAEtC,IAAI,EAAEjG,QAAQ,CAAC,GACjDA,QAAQ,CAACuI,OAAO;IACpB,IAAIA,OAAO,EAAE;MACXA,OAAO,GACL7O,MAAA,CAAAmB,OAAA,CAAAgF,aAAA;QAAMoD,SAAS,EAAC;MAA+B,GAAEsF,OAAc,CAChE;IACH;EACF,CAAC,MAAM;IACLA,OAAO,GAAGvI,QAAQ,IAChBtG,MAAA,CAAAmB,OAAA,CAAAgF,aAAA;MAAMoD,SAAS,EAAC;IAA+B,GAAEjD,QAAe,CACjE;EACH;EAEA,OAAO3E,MAAM,CAACK,SAAS,CAACyB,cAAc,CAACvB,IAAI,CAACoE,QAAQ,EAAE,cAAc,CAAC,GACnEtG,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,CAAAnG,MAAA,CAAAmB,OAAA,CAAA+L,QAAA,QACG2B,OAAO,EAER7O,MAAA,CAAAmB,OAAA,CAAAgF,aAAA;IAAMoD,SAAS,EAAC;EAA+D,GAC5EjD,QAAQ,CAAC4I,YACN,CACN,CAAC,GAEHL,OACD;AACH;AACAjI,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAA4H,WAAW,CAAC3H,SAAS,GAAG;EACtBwF,IAAI,EAAEyB,kBAAS,CAACK,MAAM;EACtB/H,QAAQ,EAAE0H,kBAAS,CAACC,SAAS,CAAC,CAACD,kBAAS,CAACE,IAAI,EAAEF,kBAAS,CAAC1L,MAAM,CAAC;AAClE,CAAC;AAEDgD,UAAU,CAAC6J,cAAc,GAAGC,KAAA;EAAA,IAAC;MAAE7F;IAAoB,CAAC,GAAA6F,KAAA;IAAP1J,KAAK,GAAAtE,wBAAA,CAAAgO,KAAA,EAAApO,UAAA;EAAA,OAChDhB,MAAA,CAAAmB,OAAA,CAAAgF,aAAA,SAAA7C,QAAA;IACEiG,SAAS,EAAE,IAAAiC,mBAAU,EACnB,yEAAyE,EACzEjC,SACD;EAAE,GACC7D,KAAK,CACV,CAAC;AAAA,CACH;AACDJ,UAAU,CAAC6J,cAAc,CAACpI,SAAS,GAAG;EACpCwC,SAAS,EAAEyE,kBAAS,CAACK;AACvB,CAAC;AACD/I,UAAU,CAAC6J,cAAc,CAAC7G,YAAY,GAAG;EACvCiB,SAAS,EAAE;AACb,CAAC;AAED,MAAM8D,SAAS,SAAS9H,cAAK,CAACC,aAAa,CAAC;EAK1C6J,iBAAiBA,CAAA,EAAG;IAClB,IAAI,CAAC3J,KAAK,CAACuF,YAAY,CAAC,CAAC;EAC3B;EACAqE,oBAAoBA,CAAA,EAAG;IACrB,IAAI,CAAC5J,KAAK,CAACwF,eAAe,CAAC,CAAC;EAC9B;EACApF,MAAMA,CAAA,EAAG;IACP,OAAO,IAAI;EACb;AACF;AAACc,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAdKuG,SAAS,CACNtG,SAAS,GAAG;EACjBkE,YAAY,EAAE+C,kBAAS,CAACG,IAAI,CAACC,UAAU;EACvClD,eAAe,EAAE8C,kBAAS,CAACG,IAAI,CAACC;AAClC,CAAC"}
@@ -123,11 +123,11 @@ class DrawerListPortal extends _react.default.PureComponent {
123
123
  let width = 64;
124
124
  const ownerWidth = window.getComputedStyle(ownerElem).width;
125
125
  if (independent_width || parseFloat(ownerWidth) < 64) {
126
- const minWidth = parseFloat(window.getComputedStyle(document.documentElement).getPropertyValue('--drawer-list-width'));
126
+ const minWidth = parseFloat(window.getComputedStyle(document.documentElement).getPropertyValue('--drawer-list-width')) || 0;
127
127
  width = minWidth * 16;
128
128
  }
129
129
  const customWidth = rootElem.getBoundingClientRect().width;
130
- if (parseFloat(customWidth || 0) >= 64) {
130
+ if (!independent_width && parseFloat(customWidth || 0) >= 64) {
131
131
  width = customWidth;
132
132
  }
133
133
  const rect = rootElem.getBoundingClientRect();
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerListPortal.js","names":["_react","_interopRequireDefault","require","_reactDom","_propTypes","_classnames","_componentHelper","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","drawerListPropTypes","process","env","NODE_ENV","id","PropTypes","string","isRequired","children","node","opened","bool","innerRef","shape","current","oneOfType","rootRef","include_owner_width","independent_width","fixed_position","className","drawerListDefaultProps","DrawerListPortal","React","PureComponent","constructor","props","isMounted","portalElem","useRootElement","setState","ref","createRef","componentDidMount","document","readyState","init","window","addEventListener","componentWillUnmount","removeEventListener","removePositionObserver","elem","getElementById","createElement","setAttribute","classList","add","createMainElement","appendChild","e","warn","body","makeStyle","state","rootElem","ownerElem","parentElement","width","ownerWidth","getComputedStyle","parseFloat","minWidth","documentElement","getPropertyValue","customWidth","getBoundingClientRect","rect","scrollY","pageYOffset","scrollX","pageXOffset","top","left","innerWidth","style","addPositionObserver","setPosition","clearTimeout","positionTimeout","setTimeout","random","Date","now","customElem","getClosestScrollViewElement","resizeObserver","ResizeObserver","observe","disconnect","render","ReactDOM","createPortal","classnames","exports","propTypes","_default","forwardRef"],"sources":["../../../../src/fragments/drawer-list/DrawerListPortal.js"],"sourcesContent":["/**\n * Web DrawerList Component\n *\n */\n\nimport React from 'react'\nimport ReactDOM from 'react-dom'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n warn,\n getClosestScrollViewElement,\n} from '../../shared/component-helper'\n\nconst drawerListPropTypes = {\n id: PropTypes.string.isRequired,\n children: PropTypes.node.isRequired,\n opened: PropTypes.bool.isRequired,\n innerRef: PropTypes.shape({\n current: PropTypes.oneOfType([PropTypes.node, PropTypes.object]),\n }),\n rootRef: PropTypes.shape({\n current: PropTypes.oneOfType([PropTypes.node, PropTypes.object]),\n }).isRequired,\n include_owner_width: PropTypes.bool,\n independent_width: PropTypes.bool,\n fixed_position: PropTypes.bool,\n className: PropTypes.string,\n}\n\nconst drawerListDefaultProps = {\n rootRef: { current: null },\n innerRef: null,\n include_owner_width: false,\n independent_width: false,\n fixed_position: false,\n className: null,\n}\n\nexport class DrawerListPortal extends React.PureComponent {\n static propTypes = {\n ...drawerListPropTypes,\n }\n\n static defaultProps = {\n ...drawerListDefaultProps,\n }\n\n state = { isMounted: false }\n\n constructor(props) {\n super(props)\n this.ref = props.innerRef || React.createRef()\n }\n\n init = () => {\n this.portalElem = this.useRootElement()\n this.setState({ isMounted: true })\n }\n\n componentDidMount() {\n if (document.readyState === 'complete') {\n this.init()\n } else if (typeof window !== 'undefined') {\n window.addEventListener('load', this.init)\n }\n }\n\n componentWillUnmount() {\n if (typeof window !== 'undefined') {\n window.removeEventListener('load', this.init)\n }\n\n this.removePositionObserver()\n this.portalElem = null\n }\n\n useRootElement() {\n if (typeof document !== 'undefined') {\n try {\n let elem = document.getElementById(`${this.props.id}-portal`)\n if (elem) {\n return elem\n }\n\n elem = document.createElement('div')\n elem.setAttribute('id', `${this.props.id}-portal`)\n elem.classList.add('dnb-drawer-list__portal')\n this.createMainElement().appendChild(elem)\n\n return elem\n } catch (e) {\n warn(e)\n }\n }\n }\n\n createMainElement() {\n if (typeof document !== 'undefined') {\n try {\n let elem = document.getElementById('dnb-drawer-list__portal')\n if (elem) {\n return elem\n }\n\n elem = document.createElement('div')\n elem.setAttribute('role', 'presentation')\n elem.setAttribute('id', 'dnb-drawer-list__portal')\n elem.classList.add('dnb-core-style')\n document.body.appendChild(elem)\n\n return elem\n } catch (e) {\n warn(e)\n }\n }\n }\n\n makeStyle() {\n if (typeof window === 'undefined' || !this.state.isMounted) {\n return // stop here\n }\n\n try {\n const {\n rootRef,\n include_owner_width,\n independent_width,\n fixed_position,\n } = this.props\n\n const rootElem = rootRef.current\n if (!rootElem) {\n return // stop here\n }\n const ownerElem = rootElem.parentElement\n\n // min width as a threshold\n let width = 64\n\n // Handle width\n const ownerWidth = window.getComputedStyle(ownerElem).width\n\n // fallback for too narrow width - in case there is not width -> e.g. \"--is-popup\"\n if (independent_width || parseFloat(ownerWidth) < 64) {\n // get min-width from CSS property\n const minWidth = parseFloat(\n window\n .getComputedStyle(document.documentElement)\n .getPropertyValue('--drawer-list-width')\n )\n width = minWidth * 16\n }\n\n // also check if root \"has a custom width\"\n const customWidth = rootElem.getBoundingClientRect().width\n if (parseFloat(customWidth || 0) >= 64) {\n width = customWidth\n }\n\n // Handle positions\n const rect = rootElem.getBoundingClientRect()\n const scrollY = fixed_position\n ? 0\n : window.scrollY !== undefined\n ? window.scrollY\n : window.pageYOffset\n const scrollX = fixed_position\n ? 0\n : window.scrollX !== undefined\n ? window.scrollX\n : window.pageXOffset\n\n let top = scrollY + rect.top\n let left =\n scrollX +\n rect.left +\n (include_owner_width ? parseFloat(ownerWidth || 0) : 0)\n\n if (width > window.innerWidth) {\n width = window.innerWidth\n }\n if (top < 0) {\n top = 0\n }\n if (left < 0) {\n left = 0\n }\n\n // NB: before we recalculated the values to REM, but iOS rounds this and we get a wrong total value out of that!\n const style = {\n width,\n '--drawer-list-width': `${width / 16}rem`, // used by the \"drawer-list-scale-in\" animation\n top,\n left,\n }\n\n return style\n } catch (e) {\n warn(e)\n }\n }\n\n addPositionObserver() {\n if (this.setPosition || typeof window === 'undefined') {\n return // stop here\n }\n\n // debounce\n this.setPosition = () => {\n clearTimeout(this.positionTimeout)\n this.positionTimeout = setTimeout(() => {\n if (this.props.opened) {\n this.setState({\n random: Date.now(), // force re-render\n })\n }\n }, 200)\n }\n\n this.customElem =\n getClosestScrollViewElement(this.props.rootRef.current) || window\n this.customElem.addEventListener('scroll', this.setPosition)\n\n try {\n this.resizeObserver = new ResizeObserver(this.setPosition)\n this.resizeObserver.observe(document.body)\n } catch (e) {\n window.addEventListener('resize', this.setPosition)\n }\n }\n\n removePositionObserver() {\n clearTimeout(this.positionTimeout)\n if (typeof window !== 'undefined' && this.setPosition) {\n if (this.customElem) {\n this.customElem.removeEventListener('scroll', this.setPosition)\n }\n if (this.resizeObserver) {\n this.resizeObserver.disconnect()\n this.resizeObserver = null\n }\n window.removeEventListener('resize', this.setPosition)\n }\n this.setPosition = null\n }\n\n render() {\n if (!this.portalElem) {\n return null // stop here\n }\n\n if (typeof window !== 'undefined' && this.state.isMounted) {\n const { opened, fixed_position, className, children } = this.props\n\n if (opened) {\n this.addPositionObserver()\n }\n\n const style = opened ? this.makeStyle() : {}\n\n return ReactDOM.createPortal(\n <span\n className={classnames(\n 'dnb-drawer-list__portal__style',\n fixed_position && 'dnb-drawer-list__portal__style--fixed',\n className\n )}\n style={style}\n ref={this.ref}\n >\n {children}\n </span>,\n this.portalElem\n )\n }\n\n return null\n }\n}\n\nexport default React.forwardRef((props, ref) => {\n return <DrawerListPortal innerRef={ref} {...props} />\n})\n"],"mappings":"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"}
1
+ {"version":3,"file":"DrawerListPortal.js","names":["_react","_interopRequireDefault","require","_reactDom","_propTypes","_classnames","_componentHelper","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","drawerListPropTypes","process","env","NODE_ENV","id","PropTypes","string","isRequired","children","node","opened","bool","innerRef","shape","current","oneOfType","rootRef","include_owner_width","independent_width","fixed_position","className","drawerListDefaultProps","DrawerListPortal","React","PureComponent","constructor","props","isMounted","portalElem","useRootElement","setState","ref","createRef","componentDidMount","document","readyState","init","window","addEventListener","componentWillUnmount","removeEventListener","removePositionObserver","elem","getElementById","createElement","setAttribute","classList","add","createMainElement","appendChild","e","warn","body","makeStyle","state","rootElem","ownerElem","parentElement","width","ownerWidth","getComputedStyle","parseFloat","minWidth","documentElement","getPropertyValue","customWidth","getBoundingClientRect","rect","scrollY","pageYOffset","scrollX","pageXOffset","top","left","innerWidth","style","addPositionObserver","setPosition","clearTimeout","positionTimeout","setTimeout","random","Date","now","customElem","getClosestScrollViewElement","resizeObserver","ResizeObserver","observe","disconnect","render","ReactDOM","createPortal","classnames","exports","propTypes","_default","forwardRef"],"sources":["../../../../src/fragments/drawer-list/DrawerListPortal.js"],"sourcesContent":["/**\n * Web DrawerList Component\n *\n */\n\nimport React from 'react'\nimport ReactDOM from 'react-dom'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n warn,\n getClosestScrollViewElement,\n} from '../../shared/component-helper'\n\nconst drawerListPropTypes = {\n id: PropTypes.string.isRequired,\n children: PropTypes.node.isRequired,\n opened: PropTypes.bool.isRequired,\n innerRef: PropTypes.shape({\n current: PropTypes.oneOfType([PropTypes.node, PropTypes.object]),\n }),\n rootRef: PropTypes.shape({\n current: PropTypes.oneOfType([PropTypes.node, PropTypes.object]),\n }).isRequired,\n include_owner_width: PropTypes.bool,\n independent_width: PropTypes.bool,\n fixed_position: PropTypes.bool,\n className: PropTypes.string,\n}\n\nconst drawerListDefaultProps = {\n rootRef: { current: null },\n innerRef: null,\n include_owner_width: false,\n independent_width: false,\n fixed_position: false,\n className: null,\n}\n\nexport class DrawerListPortal extends React.PureComponent {\n static propTypes = {\n ...drawerListPropTypes,\n }\n\n static defaultProps = {\n ...drawerListDefaultProps,\n }\n\n state = { isMounted: false }\n\n constructor(props) {\n super(props)\n this.ref = props.innerRef || React.createRef()\n }\n\n init = () => {\n this.portalElem = this.useRootElement()\n this.setState({ isMounted: true })\n }\n\n componentDidMount() {\n if (document.readyState === 'complete') {\n this.init()\n } else if (typeof window !== 'undefined') {\n window.addEventListener('load', this.init)\n }\n }\n\n componentWillUnmount() {\n if (typeof window !== 'undefined') {\n window.removeEventListener('load', this.init)\n }\n\n this.removePositionObserver()\n this.portalElem = null\n }\n\n useRootElement() {\n if (typeof document !== 'undefined') {\n try {\n let elem = document.getElementById(`${this.props.id}-portal`)\n if (elem) {\n return elem\n }\n\n elem = document.createElement('div')\n elem.setAttribute('id', `${this.props.id}-portal`)\n elem.classList.add('dnb-drawer-list__portal')\n this.createMainElement().appendChild(elem)\n\n return elem\n } catch (e) {\n warn(e)\n }\n }\n }\n\n createMainElement() {\n if (typeof document !== 'undefined') {\n try {\n let elem = document.getElementById('dnb-drawer-list__portal')\n if (elem) {\n return elem\n }\n\n elem = document.createElement('div')\n elem.setAttribute('role', 'presentation')\n elem.setAttribute('id', 'dnb-drawer-list__portal')\n elem.classList.add('dnb-core-style')\n document.body.appendChild(elem)\n\n return elem\n } catch (e) {\n warn(e)\n }\n }\n }\n\n makeStyle() {\n if (typeof window === 'undefined' || !this.state.isMounted) {\n return // stop here\n }\n\n try {\n const {\n rootRef,\n include_owner_width,\n independent_width,\n fixed_position,\n } = this.props\n\n const rootElem = rootRef.current\n if (!rootElem) {\n return // stop here\n }\n const ownerElem = rootElem.parentElement\n\n // min width as a threshold\n let width = 64\n\n // Handle width\n const ownerWidth = window.getComputedStyle(ownerElem).width\n\n // fallback for too narrow width - in case there is not width -> e.g. \"--is-popup\"\n if (independent_width || parseFloat(ownerWidth) < 64) {\n // get min-width from CSS property\n const minWidth =\n parseFloat(\n window\n .getComputedStyle(document.documentElement)\n .getPropertyValue('--drawer-list-width')\n ) || 0\n width = minWidth * 16\n }\n\n // also check if root \"has a custom width\"\n const customWidth = rootElem.getBoundingClientRect().width\n if (!independent_width && parseFloat(customWidth || 0) >= 64) {\n width = customWidth\n }\n\n // Handle positions\n const rect = rootElem.getBoundingClientRect()\n const scrollY = fixed_position\n ? 0\n : window.scrollY !== undefined\n ? window.scrollY\n : window.pageYOffset\n const scrollX = fixed_position\n ? 0\n : window.scrollX !== undefined\n ? window.scrollX\n : window.pageXOffset\n\n let top = scrollY + rect.top\n let left =\n scrollX +\n rect.left +\n (include_owner_width ? parseFloat(ownerWidth || 0) : 0)\n\n if (width > window.innerWidth) {\n width = window.innerWidth\n }\n if (top < 0) {\n top = 0\n }\n if (left < 0) {\n left = 0\n }\n\n // NB: before we recalculated the values to REM, but iOS rounds this and we get a wrong total value out of that!\n const style = {\n width,\n '--drawer-list-width': `${width / 16}rem`, // used by the \"drawer-list-scale-in\" animation\n top,\n left,\n }\n\n return style\n } catch (e) {\n warn(e)\n }\n }\n\n addPositionObserver() {\n if (this.setPosition || typeof window === 'undefined') {\n return // stop here\n }\n\n // debounce\n this.setPosition = () => {\n clearTimeout(this.positionTimeout)\n this.positionTimeout = setTimeout(() => {\n if (this.props.opened) {\n this.setState({\n random: Date.now(), // force re-render\n })\n }\n }, 200)\n }\n\n this.customElem =\n getClosestScrollViewElement(this.props.rootRef.current) || window\n this.customElem.addEventListener('scroll', this.setPosition)\n\n try {\n this.resizeObserver = new ResizeObserver(this.setPosition)\n this.resizeObserver.observe(document.body)\n } catch (e) {\n window.addEventListener('resize', this.setPosition)\n }\n }\n\n removePositionObserver() {\n clearTimeout(this.positionTimeout)\n if (typeof window !== 'undefined' && this.setPosition) {\n if (this.customElem) {\n this.customElem.removeEventListener('scroll', this.setPosition)\n }\n if (this.resizeObserver) {\n this.resizeObserver.disconnect()\n this.resizeObserver = null\n }\n window.removeEventListener('resize', this.setPosition)\n }\n this.setPosition = null\n }\n\n render() {\n if (!this.portalElem) {\n return null // stop here\n }\n\n if (typeof window !== 'undefined' && this.state.isMounted) {\n const { opened, fixed_position, className, children } = this.props\n\n if (opened) {\n this.addPositionObserver()\n }\n\n const style = opened ? this.makeStyle() : {}\n\n return ReactDOM.createPortal(\n <span\n className={classnames(\n 'dnb-drawer-list__portal__style',\n fixed_position && 'dnb-drawer-list__portal__style--fixed',\n className\n )}\n style={style}\n ref={this.ref}\n >\n {children}\n </span>,\n this.portalElem\n )\n }\n\n return null\n }\n}\n\nexport default React.forwardRef((props, ref) => {\n return <DrawerListPortal innerRef={ref} {...props} />\n})\n"],"mappings":"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"}
@@ -120,7 +120,9 @@
120
120
  background-color: transparent;
121
121
 
122
122
  transform: translateY(0);
123
- transition: transform 200ms, opacity 160ms ease-out;
123
+ transition:
124
+ transform 200ms,
125
+ opacity 160ms ease-out;
124
126
  }
125
127
 
126
128
  // ul element
@@ -30,6 +30,7 @@ import type { TableProps } from '../components/Table';
30
30
  import type { GlobalErrorProps } from '../components/GlobalError';
31
31
  import type { ModalProps } from '../components/modal/types';
32
32
  import type { AccordionProps } from '../components/Accordion';
33
+ import type { StepIndicatorProps } from '../components/StepIndicator';
33
34
  import type { NumberFormatCurrency } from '../components/NumberFormat';
34
35
  import type { ThemeProps } from './Theme';
35
36
  export type ContextComponents = {
@@ -59,6 +60,7 @@ export type ContextComponents = {
59
60
  GlobalError?: Partial<GlobalErrorProps>;
60
61
  Modal?: Partial<ModalProps>;
61
62
  Accordion?: Partial<AccordionProps>;
63
+ StepIndicator?: Partial<StepIndicatorProps>;
62
64
  NumberFormat?: Record<string, unknown>;
63
65
  Pagination?: Record<string, unknown>;
64
66
  FormRow?: FormRowProps;
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","names":["_react","_interopRequireDefault","require","_defaults","_locales","_componentHelper","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","prepareContext","props","locales","extend","defaultLocales","__context__","assign","handleLocaleFallbacks","locale","LOCALE","translation","destruct","context","updateTranslation","getTranslation","lang","breakpoints","skeleton","split","Context","React","createContext","currency","CURRENCY","currency_display","CURRENCY_DISPLAY","_default","exports","validKeys","k","includes","list","val","last"],"sources":["../../../src/shared/Context.tsx"],"sourcesContent":["/**\n * Web Context Context\n *\n */\n\nimport React from 'react'\nimport { LOCALE, CURRENCY, CURRENCY_DISPLAY } from './defaults'\nimport defaultLocales from './locales'\nimport { extend } from './component-helper'\n\n// All TypeScript based Eufemia elements\nimport type { ScrollViewProps } from '../fragments/scroll-view/ScrollView'\n\n// All TypeScript based Eufemia components\nimport type { AnchorProps } from '../components/Anchor'\nimport type { ButtonProps } from '../components/button/Button'\nimport type { AvatarProps } from '../components/avatar/Avatar'\nimport type { AvatarGroupProps } from '../components/avatar/AvatarGroup'\nimport type { BadgeProps } from '../components/badge/Badge'\nimport type { BreadcrumbProps } from '../components/breadcrumb/Breadcrumb'\nimport type { BreadcrumbItemProps } from '../components/breadcrumb/BreadcrumbItem'\nimport type { InfoCardProps } from '../components/info-card/InfoCard'\nimport type { SliderProps } from '../components/slider/Slider'\nimport type { TagProps } from '../components/tag/Tag'\nimport type { TagGroupProps } from '../components/tag/TagGroup'\nimport type { TimelineProps } from '../components/timeline/Timeline'\nimport type { TimelineItemProps } from '../components/timeline/TimelineItem'\nimport type { VisuallyHiddenProps } from '../components/visually-hidden/VisuallyHidden'\nimport type { DrawerProps } from '../components/drawer/types'\nimport type { DialogProps } from '../components/dialog/types'\nimport type { TooltipProps } from '../components/tooltip/types'\nimport type { SectionProps } from '../components/section/Section'\nimport type { FormRowProps } from '../components/form-row/FormRowHelpers'\nimport type { UploadProps } from '../components/upload/types'\nimport type { SkeletonProps, SkeletonShow } from '../components/Skeleton'\nimport type { HelpButtonProps } from '../components/HelpButton'\nimport type { TableProps } from '../components/Table'\nimport type { GlobalErrorProps } from '../components/GlobalError'\nimport type { ModalProps } from '../components/modal/types'\nimport type { AccordionProps } from '../components/Accordion'\n\nimport type { NumberFormatCurrency } from '../components/NumberFormat'\n\nimport type { ThemeProps } from './Theme'\n\nexport type ContextComponents = {\n Button?: Partial<ButtonProps>\n Anchor?: Partial<AnchorProps>\n Avatar?: Partial<AvatarProps>\n AvatarGroup?: Partial<AvatarGroupProps>\n Badge?: Partial<BadgeProps>\n Breadcrumb?: Partial<BreadcrumbProps>\n BreadcrumbItem?: Partial<BreadcrumbItemProps>\n InfoCard?: Partial<InfoCardProps>\n Slider?: Partial<SliderProps>\n Tag?: Partial<TagProps>\n TagGroup?: Partial<TagGroupProps>\n Timeline?: Partial<TimelineProps>\n TimelineItem?: Partial<TimelineItemProps>\n VisuallyHidden?: Partial<VisuallyHiddenProps>\n Drawer?: Partial<DrawerProps>\n Dialog?: Partial<DialogProps>\n Tooltip?: Partial<TooltipProps>\n Section?: Partial<SectionProps>\n ScrollView?: Partial<ScrollViewProps>\n Upload?: Partial<UploadProps>\n Skeleton?: Partial<SkeletonProps>\n HelpButton?: Partial<HelpButtonProps>\n Table?: Partial<TableProps>\n GlobalError?: Partial<GlobalErrorProps>\n Modal?: Partial<ModalProps>\n Accordion?: Partial<AccordionProps>\n\n // -- TODO: Not converted yet --\n NumberFormat?: Record<string, unknown>\n Pagination?: Record<string, unknown>\n FormRow?: FormRowProps\n}\n\nexport type ContextProps = ContextComponents & {\n // -- All TypeScript based Eufemia components --\n\n // -- Global properties --\n\n /**\n * Contains theme related properties, such as a theme name\n */\n theme?: ThemeProps\n\n /**\n * Will enable all skeletons inside this provider/context scope\n */\n skeleton?: SkeletonShow\n\n /**\n * Define what breakpoints should be used by the MediaQuery component and hook\n */\n breakpoints?: Record<string, string>\n\n /**\n * Defines the locale (internal translation) used by some components\n */\n locale?: Locale\n\n /**\n * Provide your own translations. Use the same format as defined in the translation files\n */\n translation?: Translation\n\n /**\n * Defines the currency used by the NumberFormat component\n */\n currency?: NumberFormatCurrency\n\n /**\n * Defines the currencyDisplay used by the NumberFormat component\n */\n currency_display?: string\n\n /**\n * Update any given provider/context properties\n */\n update?: (props: ContextProps) => void\n\n /**\n * Update any given provider/context properties, but only for the particular scope\n */\n updateCurrent?: (props: ContextProps) => void\n\n /**\n * Update the used locale from within the context\n */\n setLocale?: (locale: Locale) => void\n\n /**\n * Update the used locale from within the context, but only for the particular scope\n */\n setCurrentLocale?: (locale: Locale) => void\n\n // -- For internal use --\n locales?: Locales\n __context__?: Record<string, unknown>\n updateTranslation?: (locale: Locale, translation: Translation) => void\n getTranslation?: (props: GetTranslationProps) => Translation\n}\n\nexport type GetTranslationProps = Partial<{\n lang?: Locale\n locale?: Locale\n}>\n\nexport type Locale = string | 'nb-NO' | 'en-GB' | 'en-US'\nexport type ComponentTranslationsName = string | keyof ContextComponents\nexport type ComponentTranslation = string\nexport type ComponentTranslations = Record<string, ComponentTranslation>\nexport type Locales = Record<Locale, Translation | TranslationConsumer>\nexport type Translation = Record<\n /**\n * Support only \"HelpButton\"\n */\n ComponentTranslationsName,\n ComponentTranslations\n>\nexport type TranslationConsumer = Record<\n /**\n * Support \"HelpButton.title\"\n */\n ComponentTranslationsName,\n ComponentTranslation | ComponentTranslations\n>\n\nexport function prepareContext<Props>(\n props: ContextProps = {}\n): Props & ContextProps {\n const locales: Locales = props.locales\n ? extend(defaultLocales, props.locales)\n : defaultLocales\n\n if (props.__context__) {\n Object.assign(props, props.__context__)\n delete props.__context__\n }\n\n const key = handleLocaleFallbacks(props.locale || LOCALE, locales)\n const translation = locales[key] || defaultLocales[LOCALE] || {} // here we could use Object.freeze\n\n /**\n * The code above adds support for strings, defined like:\n * {\n * \"Modal.close_title\": \"Lukk\",\n * }\n */\n if (locales[key]) {\n locales[key] = destruct(locales[key], translation)\n }\n\n const context = {\n // We may use that in future\n updateTranslation: (locale: string, translation: Translation) => {\n context.translation = context.locales[locale] = translation\n },\n getTranslation: (props: GetTranslationProps) => {\n if (props) {\n const lang = props.lang || props.locale\n if (lang && context.locales[lang] && lang !== key) {\n return context.locales[lang]\n }\n }\n return context.translation\n },\n\n locales,\n locale: null,\n breakpoints: null,\n skeleton: null,\n\n ...props,\n\n /**\n * Make sure we set this after props, since we update this one!\n */\n translation,\n } as Props & ContextProps\n\n return context\n}\n\nfunction handleLocaleFallbacks(locale: Locale, locales: Locales) {\n if (!locales[locale]) {\n if (locale === 'en' || locale.split('-')[0] === 'en') {\n return 'en-GB'\n }\n }\n return locale\n}\n\n// If no provider is given, we use the default context from here\nconst Context = React.createContext<ContextProps>(\n prepareContext({\n locale: LOCALE,\n currency: CURRENCY,\n currency_display: CURRENCY_DISPLAY,\n })\n)\n\nexport default Context\n\nfunction destruct(\n source: TranslationConsumer,\n validKeys: Record<string, unknown>\n): TranslationConsumer {\n for (const k in source) {\n if (String(k).includes('.')) {\n const list = k.split('.')\n\n if (validKeys[list[0]]) {\n const val = source[k]\n const last = list.length - 1\n\n list.forEach((k, i) => {\n source[k] = i === last ? val : source[k]\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n source = source[k] || {}\n })\n\n // If the root object is frozen, then use this\n // let lastObj = { ...source }\n // list.forEach((k, i) => {\n // lastObj[k] = i === last ? val : lastObj[k] // we may have to create a new object here instead?\n // lastObj = lastObj[k]\n // })\n }\n }\n }\n\n return source\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Context.js","names":["_react","_interopRequireDefault","require","_defaults","_locales","_componentHelper","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","prepareContext","props","locales","extend","defaultLocales","__context__","assign","handleLocaleFallbacks","locale","LOCALE","translation","destruct","context","updateTranslation","getTranslation","lang","breakpoints","skeleton","split","Context","React","createContext","currency","CURRENCY","currency_display","CURRENCY_DISPLAY","_default","exports","validKeys","k","includes","list","val","last"],"sources":["../../../src/shared/Context.tsx"],"sourcesContent":["/**\n * Web Context Context\n *\n */\n\nimport React from 'react'\nimport { LOCALE, CURRENCY, CURRENCY_DISPLAY } from './defaults'\nimport defaultLocales from './locales'\nimport { extend } from './component-helper'\n\n// All TypeScript based Eufemia elements\nimport type { ScrollViewProps } from '../fragments/scroll-view/ScrollView'\n\n// All TypeScript based Eufemia components\nimport type { AnchorProps } from '../components/Anchor'\nimport type { ButtonProps } from '../components/button/Button'\nimport type { AvatarProps } from '../components/avatar/Avatar'\nimport type { AvatarGroupProps } from '../components/avatar/AvatarGroup'\nimport type { BadgeProps } from '../components/badge/Badge'\nimport type { BreadcrumbProps } from '../components/breadcrumb/Breadcrumb'\nimport type { BreadcrumbItemProps } from '../components/breadcrumb/BreadcrumbItem'\nimport type { InfoCardProps } from '../components/info-card/InfoCard'\nimport type { SliderProps } from '../components/slider/Slider'\nimport type { TagProps } from '../components/tag/Tag'\nimport type { TagGroupProps } from '../components/tag/TagGroup'\nimport type { TimelineProps } from '../components/timeline/Timeline'\nimport type { TimelineItemProps } from '../components/timeline/TimelineItem'\nimport type { VisuallyHiddenProps } from '../components/visually-hidden/VisuallyHidden'\nimport type { DrawerProps } from '../components/drawer/types'\nimport type { DialogProps } from '../components/dialog/types'\nimport type { TooltipProps } from '../components/tooltip/types'\nimport type { SectionProps } from '../components/section/Section'\nimport type { FormRowProps } from '../components/form-row/FormRowHelpers'\nimport type { UploadProps } from '../components/upload/types'\nimport type { SkeletonProps, SkeletonShow } from '../components/Skeleton'\nimport type { HelpButtonProps } from '../components/HelpButton'\nimport type { TableProps } from '../components/Table'\nimport type { GlobalErrorProps } from '../components/GlobalError'\nimport type { ModalProps } from '../components/modal/types'\nimport type { AccordionProps } from '../components/Accordion'\nimport type { StepIndicatorProps } from '../components/StepIndicator'\n\nimport type { NumberFormatCurrency } from '../components/NumberFormat'\n\nimport type { ThemeProps } from './Theme'\n\nexport type ContextComponents = {\n Button?: Partial<ButtonProps>\n Anchor?: Partial<AnchorProps>\n Avatar?: Partial<AvatarProps>\n AvatarGroup?: Partial<AvatarGroupProps>\n Badge?: Partial<BadgeProps>\n Breadcrumb?: Partial<BreadcrumbProps>\n BreadcrumbItem?: Partial<BreadcrumbItemProps>\n InfoCard?: Partial<InfoCardProps>\n Slider?: Partial<SliderProps>\n Tag?: Partial<TagProps>\n TagGroup?: Partial<TagGroupProps>\n Timeline?: Partial<TimelineProps>\n TimelineItem?: Partial<TimelineItemProps>\n VisuallyHidden?: Partial<VisuallyHiddenProps>\n Drawer?: Partial<DrawerProps>\n Dialog?: Partial<DialogProps>\n Tooltip?: Partial<TooltipProps>\n Section?: Partial<SectionProps>\n ScrollView?: Partial<ScrollViewProps>\n Upload?: Partial<UploadProps>\n Skeleton?: Partial<SkeletonProps>\n HelpButton?: Partial<HelpButtonProps>\n Table?: Partial<TableProps>\n GlobalError?: Partial<GlobalErrorProps>\n Modal?: Partial<ModalProps>\n Accordion?: Partial<AccordionProps>\n StepIndicator?: Partial<StepIndicatorProps>\n\n // -- TODO: Not converted yet --\n NumberFormat?: Record<string, unknown>\n Pagination?: Record<string, unknown>\n FormRow?: FormRowProps\n}\n\nexport type ContextProps = ContextComponents & {\n // -- All TypeScript based Eufemia components --\n\n // -- Global properties --\n\n /**\n * Contains theme related properties, such as a theme name\n */\n theme?: ThemeProps\n\n /**\n * Will enable all skeletons inside this provider/context scope\n */\n skeleton?: SkeletonShow\n\n /**\n * Define what breakpoints should be used by the MediaQuery component and hook\n */\n breakpoints?: Record<string, string>\n\n /**\n * Defines the locale (internal translation) used by some components\n */\n locale?: Locale\n\n /**\n * Provide your own translations. Use the same format as defined in the translation files\n */\n translation?: Translation\n\n /**\n * Defines the currency used by the NumberFormat component\n */\n currency?: NumberFormatCurrency\n\n /**\n * Defines the currencyDisplay used by the NumberFormat component\n */\n currency_display?: string\n\n /**\n * Update any given provider/context properties\n */\n update?: (props: ContextProps) => void\n\n /**\n * Update any given provider/context properties, but only for the particular scope\n */\n updateCurrent?: (props: ContextProps) => void\n\n /**\n * Update the used locale from within the context\n */\n setLocale?: (locale: Locale) => void\n\n /**\n * Update the used locale from within the context, but only for the particular scope\n */\n setCurrentLocale?: (locale: Locale) => void\n\n // -- For internal use --\n locales?: Locales\n __context__?: Record<string, unknown>\n updateTranslation?: (locale: Locale, translation: Translation) => void\n getTranslation?: (props: GetTranslationProps) => Translation\n}\n\nexport type GetTranslationProps = Partial<{\n lang?: Locale\n locale?: Locale\n}>\n\nexport type Locale = string | 'nb-NO' | 'en-GB' | 'en-US'\nexport type ComponentTranslationsName = string | keyof ContextComponents\nexport type ComponentTranslation = string\nexport type ComponentTranslations = Record<string, ComponentTranslation>\nexport type Locales = Record<Locale, Translation | TranslationConsumer>\nexport type Translation = Record<\n /**\n * Support only \"HelpButton\"\n */\n ComponentTranslationsName,\n ComponentTranslations\n>\nexport type TranslationConsumer = Record<\n /**\n * Support \"HelpButton.title\"\n */\n ComponentTranslationsName,\n ComponentTranslation | ComponentTranslations\n>\n\nexport function prepareContext<Props>(\n props: ContextProps = {}\n): Props & ContextProps {\n const locales: Locales = props.locales\n ? extend(defaultLocales, props.locales)\n : defaultLocales\n\n if (props.__context__) {\n Object.assign(props, props.__context__)\n delete props.__context__\n }\n\n const key = handleLocaleFallbacks(props.locale || LOCALE, locales)\n const translation = locales[key] || defaultLocales[LOCALE] || {} // here we could use Object.freeze\n\n /**\n * The code above adds support for strings, defined like:\n * {\n * \"Modal.close_title\": \"Lukk\",\n * }\n */\n if (locales[key]) {\n locales[key] = destruct(locales[key], translation)\n }\n\n const context = {\n // We may use that in future\n updateTranslation: (locale: string, translation: Translation) => {\n context.translation = context.locales[locale] = translation\n },\n getTranslation: (props: GetTranslationProps) => {\n if (props) {\n const lang = props.lang || props.locale\n if (lang && context.locales[lang] && lang !== key) {\n return context.locales[lang]\n }\n }\n return context.translation\n },\n\n locales,\n locale: null,\n breakpoints: null,\n skeleton: null,\n\n ...props,\n\n /**\n * Make sure we set this after props, since we update this one!\n */\n translation,\n } as Props & ContextProps\n\n return context\n}\n\nfunction handleLocaleFallbacks(locale: Locale, locales: Locales) {\n if (!locales[locale]) {\n if (locale === 'en' || locale.split('-')[0] === 'en') {\n return 'en-GB'\n }\n }\n return locale\n}\n\n// If no provider is given, we use the default context from here\nconst Context = React.createContext<ContextProps>(\n prepareContext({\n locale: LOCALE,\n currency: CURRENCY,\n currency_display: CURRENCY_DISPLAY,\n })\n)\n\nexport default Context\n\nfunction destruct(\n source: TranslationConsumer,\n validKeys: Record<string, unknown>\n): TranslationConsumer {\n for (const k in source) {\n if (String(k).includes('.')) {\n const list = k.split('.')\n\n if (validKeys[list[0]]) {\n const val = source[k]\n const last = list.length - 1\n\n list.forEach((k, i) => {\n source[k] = i === last ? val : source[k]\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n source = source[k] || {}\n })\n\n // If the root object is frozen, then use this\n // let lastObj = { ...source }\n // list.forEach((k, i) => {\n // lastObj[k] = i === last ? val : lastObj[k] // we may have to create a new object here instead?\n // lastObj = lastObj[k]\n // })\n }\n }\n }\n\n return source\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  export function init(): void;
2
- export const version: "10.6.0";
2
+ export const version: "10.8.0";
@@ -5,13 +5,13 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.init = init;
7
7
  exports.version = void 0;
8
- const version = '10.6.0';
8
+ const version = '10.8.0';
9
9
  exports.version = version;
10
10
  function init() {
11
11
  if (typeof window !== 'undefined') {
12
12
  class Eufemia {
13
13
  get version() {
14
- return '10.6.0';
14
+ return '10.8.0';
15
15
  }
16
16
  }
17
17
  window.Eufemia = new Eufemia();
@@ -1 +1 @@
1
- {"version":3,"file":"Eufemia.js","names":["version","exports","init","window","Eufemia"],"sources":["../../../src/shared/Eufemia.js"],"sourcesContent":["export const version = '10.6.0'\n\nexport function init() {\n if (typeof window !== 'undefined') {\n class Eufemia {\n get version() {\n return '10.6.0'\n }\n }\n\n window.Eufemia = new Eufemia()\n }\n}\n"],"mappings":";;;;;;;AAAO,MAAMA,OAAO,GAAG,QAAQ;AAAAC,OAAA,CAAAD,OAAA,GAAAA,OAAA;AAExB,SAASE,IAAIA,CAAA,EAAG;EACrB,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE;IACjC,MAAMC,OAAO,CAAC;MACZ,IAAIJ,OAAOA,CAAA,EAAG;QACZ,OAAO,QAAQ;MACjB;IACF;IAEAG,MAAM,CAACC,OAAO,GAAG,IAAIA,OAAO,CAAC,CAAC;EAChC;AACF"}
1
+ {"version":3,"file":"Eufemia.js","names":["version","exports","init","window","Eufemia"],"sources":["../../../src/shared/Eufemia.js"],"sourcesContent":["export const version = '10.8.0'\n\nexport function init() {\n if (typeof window !== 'undefined') {\n class Eufemia {\n get version() {\n return '10.8.0'\n }\n }\n\n window.Eufemia = new Eufemia()\n }\n}\n"],"mappings":";;;;;;;AAAO,MAAMA,OAAO,GAAG,QAAQ;AAAAC,OAAA,CAAAD,OAAA,GAAAA,OAAA;AAExB,SAASE,IAAIA,CAAA,EAAG;EACrB,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE;IACjC,MAAMC,OAAO,CAAC;MACZ,IAAIJ,OAAOA,CAAA,EAAG;QACZ,OAAO,QAAQ;MACjB;IACF;IAEAG,MAAM,CAACC,OAAO,GAAG,IAAIA,OAAO,CAAC,CAAC;EAChC;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"withCamelCaseProps.js","names":["_react","_interopRequireDefault","require","_componentHelper","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","withCamelCaseProps","Base","Component","Derived","props","createElement","freeze","convertCamelCaseProps","name","classWithCamelCaseProps","constructor","componentDidMount","render","_prevProps","_elem","displayName","newProps","test","toSnakeCase"],"sources":["../../../../src/shared/helpers/withCamelCaseProps.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-ts-comment */\nimport React from 'react'\nimport { toSnakeCase } from '../component-helper'\n\n/**\n * withCamelCaseProps is a HOC for function components\n * it will return a React Component where all snake_case props gets converted to camelCase\n *\n * Use the same for TypeScript types by using: ToCamelCase\n *\n * @param Base the original function or class\n * @returns extended function or class\n */\nexport function withCamelCaseProps<TBase, P>(\n Base: React.FunctionComponent<P> & TBase\n): typeof Base {\n const Component: React.ComponentType = Base\n\n const Derived = (props: P) => {\n return <Component {...Object.freeze(convertCamelCaseProps(props))} />\n }\n\n Object.defineProperty(Derived, 'name', {\n value: Base.name,\n })\n\n for (const name in Base) {\n Object.defineProperty(Derived, name, {\n value: Base[name],\n })\n }\n\n // @ts-ignore\n return Derived\n}\n\n/**\n * withCamelCaseProps is a HOC for classes\n * it will return a React Component where all snake_case props gets converted to camelCase\n *\n * Use the same for TypeScript types by using: ToCamelCase\n *\n * @param Base the original function or class\n * @returns extended function or class\n */\nexport function classWithCamelCaseProps<\n TBase extends React.ComponentClass\n>(Base: TBase): typeof Base {\n const Component: React.ComponentClass = Base\n\n // Bug? https://github.com/microsoft/TypeScript/issues/37142\n // @ts-ignore\n class Derived extends Base {\n _prevProps: Record<string, unknown>\n _elem: React.ReactElement\n\n componentDidMount() {\n // ensures we do not run componentDidMount twice\n }\n\n render() {\n if (this.props !== this._prevProps) {\n this._prevProps = this.props\n this._elem = (\n // @ts-ignore\n <Component\n {...Object.freeze(convertCamelCaseProps(this.props))}\n />\n )\n }\n\n return this._elem\n }\n }\n\n Object.defineProperty(Derived, 'name', {\n value: Base.name,\n })\n\n Object.defineProperty(Derived, 'displayName', {\n value: Base.displayName || Base.name,\n })\n\n return Derived\n}\n\nfunction convertCamelCaseProps<P>(props: P) {\n const newProps = { ...props }\n\n for (const key in props) {\n switch (key) {\n case 'className': {\n continue\n }\n }\n\n if (/^[a-z]+[A-Z]/.test(key)) {\n newProps[toSnakeCase(key)] = props[key]\n delete newProps[key]\n }\n }\n\n return newProps\n}\n\n/**\n * Convert recursively Types from snake_case to camelCase\n *\n * Use it like so:\n * OriginalProps & ToCamelCase<OriginalProps>\n *\n * Disclaimer: Be careful using these with required props\n * - ToCamelCase makes the required snake_case props also required in camelCase\n * - ToCamelCasePartial removes required for the camelCase props\n *\n */\nexport type ToCamelCasePartial<T> = Partial<ToCamelCase<T>>\nexport type ToCamelCase<T> = T extends object\n ? {\n [K in keyof T as ConvertSnakeToCamelCase<K & string>]:\n | T[K]\n | ToCamelCase<T[K]>\n }\n : T\nexport type IncludeCamelCase<T> = Partial<T> & ToCamelCasePartial<T>\ntype ConvertSnakeToCamelCase<S extends string> =\n S extends `${infer T}_${infer U}`\n ? `${T}${Capitalize<ConvertSnakeToCamelCase<U>>}`\n : S\n"],"mappings":"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"}
1
+ {"version":3,"file":"withCamelCaseProps.js","names":["_react","_interopRequireDefault","require","_componentHelper","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","withCamelCaseProps","Base","Component","Derived","props","createElement","freeze","convertCamelCaseProps","name","classWithCamelCaseProps","constructor","componentDidMount","render","_prevProps","_elem","displayName","newProps","test","toSnakeCase"],"sources":["../../../../src/shared/helpers/withCamelCaseProps.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-ts-comment */\nimport React from 'react'\nimport { toSnakeCase } from '../component-helper'\n\n/**\n * withCamelCaseProps is a HOC for function components\n * it will return a React Component where all snake_case props gets converted to camelCase\n *\n * Use the same for TypeScript types by using: ToCamelCase\n *\n * @param Base the original function or class\n * @returns extended function or class\n */\nexport function withCamelCaseProps<TBase, P>(\n Base: React.FunctionComponent<P> & TBase\n): typeof Base {\n const Component: React.ComponentType = Base\n\n const Derived = (props: P) => {\n return <Component {...Object.freeze(convertCamelCaseProps(props))} />\n }\n\n Object.defineProperty(Derived, 'name', {\n value: Base.name,\n })\n\n for (const name in Base) {\n Object.defineProperty(Derived, name, {\n value: Base[name],\n })\n }\n\n // @ts-ignore\n return Derived\n}\n\n/**\n * withCamelCaseProps is a HOC for classes\n * it will return a React Component where all snake_case props gets converted to camelCase\n *\n * Use the same for TypeScript types by using: ToCamelCase\n *\n * @param Base the original function or class\n * @returns extended function or class\n */\nexport function classWithCamelCaseProps<\n TBase extends React.ComponentClass,\n>(Base: TBase): typeof Base {\n const Component: React.ComponentClass = Base\n\n // Bug? https://github.com/microsoft/TypeScript/issues/37142\n // @ts-ignore\n class Derived extends Base {\n _prevProps: Record<string, unknown>\n _elem: React.ReactElement\n\n componentDidMount() {\n // ensures we do not run componentDidMount twice\n }\n\n render() {\n if (this.props !== this._prevProps) {\n this._prevProps = this.props\n this._elem = (\n // @ts-ignore\n <Component\n {...Object.freeze(convertCamelCaseProps(this.props))}\n />\n )\n }\n\n return this._elem\n }\n }\n\n Object.defineProperty(Derived, 'name', {\n value: Base.name,\n })\n\n Object.defineProperty(Derived, 'displayName', {\n value: Base.displayName || Base.name,\n })\n\n return Derived\n}\n\nfunction convertCamelCaseProps<P>(props: P) {\n const newProps = { ...props }\n\n for (const key in props) {\n switch (key) {\n case 'className': {\n continue\n }\n }\n\n if (/^[a-z]+[A-Z]/.test(key)) {\n newProps[toSnakeCase(key)] = props[key]\n delete newProps[key]\n }\n }\n\n return newProps\n}\n\n/**\n * Convert recursively Types from snake_case to camelCase\n *\n * Use it like so:\n * OriginalProps & ToCamelCase<OriginalProps>\n *\n * Disclaimer: Be careful using these with required props\n * - ToCamelCase makes the required snake_case props also required in camelCase\n * - ToCamelCasePartial removes required for the camelCase props\n *\n */\nexport type ToCamelCasePartial<T> = Partial<ToCamelCase<T>>\nexport type ToCamelCase<T> = T extends object\n ? {\n [K in keyof T as ConvertSnakeToCamelCase<K & string>]:\n | T[K]\n | ToCamelCase<T[K]>\n }\n : T\nexport type IncludeCamelCase<T> = Partial<T> & ToCamelCasePartial<T>\ntype ConvertSnakeToCamelCase<S extends string> =\n S extends `${infer T}_${infer U}`\n ? `${T}${Capitalize<ConvertSnakeToCamelCase<U>>}`\n : S\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"withSnakeCaseProps.js","names":["_react","_interopRequireDefault","require","_componentHelper","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","withSnakeCaseProps","Base","Component","Derived","props","createElement","freeze","convertSnakeCaseProps","name","classWithSnakeCaseProps","constructor","componentDidMount","render","_prevProps","_elem","displayName","newProps","includes","test","toCamelCase"],"sources":["../../../../src/shared/helpers/withSnakeCaseProps.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-ts-comment */\nimport React from 'react'\nimport { toCamelCase } from '../component-helper'\n\n/**\n * withSnakeCaseProps is a HOC for function components\n * it will return a React Component where all snake_case props gets converted to camelCase\n *\n * Use the same for TypeScript types by using: ToSnakeCase\n *\n * @param Base the original function or class\n * @returns extended function or class\n */\nexport function withSnakeCaseProps<TBase, P>(\n Base: React.FunctionComponent<P> & TBase\n): typeof Base {\n const Component: React.ComponentType = Base\n\n const Derived = (props: P) => {\n return <Component {...Object.freeze(convertSnakeCaseProps(props))} />\n }\n\n Object.defineProperty(Derived, 'name', {\n value: Base.name,\n })\n\n for (const name in Base) {\n Object.defineProperty(Derived, name, {\n value: Base[name],\n })\n }\n\n // @ts-ignore\n return Derived\n}\n\n/**\n * withSnakeCaseProps is a HOC for classes\n * it will return a React Component where all snake_case props gets converted to camelCase\n *\n * Use the same for TypeScript types by using: ToSnakeCase\n *\n * @param Base the original function or class\n * @returns extended function or class\n */\nexport function classWithSnakeCaseProps<\n TBase extends React.ComponentClass\n>(Base: TBase): typeof Base {\n const Component: React.ComponentClass = Base\n\n // Bug? https://github.com/microsoft/TypeScript/issues/37142\n // @ts-ignore\n class Derived extends Base {\n _prevProps: Record<string, unknown>\n _elem: React.ReactElement\n\n componentDidMount() {\n // ensures we do not run componentDidMount twice\n }\n\n render() {\n if (this.props !== this._prevProps) {\n this._prevProps = this.props\n this._elem = (\n // @ts-ignore\n <Component\n {...Object.freeze(convertSnakeCaseProps(this.props))}\n />\n )\n }\n\n return this._elem\n }\n }\n\n Object.defineProperty(Derived, 'name', {\n value: Base.name,\n })\n\n Object.defineProperty(Derived, 'displayName', {\n value: Base.displayName || Base.name,\n })\n\n return Derived\n}\n\nexport function convertSnakeCaseProps<P>(props: P) {\n const newProps = { ...props }\n\n for (const key in props) {\n if (key.includes('_') && /^[a-z]+/.test(key) && !/[A-Z]/.test(key)) {\n newProps[toCamelCase(key)] = props[key]\n delete newProps[key]\n }\n }\n\n return newProps\n}\n\n/**\n * Convert recursively Types from camelCase to snake_case\n *\n * Use it like so:\n * OriginalProps & ToSnakeCase<OriginalProps>\n *\n * Disclaimer: Be careful using these with required props\n * - ToSnakeCase makes the required camelCase props also required in snake_case\n * - ToSnakeCasePartial removes required for the snake_case props\n *\n */\nexport type ToSnakeCasePartial<T> = Partial<ToSnakeCase<T>>\nexport type ToSnakeCase<T> = T extends object\n ? {\n [K in keyof T as ConvertCamelToSnakeCase<K & string>]:\n | T[K]\n | ToSnakeCase<T[K]>\n }\n : T\nexport type IncludeSnakeCase<T> = Partial<T> & ToSnakeCasePartial<T>\ntype ConvertCamelToSnakeCase<S extends string> =\n S extends `${infer T}${infer U}`\n ? `${T extends Capitalize<T>\n ? '_'\n : ''}${Lowercase<T>}${ConvertCamelToSnakeCase<U>}`\n : S\n"],"mappings":"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"}
1
+ {"version":3,"file":"withSnakeCaseProps.js","names":["_react","_interopRequireDefault","require","_componentHelper","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","withSnakeCaseProps","Base","Component","Derived","props","createElement","freeze","convertSnakeCaseProps","name","classWithSnakeCaseProps","constructor","componentDidMount","render","_prevProps","_elem","displayName","newProps","includes","test","toCamelCase"],"sources":["../../../../src/shared/helpers/withSnakeCaseProps.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-ts-comment */\nimport React from 'react'\nimport { toCamelCase } from '../component-helper'\n\n/**\n * withSnakeCaseProps is a HOC for function components\n * it will return a React Component where all snake_case props gets converted to camelCase\n *\n * Use the same for TypeScript types by using: ToSnakeCase\n *\n * @param Base the original function or class\n * @returns extended function or class\n */\nexport function withSnakeCaseProps<TBase, P>(\n Base: React.FunctionComponent<P> & TBase\n): typeof Base {\n const Component: React.ComponentType = Base\n\n const Derived = (props: P) => {\n return <Component {...Object.freeze(convertSnakeCaseProps(props))} />\n }\n\n Object.defineProperty(Derived, 'name', {\n value: Base.name,\n })\n\n for (const name in Base) {\n Object.defineProperty(Derived, name, {\n value: Base[name],\n })\n }\n\n // @ts-ignore\n return Derived\n}\n\n/**\n * withSnakeCaseProps is a HOC for classes\n * it will return a React Component where all snake_case props gets converted to camelCase\n *\n * Use the same for TypeScript types by using: ToSnakeCase\n *\n * @param Base the original function or class\n * @returns extended function or class\n */\nexport function classWithSnakeCaseProps<\n TBase extends React.ComponentClass,\n>(Base: TBase): typeof Base {\n const Component: React.ComponentClass = Base\n\n // Bug? https://github.com/microsoft/TypeScript/issues/37142\n // @ts-ignore\n class Derived extends Base {\n _prevProps: Record<string, unknown>\n _elem: React.ReactElement\n\n componentDidMount() {\n // ensures we do not run componentDidMount twice\n }\n\n render() {\n if (this.props !== this._prevProps) {\n this._prevProps = this.props\n this._elem = (\n // @ts-ignore\n <Component\n {...Object.freeze(convertSnakeCaseProps(this.props))}\n />\n )\n }\n\n return this._elem\n }\n }\n\n Object.defineProperty(Derived, 'name', {\n value: Base.name,\n })\n\n Object.defineProperty(Derived, 'displayName', {\n value: Base.displayName || Base.name,\n })\n\n return Derived\n}\n\nexport function convertSnakeCaseProps<P>(props: P) {\n const newProps = { ...props }\n\n for (const key in props) {\n if (key.includes('_') && /^[a-z]+/.test(key) && !/[A-Z]/.test(key)) {\n newProps[toCamelCase(key)] = props[key]\n delete newProps[key]\n }\n }\n\n return newProps\n}\n\n/**\n * Convert recursively Types from camelCase to snake_case\n *\n * Use it like so:\n * OriginalProps & ToSnakeCase<OriginalProps>\n *\n * Disclaimer: Be careful using these with required props\n * - ToSnakeCase makes the required camelCase props also required in snake_case\n * - ToSnakeCasePartial removes required for the snake_case props\n *\n */\nexport type ToSnakeCasePartial<T> = Partial<ToSnakeCase<T>>\nexport type ToSnakeCase<T> = T extends object\n ? {\n [K in keyof T as ConvertCamelToSnakeCase<K & string>]:\n | T[K]\n | ToSnakeCase<T[K]>\n }\n : T\nexport type IncludeSnakeCase<T> = Partial<T> & ToSnakeCasePartial<T>\ntype ConvertCamelToSnakeCase<S extends string> =\n S extends `${infer T}${infer U}`\n ? `${T extends Capitalize<T>\n ? '_'\n : ''}${Lowercase<T>}${ConvertCamelToSnakeCase<U>}`\n : S\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Shortcuts.js","names":["_keycode","_interopRequireDefault","require","_componentHelper","obj","__esModule","default","createShortcut","constructor","eventTracker","shortcutExists","add","shortcut","callback","onDone","element","arguments","length","undefined","window","document","timeout","id","keyDown","e","event","code","keycode","shortcuts","split","metaWanted","cmd","ctrl","shift","alt","metaPressed","metaKey","ctrlKey","shiftKey","altKey","matches","forEach","cut","clearTimeout","setTimeout","warn","keyUp","addEventListener","remove","toLowerCase","removeEventListener","exports"],"sources":["../../../../src/shared/libs/Shortcuts.js"],"sourcesContent":["import keycode from 'keycode'\nimport { warn } from '../component-helper'\n\nexport class createShortcut {\n constructor() {\n this.eventTracker = []\n this.shortcutExists = []\n }\n\n // Lets you add a new shortcut\n add(shortcut, callback, onDone, element = null) {\n // Prevents multiple additions of the same shortcut\n if (\n typeof window === 'undefined' ||\n typeof document === 'undefined' ||\n this.shortcutExists[shortcut] === true\n ) {\n return\n }\n\n try {\n element = element || document\n const timeout = { id: null }\n\n const keyDown = (e) => {\n try {\n const event = e || window.event\n const code = keycode(event)\n const shortcuts = shortcut.split('+')\n const metaWanted = {\n cmd: false,\n ctrl: false,\n shift: false,\n alt: false,\n }\n const metaPressed = {\n cmd: event.metaKey,\n ctrl: event.ctrlKey,\n shift: event.shiftKey,\n alt: event.altKey,\n }\n\n let matches = 0\n shortcuts.forEach((cut) => {\n switch (cut) {\n case 'cmd':\n case 'ctrl':\n case 'shift':\n case 'alt':\n {\n metaWanted[cut] = true\n matches++\n }\n break\n default:\n {\n if (cut === code) {\n matches++\n }\n }\n break\n }\n // if (cut.length > 1) {\n // if (keycodes[cut] === keypress) {\n // matches++\n // }\n // }\n })\n\n // If we have matched the shortcut we issue the callback\n if (\n matches === shortcuts.length &&\n metaWanted.cmd === metaPressed.cmd &&\n metaWanted.ctrl === metaPressed.ctrl &&\n metaWanted.shift === metaPressed.shift &&\n metaWanted.alt === metaPressed.alt\n ) {\n callback(event)\n if (typeof onDone === 'function') {\n clearTimeout(timeout.id)\n timeout.id = setTimeout(onDone, 10)\n }\n }\n } catch (e) {\n warn(e)\n }\n }\n\n const keyUp = (e) => {\n if (typeof onDone === 'function') {\n onDone(e)\n }\n }\n\n // Add the event listener\n element.addEventListener('keydown', keyDown)\n element.addEventListener('keyup', keyUp)\n\n // Cache the event data so it can be removed later\n this.eventTracker[shortcut] = {\n timeout,\n element,\n keyDown,\n keyUp,\n }\n\n this.shortcutExists[shortcut] = true\n } catch (e) {\n warn(e)\n }\n }\n\n remove(shortcut) {\n try {\n shortcut = shortcut.toLowerCase()\n\n if (this.eventTracker[shortcut]) {\n const { timeout, element, keyDown, keyUp } = this.eventTracker[\n shortcut\n ]\n\n element.removeEventListener('keydown', keyDown, false)\n element.removeEventListener('keyup', keyUp, false)\n\n clearTimeout(timeout.id)\n\n delete this.eventTracker[shortcut]\n this.shortcutExists[shortcut] = false\n }\n } catch (e) {\n //\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Shortcuts.js","names":["_keycode","_interopRequireDefault","require","_componentHelper","obj","__esModule","default","createShortcut","constructor","eventTracker","shortcutExists","add","shortcut","callback","onDone","element","arguments","length","undefined","window","document","timeout","id","keyDown","e","event","code","keycode","shortcuts","split","metaWanted","cmd","ctrl","shift","alt","metaPressed","metaKey","ctrlKey","shiftKey","altKey","matches","forEach","cut","clearTimeout","setTimeout","warn","keyUp","addEventListener","remove","toLowerCase","removeEventListener","exports"],"sources":["../../../../src/shared/libs/Shortcuts.js"],"sourcesContent":["import keycode from 'keycode'\nimport { warn } from '../component-helper'\n\nexport class createShortcut {\n constructor() {\n this.eventTracker = []\n this.shortcutExists = []\n }\n\n // Lets you add a new shortcut\n add(shortcut, callback, onDone, element = null) {\n // Prevents multiple additions of the same shortcut\n if (\n typeof window === 'undefined' ||\n typeof document === 'undefined' ||\n this.shortcutExists[shortcut] === true\n ) {\n return\n }\n\n try {\n element = element || document\n const timeout = { id: null }\n\n const keyDown = (e) => {\n try {\n const event = e || window.event\n const code = keycode(event)\n const shortcuts = shortcut.split('+')\n const metaWanted = {\n cmd: false,\n ctrl: false,\n shift: false,\n alt: false,\n }\n const metaPressed = {\n cmd: event.metaKey,\n ctrl: event.ctrlKey,\n shift: event.shiftKey,\n alt: event.altKey,\n }\n\n let matches = 0\n shortcuts.forEach((cut) => {\n switch (cut) {\n case 'cmd':\n case 'ctrl':\n case 'shift':\n case 'alt':\n {\n metaWanted[cut] = true\n matches++\n }\n break\n default:\n {\n if (cut === code) {\n matches++\n }\n }\n break\n }\n // if (cut.length > 1) {\n // if (keycodes[cut] === keypress) {\n // matches++\n // }\n // }\n })\n\n // If we have matched the shortcut we issue the callback\n if (\n matches === shortcuts.length &&\n metaWanted.cmd === metaPressed.cmd &&\n metaWanted.ctrl === metaPressed.ctrl &&\n metaWanted.shift === metaPressed.shift &&\n metaWanted.alt === metaPressed.alt\n ) {\n callback(event)\n if (typeof onDone === 'function') {\n clearTimeout(timeout.id)\n timeout.id = setTimeout(onDone, 10)\n }\n }\n } catch (e) {\n warn(e)\n }\n }\n\n const keyUp = (e) => {\n if (typeof onDone === 'function') {\n onDone(e)\n }\n }\n\n // Add the event listener\n element.addEventListener('keydown', keyDown)\n element.addEventListener('keyup', keyUp)\n\n // Cache the event data so it can be removed later\n this.eventTracker[shortcut] = {\n timeout,\n element,\n keyDown,\n keyUp,\n }\n\n this.shortcutExists[shortcut] = true\n } catch (e) {\n warn(e)\n }\n }\n\n remove(shortcut) {\n try {\n shortcut = shortcut.toLowerCase()\n\n if (this.eventTracker[shortcut]) {\n const { timeout, element, keyDown, keyUp } =\n this.eventTracker[shortcut]\n\n element.removeEventListener('keydown', keyDown, false)\n element.removeEventListener('keyup', keyUp, false)\n\n clearTimeout(timeout.id)\n\n delete this.eventTracker[shortcut]\n this.shortcutExists[shortcut] = false\n }\n } catch (e) {\n //\n }\n }\n}\n"],"mappings":"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"}
@@ -115,6 +115,7 @@ declare const _default: {
115
115
  text_card_number: string;
116
116
  text_expired: string;
117
117
  text_blocked: string;
118
+ text_not_active: string;
118
119
  };
119
120
  Logo: {
120
121
  alt: string;
@@ -151,6 +152,7 @@ declare const _default: {
151
152
  inputErrorPattern: string;
152
153
  stringInputErrorMinLength: string;
153
154
  stringInputErrorMaxLength: string;
155
+ selectionClearSelected: string;
154
156
  countryCodeLabel: string;
155
157
  dateLabel: string;
156
158
  emailErrorRequired: string;