@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,3 +1,3 @@
1
- const base64EncodedImage = "data:image/jpeg;base64,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";
1
+ const base64EncodedImage = 'data:image/jpeg;base64,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';
2
2
  export default base64EncodedImage;
3
3
  //# sourceMappingURL=youth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"youth.js","names":["base64EncodedImage"],"sources":["../../../../../../src/extensions/payment-card/utils/backgrounds/youth.ts"],"sourcesContent":["const base64EncodedImage =\n \"data:image/jpeg;base64,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\";\n\nexport default base64EncodedImage\n"],"mappings":"AAAA,MAAMA,kBAAkB,GACtB,6+GAA6+G;AAE/+G,eAAeA,kBAAkB"}
1
+ {"version":3,"file":"youth.js","names":["base64EncodedImage"],"sources":["../../../../../../src/extensions/payment-card/utils/backgrounds/youth.ts"],"sourcesContent":["const base64EncodedImage =\n 'data:image/jpeg;base64,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'\n\nexport default base64EncodedImage\n"],"mappings":"AAAA,MAAMA,kBAAkB,GACtB,6+GAA6+G;AAE/+G,eAAeA,kBAAkB"}
@@ -154,7 +154,7 @@ class DrawerListInstance extends React.PureComponent {
154
154
  } = this.context.drawerList;
155
155
  const mainParams = _objectSpread({
156
156
  id: `${id}-drawer-list`,
157
- className: classnames(`dnb-drawer-list dnb-drawer-list--${direction}`, isTrue(independent_width) || isTrue(action_menu) && 'dnb-drawer-list--independent-width', createSpacingClasses(props), _className, className, opened && 'dnb-drawer-list--opened', hidden && 'dnb-drawer-list--hidden', triangle_position && `dnb-drawer-list--triangle-position-${triangle_position}`, align_drawer && `dnb-drawer-list--${align_drawer}`, size && `dnb-drawer-list--${size}`, isTrue(action_menu) && `dnb-drawer-list--action-menu`, isTrue(is_popup) && 'dnb-drawer-list--is-popup', isTrue(scrollable) && 'dnb-drawer-list--scroll', isTrue(no_scroll_animation) && 'dnb-drawer-list--no-scroll-animation')
157
+ className: classnames(`dnb-drawer-list dnb-drawer-list--${direction}`, (isTrue(independent_width) || isTrue(action_menu)) && 'dnb-drawer-list--independent-width', createSpacingClasses(props), _className, className, opened && 'dnb-drawer-list--opened', hidden && 'dnb-drawer-list--hidden', triangle_position && `dnb-drawer-list--triangle-position-${triangle_position}`, align_drawer && `dnb-drawer-list--${align_drawer}`, size && `dnb-drawer-list--${size}`, isTrue(action_menu) && `dnb-drawer-list--action-menu`, isTrue(is_popup) && 'dnb-drawer-list--is-popup', isTrue(scrollable) && 'dnb-drawer-list--scroll', isTrue(no_scroll_animation) && 'dnb-drawer-list--no-scroll-animation')
158
158
  }, attributes);
159
159
  const listParams = {
160
160
  id: `${id}-listbox`,
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerList.js","names":["React","PropTypes","classnames","keycode","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","dispatchCustomElementEvent","getThemeClasses","createSpacingClasses","DrawerListContext","DrawerListProvider","DrawerListPortal","drawerListPropTypes","drawerListDefaultProps","propsToFilterOut","on_show","on_hide","handle_dismiss_focus","on_change","on_pre_change","on_resize","on_select","on_state_update","on_key_down","options_render","wrapper_element","DrawerList","PureComponent","constructor","props","_id","id","render","_this$context","hasProvider","context","drawerList","createElement","DrawerListInstance","_extends","data","children","_defineProperty","blurDelay","_objectSpread","process","env","NODE_ENV","propTypes","e","hasFocusOnElement","preventDefault","setHidden","event","selected_item","parseFloat","currentTarget","getAttribute","selectItemAndClose","fireSelectEvent","state","setState","Object","entries","reduce","acc","_ref","key","triangle_position","_this$context2","defaultProps","getTranslation","role","align_drawer","fixed_position","independent_width","scrollable","focusable","size","no_animation","no_scroll_animation","prevent_selection","action_menu","is_popup","portal_class","list_class","ignore_events","className","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","_value","attributes","_objectWithoutProperties","_excluded","hidden","active_item","showFocusRing","closestToTop","closestToBottom","usePortal","addObservers","removeObservers","_refShell","_refTriangle","_refUl","_refRoot","mainParams","listParams","ulParams","tabIndex","style","maxHeight","ref","assign","ignoreEvents","Items","map","dataItem","i","__id","hash","liParams","class_name","length","active","selected","onClick","selectItemHandler","onKeyDown","preventTab","Item","mainList","Fragment","Options","triangleRef","OnMounted","rootRef","include_owner_width","theme","memo","forwardRef","rest","_excluded2","prevProps","nextProps","displayName","oneOfType","node","func","isRequired","string","bool","object","on_click","_excluded3","params","ItemContent","number","_ref2","content","Array","isArray","item","n","prototype","hasOwnProperty","call","suffix_value","HorizontalItem","_ref3","_excluded4","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","PropTypes","classnames","keycode","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","dispatchCustomElementEvent","getThemeClasses","createSpacingClasses","DrawerListContext","DrawerListProvider","DrawerListPortal","drawerListPropTypes","drawerListDefaultProps","propsToFilterOut","on_show","on_hide","handle_dismiss_focus","on_change","on_pre_change","on_resize","on_select","on_state_update","on_key_down","options_render","wrapper_element","DrawerList","PureComponent","constructor","props","_id","id","render","_this$context","hasProvider","context","drawerList","createElement","DrawerListInstance","_extends","data","children","_defineProperty","blurDelay","_objectSpread","process","env","NODE_ENV","propTypes","e","hasFocusOnElement","preventDefault","setHidden","event","selected_item","parseFloat","currentTarget","getAttribute","selectItemAndClose","fireSelectEvent","state","setState","Object","entries","reduce","acc","_ref","key","triangle_position","_this$context2","defaultProps","getTranslation","role","align_drawer","fixed_position","independent_width","scrollable","focusable","size","no_animation","no_scroll_animation","prevent_selection","action_menu","is_popup","portal_class","list_class","ignore_events","className","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","_value","attributes","_objectWithoutProperties","_excluded","hidden","active_item","showFocusRing","closestToTop","closestToBottom","usePortal","addObservers","removeObservers","_refShell","_refTriangle","_refUl","_refRoot","mainParams","listParams","ulParams","tabIndex","style","maxHeight","ref","assign","ignoreEvents","Items","map","dataItem","i","__id","hash","liParams","class_name","length","active","selected","onClick","selectItemHandler","onKeyDown","preventTab","Item","mainList","Fragment","Options","triangleRef","OnMounted","rootRef","include_owner_width","theme","memo","forwardRef","rest","_excluded2","prevProps","nextProps","displayName","oneOfType","node","func","isRequired","string","bool","object","on_click","_excluded3","params","ItemContent","number","_ref2","content","Array","isArray","item","n","prototype","hasOwnProperty","call","suffix_value","HorizontalItem","_ref3","_excluded4","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":"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"}
@@ -114,11 +114,11 @@ export class DrawerListPortal extends React.PureComponent {
114
114
  let width = 64;
115
115
  const ownerWidth = window.getComputedStyle(ownerElem).width;
116
116
  if (independent_width || parseFloat(ownerWidth) < 64) {
117
- const minWidth = parseFloat(window.getComputedStyle(document.documentElement).getPropertyValue('--drawer-list-width'));
117
+ const minWidth = parseFloat(window.getComputedStyle(document.documentElement).getPropertyValue('--drawer-list-width')) || 0;
118
118
  width = minWidth * 16;
119
119
  }
120
120
  const customWidth = rootElem.getBoundingClientRect().width;
121
- if (parseFloat(customWidth || 0) >= 64) {
121
+ if (!independent_width && parseFloat(customWidth || 0) >= 64) {
122
122
  width = customWidth;
123
123
  }
124
124
  const rect = rootElem.getBoundingClientRect();
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerListPortal.js","names":["React","ReactDOM","PropTypes","classnames","warn","getClosestScrollViewElement","drawerListPropTypes","process","env","NODE_ENV","id","string","isRequired","children","node","opened","bool","innerRef","shape","current","oneOfType","object","rootRef","include_owner_width","independent_width","fixed_position","className","drawerListDefaultProps","DrawerListPortal","PureComponent","constructor","props","_defineProperty","isMounted","portalElem","useRootElement","setState","ref","createRef","componentDidMount","document","readyState","init","window","addEventListener","componentWillUnmount","removeEventListener","removePositionObserver","elem","getElementById","createElement","setAttribute","classList","add","createMainElement","appendChild","e","body","makeStyle","state","rootElem","ownerElem","parentElement","width","ownerWidth","getComputedStyle","parseFloat","minWidth","documentElement","getPropertyValue","customWidth","getBoundingClientRect","rect","scrollY","undefined","pageYOffset","scrollX","pageXOffset","top","left","innerWidth","style","addPositionObserver","setPosition","clearTimeout","positionTimeout","setTimeout","random","Date","now","customElem","resizeObserver","ResizeObserver","observe","disconnect","render","createPortal","_objectSpread","propTypes","forwardRef","_extends"],"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":";;;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,QAAQ,MAAM,WAAW;AAChC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,IAAI,EACJC,2BAA2B,QACtB,+BAA+B;AAEtC,MAAMC,mBAAmB,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EAC1BC,EAAE,EAAER,SAAS,CAACS,MAAM,CAACC,UAAU;EAC/BC,QAAQ,EAAEX,SAAS,CAACY,IAAI,CAACF,UAAU;EACnCG,MAAM,EAAEb,SAAS,CAACc,IAAI,CAACJ,UAAU;EACjCK,QAAQ,EAAEf,SAAS,CAACgB,KAAK,CAAC;IACxBC,OAAO,EAAEjB,SAAS,CAACkB,SAAS,CAAC,CAAClB,SAAS,CAACY,IAAI,EAAEZ,SAAS,CAACmB,MAAM,CAAC;EACjE,CAAC,CAAC;EACFC,OAAO,EAAEpB,SAAS,CAACgB,KAAK,CAAC;IACvBC,OAAO,EAAEjB,SAAS,CAACkB,SAAS,CAAC,CAAClB,SAAS,CAACY,IAAI,EAAEZ,SAAS,CAACmB,MAAM,CAAC;EACjE,CAAC,CAAC,CAACT,UAAU;EACbW,mBAAmB,EAAErB,SAAS,CAACc,IAAI;EACnCQ,iBAAiB,EAAEtB,SAAS,CAACc,IAAI;EACjCS,cAAc,EAAEvB,SAAS,CAACc,IAAI;EAC9BU,SAAS,EAAExB,SAAS,CAACS;AACvB,CAAC;AAED,MAAMgB,sBAAsB,GAAG;EAC7BL,OAAO,EAAE;IAAEH,OAAO,EAAE;EAAK,CAAC;EAC1BF,QAAQ,EAAE,IAAI;EACdM,mBAAmB,EAAE,KAAK;EAC1BC,iBAAiB,EAAE,KAAK;EACxBC,cAAc,EAAE,KAAK;EACrBC,SAAS,EAAE;AACb,CAAC;AAED,OAAO,MAAME,gBAAgB,SAAS5B,KAAK,CAAC6B,aAAa,CAAC;EAWxDC,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAACA,KAAK,CAAC;IAAAC,eAAA,gBAHN;MAAEC,SAAS,EAAE;IAAM,CAAC;IAAAD,eAAA,eAOrB,MAAM;MACX,IAAI,CAACE,UAAU,GAAG,IAAI,CAACC,cAAc,CAAC,CAAC;MACvC,IAAI,CAACC,QAAQ,CAAC;QAAEH,SAAS,EAAE;MAAK,CAAC,CAAC;IACpC,CAAC;IANC,IAAI,CAACI,GAAG,GAAGN,KAAK,CAACd,QAAQ,IAAIjB,KAAK,CAACsC,SAAS,CAAC,CAAC;EAChD;EAOAC,iBAAiBA,CAAA,EAAG;IAClB,IAAIC,QAAQ,CAACC,UAAU,KAAK,UAAU,EAAE;MACtC,IAAI,CAACC,IAAI,CAAC,CAAC;IACb,CAAC,MAAM,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE;MACxCA,MAAM,CAACC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAACF,IAAI,CAAC;IAC5C;EACF;EAEAG,oBAAoBA,CAAA,EAAG;IACrB,IAAI,OAAOF,MAAM,KAAK,WAAW,EAAE;MACjCA,MAAM,CAACG,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAACJ,IAAI,CAAC;IAC/C;IAEA,IAAI,CAACK,sBAAsB,CAAC,CAAC;IAC7B,IAAI,CAACb,UAAU,GAAG,IAAI;EACxB;EAEAC,cAAcA,CAAA,EAAG;IACf,IAAI,OAAOK,QAAQ,KAAK,WAAW,EAAE;MACnC,IAAI;QACF,IAAIQ,IAAI,GAAGR,QAAQ,CAACS,cAAc,CAAE,GAAE,IAAI,CAAClB,KAAK,CAACrB,EAAG,SAAQ,CAAC;QAC7D,IAAIsC,IAAI,EAAE;UACR,OAAOA,IAAI;QACb;QAEAA,IAAI,GAAGR,QAAQ,CAACU,aAAa,CAAC,KAAK,CAAC;QACpCF,IAAI,CAACG,YAAY,CAAC,IAAI,EAAG,GAAE,IAAI,CAACpB,KAAK,CAACrB,EAAG,SAAQ,CAAC;QAClDsC,IAAI,CAACI,SAAS,CAACC,GAAG,CAAC,yBAAyB,CAAC;QAC7C,IAAI,CAACC,iBAAiB,CAAC,CAAC,CAACC,WAAW,CAACP,IAAI,CAAC;QAE1C,OAAOA,IAAI;MACb,CAAC,CAAC,OAAOQ,CAAC,EAAE;QACVpD,IAAI,CAACoD,CAAC,CAAC;MACT;IACF;EACF;EAEAF,iBAAiBA,CAAA,EAAG;IAClB,IAAI,OAAOd,QAAQ,KAAK,WAAW,EAAE;MACnC,IAAI;QACF,IAAIQ,IAAI,GAAGR,QAAQ,CAACS,cAAc,CAAC,yBAAyB,CAAC;QAC7D,IAAID,IAAI,EAAE;UACR,OAAOA,IAAI;QACb;QAEAA,IAAI,GAAGR,QAAQ,CAACU,aAAa,CAAC,KAAK,CAAC;QACpCF,IAAI,CAACG,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;QACzCH,IAAI,CAACG,YAAY,CAAC,IAAI,EAAE,yBAAyB,CAAC;QAClDH,IAAI,CAACI,SAAS,CAACC,GAAG,CAAC,gBAAgB,CAAC;QACpCb,QAAQ,CAACiB,IAAI,CAACF,WAAW,CAACP,IAAI,CAAC;QAE/B,OAAOA,IAAI;MACb,CAAC,CAAC,OAAOQ,CAAC,EAAE;QACVpD,IAAI,CAACoD,CAAC,CAAC;MACT;IACF;EACF;EAEAE,SAASA,CAAA,EAAG;IACV,IAAI,OAAOf,MAAM,KAAK,WAAW,IAAI,CAAC,IAAI,CAACgB,KAAK,CAAC1B,SAAS,EAAE;MAC1D;IACF;IAEA,IAAI;MACF,MAAM;QACJX,OAAO;QACPC,mBAAmB;QACnBC,iBAAiB;QACjBC;MACF,CAAC,GAAG,IAAI,CAACM,KAAK;MAEd,MAAM6B,QAAQ,GAAGtC,OAAO,CAACH,OAAO;MAChC,IAAI,CAACyC,QAAQ,EAAE;QACb;MACF;MACA,MAAMC,SAAS,GAAGD,QAAQ,CAACE,aAAa;MAGxC,IAAIC,KAAK,GAAG,EAAE;MAGd,MAAMC,UAAU,GAAGrB,MAAM,CAACsB,gBAAgB,CAACJ,SAAS,CAAC,CAACE,KAAK;MAG3D,IAAIvC,iBAAiB,IAAI0C,UAAU,CAACF,UAAU,CAAC,GAAG,EAAE,EAAE;QAEpD,MAAMG,QAAQ,GAAGD,UAAU,CACzBvB,MAAM,CACHsB,gBAAgB,CAACzB,QAAQ,CAAC4B,eAAe,CAAC,CAC1CC,gBAAgB,CAAC,qBAAqB,CAC3C,CAAC;QACDN,KAAK,GAAGI,QAAQ,GAAG,EAAE;MACvB;MAGA,MAAMG,WAAW,GAAGV,QAAQ,CAACW,qBAAqB,CAAC,CAAC,CAACR,KAAK;MAC1D,IAAIG,UAAU,CAACI,WAAW,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACtCP,KAAK,GAAGO,WAAW;MACrB;MAGA,MAAME,IAAI,GAAGZ,QAAQ,CAACW,qBAAqB,CAAC,CAAC;MAC7C,MAAME,OAAO,GAAGhD,cAAc,GAC1B,CAAC,GACDkB,MAAM,CAAC8B,OAAO,KAAKC,SAAS,GAC5B/B,MAAM,CAAC8B,OAAO,GACd9B,MAAM,CAACgC,WAAW;MACtB,MAAMC,OAAO,GAAGnD,cAAc,GAC1B,CAAC,GACDkB,MAAM,CAACiC,OAAO,KAAKF,SAAS,GAC5B/B,MAAM,CAACiC,OAAO,GACdjC,MAAM,CAACkC,WAAW;MAEtB,IAAIC,GAAG,GAAGL,OAAO,GAAGD,IAAI,CAACM,GAAG;MAC5B,IAAIC,IAAI,GACNH,OAAO,GACPJ,IAAI,CAACO,IAAI,IACRxD,mBAAmB,GAAG2C,UAAU,CAACF,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;MAEzD,IAAID,KAAK,GAAGpB,MAAM,CAACqC,UAAU,EAAE;QAC7BjB,KAAK,GAAGpB,MAAM,CAACqC,UAAU;MAC3B;MACA,IAAIF,GAAG,GAAG,CAAC,EAAE;QACXA,GAAG,GAAG,CAAC;MACT;MACA,IAAIC,IAAI,GAAG,CAAC,EAAE;QACZA,IAAI,GAAG,CAAC;MACV;MAGA,MAAME,KAAK,GAAG;QACZlB,KAAK;QACL,qBAAqB,EAAG,GAAEA,KAAK,GAAG,EAAG,KAAI;QACzCe,GAAG;QACHC;MACF,CAAC;MAED,OAAOE,KAAK;IACd,CAAC,CAAC,OAAOzB,CAAC,EAAE;MACVpD,IAAI,CAACoD,CAAC,CAAC;IACT;EACF;EAEA0B,mBAAmBA,CAAA,EAAG;IACpB,IAAI,IAAI,CAACC,WAAW,IAAI,OAAOxC,MAAM,KAAK,WAAW,EAAE;MACrD;IACF;IAGA,IAAI,CAACwC,WAAW,GAAG,MAAM;MACvBC,YAAY,CAAC,IAAI,CAACC,eAAe,CAAC;MAClC,IAAI,CAACA,eAAe,GAAGC,UAAU,CAAC,MAAM;QACtC,IAAI,IAAI,CAACvD,KAAK,CAAChB,MAAM,EAAE;UACrB,IAAI,CAACqB,QAAQ,CAAC;YACZmD,MAAM,EAAEC,IAAI,CAACC,GAAG,CAAC;UACnB,CAAC,CAAC;QACJ;MACF,CAAC,EAAE,GAAG,CAAC;IACT,CAAC;IAED,IAAI,CAACC,UAAU,GACbrF,2BAA2B,CAAC,IAAI,CAAC0B,KAAK,CAACT,OAAO,CAACH,OAAO,CAAC,IAAIwB,MAAM;IACnE,IAAI,CAAC+C,UAAU,CAAC9C,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAACuC,WAAW,CAAC;IAE5D,IAAI;MACF,IAAI,CAACQ,cAAc,GAAG,IAAIC,cAAc,CAAC,IAAI,CAACT,WAAW,CAAC;MAC1D,IAAI,CAACQ,cAAc,CAACE,OAAO,CAACrD,QAAQ,CAACiB,IAAI,CAAC;IAC5C,CAAC,CAAC,OAAOD,CAAC,EAAE;MACVb,MAAM,CAACC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAACuC,WAAW,CAAC;IACrD;EACF;EAEApC,sBAAsBA,CAAA,EAAG;IACvBqC,YAAY,CAAC,IAAI,CAACC,eAAe,CAAC;IAClC,IAAI,OAAO1C,MAAM,KAAK,WAAW,IAAI,IAAI,CAACwC,WAAW,EAAE;MACrD,IAAI,IAAI,CAACO,UAAU,EAAE;QACnB,IAAI,CAACA,UAAU,CAAC5C,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAACqC,WAAW,CAAC;MACjE;MACA,IAAI,IAAI,CAACQ,cAAc,EAAE;QACvB,IAAI,CAACA,cAAc,CAACG,UAAU,CAAC,CAAC;QAChC,IAAI,CAACH,cAAc,GAAG,IAAI;MAC5B;MACAhD,MAAM,CAACG,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAACqC,WAAW,CAAC;IACxD;IACA,IAAI,CAACA,WAAW,GAAG,IAAI;EACzB;EAEAY,MAAMA,CAAA,EAAG;IACP,IAAI,CAAC,IAAI,CAAC7D,UAAU,EAAE;MACpB,OAAO,IAAI;IACb;IAEA,IAAI,OAAOS,MAAM,KAAK,WAAW,IAAI,IAAI,CAACgB,KAAK,CAAC1B,SAAS,EAAE;MACzD,MAAM;QAAElB,MAAM;QAAEU,cAAc;QAAEC,SAAS;QAAEb;MAAS,CAAC,GAAG,IAAI,CAACkB,KAAK;MAElE,IAAIhB,MAAM,EAAE;QACV,IAAI,CAACmE,mBAAmB,CAAC,CAAC;MAC5B;MAEA,MAAMD,KAAK,GAAGlE,MAAM,GAAG,IAAI,CAAC2C,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC;MAE5C,OAAOzD,QAAQ,CAAC+F,YAAY,CAC1BhG,KAAA,CAAAkD,aAAA;QACExB,SAAS,EAAEvB,UAAU,CACnB,gCAAgC,EAEhCuB,SAAS,EADTD,cAAc,IAAI,uCAEpB,CAAE;QACFwD,KAAK,EAAEA,KAAM;QACb5C,GAAG,EAAE,IAAI,CAACA;MAAI,GAEbxB,QACG,CAAC,EACP,IAAI,CAACqB,UACP,CAAC;IACH;IAEA,OAAO,IAAI;EACb;AACF;AAACF,eAAA,CAhPYJ,gBAAgB,kBAAAqE,aAAA,KAMtBtE,sBAAsB;AAAApB,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBANhBmB,gBAAgB,CACpBsE,SAAS,GAAAD,aAAA,KACX3F,mBAAmB;AAgP1B,eAAeN,KAAK,CAACmG,UAAU,CAAC,CAACpE,KAAK,EAAEM,GAAG,KAAK;EAC9C,OAAOrC,KAAA,CAAAkD,aAAA,CAACtB,gBAAgB,EAAAwE,QAAA;IAACnF,QAAQ,EAAEoB;EAAI,GAAKN,KAAK,CAAG,CAAC;AACvD,CAAC,CAAC"}
1
+ {"version":3,"file":"DrawerListPortal.js","names":["React","ReactDOM","PropTypes","classnames","warn","getClosestScrollViewElement","drawerListPropTypes","process","env","NODE_ENV","id","string","isRequired","children","node","opened","bool","innerRef","shape","current","oneOfType","object","rootRef","include_owner_width","independent_width","fixed_position","className","drawerListDefaultProps","DrawerListPortal","PureComponent","constructor","props","_defineProperty","isMounted","portalElem","useRootElement","setState","ref","createRef","componentDidMount","document","readyState","init","window","addEventListener","componentWillUnmount","removeEventListener","removePositionObserver","elem","getElementById","createElement","setAttribute","classList","add","createMainElement","appendChild","e","body","makeStyle","state","rootElem","ownerElem","parentElement","width","ownerWidth","getComputedStyle","parseFloat","minWidth","documentElement","getPropertyValue","customWidth","getBoundingClientRect","rect","scrollY","undefined","pageYOffset","scrollX","pageXOffset","top","left","innerWidth","style","addPositionObserver","setPosition","clearTimeout","positionTimeout","setTimeout","random","Date","now","customElem","resizeObserver","ResizeObserver","observe","disconnect","render","createPortal","_objectSpread","propTypes","forwardRef","_extends"],"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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dnb/eufemia",
3
- "version": "10.6.0",
3
+ "version": "10.8.0",
4
4
  "description": "DNB Eufemia Design System UI Library",
5
5
  "license": "SEE LICENSE IN LICENSE FILE",
6
6
  "author": "DNB Team & Tobias Høegh",
@@ -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","LOCALE","CURRENCY","CURRENCY_DISPLAY","defaultLocales","extend","prepareContext","props","arguments","length","undefined","locales","__context__","Object","assign","key","handleLocaleFallbacks","locale","translation","destruct","context","_objectSpread","updateTranslation","getTranslation","lang","breakpoints","skeleton","split","Context","createContext","currency","currency_display","source","validKeys","k","String","includes","list","val","last","forEach","i"],"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","LOCALE","CURRENCY","CURRENCY_DISPLAY","defaultLocales","extend","prepareContext","props","arguments","length","undefined","locales","__context__","Object","assign","key","handleLocaleFallbacks","locale","translation","destruct","context","_objectSpread","updateTranslation","getTranslation","lang","breakpoints","skeleton","split","Context","createContext","currency","currency_display","source","validKeys","k","String","includes","list","val","last","forEach","i"],"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";
package/shared/Eufemia.js CHANGED
@@ -1,9 +1,9 @@
1
- export const version = '10.6.0';
1
+ export const version = '10.8.0';
2
2
  export function init() {
3
3
  if (typeof window !== 'undefined') {
4
4
  class Eufemia {
5
5
  get version() {
6
- return '10.6.0';
6
+ return '10.8.0';
7
7
  }
8
8
  }
9
9
  window.Eufemia = new Eufemia();
@@ -1 +1 @@
1
- {"version":3,"file":"Eufemia.js","names":["version","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":"AAAA,OAAO,MAAMA,OAAO,GAAG,QAAQ;AAE/B,OAAO,SAASC,IAAIA,CAAA,EAAG;EACrB,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE;IACjC,MAAMC,OAAO,CAAC;MACZ,IAAIH,OAAOA,CAAA,EAAG;QACZ,OAAO,QAAQ;MACjB;IACF;IAEAE,MAAM,CAACC,OAAO,GAAG,IAAIA,OAAO,CAAC,CAAC;EAChC;AACF"}
1
+ {"version":3,"file":"Eufemia.js","names":["version","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":"AAAA,OAAO,MAAMA,OAAO,GAAG,QAAQ;AAE/B,OAAO,SAASC,IAAIA,CAAA,EAAG;EACrB,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE;IACjC,MAAMC,OAAO,CAAC;MACZ,IAAIH,OAAOA,CAAA,EAAG;QACZ,OAAO,QAAQ;MACjB;IACF;IAEAE,MAAM,CAACC,OAAO,GAAG,IAAIA,OAAO,CAAC,CAAC;EAChC;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"withCamelCaseProps.js","names":["React","toSnakeCase","withCamelCaseProps","Base","Component","Derived","props","createElement","Object","freeze","convertCamelCaseProps","defineProperty","value","name","classWithCamelCaseProps","constructor","arguments","_defineProperty","componentDidMount","render","_prevProps","_elem","displayName","newProps","_objectSpread","key","test"],"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":";;;AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,qBAAqB;AAWjD,OAAO,SAASC,kBAAkBA,CAChCC,IAAwC,EAC3B;EACb,MAAMC,SAA8B,GAAGD,IAAI;EAE3C,MAAME,OAAO,GAAIC,KAAQ,IAAK;IAC5B,OAAON,KAAA,CAAAO,aAAA,CAACH,SAAS,EAAKI,MAAM,CAACC,MAAM,CAACC,qBAAqB,CAACJ,KAAK,CAAC,CAAI,CAAC;EACvE,CAAC;EAEDE,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,MAAM,EAAE;IACrCO,KAAK,EAAET,IAAI,CAACU;EACd,CAAC,CAAC;EAEF,KAAK,MAAMA,IAAI,IAAIV,IAAI,EAAE;IACvBK,MAAM,CAACG,cAAc,CAACN,OAAO,EAAEQ,IAAI,EAAE;MACnCD,KAAK,EAAET,IAAI,CAACU,IAAI;IAClB,CAAC,CAAC;EACJ;EAGA,OAAOR,OAAO;AAChB;AAWA,OAAO,SAASS,uBAAuBA,CAErCX,IAAW,EAAe;EAC1B,MAAMC,SAA+B,GAAGD,IAAI;EAI5C,MAAME,OAAO,SAASF,IAAI,CAAC;IAAAY,YAAA;MAAA,SAAAC,SAAA;MAAAC,eAAA;MAAAA,eAAA;IAAA;IAIzBC,iBAAiBA,CAAA,EAAG,CAEpB;IAEAC,MAAMA,CAAA,EAAG;MACP,IAAI,IAAI,CAACb,KAAK,KAAK,IAAI,CAACc,UAAU,EAAE;QAClC,IAAI,CAACA,UAAU,GAAG,IAAI,CAACd,KAAK;QAC5B,IAAI,CAACe,KAAK,GAERrB,KAAA,CAAAO,aAAA,CAACH,SAAS,EACJI,MAAM,CAACC,MAAM,CAACC,qBAAqB,CAAC,IAAI,CAACJ,KAAK,CAAC,CACpD,CACF;MACH;MAEA,OAAO,IAAI,CAACe,KAAK;IACnB;EACF;EAEAb,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,MAAM,EAAE;IACrCO,KAAK,EAAET,IAAI,CAACU;EACd,CAAC,CAAC;EAEFL,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,aAAa,EAAE;IAC5CO,KAAK,EAAET,IAAI,CAACmB,WAAW,IAAInB,IAAI,CAACU;EAClC,CAAC,CAAC;EAEF,OAAOR,OAAO;AAChB;AAEA,SAASK,qBAAqBA,CAAIJ,KAAQ,EAAE;EAC1C,MAAMiB,QAAQ,GAAAC,aAAA,KAAQlB,KAAK,CAAE;EAE7B,KAAK,MAAMmB,GAAG,IAAInB,KAAK,EAAE;IACvB,QAAQmB,GAAG;MACT,KAAK,WAAW;QAAE;UAChB;QACF;IACF;IAEA,IAAI,cAAc,CAACC,IAAI,CAACD,GAAG,CAAC,EAAE;MAC5BF,QAAQ,CAACtB,WAAW,CAACwB,GAAG,CAAC,CAAC,GAAGnB,KAAK,CAACmB,GAAG,CAAC;MACvC,OAAOF,QAAQ,CAACE,GAAG,CAAC;IACtB;EACF;EAEA,OAAOF,QAAQ;AACjB"}
1
+ {"version":3,"file":"withCamelCaseProps.js","names":["React","toSnakeCase","withCamelCaseProps","Base","Component","Derived","props","createElement","Object","freeze","convertCamelCaseProps","defineProperty","value","name","classWithCamelCaseProps","constructor","arguments","_defineProperty","componentDidMount","render","_prevProps","_elem","displayName","newProps","_objectSpread","key","test"],"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":";;;AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,qBAAqB;AAWjD,OAAO,SAASC,kBAAkBA,CAChCC,IAAwC,EAC3B;EACb,MAAMC,SAA8B,GAAGD,IAAI;EAE3C,MAAME,OAAO,GAAIC,KAAQ,IAAK;IAC5B,OAAON,KAAA,CAAAO,aAAA,CAACH,SAAS,EAAKI,MAAM,CAACC,MAAM,CAACC,qBAAqB,CAACJ,KAAK,CAAC,CAAI,CAAC;EACvE,CAAC;EAEDE,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,MAAM,EAAE;IACrCO,KAAK,EAAET,IAAI,CAACU;EACd,CAAC,CAAC;EAEF,KAAK,MAAMA,IAAI,IAAIV,IAAI,EAAE;IACvBK,MAAM,CAACG,cAAc,CAACN,OAAO,EAAEQ,IAAI,EAAE;MACnCD,KAAK,EAAET,IAAI,CAACU,IAAI;IAClB,CAAC,CAAC;EACJ;EAGA,OAAOR,OAAO;AAChB;AAWA,OAAO,SAASS,uBAAuBA,CAErCX,IAAW,EAAe;EAC1B,MAAMC,SAA+B,GAAGD,IAAI;EAI5C,MAAME,OAAO,SAASF,IAAI,CAAC;IAAAY,YAAA;MAAA,SAAAC,SAAA;MAAAC,eAAA;MAAAA,eAAA;IAAA;IAIzBC,iBAAiBA,CAAA,EAAG,CAEpB;IAEAC,MAAMA,CAAA,EAAG;MACP,IAAI,IAAI,CAACb,KAAK,KAAK,IAAI,CAACc,UAAU,EAAE;QAClC,IAAI,CAACA,UAAU,GAAG,IAAI,CAACd,KAAK;QAC5B,IAAI,CAACe,KAAK,GAERrB,KAAA,CAAAO,aAAA,CAACH,SAAS,EACJI,MAAM,CAACC,MAAM,CAACC,qBAAqB,CAAC,IAAI,CAACJ,KAAK,CAAC,CACpD,CACF;MACH;MAEA,OAAO,IAAI,CAACe,KAAK;IACnB;EACF;EAEAb,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,MAAM,EAAE;IACrCO,KAAK,EAAET,IAAI,CAACU;EACd,CAAC,CAAC;EAEFL,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,aAAa,EAAE;IAC5CO,KAAK,EAAET,IAAI,CAACmB,WAAW,IAAInB,IAAI,CAACU;EAClC,CAAC,CAAC;EAEF,OAAOR,OAAO;AAChB;AAEA,SAASK,qBAAqBA,CAAIJ,KAAQ,EAAE;EAC1C,MAAMiB,QAAQ,GAAAC,aAAA,KAAQlB,KAAK,CAAE;EAE7B,KAAK,MAAMmB,GAAG,IAAInB,KAAK,EAAE;IACvB,QAAQmB,GAAG;MACT,KAAK,WAAW;QAAE;UAChB;QACF;IACF;IAEA,IAAI,cAAc,CAACC,IAAI,CAACD,GAAG,CAAC,EAAE;MAC5BF,QAAQ,CAACtB,WAAW,CAACwB,GAAG,CAAC,CAAC,GAAGnB,KAAK,CAACmB,GAAG,CAAC;MACvC,OAAOF,QAAQ,CAACE,GAAG,CAAC;IACtB;EACF;EAEA,OAAOF,QAAQ;AACjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"withSnakeCaseProps.js","names":["React","toCamelCase","withSnakeCaseProps","Base","Component","Derived","props","createElement","Object","freeze","convertSnakeCaseProps","defineProperty","value","name","classWithSnakeCaseProps","constructor","arguments","_defineProperty","componentDidMount","render","_prevProps","_elem","displayName","newProps","_objectSpread","key","includes","test"],"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":";;;AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,qBAAqB;AAWjD,OAAO,SAASC,kBAAkBA,CAChCC,IAAwC,EAC3B;EACb,MAAMC,SAA8B,GAAGD,IAAI;EAE3C,MAAME,OAAO,GAAIC,KAAQ,IAAK;IAC5B,OAAON,KAAA,CAAAO,aAAA,CAACH,SAAS,EAAKI,MAAM,CAACC,MAAM,CAACC,qBAAqB,CAACJ,KAAK,CAAC,CAAI,CAAC;EACvE,CAAC;EAEDE,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,MAAM,EAAE;IACrCO,KAAK,EAAET,IAAI,CAACU;EACd,CAAC,CAAC;EAEF,KAAK,MAAMA,IAAI,IAAIV,IAAI,EAAE;IACvBK,MAAM,CAACG,cAAc,CAACN,OAAO,EAAEQ,IAAI,EAAE;MACnCD,KAAK,EAAET,IAAI,CAACU,IAAI;IAClB,CAAC,CAAC;EACJ;EAGA,OAAOR,OAAO;AAChB;AAWA,OAAO,SAASS,uBAAuBA,CAErCX,IAAW,EAAe;EAC1B,MAAMC,SAA+B,GAAGD,IAAI;EAI5C,MAAME,OAAO,SAASF,IAAI,CAAC;IAAAY,YAAA;MAAA,SAAAC,SAAA;MAAAC,eAAA;MAAAA,eAAA;IAAA;IAIzBC,iBAAiBA,CAAA,EAAG,CAEpB;IAEAC,MAAMA,CAAA,EAAG;MACP,IAAI,IAAI,CAACb,KAAK,KAAK,IAAI,CAACc,UAAU,EAAE;QAClC,IAAI,CAACA,UAAU,GAAG,IAAI,CAACd,KAAK;QAC5B,IAAI,CAACe,KAAK,GAERrB,KAAA,CAAAO,aAAA,CAACH,SAAS,EACJI,MAAM,CAACC,MAAM,CAACC,qBAAqB,CAAC,IAAI,CAACJ,KAAK,CAAC,CACpD,CACF;MACH;MAEA,OAAO,IAAI,CAACe,KAAK;IACnB;EACF;EAEAb,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,MAAM,EAAE;IACrCO,KAAK,EAAET,IAAI,CAACU;EACd,CAAC,CAAC;EAEFL,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,aAAa,EAAE;IAC5CO,KAAK,EAAET,IAAI,CAACmB,WAAW,IAAInB,IAAI,CAACU;EAClC,CAAC,CAAC;EAEF,OAAOR,OAAO;AAChB;AAEA,OAAO,SAASK,qBAAqBA,CAAIJ,KAAQ,EAAE;EACjD,MAAMiB,QAAQ,GAAAC,aAAA,KAAQlB,KAAK,CAAE;EAE7B,KAAK,MAAMmB,GAAG,IAAInB,KAAK,EAAE;IACvB,IAAImB,GAAG,CAACC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAACC,IAAI,CAACF,GAAG,CAAC,IAAI,CAAC,OAAO,CAACE,IAAI,CAACF,GAAG,CAAC,EAAE;MAClEF,QAAQ,CAACtB,WAAW,CAACwB,GAAG,CAAC,CAAC,GAAGnB,KAAK,CAACmB,GAAG,CAAC;MACvC,OAAOF,QAAQ,CAACE,GAAG,CAAC;IACtB;EACF;EAEA,OAAOF,QAAQ;AACjB"}
1
+ {"version":3,"file":"withSnakeCaseProps.js","names":["React","toCamelCase","withSnakeCaseProps","Base","Component","Derived","props","createElement","Object","freeze","convertSnakeCaseProps","defineProperty","value","name","classWithSnakeCaseProps","constructor","arguments","_defineProperty","componentDidMount","render","_prevProps","_elem","displayName","newProps","_objectSpread","key","includes","test"],"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":";;;AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,qBAAqB;AAWjD,OAAO,SAASC,kBAAkBA,CAChCC,IAAwC,EAC3B;EACb,MAAMC,SAA8B,GAAGD,IAAI;EAE3C,MAAME,OAAO,GAAIC,KAAQ,IAAK;IAC5B,OAAON,KAAA,CAAAO,aAAA,CAACH,SAAS,EAAKI,MAAM,CAACC,MAAM,CAACC,qBAAqB,CAACJ,KAAK,CAAC,CAAI,CAAC;EACvE,CAAC;EAEDE,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,MAAM,EAAE;IACrCO,KAAK,EAAET,IAAI,CAACU;EACd,CAAC,CAAC;EAEF,KAAK,MAAMA,IAAI,IAAIV,IAAI,EAAE;IACvBK,MAAM,CAACG,cAAc,CAACN,OAAO,EAAEQ,IAAI,EAAE;MACnCD,KAAK,EAAET,IAAI,CAACU,IAAI;IAClB,CAAC,CAAC;EACJ;EAGA,OAAOR,OAAO;AAChB;AAWA,OAAO,SAASS,uBAAuBA,CAErCX,IAAW,EAAe;EAC1B,MAAMC,SAA+B,GAAGD,IAAI;EAI5C,MAAME,OAAO,SAASF,IAAI,CAAC;IAAAY,YAAA;MAAA,SAAAC,SAAA;MAAAC,eAAA;MAAAA,eAAA;IAAA;IAIzBC,iBAAiBA,CAAA,EAAG,CAEpB;IAEAC,MAAMA,CAAA,EAAG;MACP,IAAI,IAAI,CAACb,KAAK,KAAK,IAAI,CAACc,UAAU,EAAE;QAClC,IAAI,CAACA,UAAU,GAAG,IAAI,CAACd,KAAK;QAC5B,IAAI,CAACe,KAAK,GAERrB,KAAA,CAAAO,aAAA,CAACH,SAAS,EACJI,MAAM,CAACC,MAAM,CAACC,qBAAqB,CAAC,IAAI,CAACJ,KAAK,CAAC,CACpD,CACF;MACH;MAEA,OAAO,IAAI,CAACe,KAAK;IACnB;EACF;EAEAb,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,MAAM,EAAE;IACrCO,KAAK,EAAET,IAAI,CAACU;EACd,CAAC,CAAC;EAEFL,MAAM,CAACG,cAAc,CAACN,OAAO,EAAE,aAAa,EAAE;IAC5CO,KAAK,EAAET,IAAI,CAACmB,WAAW,IAAInB,IAAI,CAACU;EAClC,CAAC,CAAC;EAEF,OAAOR,OAAO;AAChB;AAEA,OAAO,SAASK,qBAAqBA,CAAIJ,KAAQ,EAAE;EACjD,MAAMiB,QAAQ,GAAAC,aAAA,KAAQlB,KAAK,CAAE;EAE7B,KAAK,MAAMmB,GAAG,IAAInB,KAAK,EAAE;IACvB,IAAImB,GAAG,CAACC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAACC,IAAI,CAACF,GAAG,CAAC,IAAI,CAAC,OAAO,CAACE,IAAI,CAACF,GAAG,CAAC,EAAE;MAClEF,QAAQ,CAACtB,WAAW,CAACwB,GAAG,CAAC,CAAC,GAAGnB,KAAK,CAACmB,GAAG,CAAC;MACvC,OAAOF,QAAQ,CAACE,GAAG,CAAC;IACtB;EACF;EAEA,OAAOF,QAAQ;AACjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"Shortcuts.js","names":["keycode","warn","createShortcut","constructor","eventTracker","shortcutExists","add","shortcut","callback","onDone","element","arguments","length","undefined","window","document","timeout","id","keyDown","e","event","code","shortcuts","split","metaWanted","cmd","ctrl","shift","alt","metaPressed","metaKey","ctrlKey","shiftKey","altKey","matches","forEach","cut","clearTimeout","setTimeout","keyUp","addEventListener","remove","toLowerCase","removeEventListener"],"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","warn","createShortcut","constructor","eventTracker","shortcutExists","add","shortcut","callback","onDone","element","arguments","length","undefined","window","document","timeout","id","keyDown","e","event","code","shortcuts","split","metaWanted","cmd","ctrl","shift","alt","metaPressed","metaKey","ctrlKey","shiftKey","altKey","matches","forEach","cut","clearTimeout","setTimeout","keyUp","addEventListener","remove","toLowerCase","removeEventListener"],"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;