@dnb/eufemia 9.16.2 → 9.17.2

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 (515) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/assets/assets/icons/above_the_line.svg +1 -1
  3. package/assets/assets/icons/eufemia-icons-pdf-categorized.tgz +0 -0
  4. package/assets/assets/icons/eufemia-icons-pdf.tgz +0 -0
  5. package/assets/assets/icons/facebook.svg +3 -0
  6. package/assets/assets/icons/facebook_medium.svg +3 -0
  7. package/assets/assets/icons/fridge.svg +1 -1
  8. package/assets/assets/icons/information_circled.svg +2 -1
  9. package/assets/assets/icons/information_circled_medium.svg +2 -1
  10. package/assets/assets/icons/instagram.svg +5 -0
  11. package/assets/assets/icons/instagram_medium.svg +12 -0
  12. package/assets/assets/icons/linkedin.svg +3 -0
  13. package/assets/assets/icons/linkedin_medium.svg +3 -0
  14. package/assets/assets/icons/motorcycle_medium.svg +2 -2
  15. package/assets/assets/icons/paragraph.svg +1 -1
  16. package/assets/assets/icons/scooter_medium.svg +2 -2
  17. package/assets/assets/icons/tag.svg +4 -0
  18. package/assets/assets/icons/tag_medium.svg +4 -0
  19. package/assets/icons/above_the_line.svg +1 -1
  20. package/assets/icons/eufemia-icons-pdf-categorized.tgz +0 -0
  21. package/assets/icons/eufemia-icons-pdf.tgz +0 -0
  22. package/assets/icons/facebook.svg +3 -0
  23. package/assets/icons/facebook_medium.svg +3 -0
  24. package/assets/icons/fridge.svg +1 -1
  25. package/assets/icons/information_circled.svg +2 -1
  26. package/assets/icons/information_circled_medium.svg +2 -1
  27. package/assets/icons/instagram.svg +5 -0
  28. package/assets/icons/instagram_medium.svg +12 -0
  29. package/assets/icons/linkedin.svg +3 -0
  30. package/assets/icons/linkedin_medium.svg +3 -0
  31. package/assets/icons/motorcycle_medium.svg +2 -2
  32. package/assets/icons/paragraph.svg +1 -1
  33. package/assets/icons/scooter_medium.svg +2 -2
  34. package/assets/icons/tag.svg +4 -0
  35. package/assets/icons/tag_medium.svg +4 -0
  36. package/cjs/components/accordion/Accordion.d.ts +1 -1
  37. package/cjs/components/autocomplete/style/dnb-autocomplete.css +0 -2
  38. package/cjs/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  39. package/cjs/components/breadcrumb/Breadcrumb.js +5 -3
  40. package/cjs/components/breadcrumb/style/_breadcrumb.scss +7 -4
  41. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +10 -8
  42. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  43. package/cjs/components/button/Button.js +1 -1
  44. package/cjs/components/button/style/_button.scss +0 -4
  45. package/cjs/components/button/style/dnb-button.css +0 -2
  46. package/cjs/components/button/style/dnb-button.min.css +1 -1
  47. package/cjs/components/button/style/themes/dnb-button-theme-open-banking.css +4 -13
  48. package/cjs/components/button/style/themes/dnb-button-theme-open-banking.min.css +1 -1
  49. package/cjs/components/button/style/themes/dnb-button-theme-ui.css +4 -13
  50. package/cjs/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
  51. package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +5 -18
  52. package/cjs/components/date-picker/style/dnb-date-picker.css +0 -6
  53. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  54. package/cjs/components/dropdown/style/dnb-dropdown.css +0 -2
  55. package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
  56. package/cjs/components/form-set/FormSet.d.ts +1 -1
  57. package/cjs/components/global-error/style/dnb-global-error.css +0 -2
  58. package/cjs/components/global-error/style/dnb-global-error.min.css +1 -1
  59. package/cjs/components/global-status/GlobalStatus.js +21 -73
  60. package/cjs/components/global-status/style/_global-status.scss +14 -12
  61. package/cjs/components/global-status/style/dnb-global-status.css +13 -17
  62. package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
  63. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.css +2 -48
  64. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  65. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.scss +2 -36
  66. package/cjs/components/help-button/HelpButton.d.ts +200 -0
  67. package/cjs/components/input/style/dnb-input.css +0 -2
  68. package/cjs/components/input/style/dnb-input.min.css +1 -1
  69. package/cjs/components/input/style/themes/dnb-input-theme-ui.css +11 -2
  70. package/cjs/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  71. package/cjs/components/input/style/themes/dnb-input-theme-ui.scss +4 -1
  72. package/cjs/components/input-masked/InputMaskedElement.js +1 -4
  73. package/cjs/components/input-masked/InputMaskedHooks.js +42 -19
  74. package/cjs/components/input-masked/InputMaskedUtils.js +8 -2
  75. package/cjs/components/input-masked/style/dnb-input-masked.css +0 -2
  76. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  77. package/cjs/components/modal/Modal.d.ts +4 -0
  78. package/cjs/components/modal/Modal.js +37 -31
  79. package/cjs/components/modal/ModalContent.js +48 -39
  80. package/cjs/components/modal/style/_modal-mixins.scss +4 -4
  81. package/cjs/components/modal/style/_modal.scss +13 -30
  82. package/cjs/components/modal/style/dnb-modal.css +27 -47
  83. package/cjs/components/modal/style/dnb-modal.min.css +1 -1
  84. package/cjs/components/pagination/Pagination.d.ts +6 -0
  85. package/cjs/components/pagination/Pagination.js +2 -0
  86. package/cjs/components/pagination/PaginationBar.js +1 -1
  87. package/cjs/components/pagination/PaginationInfinity.js +152 -89
  88. package/cjs/components/pagination/PaginationProvider.js +65 -68
  89. package/cjs/components/pagination/style/dnb-pagination.css +0 -2
  90. package/cjs/components/pagination/style/dnb-pagination.min.css +1 -1
  91. package/cjs/components/section/style/themes/dnb-section-theme-ui.css +77 -19
  92. package/cjs/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  93. package/cjs/components/section/style/themes/dnb-section-theme-ui.scss +15 -2
  94. package/cjs/components/slider/style/dnb-slider.css +0 -2
  95. package/cjs/components/slider/style/dnb-slider.min.css +1 -1
  96. package/cjs/components/step-indicator/StepIndicator.d.ts +1 -1
  97. package/cjs/components/step-indicator/StepIndicator.js +4 -98
  98. package/cjs/components/step-indicator/StepIndicatorContext.d.ts +1 -0
  99. package/cjs/components/step-indicator/StepIndicatorContext.js +221 -19
  100. package/cjs/components/step-indicator/StepIndicatorItem.js +3 -6
  101. package/cjs/components/step-indicator/StepIndicatorModal.js +40 -49
  102. package/cjs/components/step-indicator/StepIndicatorProps.js +1 -1
  103. package/cjs/components/step-indicator/StepIndicatorSidebar.d.ts +39 -0
  104. package/cjs/components/step-indicator/StepIndicatorSidebar.js +57 -54
  105. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +1 -1
  106. package/cjs/components/step-indicator/style/_step-indicator.scss +17 -4
  107. package/cjs/components/step-indicator/style/dnb-step-indicator.css +14 -6
  108. package/cjs/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
  109. package/cjs/components/tabs/style/_tabs.scss +5 -1
  110. package/cjs/components/tabs/style/dnb-tabs.css +4 -1
  111. package/cjs/components/tabs/style/dnb-tabs.min.css +1 -1
  112. package/cjs/components/tabs/style/themes/dnb-tabs-theme-ui.css +37 -34
  113. package/cjs/components/tabs/style/themes/dnb-tabs-theme-ui.min.css +1 -1
  114. package/cjs/components/tabs/style/themes/dnb-tabs-theme-ui.scss +12 -9
  115. package/cjs/components/textarea/style/_textarea.scss +4 -0
  116. package/cjs/components/textarea/style/dnb-textarea.css +3 -0
  117. package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
  118. package/cjs/components/toggle-button/ToggleButton.js +6 -2
  119. package/cjs/components/toggle-button/style/dnb-toggle-button.css +0 -2
  120. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  121. package/cjs/icons/above_the_line.js +1 -1
  122. package/cjs/icons/facebook.js +35 -0
  123. package/cjs/icons/facebook_medium.js +35 -0
  124. package/cjs/icons/fridge.js +1 -1
  125. package/cjs/icons/icons-meta.json +24 -0
  126. package/cjs/icons/icons-pdf.lock +1 -1
  127. package/cjs/icons/icons-svg.lock +1 -1
  128. package/cjs/icons/index.d.ts +16 -0
  129. package/cjs/icons/index.js +64 -0
  130. package/cjs/icons/information_circled.js +11 -4
  131. package/cjs/icons/information_circled_medium.js +10 -4
  132. package/cjs/icons/instagram.js +47 -0
  133. package/cjs/icons/instagram_medium.js +54 -0
  134. package/cjs/icons/linkedin.js +32 -0
  135. package/cjs/icons/linkedin_medium.js +32 -0
  136. package/cjs/icons/motorcycle_medium.js +2 -2
  137. package/cjs/icons/paragraph.js +1 -1
  138. package/cjs/icons/scooter_medium.js +2 -2
  139. package/cjs/icons/secondary_icons.js +32 -0
  140. package/cjs/icons/secondary_icons_medium.js +32 -0
  141. package/cjs/icons/tag.js +41 -0
  142. package/cjs/icons/tag_medium.js +41 -0
  143. package/cjs/shared/EventEmitter.js +6 -8
  144. package/cjs/shared/component-helper.js +108 -74
  145. package/cjs/shared/helpers.js +55 -19
  146. package/cjs/style/dnb-ui-components.css +71 -77
  147. package/cjs/style/dnb-ui-components.min.css +5 -5
  148. package/cjs/style/themes/theme-open-banking/dnb-theme-open-banking.css +135 -129
  149. package/cjs/style/themes/theme-open-banking/dnb-theme-open-banking.min.css +4 -4
  150. package/cjs/style/themes/theme-ui/dnb-theme-ui.css +131 -116
  151. package/cjs/style/themes/theme-ui/dnb-theme-ui.min.css +4 -4
  152. package/components/accordion/Accordion.d.ts +1 -1
  153. package/components/autocomplete/style/dnb-autocomplete.css +0 -2
  154. package/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  155. package/components/breadcrumb/Breadcrumb.js +5 -3
  156. package/components/breadcrumb/Breadcrumb.tsx +9 -0
  157. package/components/breadcrumb/style/_breadcrumb.scss +7 -4
  158. package/components/breadcrumb/style/dnb-breadcrumb.css +10 -8
  159. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  160. package/components/button/Button.js +1 -1
  161. package/components/button/style/_button.scss +0 -4
  162. package/components/button/style/dnb-button.css +0 -2
  163. package/components/button/style/dnb-button.min.css +1 -1
  164. package/components/button/style/themes/dnb-button-theme-open-banking.css +4 -13
  165. package/components/button/style/themes/dnb-button-theme-open-banking.min.css +1 -1
  166. package/components/button/style/themes/dnb-button-theme-ui.css +4 -13
  167. package/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
  168. package/components/button/style/themes/dnb-button-theme-ui.scss +5 -18
  169. package/components/date-picker/style/dnb-date-picker.css +0 -6
  170. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  171. package/components/dropdown/style/dnb-dropdown.css +0 -2
  172. package/components/dropdown/style/dnb-dropdown.min.css +1 -1
  173. package/components/form-set/FormSet.d.ts +1 -1
  174. package/components/global-error/style/dnb-global-error.css +0 -2
  175. package/components/global-error/style/dnb-global-error.min.css +1 -1
  176. package/components/global-status/GlobalStatus.js +18 -71
  177. package/components/global-status/style/_global-status.scss +14 -12
  178. package/components/global-status/style/dnb-global-status.css +13 -17
  179. package/components/global-status/style/dnb-global-status.min.css +1 -1
  180. package/components/global-status/style/themes/dnb-global-status-theme-ui.css +2 -48
  181. package/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  182. package/components/global-status/style/themes/dnb-global-status-theme-ui.scss +2 -36
  183. package/components/help-button/HelpButton.d.ts +200 -0
  184. package/components/input/style/dnb-input.css +0 -2
  185. package/components/input/style/dnb-input.min.css +1 -1
  186. package/components/input/style/themes/dnb-input-theme-ui.css +11 -2
  187. package/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  188. package/components/input/style/themes/dnb-input-theme-ui.scss +4 -1
  189. package/components/input-masked/InputMaskedElement.js +1 -4
  190. package/components/input-masked/InputMaskedHooks.js +42 -19
  191. package/components/input-masked/InputMaskedUtils.js +9 -3
  192. package/components/input-masked/style/dnb-input-masked.css +0 -2
  193. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  194. package/components/modal/Modal.d.ts +4 -0
  195. package/components/modal/Modal.js +37 -31
  196. package/components/modal/ModalContent.js +46 -37
  197. package/components/modal/style/_modal-mixins.scss +4 -4
  198. package/components/modal/style/_modal.scss +13 -30
  199. package/components/modal/style/dnb-modal.css +27 -47
  200. package/components/modal/style/dnb-modal.min.css +1 -1
  201. package/components/pagination/Pagination.d.ts +6 -0
  202. package/components/pagination/Pagination.js +2 -0
  203. package/components/pagination/PaginationBar.js +1 -1
  204. package/components/pagination/PaginationInfinity.js +137 -67
  205. package/components/pagination/PaginationProvider.js +64 -68
  206. package/components/pagination/style/dnb-pagination.css +0 -2
  207. package/components/pagination/style/dnb-pagination.min.css +1 -1
  208. package/components/section/style/themes/dnb-section-theme-ui.css +77 -19
  209. package/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  210. package/components/section/style/themes/dnb-section-theme-ui.scss +15 -2
  211. package/components/slider/style/dnb-slider.css +0 -2
  212. package/components/slider/style/dnb-slider.min.css +1 -1
  213. package/components/step-indicator/StepIndicator.d.ts +1 -1
  214. package/components/step-indicator/StepIndicator.js +4 -91
  215. package/components/step-indicator/StepIndicatorContext.d.ts +1 -0
  216. package/components/step-indicator/StepIndicatorContext.js +196 -18
  217. package/components/step-indicator/StepIndicatorItem.js +2 -5
  218. package/components/step-indicator/StepIndicatorModal.js +33 -32
  219. package/components/step-indicator/StepIndicatorProps.js +1 -1
  220. package/components/step-indicator/StepIndicatorSidebar.d.ts +39 -0
  221. package/components/step-indicator/StepIndicatorSidebar.js +54 -52
  222. package/components/step-indicator/StepIndicatorTriggerButton.js +1 -1
  223. package/components/step-indicator/style/_step-indicator.scss +17 -4
  224. package/components/step-indicator/style/dnb-step-indicator.css +14 -6
  225. package/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
  226. package/components/tabs/style/_tabs.scss +5 -1
  227. package/components/tabs/style/dnb-tabs.css +4 -1
  228. package/components/tabs/style/dnb-tabs.min.css +1 -1
  229. package/components/tabs/style/themes/dnb-tabs-theme-ui.css +37 -34
  230. package/components/tabs/style/themes/dnb-tabs-theme-ui.min.css +1 -1
  231. package/components/tabs/style/themes/dnb-tabs-theme-ui.scss +12 -9
  232. package/components/textarea/style/_textarea.scss +4 -0
  233. package/components/textarea/style/dnb-textarea.css +3 -0
  234. package/components/textarea/style/dnb-textarea.min.css +1 -1
  235. package/components/toggle-button/ToggleButton.js +6 -2
  236. package/components/toggle-button/style/dnb-toggle-button.css +0 -2
  237. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  238. package/es/components/accordion/Accordion.d.ts +1 -1
  239. package/es/components/autocomplete/style/dnb-autocomplete.css +0 -2
  240. package/es/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  241. package/es/components/breadcrumb/Breadcrumb.js +5 -3
  242. package/es/components/breadcrumb/Breadcrumb.tsx +9 -0
  243. package/es/components/breadcrumb/style/_breadcrumb.scss +7 -4
  244. package/es/components/breadcrumb/style/dnb-breadcrumb.css +10 -8
  245. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  246. package/es/components/button/Button.js +2 -1
  247. package/es/components/button/style/_button.scss +0 -4
  248. package/es/components/button/style/dnb-button.css +0 -2
  249. package/es/components/button/style/dnb-button.min.css +1 -1
  250. package/es/components/button/style/themes/dnb-button-theme-open-banking.css +4 -13
  251. package/es/components/button/style/themes/dnb-button-theme-open-banking.min.css +1 -1
  252. package/es/components/button/style/themes/dnb-button-theme-ui.css +4 -13
  253. package/es/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
  254. package/es/components/button/style/themes/dnb-button-theme-ui.scss +5 -18
  255. package/es/components/date-picker/style/dnb-date-picker.css +0 -6
  256. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  257. package/es/components/dropdown/style/dnb-dropdown.css +0 -2
  258. package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
  259. package/es/components/form-set/FormSet.d.ts +1 -1
  260. package/es/components/global-error/style/dnb-global-error.css +0 -2
  261. package/es/components/global-error/style/dnb-global-error.min.css +1 -1
  262. package/es/components/global-status/GlobalStatus.js +18 -67
  263. package/es/components/global-status/style/_global-status.scss +14 -12
  264. package/es/components/global-status/style/dnb-global-status.css +13 -17
  265. package/es/components/global-status/style/dnb-global-status.min.css +1 -1
  266. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.css +2 -48
  267. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  268. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.scss +2 -36
  269. package/es/components/help-button/HelpButton.d.ts +200 -0
  270. package/es/components/input/style/dnb-input.css +0 -2
  271. package/es/components/input/style/dnb-input.min.css +1 -1
  272. package/es/components/input/style/themes/dnb-input-theme-ui.css +11 -2
  273. package/es/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  274. package/es/components/input/style/themes/dnb-input-theme-ui.scss +4 -1
  275. package/es/components/input-masked/InputMaskedElement.js +1 -4
  276. package/es/components/input-masked/InputMaskedHooks.js +36 -15
  277. package/es/components/input-masked/InputMaskedUtils.js +9 -3
  278. package/es/components/input-masked/style/dnb-input-masked.css +0 -2
  279. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  280. package/es/components/modal/Modal.d.ts +4 -0
  281. package/es/components/modal/Modal.js +33 -27
  282. package/es/components/modal/ModalContent.js +39 -28
  283. package/es/components/modal/style/_modal-mixins.scss +4 -4
  284. package/es/components/modal/style/_modal.scss +13 -30
  285. package/es/components/modal/style/dnb-modal.css +27 -47
  286. package/es/components/modal/style/dnb-modal.min.css +1 -1
  287. package/es/components/pagination/Pagination.d.ts +6 -0
  288. package/es/components/pagination/Pagination.js +2 -0
  289. package/es/components/pagination/PaginationBar.js +1 -1
  290. package/es/components/pagination/PaginationInfinity.js +110 -37
  291. package/es/components/pagination/PaginationProvider.js +57 -61
  292. package/es/components/pagination/style/dnb-pagination.css +0 -2
  293. package/es/components/pagination/style/dnb-pagination.min.css +1 -1
  294. package/es/components/section/style/themes/dnb-section-theme-ui.css +77 -19
  295. package/es/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  296. package/es/components/section/style/themes/dnb-section-theme-ui.scss +15 -2
  297. package/es/components/slider/style/dnb-slider.css +0 -2
  298. package/es/components/slider/style/dnb-slider.min.css +1 -1
  299. package/es/components/step-indicator/StepIndicator.d.ts +1 -1
  300. package/es/components/step-indicator/StepIndicator.js +3 -79
  301. package/es/components/step-indicator/StepIndicatorContext.d.ts +1 -0
  302. package/es/components/step-indicator/StepIndicatorContext.js +165 -17
  303. package/es/components/step-indicator/StepIndicatorItem.js +1 -5
  304. package/es/components/step-indicator/StepIndicatorModal.js +31 -34
  305. package/es/components/step-indicator/StepIndicatorProps.js +1 -1
  306. package/es/components/step-indicator/StepIndicatorSidebar.d.ts +39 -0
  307. package/es/components/step-indicator/StepIndicatorSidebar.js +44 -46
  308. package/es/components/step-indicator/StepIndicatorTriggerButton.js +1 -1
  309. package/es/components/step-indicator/style/_step-indicator.scss +17 -4
  310. package/es/components/step-indicator/style/dnb-step-indicator.css +14 -6
  311. package/es/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
  312. package/es/components/tabs/style/_tabs.scss +5 -1
  313. package/es/components/tabs/style/dnb-tabs.css +4 -1
  314. package/es/components/tabs/style/dnb-tabs.min.css +1 -1
  315. package/es/components/tabs/style/themes/dnb-tabs-theme-ui.css +37 -34
  316. package/es/components/tabs/style/themes/dnb-tabs-theme-ui.min.css +1 -1
  317. package/es/components/tabs/style/themes/dnb-tabs-theme-ui.scss +12 -9
  318. package/es/components/textarea/style/_textarea.scss +4 -0
  319. package/es/components/textarea/style/dnb-textarea.css +3 -0
  320. package/es/components/textarea/style/dnb-textarea.min.css +1 -1
  321. package/es/components/toggle-button/ToggleButton.js +6 -2
  322. package/es/components/toggle-button/style/dnb-toggle-button.css +0 -2
  323. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  324. package/es/icons/above_the_line.js +1 -1
  325. package/es/icons/facebook.js +23 -0
  326. package/es/icons/facebook_medium.js +23 -0
  327. package/es/icons/fridge.js +1 -1
  328. package/es/icons/icons-meta.json +24 -0
  329. package/es/icons/icons-pdf.lock +1 -1
  330. package/es/icons/icons-svg.lock +1 -1
  331. package/es/icons/index.d.ts +16 -0
  332. package/es/icons/index.js +9 -1
  333. package/es/icons/information_circled.js +11 -4
  334. package/es/icons/information_circled_medium.js +10 -4
  335. package/es/icons/instagram.js +35 -0
  336. package/es/icons/instagram_medium.js +42 -0
  337. package/es/icons/linkedin.js +20 -0
  338. package/es/icons/linkedin_medium.js +20 -0
  339. package/es/icons/motorcycle_medium.js +2 -2
  340. package/es/icons/paragraph.js +1 -1
  341. package/es/icons/scooter_medium.js +2 -2
  342. package/es/icons/secondary_icons.js +5 -1
  343. package/es/icons/secondary_icons_medium.js +5 -1
  344. package/es/icons/tag.js +29 -0
  345. package/es/icons/tag_medium.js +29 -0
  346. package/es/shared/EventEmitter.js +5 -8
  347. package/es/shared/component-helper.js +58 -49
  348. package/es/shared/helpers.js +28 -12
  349. package/es/style/dnb-ui-components.css +71 -77
  350. package/es/style/dnb-ui-components.min.css +5 -5
  351. package/es/style/themes/theme-open-banking/dnb-theme-open-banking.css +135 -129
  352. package/es/style/themes/theme-open-banking/dnb-theme-open-banking.min.css +4 -4
  353. package/es/style/themes/theme-ui/dnb-theme-ui.css +131 -116
  354. package/es/style/themes/theme-ui/dnb-theme-ui.min.css +4 -4
  355. package/esm/components/accordion/Accordion.d.ts +1 -1
  356. package/esm/components/autocomplete/style/dnb-autocomplete.css +0 -2
  357. package/esm/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  358. package/esm/components/breadcrumb/Breadcrumb.js +5 -3
  359. package/esm/components/breadcrumb/Breadcrumb.tsx +9 -0
  360. package/esm/components/breadcrumb/style/_breadcrumb.scss +7 -4
  361. package/esm/components/breadcrumb/style/dnb-breadcrumb.css +10 -8
  362. package/esm/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  363. package/esm/components/button/Button.js +1 -1
  364. package/esm/components/button/style/_button.scss +0 -4
  365. package/esm/components/button/style/dnb-button.css +0 -2
  366. package/esm/components/button/style/dnb-button.min.css +1 -1
  367. package/esm/components/button/style/themes/dnb-button-theme-open-banking.css +4 -13
  368. package/esm/components/button/style/themes/dnb-button-theme-open-banking.min.css +1 -1
  369. package/esm/components/button/style/themes/dnb-button-theme-ui.css +4 -13
  370. package/esm/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
  371. package/esm/components/button/style/themes/dnb-button-theme-ui.scss +5 -18
  372. package/esm/components/date-picker/style/dnb-date-picker.css +0 -6
  373. package/esm/components/date-picker/style/dnb-date-picker.min.css +1 -1
  374. package/esm/components/dropdown/style/dnb-dropdown.css +0 -2
  375. package/esm/components/dropdown/style/dnb-dropdown.min.css +1 -1
  376. package/esm/components/form-set/FormSet.d.ts +1 -1
  377. package/esm/components/global-error/style/dnb-global-error.css +0 -2
  378. package/esm/components/global-error/style/dnb-global-error.min.css +1 -1
  379. package/esm/components/global-status/GlobalStatus.js +18 -71
  380. package/esm/components/global-status/style/_global-status.scss +14 -12
  381. package/esm/components/global-status/style/dnb-global-status.css +13 -17
  382. package/esm/components/global-status/style/dnb-global-status.min.css +1 -1
  383. package/esm/components/global-status/style/themes/dnb-global-status-theme-ui.css +2 -48
  384. package/esm/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  385. package/esm/components/global-status/style/themes/dnb-global-status-theme-ui.scss +2 -36
  386. package/esm/components/help-button/HelpButton.d.ts +200 -0
  387. package/esm/components/input/style/dnb-input.css +0 -2
  388. package/esm/components/input/style/dnb-input.min.css +1 -1
  389. package/esm/components/input/style/themes/dnb-input-theme-ui.css +11 -2
  390. package/esm/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  391. package/esm/components/input/style/themes/dnb-input-theme-ui.scss +4 -1
  392. package/esm/components/input-masked/InputMaskedElement.js +1 -4
  393. package/esm/components/input-masked/InputMaskedHooks.js +42 -19
  394. package/esm/components/input-masked/InputMaskedUtils.js +9 -3
  395. package/esm/components/input-masked/style/dnb-input-masked.css +0 -2
  396. package/esm/components/input-masked/style/dnb-input-masked.min.css +1 -1
  397. package/esm/components/modal/Modal.d.ts +4 -0
  398. package/esm/components/modal/Modal.js +37 -31
  399. package/esm/components/modal/ModalContent.js +46 -37
  400. package/esm/components/modal/style/_modal-mixins.scss +4 -4
  401. package/esm/components/modal/style/_modal.scss +13 -30
  402. package/esm/components/modal/style/dnb-modal.css +27 -47
  403. package/esm/components/modal/style/dnb-modal.min.css +1 -1
  404. package/esm/components/pagination/Pagination.d.ts +6 -0
  405. package/esm/components/pagination/Pagination.js +2 -0
  406. package/esm/components/pagination/PaginationBar.js +1 -1
  407. package/esm/components/pagination/PaginationInfinity.js +137 -67
  408. package/esm/components/pagination/PaginationProvider.js +64 -68
  409. package/esm/components/pagination/style/dnb-pagination.css +0 -2
  410. package/esm/components/pagination/style/dnb-pagination.min.css +1 -1
  411. package/esm/components/section/style/themes/dnb-section-theme-ui.css +77 -19
  412. package/esm/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  413. package/esm/components/section/style/themes/dnb-section-theme-ui.scss +15 -2
  414. package/esm/components/slider/style/dnb-slider.css +0 -2
  415. package/esm/components/slider/style/dnb-slider.min.css +1 -1
  416. package/esm/components/step-indicator/StepIndicator.d.ts +1 -1
  417. package/esm/components/step-indicator/StepIndicator.js +4 -91
  418. package/esm/components/step-indicator/StepIndicatorContext.d.ts +1 -0
  419. package/esm/components/step-indicator/StepIndicatorContext.js +196 -18
  420. package/esm/components/step-indicator/StepIndicatorItem.js +2 -5
  421. package/esm/components/step-indicator/StepIndicatorModal.js +33 -32
  422. package/esm/components/step-indicator/StepIndicatorProps.js +1 -1
  423. package/esm/components/step-indicator/StepIndicatorSidebar.d.ts +39 -0
  424. package/esm/components/step-indicator/StepIndicatorSidebar.js +54 -52
  425. package/esm/components/step-indicator/StepIndicatorTriggerButton.js +1 -1
  426. package/esm/components/step-indicator/style/_step-indicator.scss +17 -4
  427. package/esm/components/step-indicator/style/dnb-step-indicator.css +14 -6
  428. package/esm/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
  429. package/esm/components/tabs/style/_tabs.scss +5 -1
  430. package/esm/components/tabs/style/dnb-tabs.css +4 -1
  431. package/esm/components/tabs/style/dnb-tabs.min.css +1 -1
  432. package/esm/components/tabs/style/themes/dnb-tabs-theme-ui.css +37 -34
  433. package/esm/components/tabs/style/themes/dnb-tabs-theme-ui.min.css +1 -1
  434. package/esm/components/tabs/style/themes/dnb-tabs-theme-ui.scss +12 -9
  435. package/esm/components/textarea/style/_textarea.scss +4 -0
  436. package/esm/components/textarea/style/dnb-textarea.css +3 -0
  437. package/esm/components/textarea/style/dnb-textarea.min.css +1 -1
  438. package/esm/components/toggle-button/ToggleButton.js +6 -2
  439. package/esm/components/toggle-button/style/dnb-toggle-button.css +0 -2
  440. package/esm/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  441. package/esm/dnb-ui-basis.min.mjs +2 -2
  442. package/esm/dnb-ui-components.min.mjs +3 -3
  443. package/esm/dnb-ui-elements.min.mjs +4 -4
  444. package/esm/dnb-ui-extensions.min.mjs +4 -4
  445. package/esm/dnb-ui-lib.min.mjs +4 -4
  446. package/esm/dnb-ui-web-components.min.mjs +4 -4
  447. package/esm/icons/above_the_line.js +1 -1
  448. package/esm/icons/facebook.js +23 -0
  449. package/esm/icons/facebook_medium.js +23 -0
  450. package/esm/icons/fridge.js +1 -1
  451. package/esm/icons/icons-meta.json +24 -0
  452. package/esm/icons/icons-pdf.lock +1 -1
  453. package/esm/icons/icons-svg.lock +1 -1
  454. package/esm/icons/index.d.ts +16 -0
  455. package/esm/icons/index.js +9 -1
  456. package/esm/icons/information_circled.js +11 -4
  457. package/esm/icons/information_circled_medium.js +10 -4
  458. package/esm/icons/instagram.js +35 -0
  459. package/esm/icons/instagram_medium.js +42 -0
  460. package/esm/icons/linkedin.js +20 -0
  461. package/esm/icons/linkedin_medium.js +20 -0
  462. package/esm/icons/motorcycle_medium.js +2 -2
  463. package/esm/icons/paragraph.js +1 -1
  464. package/esm/icons/scooter_medium.js +2 -2
  465. package/esm/icons/secondary_icons.js +5 -1
  466. package/esm/icons/secondary_icons_medium.js +5 -1
  467. package/esm/icons/tag.js +29 -0
  468. package/esm/icons/tag_medium.js +29 -0
  469. package/esm/shared/EventEmitter.js +6 -8
  470. package/esm/shared/component-helper.js +94 -58
  471. package/esm/shared/helpers.js +36 -12
  472. package/esm/style/dnb-ui-components.css +71 -77
  473. package/esm/style/dnb-ui-components.min.css +5 -5
  474. package/esm/style/themes/theme-open-banking/dnb-theme-open-banking.css +135 -129
  475. package/esm/style/themes/theme-open-banking/dnb-theme-open-banking.min.css +4 -4
  476. package/esm/style/themes/theme-ui/dnb-theme-ui.css +131 -116
  477. package/esm/style/themes/theme-ui/dnb-theme-ui.min.css +4 -4
  478. package/icons/above_the_line.js +1 -1
  479. package/icons/facebook.js +23 -0
  480. package/icons/facebook_medium.js +23 -0
  481. package/icons/fridge.js +1 -1
  482. package/icons/icons-meta.json +24 -0
  483. package/icons/icons-pdf.lock +1 -1
  484. package/icons/icons-svg.lock +1 -1
  485. package/icons/index.d.ts +16 -0
  486. package/icons/index.js +9 -1
  487. package/icons/information_circled.js +11 -4
  488. package/icons/information_circled_medium.js +10 -4
  489. package/icons/instagram.js +35 -0
  490. package/icons/instagram_medium.js +42 -0
  491. package/icons/linkedin.js +20 -0
  492. package/icons/linkedin_medium.js +20 -0
  493. package/icons/motorcycle_medium.js +2 -2
  494. package/icons/paragraph.js +1 -1
  495. package/icons/scooter_medium.js +2 -2
  496. package/icons/secondary_icons.js +5 -1
  497. package/icons/secondary_icons_medium.js +5 -1
  498. package/icons/tag.js +29 -0
  499. package/icons/tag_medium.js +29 -0
  500. package/package.json +2 -2
  501. package/shared/EventEmitter.js +6 -8
  502. package/shared/component-helper.js +94 -58
  503. package/shared/helpers.js +36 -12
  504. package/style/dnb-ui-components.css +71 -77
  505. package/style/dnb-ui-components.min.css +5 -5
  506. package/style/themes/theme-open-banking/dnb-theme-open-banking.css +135 -129
  507. package/style/themes/theme-open-banking/dnb-theme-open-banking.min.css +4 -4
  508. package/style/themes/theme-ui/dnb-theme-ui.css +131 -116
  509. package/style/themes/theme-ui/dnb-theme-ui.min.css +4 -4
  510. package/umd/dnb-ui-basis.min.js +3 -3
  511. package/umd/dnb-ui-components.min.js +5 -5
  512. package/umd/dnb-ui-elements.min.js +5 -5
  513. package/umd/dnb-ui-extensions.min.js +5 -5
  514. package/umd/dnb-ui-lib.min.js +5 -5
  515. package/umd/dnb-ui-web-components.min.js +5 -5
@@ -175,7 +175,6 @@ var Modal = function (_React$PureComponent) {
175
175
  hide: true
176
176
  });
177
177
 
178
- clearTimeout(_this._closeTimeout);
179
178
  _this._closeTimeout = setTimeout(doItNow, parseFloat(_this.props.animation_duration));
180
179
  } else {
181
180
  doItNow();
@@ -186,13 +185,14 @@ var Modal = function (_React$PureComponent) {
186
185
  var delay = parseFloat(_this.props.open_delay);
187
186
 
188
187
  if (delay > 0 && !(0, _componentHelper.isTrue)(_this.props.no_animation)) {
189
- clearTimeout(_this._openTimeout);
190
188
  _this._openTimeout = setTimeout(toggleNow, delay);
191
189
  } else {
192
190
  toggleNow();
193
191
  }
194
192
  };
195
193
 
194
+ clearTimeout(_this._closeTimeout);
195
+ clearTimeout(_this._openTimeout);
196
196
  var open_modal = _this.props.open_modal;
197
197
 
198
198
  if (typeof open_modal === 'function') {
@@ -238,13 +238,7 @@ var Modal = function (_React$PureComponent) {
238
238
  } catch (e) {}
239
239
  }
240
240
 
241
- var last = (0, _ModalContent.getListOfModalRoots)(-1);
242
-
243
- if (last) {
244
- _this.setActiveState(last._id);
245
- } else if ((0, _ModalContent.getListOfModalRoots)().length <= 1) {
246
- _this.setActiveState(false);
247
- }
241
+ _this.removeActiveState();
248
242
  }
249
243
  });
250
244
 
@@ -288,7 +282,7 @@ var Modal = function (_React$PureComponent) {
288
282
  }
289
283
  });
290
284
 
291
- _this._id = props.id || (0, _componentHelper.makeUniqueId)();
285
+ _this._id = props.id || (0, _componentHelper.makeUniqueId)('modal-');
292
286
  _this._triggerRef = _react.default.createRef();
293
287
  _this._onUnmount = [];
294
288
  return _this;
@@ -302,16 +296,15 @@ var Modal = function (_React$PureComponent) {
302
296
  }, {
303
297
  key: "componentWillUnmount",
304
298
  value: function componentWillUnmount() {
299
+ clearTimeout(this._openTimeout);
300
+ clearTimeout(this._closeTimeout);
301
+ this.removeActiveState(false);
302
+
305
303
  this._onUnmount.forEach(function (fn) {
306
304
  if (typeof fn === 'function') {
307
305
  fn();
308
306
  }
309
307
  });
310
-
311
- clearTimeout(this._openTimeout);
312
- clearTimeout(this._closeTimeout);
313
- clearTimeout(this._sideEffectsTimeout);
314
- clearTimeout(this._tryToOpenTimeout);
315
308
  }
316
309
  }, {
317
310
  key: "componentDidUpdate",
@@ -323,35 +316,48 @@ var Modal = function (_React$PureComponent) {
323
316
  }, {
324
317
  key: "openBasedOnStateUpdate",
325
318
  value: function openBasedOnStateUpdate() {
326
- var _this$state = this.state,
327
- hide = _this$state.hide,
328
- modalActive = _this$state.modalActive;
319
+ var hide = this.state.hide;
329
320
  var open_state = this.props.open_state;
330
321
 
331
322
  if (!this.activeElement && typeof document !== 'undefined') {
332
323
  this.activeElement = document.activeElement;
333
324
  }
334
325
 
335
- if (!hide && !modalActive && (open_state === 'opened' || open_state === true)) {
326
+ if (!hide && (open_state === 'opened' || open_state === true)) {
336
327
  this.toggleOpenClose(null, true);
337
- } else if (hide && modalActive && (open_state === 'closed' || open_state === false)) {
328
+ } else if (hide && (open_state === 'closed' || open_state === false)) {
338
329
  this.toggleOpenClose(null, false);
339
330
  }
340
331
  }
332
+ }, {
333
+ key: "removeActiveState",
334
+ value: function removeActiveState() {
335
+ var last = (0, _ModalContent.getListOfModalRoots)(-1);
336
+
337
+ if (last !== null && last !== void 0 && last._id && last._id !== this._id) {
338
+ return this.setActiveState(last._id);
339
+ }
340
+
341
+ try {
342
+ document.documentElement.removeAttribute('data-dnb-modal-active');
343
+ document.body.setAttribute('data-dnb-modal-active', 'false');
344
+ } catch (e) {
345
+ (0, _componentHelper.warn)('Modal: Error on remove "data-dnb-modal-active"', e);
346
+ }
347
+ }
341
348
  }, {
342
349
  key: "setActiveState",
343
350
  value: function setActiveState(modalId) {
351
+ if (!modalId) {
352
+ (0, _componentHelper.warn)('Modal: A valid modalId is required');
353
+ }
354
+
344
355
  if (typeof document !== 'undefined') {
345
356
  try {
346
- if (modalId) {
347
- document.documentElement.setAttribute('data-dnb-modal-active', modalId);
348
- } else {
349
- document.documentElement.removeAttribute('data-dnb-modal-active');
350
- }
351
-
352
- document.body.setAttribute('data-dnb-modal-active', modalId ? 'true' : 'false');
357
+ document.documentElement.setAttribute('data-dnb-modal-active', modalId);
358
+ document.body.setAttribute('data-dnb-modal-active', 'true');
353
359
  } catch (e) {
354
- (0, _componentHelper.warn)('Modal: Error on set "data-dnb-modal-active" by using element.setAttribute()', e);
360
+ (0, _componentHelper.warn)('Modal: Error on set "data-dnb-modal-active"', e);
355
361
  }
356
362
  }
357
363
  }
@@ -386,9 +392,9 @@ var Modal = function (_React$PureComponent) {
386
392
  trigger_class = props.trigger_class,
387
393
  rest = _objectWithoutProperties(props, _excluded);
388
394
 
389
- var _this$state2 = this.state,
390
- hide = _this$state2.hide,
391
- modalActive = _this$state2.modalActive;
395
+ var _this$state = this.state,
396
+ hide = _this$state.hide,
397
+ modalActive = _this$state.modalActive;
392
398
  var modal_content = Modal.getContent(typeof this.props.children === 'function' ? Object.freeze(_objectSpread(_objectSpread({}, this.props), {}, {
393
399
  close: this.close
394
400
  })) : this.props);
@@ -36,16 +36,16 @@ Object.defineProperty(exports, "__esModule", {
36
36
  exports.default = void 0;
37
37
  exports.getListOfModalRoots = getListOfModalRoots;
38
38
 
39
+ require("core-js/modules/es.array.filter.js");
40
+
39
41
  require("core-js/modules/es.object.to-string.js");
40
42
 
41
43
  require("core-js/modules/web.dom-collections.for-each.js");
42
44
 
43
- require("core-js/modules/es.regexp.exec.js");
44
-
45
- require("core-js/modules/es.array.filter.js");
46
-
47
45
  require("core-js/modules/es.parse-float.js");
48
46
 
47
+ require("core-js/modules/es.regexp.exec.js");
48
+
49
49
  var _react = _interopRequireDefault(require("react"));
50
50
 
51
51
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -124,6 +124,31 @@ var ModalContent = function (_React$PureComponent) {
124
124
  triggeredByEvent: null
125
125
  });
126
126
 
127
+ _defineProperty(_assertThisInitialized(_this), "lockBody", function () {
128
+ var modalRoots = getListOfModalRoots();
129
+ var firstLevel = modalRoots[0];
130
+
131
+ if (firstLevel === _assertThisInitialized(_this)) {
132
+ _this._ii = new _componentHelper.InteractionInvalidation();
133
+
134
+ _this._ii.setBypassSelector(['.dnb-modal__content *', "#dnb-modal-".concat(_this.props.root_id || 'root', " *")].filter(Boolean));
135
+
136
+ _this._ii.activate();
137
+ } else {
138
+ modalRoots.forEach(function (modal) {
139
+ if (modal !== _assertThisInitialized(_this) && typeof modal._iiLocal === 'undefined' && typeof modal._contentRef !== 'undefined') {
140
+ modal._iiLocal = new _componentHelper.InteractionInvalidation();
141
+
142
+ modal._iiLocal.activate(modal._contentRef.current);
143
+ }
144
+ });
145
+ }
146
+
147
+ if (typeof document !== 'undefined') {
148
+ document.addEventListener('keydown', _this.onKeyDownHandler);
149
+ }
150
+ });
151
+
127
152
  _defineProperty(_assertThisInitialized(_this), "_androidFocusHelper", function () {
128
153
  clearTimeout(_this._androidFocusTimeout);
129
154
  _this._androidFocusTimeout = setTimeout(function () {
@@ -134,7 +159,7 @@ var ModalContent = function (_React$PureComponent) {
134
159
  document.activeElement.scrollIntoView();
135
160
  }
136
161
  } catch (e) {}
137
- }, 100);
162
+ }, parseFloat(_this.props.animation_duration) / 2);
138
163
  });
139
164
 
140
165
  _defineProperty(_assertThisInitialized(_this), "preventClick", function (e) {
@@ -183,57 +208,45 @@ var ModalContent = function (_React$PureComponent) {
183
208
 
184
209
  _this._contentRef = _react.default.createRef();
185
210
  _this._id = props.id;
186
- _this._ii = new _componentHelper.InteractionInvalidation();
187
-
188
- _this._ii.setBypassSelector(['.dnb-modal__content', "#dnb-modal-".concat(props.root_id || 'root')]);
189
-
190
211
  return _this;
191
212
  }
192
213
 
193
214
  _createClass(ModalContent, [{
194
215
  key: "componentDidMount",
195
216
  value: function componentDidMount() {
196
- var _this2 = this;
197
-
198
217
  this.addToIndex();
199
- var modalRoots = getListOfModalRoots();
200
- var firstLevel = modalRoots[0];
201
218
  this.removeScrollPossibility();
202
-
203
- if (firstLevel === this) {
204
- this._ii.activate();
205
- } else {
206
- modalRoots.forEach(function (modal) {
207
- if (modal !== _this2 && typeof modal._iiLocal === 'undefined' && typeof modal._contentRef !== 'undefined') {
208
- modal._iiLocal = new _componentHelper.InteractionInvalidation();
209
-
210
- modal._iiLocal.activate(modal._contentRef.current);
211
- }
212
- });
213
- }
214
-
215
- this.setAndroidFocusHelper();
216
219
  this.setFocus();
220
+ this.setAndroidFocusHelper();
217
221
  var id = this.props.id;
218
222
  (0, _componentHelper.dispatchCustomElementEvent)(this, 'on_open', {
219
223
  id: id
220
224
  });
221
225
 
222
- if (typeof document !== 'undefined') {
223
- document.addEventListener('keydown', this.onKeyDownHandler);
226
+ if ((0, _componentHelper.isTrue)(this.props.no_animation) || process.env.NODE_ENV === 'test') {
227
+ this.lockBody();
228
+ } else {
229
+ this._lockTimeout = setTimeout(this.lockBody, parseFloat(this.props.animation_duration) * 1.2);
224
230
  }
225
231
  }
226
232
  }, {
227
233
  key: "componentWillUnmount",
228
234
  value: function componentWillUnmount() {
229
235
  clearTimeout(this._focusTimeout);
236
+ clearTimeout(this._lockTimeout);
237
+ this.removeLocks();
238
+ }
239
+ }, {
240
+ key: "removeLocks",
241
+ value: function removeLocks() {
230
242
  var modalRoots = getListOfModalRoots();
231
243
  var firstLevel = modalRoots[0];
232
244
  this.removeFromIndex();
233
245
 
234
246
  if (firstLevel === this) {
235
- this._ii.revert();
247
+ var _this$_ii;
236
248
 
249
+ (_this$_ii = this._ii) === null || _this$_ii === void 0 ? void 0 : _this$_ii.revert();
237
250
  this.revertScrollPossibility();
238
251
  } else {
239
252
  try {
@@ -295,7 +308,7 @@ var ModalContent = function (_React$PureComponent) {
295
308
  }, {
296
309
  key: "removeFromIndex",
297
310
  value: function removeFromIndex() {
298
- var _this3 = this;
311
+ var _this2 = this;
299
312
 
300
313
  if (typeof window !== 'undefined') {
301
314
  try {
@@ -304,12 +317,8 @@ var ModalContent = function (_React$PureComponent) {
304
317
  }
305
318
 
306
319
  window.__modalStack = window.__modalStack.filter(function (cur) {
307
- return cur !== _this3;
320
+ return cur !== _this2;
308
321
  });
309
-
310
- if (!window.__modalStack.length) {
311
- delete window.__modalStack;
312
- }
313
322
  } catch (e) {
314
323
  (0, _componentHelper.warn)(e);
315
324
  }
@@ -363,7 +372,7 @@ var ModalContent = function (_React$PureComponent) {
363
372
  key: "closeModal",
364
373
  value: function closeModal(event, _ref) {
365
374
  var _event$persist,
366
- _this4 = this;
375
+ _this3 = this;
367
376
 
368
377
  var triggeredBy = _ref.triggeredBy,
369
378
  params = _objectWithoutProperties(_ref, _excluded);
@@ -373,7 +382,7 @@ var ModalContent = function (_React$PureComponent) {
373
382
  triggeredBy: triggeredBy,
374
383
  triggeredByEvent: event
375
384
  }, function () {
376
- _this4.props.closeModal(event, _objectSpread({
385
+ _this3.props.closeModal(event, _objectSpread({
377
386
  triggeredBy: triggeredBy
378
387
  }, params));
379
388
  });
@@ -416,7 +425,7 @@ var ModalContent = function (_React$PureComponent) {
416
425
  children = _this$props2.children,
417
426
  rest = _objectWithoutProperties(_this$props2, _excluded2);
418
427
 
419
- var contentId = content_id || (0, _componentHelper.makeUniqueId)();
428
+ var contentId = content_id || (0, _componentHelper.makeUniqueId)('modal-');
420
429
  var style = this.state.color ? {
421
430
  '--modal-background-color': "var(--color-".concat(this.state.color, ")")
422
431
  } : null;
@@ -85,17 +85,17 @@
85
85
 
86
86
  @keyframes show-modal-overlay {
87
87
  from {
88
- background-color: var(--modal-overlay-transparent);
88
+ opacity: 0;
89
89
  }
90
90
  to {
91
- background-color: var(--modal-overlay-bg);
91
+ opacity: var(--modal-overlay-opacity);
92
92
  }
93
93
  }
94
94
  @keyframes hide-modal-overlay {
95
95
  from {
96
- background-color: var(--modal-overlay-bg);
96
+ opacity: var(--modal-overlay-opacity);
97
97
  }
98
98
  to {
99
- background-color: var(--modal-overlay-transparent);
99
+ opacity: 0;
100
100
  }
101
101
  }
@@ -23,8 +23,8 @@
23
23
  --modal-drawer-header-min-height: 6rem;
24
24
 
25
25
  // Overlay
26
- --modal-overlay-transparent: rgba(0, 0, 0, 0);
27
- --modal-overlay-bg: rgba(0, 0, 0, 0.32);
26
+ --modal-overlay-bg: black;
27
+ --modal-overlay-opacity: 0.32;
28
28
  }
29
29
 
30
30
  html[data-dnb-modal-active] {
@@ -390,39 +390,22 @@ html[data-dnb-modal-active] {
390
390
  width: 100%;
391
391
  height: 100%;
392
392
 
393
- will-change: background-color;
394
- background-color: var(--modal-overlay-transparent);
395
- box-shadow: 0 100vh 0 0 var(--modal-overlay-bg);
396
-
397
- // Modal & Drawer mode
398
- &--modal {
399
- animation: show-modal-overlay var(--modal-animation-duration)
400
- ease-out forwards 0ms;
401
- }
402
- &--drawer {
403
- animation: show-modal-overlay var(--modal-animation-duration)
404
- ease-out forwards 100ms;
405
- }
406
- &--hide {
407
- animation: hide-modal-overlay var(--modal-animation-duration)
408
- ease-in-out forwards;
409
- }
393
+ background-color: var(--modal-overlay-bg);
410
394
  }
411
395
 
412
396
  &-root__inner &__overlay {
413
- opacity: 0;
414
- transition: opacity 300ms ease-in-out;
397
+ animation: hide-modal-overlay var(--modal-animation-duration)
398
+ ease-in-out forwards;
415
399
  }
416
- // We may possibly use something like this to avoid the transition
417
- // when there are several stacked modals
418
- // &-root__inner:nth-of-type(n + 2) &__overlay {
419
- // animation-duration: 0ms !important;
420
- // }
400
+
421
401
  &-root__inner:last-of-type &__overlay {
422
- opacity: 1;
423
- }
424
- html[data-visual-test] &-root__inner &__overlay {
425
- transition: none;
402
+ animation: show-modal-overlay var(--modal-animation-duration) ease-out
403
+ forwards 0ms;
404
+
405
+ &--hide {
406
+ animation: hide-modal-overlay var(--modal-animation-duration)
407
+ ease-in-out forwards;
408
+ }
426
409
  }
427
410
 
428
411
  /* stylelint-disable-next-line */
@@ -489,8 +489,6 @@
489
489
  padding-left: 1rem; }
490
490
  .dnb-button--has-text.dnb-button--icon-position-right.dnb-button--size-large {
491
491
  padding-right: 1rem; }
492
- .dnb-button--tertiary .dnb-button__text {
493
- margin: 0; }
494
492
  .dnb-button--has-text {
495
493
  width: auto; }
496
494
  .dnb-button--has-text .dnb-button__icon {
@@ -792,35 +790,31 @@ button.dnb-button::-moz-focus-inner {
792
790
 
793
791
  @-webkit-keyframes show-modal-overlay {
794
792
  from {
795
- background-color: rgba(0, 0, 0, 0);
796
- background-color: var(--modal-overlay-transparent); }
793
+ opacity: 0; }
797
794
  to {
798
- background-color: rgba(0, 0, 0, 0.32);
799
- background-color: var(--modal-overlay-bg); } }
795
+ opacity: 0.32;
796
+ opacity: var(--modal-overlay-opacity); } }
800
797
 
801
798
  @keyframes show-modal-overlay {
802
799
  from {
803
- background-color: rgba(0, 0, 0, 0);
804
- background-color: var(--modal-overlay-transparent); }
800
+ opacity: 0; }
805
801
  to {
806
- background-color: rgba(0, 0, 0, 0.32);
807
- background-color: var(--modal-overlay-bg); } }
802
+ opacity: 0.32;
803
+ opacity: var(--modal-overlay-opacity); } }
808
804
 
809
805
  @-webkit-keyframes hide-modal-overlay {
810
806
  from {
811
- background-color: rgba(0, 0, 0, 0.32);
812
- background-color: var(--modal-overlay-bg); }
807
+ opacity: 0.32;
808
+ opacity: var(--modal-overlay-opacity); }
813
809
  to {
814
- background-color: rgba(0, 0, 0, 0);
815
- background-color: var(--modal-overlay-transparent); } }
810
+ opacity: 0; } }
816
811
 
817
812
  @keyframes hide-modal-overlay {
818
813
  from {
819
- background-color: rgba(0, 0, 0, 0.32);
820
- background-color: var(--modal-overlay-bg); }
814
+ opacity: 0.32;
815
+ opacity: var(--modal-overlay-opacity); }
821
816
  to {
822
- background-color: rgba(0, 0, 0, 0);
823
- background-color: var(--modal-overlay-transparent); } }
817
+ opacity: 0; } }
824
818
 
825
819
  :root {
826
820
  --modal-z-index: 3000;
@@ -834,8 +828,8 @@ button.dnb-button::-moz-focus-inner {
834
828
  --modal-drawer-min-width: 25rem;
835
829
  --modal-drawer-max-width: 40rem;
836
830
  --modal-drawer-header-min-height: 6rem;
837
- --modal-overlay-transparent: rgba(0, 0, 0, 0);
838
- --modal-overlay-bg: rgba(0, 0, 0, 0.32); }
831
+ --modal-overlay-bg: black;
832
+ --modal-overlay-opacity: 0.32; }
839
833
 
840
834
  html[data-dnb-modal-active] {
841
835
  -moz-user-select: none;
@@ -1234,37 +1228,23 @@ html[data-dnb-modal-active] {
1234
1228
  top: 0;
1235
1229
  width: 100%;
1236
1230
  height: 100%;
1237
- will-change: background-color;
1238
- background-color: rgba(0, 0, 0, 0);
1239
- background-color: var(--modal-overlay-transparent);
1240
- -webkit-box-shadow: 0 100vh 0 0 rgba(0, 0, 0, 0.32);
1241
- box-shadow: 0 100vh 0 0 rgba(0, 0, 0, 0.32);
1242
- -webkit-box-shadow: 0 100vh 0 0 var(--modal-overlay-bg);
1243
- box-shadow: 0 100vh 0 0 var(--modal-overlay-bg); }
1244
- .dnb-modal__overlay--modal {
1245
- -webkit-animation: show-modal-overlay 300ms ease-out forwards 0ms;
1246
- animation: show-modal-overlay 300ms ease-out forwards 0ms;
1247
- -webkit-animation: show-modal-overlay var(--modal-animation-duration) ease-out forwards 0ms;
1248
- animation: show-modal-overlay var(--modal-animation-duration) ease-out forwards 0ms; }
1249
- .dnb-modal__overlay--drawer {
1250
- -webkit-animation: show-modal-overlay 300ms ease-out forwards 100ms;
1251
- animation: show-modal-overlay 300ms ease-out forwards 100ms;
1252
- -webkit-animation: show-modal-overlay var(--modal-animation-duration) ease-out forwards 100ms;
1253
- animation: show-modal-overlay var(--modal-animation-duration) ease-out forwards 100ms; }
1254
- .dnb-modal__overlay--hide {
1231
+ background-color: black;
1232
+ background-color: var(--modal-overlay-bg); }
1233
+ .dnb-modal-root__inner .dnb-modal__overlay {
1234
+ -webkit-animation: hide-modal-overlay 300ms ease-in-out forwards;
1235
+ animation: hide-modal-overlay 300ms ease-in-out forwards;
1236
+ -webkit-animation: hide-modal-overlay var(--modal-animation-duration) ease-in-out forwards;
1237
+ animation: hide-modal-overlay var(--modal-animation-duration) ease-in-out forwards; }
1238
+ .dnb-modal-root__inner:last-of-type .dnb-modal__overlay {
1239
+ -webkit-animation: show-modal-overlay 300ms ease-out forwards 0ms;
1240
+ animation: show-modal-overlay 300ms ease-out forwards 0ms;
1241
+ -webkit-animation: show-modal-overlay var(--modal-animation-duration) ease-out forwards 0ms;
1242
+ animation: show-modal-overlay var(--modal-animation-duration) ease-out forwards 0ms; }
1243
+ .dnb-modal-root__inner:last-of-type .dnb-modal__overlay--hide {
1255
1244
  -webkit-animation: hide-modal-overlay 300ms ease-in-out forwards;
1256
1245
  animation: hide-modal-overlay 300ms ease-in-out forwards;
1257
1246
  -webkit-animation: hide-modal-overlay var(--modal-animation-duration) ease-in-out forwards;
1258
1247
  animation: hide-modal-overlay var(--modal-animation-duration) ease-in-out forwards; }
1259
- .dnb-modal-root__inner .dnb-modal__overlay {
1260
- opacity: 0;
1261
- -webkit-transition: opacity 300ms ease-in-out;
1262
- transition: opacity 300ms ease-in-out; }
1263
- .dnb-modal-root__inner:last-of-type .dnb-modal__overlay {
1264
- opacity: 1; }
1265
- html[data-visual-test] .dnb-modal-root__inner .dnb-modal__overlay {
1266
- -webkit-transition: none;
1267
- transition: none; }
1268
1248
  html[data-visual-test] .dnb-modal__overlay, .dnb-modal__overlay--no-animation {
1269
1249
  -webkit-animation-delay: 0ms !important;
1270
1250
  animation-delay: 0ms !important;