@dnb/eufemia 10.35.0 → 10.37.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 (464) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/cjs/components/accordion/Accordion.d.ts +15 -3
  3. package/cjs/components/accordion/Accordion.js +7 -0
  4. package/cjs/components/accordion/Accordion.js.map +1 -1
  5. package/cjs/components/accordion/AccordionDocs.d.ts +4 -0
  6. package/cjs/components/accordion/AccordionDocs.js +161 -0
  7. package/cjs/components/accordion/AccordionDocs.js.map +1 -0
  8. package/cjs/components/accordion/AccordionGroup.js +13 -3
  9. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  10. package/cjs/components/accordion/AccordionHeader.d.ts +5 -5
  11. package/cjs/components/accordion/AccordionHeader.js +3 -2
  12. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  13. package/cjs/components/accordion/AccordionProviderContext.d.ts +2 -0
  14. package/cjs/components/accordion/AccordionProviderContext.js.map +1 -1
  15. package/cjs/components/anchor/Anchor.d.ts +20 -0
  16. package/cjs/components/anchor/Anchor.js +13 -4
  17. package/cjs/components/anchor/Anchor.js.map +1 -1
  18. package/cjs/components/anchor/AnchorDocs.d.ts +3 -0
  19. package/cjs/components/anchor/AnchorDocs.js +82 -0
  20. package/cjs/components/anchor/AnchorDocs.js.map +1 -0
  21. package/cjs/components/autocomplete/Autocomplete.js +18 -4
  22. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  23. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  24. package/cjs/components/height-animation/HeightAnimationInstance.d.ts +3 -3
  25. package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
  26. package/cjs/components/height-animation/useHeightAnimation.d.ts +5 -1
  27. package/cjs/components/height-animation/useHeightAnimation.js.map +1 -1
  28. package/cjs/components/icon/Icon.d.ts +493 -61
  29. package/cjs/components/icon/Icon.js +97 -134
  30. package/cjs/components/icon/Icon.js.map +1 -1
  31. package/cjs/components/icon/IconHelpers.d.ts +2 -1
  32. package/cjs/components/icon/IconHelpers.js +1 -1
  33. package/cjs/components/icon/IconHelpers.js.map +1 -1
  34. package/cjs/components/icon/IconPrimary.d.ts +2 -2
  35. package/cjs/components/icon/IconPrimary.js.map +1 -1
  36. package/cjs/components/icon-primary/IconPrimary.d.ts +8 -11
  37. package/cjs/components/icon-primary/IconPrimary.js +37 -38
  38. package/cjs/components/icon-primary/IconPrimary.js.map +1 -1
  39. package/cjs/components/step-indicator/StepIndicatorContext.js +66 -59
  40. package/cjs/components/step-indicator/StepIndicatorContext.js.map +1 -1
  41. package/cjs/components/step-indicator/StepIndicatorItem.js +15 -23
  42. package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
  43. package/cjs/components/step-indicator/StepIndicatorModal.js +5 -5
  44. package/cjs/components/step-indicator/StepIndicatorModal.js.map +1 -1
  45. package/cjs/components/step-indicator/StepIndicatorSidebar.js +10 -9
  46. package/cjs/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  47. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  48. package/cjs/components/table/Table.d.ts +1 -1
  49. package/cjs/components/table/Table.js.map +1 -1
  50. package/cjs/components/table/TableContext.d.ts +12 -2
  51. package/cjs/components/table/TableContext.js +1 -3
  52. package/cjs/components/table/TableContext.js.map +1 -1
  53. package/cjs/components/table/TableDocs.d.ts +7 -0
  54. package/cjs/components/table/TableDocs.js +202 -0
  55. package/cjs/components/table/TableDocs.js.map +1 -0
  56. package/cjs/components/table/TableTd.d.ts +3 -3
  57. package/cjs/components/table/TableTd.js +2 -2
  58. package/cjs/components/table/TableTd.js.map +1 -1
  59. package/cjs/components/table/TableTr.d.ts +9 -5
  60. package/cjs/components/table/TableTr.js +4 -4
  61. package/cjs/components/table/TableTr.js.map +1 -1
  62. package/cjs/components/table/table-accordion/TableAccordionContent.d.ts +15 -0
  63. package/cjs/components/table/{TableAccordionTd.js → table-accordion/TableAccordionContent.js} +52 -17
  64. package/cjs/components/table/table-accordion/TableAccordionContent.js.map +1 -0
  65. package/cjs/components/table/table-accordion/TableAccordionContext.d.ts +16 -0
  66. package/cjs/components/table/table-accordion/TableAccordionContext.js +11 -0
  67. package/cjs/components/table/table-accordion/TableAccordionContext.js.map +1 -0
  68. package/cjs/components/table/table-accordion/TableAccordionHead.d.ts +8 -0
  69. package/cjs/components/table/{TableAccordion.js → table-accordion/TableAccordionHead.js} +17 -18
  70. package/cjs/components/table/table-accordion/TableAccordionHead.js.map +1 -0
  71. package/{es/components/table → cjs/components/table/table-accordion}/useTableAnimationHandler.d.ts +7 -3
  72. package/cjs/components/table/{useTableAnimationHandler.js → table-accordion/useTableAnimationHandler.js} +4 -4
  73. package/cjs/components/table/table-accordion/useTableAnimationHandler.js.map +1 -0
  74. package/cjs/components/tabs/Tabs.d.ts +0 -3
  75. package/cjs/components/tabs/TabsDocs.d.ts +1 -0
  76. package/cjs/components/tabs/TabsDocs.js +32 -4
  77. package/cjs/components/tabs/TabsDocs.js.map +1 -1
  78. package/cjs/components/toggle-button/ToggleButtonGroup.js +2 -2
  79. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  80. package/cjs/components/toggle-button/style/dnb-toggle-button.css +15 -6
  81. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  82. package/cjs/components/toggle-button/style/dnb-toggle-button.scss +16 -9
  83. package/cjs/extensions/forms/DataContext/Provider/Provider.js +1 -1
  84. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  85. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +2 -2
  86. package/cjs/extensions/forms/Form/Visibility/Visibility.js +20 -72
  87. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  88. package/cjs/extensions/forms/Form/Visibility/useVisibility.d.ts +5 -0
  89. package/cjs/extensions/forms/Form/Visibility/useVisibility.js +101 -0
  90. package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -0
  91. package/cjs/extensions/forms/Value/Date/Date.d.ts +5 -1
  92. package/cjs/extensions/forms/Value/Date/Date.js +26 -3
  93. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  94. package/cjs/extensions/forms/Value/Date/DateDocs.d.ts +2 -0
  95. package/cjs/extensions/forms/Value/Date/DateDocs.js +20 -0
  96. package/cjs/extensions/forms/Value/Date/DateDocs.js.map +1 -0
  97. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +15 -9
  98. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  99. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  100. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  101. package/cjs/extensions/forms/Wizard/Step/Step.d.ts +5 -0
  102. package/cjs/extensions/forms/Wizard/Step/Step.js +6 -2
  103. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  104. package/cjs/extensions/forms/Wizard/Step/StepDocs.js +5 -0
  105. package/cjs/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  106. package/cjs/extensions/forms/Wizard/hooks/useNextRouter.js +1 -1
  107. package/cjs/extensions/forms/Wizard/hooks/useNextRouter.js.map +1 -1
  108. package/cjs/extensions/forms/Wizard/hooks/useQueryLocator.js +1 -1
  109. package/cjs/extensions/forms/Wizard/hooks/useQueryLocator.js.map +1 -1
  110. package/cjs/extensions/forms/Wizard/hooks/useReachRouter.js +1 -1
  111. package/cjs/extensions/forms/Wizard/hooks/useReachRouter.js.map +1 -1
  112. package/cjs/extensions/forms/Wizard/hooks/useReactRouter.js +1 -1
  113. package/cjs/extensions/forms/Wizard/hooks/useReactRouter.js.map +1 -1
  114. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +7 -9
  115. package/cjs/extensions/forms/constants/locales/en-GB.js +7 -9
  116. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  117. package/cjs/extensions/forms/constants/locales/en-US.d.ts +7 -9
  118. package/cjs/extensions/forms/constants/locales/index.d.ts +14 -18
  119. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +7 -9
  120. package/cjs/extensions/forms/constants/locales/nb-NO.js +7 -9
  121. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  122. package/cjs/shared/Context.d.ts +4 -0
  123. package/cjs/shared/Context.js.map +1 -1
  124. package/cjs/shared/Eufemia.d.ts +1 -1
  125. package/cjs/shared/Eufemia.js +2 -2
  126. package/cjs/shared/Eufemia.js.map +1 -1
  127. package/cjs/shared/component-helper.js +1 -1
  128. package/cjs/shared/component-helper.js.map +1 -1
  129. package/cjs/style/core/scopes.scss +1 -1
  130. package/cjs/style/dnb-ui-basis.css +1 -1
  131. package/cjs/style/dnb-ui-basis.min.css +1 -1
  132. package/cjs/style/dnb-ui-body.css +1 -1
  133. package/cjs/style/dnb-ui-body.min.css +1 -1
  134. package/cjs/style/dnb-ui-components.css +15 -6
  135. package/cjs/style/dnb-ui-components.min.css +1 -1
  136. package/cjs/style/dnb-ui-core.css +1 -1
  137. package/cjs/style/dnb-ui-core.min.css +1 -1
  138. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +15 -6
  139. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  140. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +15 -6
  141. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  142. package/cjs/style/themes/theme-ui/ui-theme-components.css +15 -6
  143. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  144. package/components/accordion/Accordion.d.ts +15 -3
  145. package/components/accordion/Accordion.js +7 -0
  146. package/components/accordion/Accordion.js.map +1 -1
  147. package/components/accordion/AccordionDocs.d.ts +4 -0
  148. package/components/accordion/AccordionDocs.js +152 -0
  149. package/components/accordion/AccordionDocs.js.map +1 -0
  150. package/components/accordion/AccordionGroup.js +14 -4
  151. package/components/accordion/AccordionGroup.js.map +1 -1
  152. package/components/accordion/AccordionHeader.d.ts +5 -5
  153. package/components/accordion/AccordionHeader.js +3 -2
  154. package/components/accordion/AccordionHeader.js.map +1 -1
  155. package/components/accordion/AccordionProviderContext.d.ts +2 -0
  156. package/components/accordion/AccordionProviderContext.js.map +1 -1
  157. package/components/anchor/Anchor.d.ts +20 -0
  158. package/components/anchor/Anchor.js +13 -4
  159. package/components/anchor/Anchor.js.map +1 -1
  160. package/components/anchor/AnchorDocs.d.ts +3 -0
  161. package/components/anchor/AnchorDocs.js +74 -0
  162. package/components/anchor/AnchorDocs.js.map +1 -0
  163. package/components/autocomplete/Autocomplete.js +19 -5
  164. package/components/autocomplete/Autocomplete.js.map +1 -1
  165. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  166. package/components/height-animation/HeightAnimationInstance.d.ts +3 -3
  167. package/components/height-animation/HeightAnimationInstance.js.map +1 -1
  168. package/components/height-animation/useHeightAnimation.d.ts +5 -1
  169. package/components/height-animation/useHeightAnimation.js.map +1 -1
  170. package/components/icon/Icon.d.ts +493 -61
  171. package/components/icon/Icon.js +89 -127
  172. package/components/icon/Icon.js.map +1 -1
  173. package/components/icon/IconHelpers.d.ts +2 -1
  174. package/components/icon/IconHelpers.js +1 -1
  175. package/components/icon/IconHelpers.js.map +1 -1
  176. package/components/icon/IconPrimary.d.ts +2 -2
  177. package/components/icon/IconPrimary.js.map +1 -1
  178. package/components/icon-primary/IconPrimary.d.ts +8 -11
  179. package/components/icon-primary/IconPrimary.js +25 -31
  180. package/components/icon-primary/IconPrimary.js.map +1 -1
  181. package/components/step-indicator/StepIndicatorContext.js +67 -60
  182. package/components/step-indicator/StepIndicatorContext.js.map +1 -1
  183. package/components/step-indicator/StepIndicatorItem.js +16 -24
  184. package/components/step-indicator/StepIndicatorItem.js.map +1 -1
  185. package/components/step-indicator/StepIndicatorModal.js +6 -6
  186. package/components/step-indicator/StepIndicatorModal.js.map +1 -1
  187. package/components/step-indicator/StepIndicatorSidebar.js +11 -10
  188. package/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  189. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  190. package/components/table/Table.d.ts +1 -1
  191. package/components/table/Table.js.map +1 -1
  192. package/components/table/TableContext.d.ts +12 -2
  193. package/components/table/TableContext.js +0 -1
  194. package/components/table/TableContext.js.map +1 -1
  195. package/components/table/TableDocs.d.ts +7 -0
  196. package/components/table/TableDocs.js +190 -0
  197. package/components/table/TableDocs.js.map +1 -0
  198. package/components/table/TableTd.d.ts +3 -3
  199. package/components/table/TableTd.js +2 -2
  200. package/components/table/TableTd.js.map +1 -1
  201. package/components/table/TableTr.d.ts +9 -5
  202. package/components/table/TableTr.js +4 -4
  203. package/components/table/TableTr.js.map +1 -1
  204. package/components/table/table-accordion/TableAccordionContent.d.ts +15 -0
  205. package/components/table/table-accordion/TableAccordionContent.js +95 -0
  206. package/components/table/table-accordion/TableAccordionContent.js.map +1 -0
  207. package/components/table/table-accordion/TableAccordionContext.d.ts +16 -0
  208. package/components/table/table-accordion/TableAccordionContext.js +3 -0
  209. package/components/table/table-accordion/TableAccordionContext.js.map +1 -0
  210. package/components/table/table-accordion/TableAccordionHead.d.ts +8 -0
  211. package/components/table/{TableAccordion.js → table-accordion/TableAccordionHead.js} +14 -15
  212. package/components/table/table-accordion/TableAccordionHead.js.map +1 -0
  213. package/{cjs/components/table → components/table/table-accordion}/useTableAnimationHandler.d.ts +7 -3
  214. package/components/table/{useTableAnimationHandler.js → table-accordion/useTableAnimationHandler.js} +3 -3
  215. package/components/table/table-accordion/useTableAnimationHandler.js.map +1 -0
  216. package/components/tabs/Tabs.d.ts +0 -3
  217. package/components/tabs/TabsDocs.d.ts +1 -0
  218. package/components/tabs/TabsDocs.js +30 -3
  219. package/components/tabs/TabsDocs.js.map +1 -1
  220. package/components/toggle-button/ToggleButtonGroup.js +2 -2
  221. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  222. package/components/toggle-button/style/dnb-toggle-button.css +15 -6
  223. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  224. package/components/toggle-button/style/dnb-toggle-button.scss +16 -9
  225. package/es/components/accordion/Accordion.d.ts +15 -3
  226. package/es/components/accordion/Accordion.js +7 -0
  227. package/es/components/accordion/Accordion.js.map +1 -1
  228. package/es/components/accordion/AccordionDocs.d.ts +4 -0
  229. package/es/components/accordion/AccordionDocs.js +152 -0
  230. package/es/components/accordion/AccordionDocs.js.map +1 -0
  231. package/es/components/accordion/AccordionGroup.js +14 -4
  232. package/es/components/accordion/AccordionGroup.js.map +1 -1
  233. package/es/components/accordion/AccordionHeader.d.ts +5 -5
  234. package/es/components/accordion/AccordionHeader.js +3 -2
  235. package/es/components/accordion/AccordionHeader.js.map +1 -1
  236. package/es/components/accordion/AccordionProviderContext.d.ts +2 -0
  237. package/es/components/accordion/AccordionProviderContext.js.map +1 -1
  238. package/es/components/anchor/Anchor.d.ts +20 -0
  239. package/es/components/anchor/Anchor.js +13 -4
  240. package/es/components/anchor/Anchor.js.map +1 -1
  241. package/es/components/anchor/AnchorDocs.d.ts +3 -0
  242. package/es/components/anchor/AnchorDocs.js +74 -0
  243. package/es/components/anchor/AnchorDocs.js.map +1 -0
  244. package/es/components/autocomplete/Autocomplete.js +19 -5
  245. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  246. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  247. package/es/components/height-animation/HeightAnimationInstance.d.ts +3 -3
  248. package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
  249. package/es/components/height-animation/useHeightAnimation.d.ts +5 -1
  250. package/es/components/height-animation/useHeightAnimation.js.map +1 -1
  251. package/es/components/icon/Icon.d.ts +493 -61
  252. package/es/components/icon/Icon.js +82 -116
  253. package/es/components/icon/Icon.js.map +1 -1
  254. package/es/components/icon/IconHelpers.d.ts +2 -1
  255. package/es/components/icon/IconHelpers.js +1 -1
  256. package/es/components/icon/IconHelpers.js.map +1 -1
  257. package/es/components/icon/IconPrimary.d.ts +2 -2
  258. package/es/components/icon/IconPrimary.js.map +1 -1
  259. package/es/components/icon-primary/IconPrimary.d.ts +8 -11
  260. package/es/components/icon-primary/IconPrimary.js +25 -31
  261. package/es/components/icon-primary/IconPrimary.js.map +1 -1
  262. package/es/components/step-indicator/StepIndicatorContext.js +67 -60
  263. package/es/components/step-indicator/StepIndicatorContext.js.map +1 -1
  264. package/es/components/step-indicator/StepIndicatorItem.js +17 -25
  265. package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
  266. package/es/components/step-indicator/StepIndicatorModal.js +6 -6
  267. package/es/components/step-indicator/StepIndicatorModal.js.map +1 -1
  268. package/es/components/step-indicator/StepIndicatorSidebar.js +11 -10
  269. package/es/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  270. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  271. package/es/components/table/Table.d.ts +1 -1
  272. package/es/components/table/Table.js.map +1 -1
  273. package/es/components/table/TableContext.d.ts +12 -2
  274. package/es/components/table/TableContext.js +0 -1
  275. package/es/components/table/TableContext.js.map +1 -1
  276. package/es/components/table/TableDocs.d.ts +7 -0
  277. package/es/components/table/TableDocs.js +190 -0
  278. package/es/components/table/TableDocs.js.map +1 -0
  279. package/es/components/table/TableTd.d.ts +3 -3
  280. package/es/components/table/TableTd.js +2 -2
  281. package/es/components/table/TableTd.js.map +1 -1
  282. package/es/components/table/TableTr.d.ts +9 -5
  283. package/es/components/table/TableTr.js +4 -4
  284. package/es/components/table/TableTr.js.map +1 -1
  285. package/es/components/table/table-accordion/TableAccordionContent.d.ts +15 -0
  286. package/es/components/table/table-accordion/TableAccordionContent.js +92 -0
  287. package/es/components/table/table-accordion/TableAccordionContent.js.map +1 -0
  288. package/es/components/table/table-accordion/TableAccordionContext.d.ts +16 -0
  289. package/es/components/table/table-accordion/TableAccordionContext.js +3 -0
  290. package/es/components/table/table-accordion/TableAccordionContext.js.map +1 -0
  291. package/es/components/table/table-accordion/TableAccordionHead.d.ts +8 -0
  292. package/es/components/table/{TableAccordion.js → table-accordion/TableAccordionHead.js} +14 -15
  293. package/es/components/table/table-accordion/TableAccordionHead.js.map +1 -0
  294. package/{components/table → es/components/table/table-accordion}/useTableAnimationHandler.d.ts +7 -3
  295. package/es/components/table/{useTableAnimationHandler.js → table-accordion/useTableAnimationHandler.js} +3 -3
  296. package/es/components/table/table-accordion/useTableAnimationHandler.js.map +1 -0
  297. package/es/components/tabs/Tabs.d.ts +0 -3
  298. package/es/components/tabs/TabsDocs.d.ts +1 -0
  299. package/es/components/tabs/TabsDocs.js +30 -3
  300. package/es/components/tabs/TabsDocs.js.map +1 -1
  301. package/es/components/toggle-button/ToggleButtonGroup.js +2 -2
  302. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  303. package/es/components/toggle-button/style/dnb-toggle-button.css +15 -6
  304. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  305. package/es/components/toggle-button/style/dnb-toggle-button.scss +16 -9
  306. package/es/extensions/forms/DataContext/Provider/Provider.js +1 -1
  307. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  308. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +2 -2
  309. package/es/extensions/forms/Form/Visibility/Visibility.js +20 -71
  310. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  311. package/es/extensions/forms/Form/Visibility/useVisibility.d.ts +5 -0
  312. package/es/extensions/forms/Form/Visibility/useVisibility.js +94 -0
  313. package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -0
  314. package/es/extensions/forms/Value/Date/Date.d.ts +5 -1
  315. package/es/extensions/forms/Value/Date/Date.js +25 -3
  316. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  317. package/es/extensions/forms/Value/Date/DateDocs.d.ts +2 -0
  318. package/es/extensions/forms/Value/Date/DateDocs.js +13 -0
  319. package/es/extensions/forms/Value/Date/DateDocs.js.map +1 -0
  320. package/es/extensions/forms/Wizard/Container/WizardContainer.js +15 -9
  321. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  322. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  323. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  324. package/es/extensions/forms/Wizard/Step/Step.d.ts +5 -0
  325. package/es/extensions/forms/Wizard/Step/Step.js +6 -2
  326. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  327. package/es/extensions/forms/Wizard/Step/StepDocs.js +5 -0
  328. package/es/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  329. package/es/extensions/forms/Wizard/hooks/useNextRouter.js +1 -1
  330. package/es/extensions/forms/Wizard/hooks/useNextRouter.js.map +1 -1
  331. package/es/extensions/forms/Wizard/hooks/useQueryLocator.js +1 -1
  332. package/es/extensions/forms/Wizard/hooks/useQueryLocator.js.map +1 -1
  333. package/es/extensions/forms/Wizard/hooks/useReachRouter.js +1 -1
  334. package/es/extensions/forms/Wizard/hooks/useReachRouter.js.map +1 -1
  335. package/es/extensions/forms/Wizard/hooks/useReactRouter.js +1 -1
  336. package/es/extensions/forms/Wizard/hooks/useReactRouter.js.map +1 -1
  337. package/es/extensions/forms/constants/locales/en-GB.d.ts +7 -9
  338. package/es/extensions/forms/constants/locales/en-GB.js +7 -9
  339. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  340. package/es/extensions/forms/constants/locales/en-US.d.ts +7 -9
  341. package/es/extensions/forms/constants/locales/index.d.ts +14 -18
  342. package/es/extensions/forms/constants/locales/nb-NO.d.ts +7 -9
  343. package/es/extensions/forms/constants/locales/nb-NO.js +7 -9
  344. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  345. package/es/shared/Context.d.ts +4 -0
  346. package/es/shared/Context.js.map +1 -1
  347. package/es/shared/Eufemia.d.ts +1 -1
  348. package/es/shared/Eufemia.js +2 -2
  349. package/es/shared/Eufemia.js.map +1 -1
  350. package/es/shared/component-helper.js +1 -1
  351. package/es/shared/component-helper.js.map +1 -1
  352. package/es/style/core/scopes.scss +1 -1
  353. package/es/style/dnb-ui-basis.css +1 -1
  354. package/es/style/dnb-ui-basis.min.css +1 -1
  355. package/es/style/dnb-ui-body.css +1 -1
  356. package/es/style/dnb-ui-body.min.css +1 -1
  357. package/es/style/dnb-ui-components.css +15 -6
  358. package/es/style/dnb-ui-components.min.css +1 -1
  359. package/es/style/dnb-ui-core.css +1 -1
  360. package/es/style/dnb-ui-core.min.css +1 -1
  361. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +15 -6
  362. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  363. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +15 -6
  364. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  365. package/es/style/themes/theme-ui/ui-theme-components.css +15 -6
  366. package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  367. package/esm/dnb-ui-basis.min.mjs +1 -1
  368. package/esm/dnb-ui-components.min.mjs +1 -1
  369. package/esm/dnb-ui-elements.min.mjs +1 -1
  370. package/esm/dnb-ui-extensions.min.mjs +5 -5
  371. package/esm/dnb-ui-lib.min.mjs +1 -1
  372. package/extensions/forms/DataContext/Provider/Provider.js +1 -1
  373. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  374. package/extensions/forms/Form/Visibility/Visibility.d.ts +2 -2
  375. package/extensions/forms/Form/Visibility/Visibility.js +20 -71
  376. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  377. package/extensions/forms/Form/Visibility/useVisibility.d.ts +5 -0
  378. package/extensions/forms/Form/Visibility/useVisibility.js +95 -0
  379. package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -0
  380. package/extensions/forms/Value/Date/Date.d.ts +5 -1
  381. package/extensions/forms/Value/Date/Date.js +25 -3
  382. package/extensions/forms/Value/Date/Date.js.map +1 -1
  383. package/extensions/forms/Value/Date/DateDocs.d.ts +2 -0
  384. package/extensions/forms/Value/Date/DateDocs.js +13 -0
  385. package/extensions/forms/Value/Date/DateDocs.js.map +1 -0
  386. package/extensions/forms/Wizard/Container/WizardContainer.js +15 -9
  387. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  388. package/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  389. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  390. package/extensions/forms/Wizard/Step/Step.d.ts +5 -0
  391. package/extensions/forms/Wizard/Step/Step.js +6 -2
  392. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  393. package/extensions/forms/Wizard/Step/StepDocs.js +5 -0
  394. package/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  395. package/extensions/forms/Wizard/hooks/useNextRouter.js +1 -1
  396. package/extensions/forms/Wizard/hooks/useNextRouter.js.map +1 -1
  397. package/extensions/forms/Wizard/hooks/useQueryLocator.js +1 -1
  398. package/extensions/forms/Wizard/hooks/useQueryLocator.js.map +1 -1
  399. package/extensions/forms/Wizard/hooks/useReachRouter.js +1 -1
  400. package/extensions/forms/Wizard/hooks/useReachRouter.js.map +1 -1
  401. package/extensions/forms/Wizard/hooks/useReactRouter.js +1 -1
  402. package/extensions/forms/Wizard/hooks/useReactRouter.js.map +1 -1
  403. package/extensions/forms/constants/locales/en-GB.d.ts +7 -9
  404. package/extensions/forms/constants/locales/en-GB.js +7 -9
  405. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  406. package/extensions/forms/constants/locales/en-US.d.ts +7 -9
  407. package/extensions/forms/constants/locales/index.d.ts +14 -18
  408. package/extensions/forms/constants/locales/nb-NO.d.ts +7 -9
  409. package/extensions/forms/constants/locales/nb-NO.js +7 -9
  410. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  411. package/package.json +1 -1
  412. package/shared/Context.d.ts +4 -0
  413. package/shared/Context.js.map +1 -1
  414. package/shared/Eufemia.d.ts +1 -1
  415. package/shared/Eufemia.js +2 -2
  416. package/shared/Eufemia.js.map +1 -1
  417. package/shared/component-helper.js +1 -1
  418. package/shared/component-helper.js.map +1 -1
  419. package/style/core/scopes.scss +1 -1
  420. package/style/dnb-ui-basis.css +1 -1
  421. package/style/dnb-ui-basis.min.css +1 -1
  422. package/style/dnb-ui-body.css +1 -1
  423. package/style/dnb-ui-body.min.css +1 -1
  424. package/style/dnb-ui-components.css +15 -6
  425. package/style/dnb-ui-components.min.css +1 -1
  426. package/style/dnb-ui-core.css +1 -1
  427. package/style/dnb-ui-core.min.css +1 -1
  428. package/style/themes/theme-eiendom/eiendom-theme-components.css +15 -6
  429. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  430. package/style/themes/theme-sbanken/sbanken-theme-components.css +15 -6
  431. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  432. package/style/themes/theme-ui/ui-theme-components.css +15 -6
  433. package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  434. package/umd/dnb-ui-basis.min.js +1 -1
  435. package/umd/dnb-ui-components.min.js +1 -1
  436. package/umd/dnb-ui-elements.min.js +1 -1
  437. package/umd/dnb-ui-extensions.min.js +5 -5
  438. package/umd/dnb-ui-lib.min.js +1 -1
  439. package/cjs/components/table/TableAccordion.d.ts +0 -8
  440. package/cjs/components/table/TableAccordion.js.map +0 -1
  441. package/cjs/components/table/TableAccordionTd.d.ts +0 -9
  442. package/cjs/components/table/TableAccordionTd.js.map +0 -1
  443. package/cjs/components/table/TableAccordionTr.d.ts +0 -13
  444. package/cjs/components/table/TableAccordionTr.js +0 -61
  445. package/cjs/components/table/TableAccordionTr.js.map +0 -1
  446. package/cjs/components/table/useTableAnimationHandler.js.map +0 -1
  447. package/components/table/TableAccordion.d.ts +0 -8
  448. package/components/table/TableAccordion.js.map +0 -1
  449. package/components/table/TableAccordionTd.d.ts +0 -9
  450. package/components/table/TableAccordionTd.js +0 -61
  451. package/components/table/TableAccordionTd.js.map +0 -1
  452. package/components/table/TableAccordionTr.d.ts +0 -13
  453. package/components/table/TableAccordionTr.js +0 -51
  454. package/components/table/TableAccordionTr.js.map +0 -1
  455. package/components/table/useTableAnimationHandler.js.map +0 -1
  456. package/es/components/table/TableAccordion.d.ts +0 -8
  457. package/es/components/table/TableAccordion.js.map +0 -1
  458. package/es/components/table/TableAccordionTd.d.ts +0 -9
  459. package/es/components/table/TableAccordionTd.js +0 -61
  460. package/es/components/table/TableAccordionTd.js.map +0 -1
  461. package/es/components/table/TableAccordionTr.d.ts +0 -13
  462. package/es/components/table/TableAccordionTr.js +0 -51
  463. package/es/components/table/TableAccordionTr.js.map +0 -1
  464. package/es/components/table/useTableAnimationHandler.js.map +0 -1
@@ -4,26 +4,32 @@
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.prerenderIcon = exports.prepareIcon = exports.iconPropTypes = exports.getIconNameFromComponent = exports.default = exports.calcSize = exports.ValidIconSizes = exports.ListDefaultIconSizes = exports.DefaultIconSizes = exports.DefaultIconSize = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
7
+ exports.ValidIconType = exports.ListDefaultIconSizes = exports.DefaultIconSizes = exports.DefaultIconSize = void 0;
8
+ exports.calcSize = calcSize;
9
+ exports.default = Icon;
10
+ exports.getIconNameFromComponent = getIconNameFromComponent;
11
+ exports.prepareIcon = prepareIcon;
12
+ exports.prerenderIcon = prerenderIcon;
13
+ var _react = _interopRequireWildcard(require("react"));
10
14
  var _classnames = _interopRequireDefault(require("classnames"));
11
15
  var _errorHelper = require("../../shared/error-helper");
12
16
  var _componentHelper = require("../../shared/component-helper");
17
+ var _Context = _interopRequireDefault(require("../../shared/Context"));
13
18
  var _SpacingHelper = require("../space/SpacingHelper");
14
19
  var _SkeletonHelper = require("../skeleton/SkeletonHelper");
15
- var _Context = _interopRequireDefault(require("../../shared/Context"));
16
20
  var _IconHelpers = require("./IconHelpers");
17
21
  const _excluded = ["sizeAsString"],
18
- _excluded2 = ["icon", "size", "width", "height", "border", "color", "inherit_color", "modifier", "alt", "title", "skeleton", "className"];
22
+ _excluded2 = ["icon", "size", "width", "height", "border", "color", "inheritColor", "inherit_color", "modifier", "alt", "title", "skeleton", "className"];
19
23
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
21
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
24
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
22
26
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
27
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
24
28
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
25
29
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
26
30
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
31
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
32
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
27
33
  const DefaultIconSize = 16;
28
34
  exports.DefaultIconSize = DefaultIconSize;
29
35
  const DefaultIconSizes = {
@@ -33,156 +39,107 @@ const DefaultIconSizes = {
33
39
  exports.DefaultIconSizes = DefaultIconSizes;
34
40
  const ListDefaultIconSizes = [['default', 16], ['medium', 24]];
35
41
  exports.ListDefaultIconSizes = ListDefaultIconSizes;
36
- const ValidIconSizes = ['small', 'default', 'medium', 'large', 'x-large', 'xx-large'];
37
- exports.ValidIconSizes = ValidIconSizes;
38
- const iconPropTypes = _objectSpread(_objectSpread({
39
- icon: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.node, _propTypes.default.func]),
40
- modifier: _propTypes.default.string,
41
- size: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string, _propTypes.default.oneOf(['default', 'medium', 'large'])])
42
- }, _SpacingHelper.spacingPropTypes), {}, {
43
- width: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
44
- height: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
45
- border: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),
46
- color: _propTypes.default.string,
47
- inherit_color: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),
48
- alt: _propTypes.default.string,
49
- title: _propTypes.default.string,
50
- skeleton: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),
51
- attributes: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.object]),
52
- className: _propTypes.default.string,
53
- children: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func])
54
- });
55
- exports.iconPropTypes = iconPropTypes;
56
- class Icon extends _react.default.PureComponent {
57
- static getIcon(props) {
58
- if (props.icon) {
59
- return props.icon;
60
- }
61
- return (0, _componentHelper.processChildren)(props);
42
+ const ValidIconType = ['small', 'default', 'medium', 'large', 'x-large', 'xx-large'];
43
+ exports.ValidIconType = ValidIconType;
44
+ function Icon(localProps) {
45
+ const context = (0, _react.useContext)(_Context.default);
46
+ const props = (0, _componentHelper.extendPropsWithContext)(localProps, {}, {
47
+ skeleton: context === null || context === void 0 ? void 0 : context.skeleton
48
+ }, context.Icon);
49
+ const {
50
+ icon: iconProp,
51
+ size,
52
+ wrapperParams,
53
+ iconParams,
54
+ alt,
55
+ children
56
+ } = prepareIcon(props, context);
57
+ const icon = iconProp !== null && iconProp !== void 0 ? iconProp : children;
58
+ if (!icon) {
59
+ return null;
62
60
  }
63
- render() {
64
- var _this$context;
65
- const props = (0, _componentHelper.extendPropsWithContextInClassComponent)(this.props, Icon.defaultProps, {
66
- skeleton: (_this$context = this.context) === null || _this$context === void 0 ? void 0 : _this$context.skeleton
67
- }, this.context.Icon);
68
- const {
69
- icon,
70
- size,
71
- wrapperParams,
72
- iconParams,
73
- alt
74
- } = prepareIcon(props, this.context);
75
- if (!icon) {
76
- return null;
77
- }
78
- const IconContainer = prerenderIcon({
79
- icon,
80
- size,
81
- alt
82
- });
83
- if (!IconContainer) return _react.default.createElement(_react.default.Fragment, null);
84
- return _react.default.createElement("span", wrapperParams, _react.default.createElement(IconContainer, iconParams));
61
+ const IconContainer = prerenderIcon({
62
+ icon,
63
+ size,
64
+ alt
65
+ });
66
+ if (!IconContainer) {
67
+ return _react.default.createElement(_react.default.Fragment, null);
85
68
  }
69
+ return _react.default.createElement("span", wrapperParams, _react.default.createElement(IconContainer, iconParams));
86
70
  }
87
- exports.default = Icon;
88
- _defineProperty(Icon, "contextType", _Context.default);
89
- _defineProperty(Icon, "defaultProps", {
90
- icon: null,
91
- modifier: null,
92
- size: null,
93
- width: null,
94
- height: null,
95
- border: null,
96
- color: null,
97
- inherit_color: true,
98
- alt: null,
99
- title: null,
100
- skeleton: null,
101
- attributes: null,
102
- className: null,
103
- children: null
104
- });
105
- process.env.NODE_ENV !== "production" ? Icon.propTypes = _objectSpread({}, iconPropTypes) : void 0;
106
- const getIconNameFromComponent = icon => {
107
- const name = typeof icon === 'string' ? icon : icon && (icon.displayName || icon.name);
71
+ function getIconNameFromComponent(icon) {
72
+ const name = typeof icon === 'function' ? icon.name : String(icon);
108
73
  if (/^data:image\//.test(name)) {
109
74
  return null;
110
75
  }
111
76
  return name;
112
- };
113
- exports.getIconNameFromComponent = getIconNameFromComponent;
114
- const calcSize = props => {
77
+ }
78
+ function calcSize(props) {
115
79
  const {
116
80
  icon,
117
81
  size,
118
82
  width,
119
83
  height
120
84
  } = props;
121
- let sizeAsInt = -1;
85
+ let sizeAsInt = null;
122
86
  let sizeAsString = null;
123
87
  if (!size || size === DefaultIconSize) {
124
88
  const name = getIconNameFromComponent(icon);
125
89
  const nameParts = String(name || '').split('_');
126
90
  if (nameParts.length > 1) {
91
+ var _ListDefaultIconSizes, _ListDefaultIconSizes2;
127
92
  const lastPartOfIconName = nameParts.reverse()[0];
128
- const potentialSize = ListDefaultIconSizes.filter(_ref => {
93
+ const potentialSize = (_ListDefaultIconSizes = ListDefaultIconSizes.filter(_ref => {
129
94
  let [key] = _ref;
130
95
  return key === lastPartOfIconName;
131
- }).reduce((acc, _ref2) => {
132
- let [key, value] = _ref2;
133
- return key && value;
134
- }, null);
96
+ })) === null || _ListDefaultIconSizes === void 0 ? void 0 : (_ListDefaultIconSizes2 = _ListDefaultIconSizes[0]) === null || _ListDefaultIconSizes2 === void 0 ? void 0 : _ListDefaultIconSizes2[1];
135
97
  if (potentialSize) {
136
98
  sizeAsInt = potentialSize;
137
99
  }
138
- if (ValidIconSizes.includes(lastPartOfIconName)) {
100
+ if (ValidIconType.includes(lastPartOfIconName)) {
139
101
  sizeAsString = lastPartOfIconName;
140
102
  }
141
103
  } else {
142
104
  if (typeof icon === 'function') {
143
105
  const elem = icon();
144
106
  if (elem.props) {
145
- let potentialSize = -1;
107
+ let potentialSize = null;
146
108
  if (elem.props.width) {
147
109
  potentialSize = elem.props.width;
148
110
  }
149
111
  if (!potentialSize && elem.props.viewBox) {
150
- potentialSize = /[0-9]+ [0-9]+ ([0-9]+)/.exec(elem.props.viewBox)[1];
112
+ potentialSize = parseFloat(/[0-9]+ [0-9]+ ([0-9]+)/.exec(elem.props.viewBox)[1]);
151
113
  }
152
- if (potentialSize) {
114
+ if (!isNaN(potentialSize)) {
153
115
  sizeAsInt = potentialSize;
154
116
  }
155
117
  }
156
118
  }
157
119
  }
158
120
  } else if (typeof size === 'string' && !(parseFloat(size) > 0)) {
159
- sizeAsInt = ListDefaultIconSizes.filter(_ref3 => {
160
- let [key] = _ref3;
121
+ var _ListDefaultIconSizes3, _ListDefaultIconSizes4, _ListDefaultIconSizes5;
122
+ sizeAsInt = (_ListDefaultIconSizes3 = (_ListDefaultIconSizes4 = ListDefaultIconSizes.filter(_ref2 => {
123
+ let [key] = _ref2;
161
124
  return key === size;
162
- }).reduce((acc, _ref4) => {
163
- let [key, value] = _ref4;
164
- return key && value;
165
- }, -1);
166
- if (ValidIconSizes.includes(size)) {
125
+ })) === null || _ListDefaultIconSizes4 === void 0 ? void 0 : (_ListDefaultIconSizes5 = _ListDefaultIconSizes4[0]) === null || _ListDefaultIconSizes5 === void 0 ? void 0 : _ListDefaultIconSizes5[1]) !== null && _ListDefaultIconSizes3 !== void 0 ? _ListDefaultIconSizes3 : -1;
126
+ if (ValidIconType.includes(size)) {
167
127
  sizeAsString = size;
168
128
  }
169
- } else if (parseFloat(size) > 0) {
170
- sizeAsInt = ListDefaultIconSizes.filter(_ref5 => {
171
- let [key, value] = _ref5;
172
- return key && value === parseFloat(size);
173
- }).reduce((acc, _ref6) => {
174
- let [key, value] = _ref6;
175
- if (key && value) return value;
176
- return acc;
177
- }, -1);
129
+ } else if (parseFloat(String(size)) > 0) {
130
+ var _ListDefaultIconSizes6, _ListDefaultIconSizes7, _ListDefaultIconSizes8;
131
+ sizeAsInt = (_ListDefaultIconSizes6 = (_ListDefaultIconSizes7 = ListDefaultIconSizes.filter(_ref3 => {
132
+ let [key, value] = _ref3;
133
+ return key && value === parseFloat(String(size));
134
+ })) === null || _ListDefaultIconSizes7 === void 0 ? void 0 : (_ListDefaultIconSizes8 = _ListDefaultIconSizes7[0]) === null || _ListDefaultIconSizes8 === void 0 ? void 0 : _ListDefaultIconSizes8[1]) !== null && _ListDefaultIconSizes6 !== void 0 ? _ListDefaultIconSizes6 : -1;
178
135
  if (sizeAsInt === -1) {
179
- sizeAsInt = parseFloat(size);
136
+ sizeAsInt = parseFloat(String(size));
180
137
  sizeAsString = 'custom-size';
181
138
  }
182
139
  }
183
140
  if (!sizeAsString && sizeAsInt > 0) {
184
- const potentialSizeAsString = ListDefaultIconSizes.reduce((acc, _ref7) => {
185
- let [key, value] = _ref7;
141
+ const potentialSizeAsString = ListDefaultIconSizes.reduce((acc, _ref4) => {
142
+ let [key, value] = _ref4;
186
143
  if (key && value === sizeAsInt) {
187
144
  return key;
188
145
  }
@@ -218,13 +175,12 @@ const calcSize = props => {
218
175
  sizeAsInt,
219
176
  sizeAsString
220
177
  };
221
- };
222
- exports.calcSize = calcSize;
223
- const prepareIconParams = _ref8 => {
178
+ }
179
+ function prepareIconParams(_ref5) {
224
180
  let {
225
181
  sizeAsString
226
- } = _ref8,
227
- rest = _objectWithoutProperties(_ref8, _excluded);
182
+ } = _ref5,
183
+ rest = _objectWithoutProperties(_ref5, _excluded);
228
184
  const {
229
185
  size,
230
186
  width,
@@ -232,26 +188,26 @@ const prepareIconParams = _ref8 => {
232
188
  sizeAsInt
233
189
  } = rest;
234
190
  const params = {};
235
- if (!sizeAsString && !(sizeAsInt > 0) && parseFloat(size) > -1) {
236
- params.width = params.height = parseFloat(size);
191
+ if (!sizeAsString && !(sizeAsInt > 0) && parseFloat(String(size)) > -1) {
192
+ params.width = params.height = parseFloat(String(size));
237
193
  } else if (sizeAsString === 'custom-size') {
238
- params.width = params.height = parseFloat(sizeAsInt);
194
+ params.width = params.height = parseFloat(String(sizeAsInt));
239
195
  }
240
- if (parseFloat(width) > -1) {
196
+ if (parseFloat(String(width)) > -1) {
241
197
  sizeAsString = 'custom-size';
242
- params.width = parseFloat(width);
198
+ params.width = parseFloat(String(width));
243
199
  }
244
- if (parseFloat(height) > -1) {
200
+ if (parseFloat(String(height)) > -1) {
245
201
  sizeAsString = 'custom-size';
246
- params.height = parseFloat(height);
202
+ params.height = parseFloat(String(height));
247
203
  }
248
204
  (0, _componentHelper.validateDOMAttributes)({}, params);
249
205
  return {
250
206
  params,
251
207
  sizeAsString
252
208
  };
253
- };
254
- const prepareIcon = (props, context) => {
209
+ }
210
+ function prepareIcon(props, context) {
255
211
  const {
256
212
  icon,
257
213
  size,
@@ -259,6 +215,7 @@ const prepareIcon = (props, context) => {
259
215
  height,
260
216
  border,
261
217
  color,
218
+ inheritColor,
262
219
  inherit_color,
263
220
  modifier,
264
221
  alt,
@@ -295,8 +252,8 @@ const prepareIcon = (props, context) => {
295
252
  }
296
253
  delete wrapperParams['aria-label'];
297
254
  }
298
- wrapperParams.className = (0, _classnames.default)('dnb-icon', sizeAsString ? `dnb-icon--${sizeAsString}` : 'dnb-icon--default', (0, _SkeletonHelper.createSkeletonClass)(null, skeleton, context), (0, _SpacingHelper.createSpacingClasses)(props), className, modifier && `dnb-icon--${modifier}`, (0, _componentHelper.isTrue)(border) && 'dnb-icon--border', (0, _componentHelper.isTrue)(inherit_color) && 'dnb-icon--inherit-color');
299
- let iconToRender = Icon.getIcon(props);
255
+ wrapperParams.className = (0, _classnames.default)('dnb-icon', sizeAsString ? `dnb-icon--${sizeAsString}` : 'dnb-icon--default', (0, _SkeletonHelper.createSkeletonClass)(null, skeleton, context), (0, _SpacingHelper.createSpacingClasses)(props), className, modifier && `dnb-icon--${modifier}`, border && 'dnb-icon--border', (inheritColor !== null && inheritColor !== void 0 ? inheritColor : inherit_color) !== false && 'dnb-icon--inherit-color');
256
+ let iconToRender = getIcon(props);
300
257
  if (iconToRender && typeof iconToRender.defaultProps !== 'undefined') {
301
258
  iconToRender = _react.default.createElement(iconToRender, (0, _componentHelper.validateDOMAttributes)({}, {
302
259
  color,
@@ -312,18 +269,19 @@ const prepareIcon = (props, context) => {
312
269
  iconParams,
313
270
  wrapperParams
314
271
  });
315
- };
316
- exports.prepareIcon = prepareIcon;
317
- const prerenderIcon = function () {
318
- let {
319
- icon,
272
+ }
273
+ function prerenderIcon(props) {
274
+ const {
320
275
  size = null,
321
276
  listOfIcons = null,
322
277
  alt = null
323
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
278
+ } = props;
279
+ let {
280
+ icon
281
+ } = props;
324
282
  if (typeof icon === 'string' && /^data:image\//.test(icon)) {
325
283
  return () => _react.default.createElement("img", {
326
- src: icon,
284
+ src: String(icon),
327
285
  alt: alt || 'no-alt'
328
286
  });
329
287
  }
@@ -339,7 +297,7 @@ const prerenderIcon = function () {
339
297
  }
340
298
  try {
341
299
  icon = (0, _IconHelpers.iconCase)(icon);
342
- if (size && DefaultIconSizes[size] && size !== 'default' && !(parseFloat(size) > 0) && !icon.includes(size)) {
300
+ if (size && DefaultIconSizes[size] && size !== 'basis' && size !== 'default' && !(parseFloat(String(size)) > 0) && !icon.includes(size)) {
343
301
  icon = `${icon}_${size}`;
344
302
  }
345
303
  const mod = (listOfIcons.dnbIcons ? listOfIcons.dnbIcons : listOfIcons)[icon];
@@ -348,7 +306,12 @@ const prerenderIcon = function () {
348
306
  (0, _errorHelper.ErrorHandler)(`Icon '${icon}' did not exist!`);
349
307
  return null;
350
308
  }
351
- };
352
- exports.prerenderIcon = prerenderIcon;
309
+ }
310
+ function getIcon(props) {
311
+ if (props.icon) {
312
+ return props.icon;
313
+ }
314
+ return (0, _componentHelper.processChildren)(props);
315
+ }
353
316
  Icon._supportsSpacingProps = true;
354
317
  //# sourceMappingURL=Icon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_errorHelper","_componentHelper","_SpacingHelper","_SkeletonHelper","_Context","_IconHelpers","_excluded","_excluded2","obj","__esModule","default","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","i","Object","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","DefaultIconSize","exports","DefaultIconSizes","medium","ListDefaultIconSizes","ValidIconSizes","iconPropTypes","icon","PropTypes","oneOfType","string","node","func","modifier","size","number","oneOf","spacingPropTypes","width","height","border","bool","color","inherit_color","alt","title","skeleton","attributes","className","children","Icon","React","PureComponent","getIcon","props","processChildren","render","_this$context","extendPropsWithContextInClassComponent","defaultProps","context","wrapperParams","iconParams","prepareIcon","IconContainer","prerenderIcon","createElement","Fragment","Context","process","env","NODE_ENV","propTypes","getIconNameFromComponent","name","displayName","test","calcSize","sizeAsInt","sizeAsString","nameParts","split","lastPartOfIconName","reverse","potentialSize","_ref","reduce","acc","_ref2","includes","elem","viewBox","exec","parseFloat","_ref3","_ref4","_ref5","_ref6","potentialSizeAsString","_ref7","isCustomSize","params","prepareIconParams","_ref8","rest","validateDOMAttributes","label","role","replace","classnames","createSkeletonClass","createSpacingClasses","isTrue","iconToRender","listOfIcons","src","isValidElement","Array","isArray","iconCase","mod","dnbIcons","e","ErrorHandler","_supportsSpacingProps"],"sources":["../../../../src/components/icon/Icon.js"],"sourcesContent":["/**\n * Web Icon Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport { ErrorHandler } from '../../shared/error-helper'\nimport {\n isTrue,\n validateDOMAttributes,\n processChildren,\n extendPropsWithContextInClassComponent,\n} from '../../shared/component-helper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport { createSkeletonClass } from '../skeleton/SkeletonHelper'\nimport Context from '../../shared/Context'\nimport { iconCase } from './IconHelpers'\n\nexport const DefaultIconSize = 16\nexport const DefaultIconSizes = {\n // small: 8, // currently not in use\n default: 16,\n medium: 24,\n // large: 32 // currently not in use\n}\n// instead of using Object.entries(DefaultIconSizes)\nexport const ListDefaultIconSizes = [\n ['default', 16],\n ['medium', 24],\n]\nexport const ValidIconSizes = [\n 'small', // 12px 0.75rem\n 'default', // 16px 1rem\n 'medium', // 24px 1.5rem\n 'large', // 32px 2rem\n 'x-large', // 40px 2.5rem\n 'xx-large', // 48px 3rem\n]\n\nexport const iconPropTypes = {\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n modifier: PropTypes.string,\n size: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n PropTypes.oneOf(['default', 'medium', 'large']),\n ]),\n\n ...spacingPropTypes,\n\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n border: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n color: PropTypes.string,\n inherit_color: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n alt: PropTypes.string,\n title: PropTypes.string,\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n}\n\n/**\n * The icon component is a span wrapping an inline svg. When using this component in your preferred framework. To load an svg file dynamically, you may need a \"svg-loader\". Feel free to use whatever tool you want (regarding the setup/tooling), as long as the output is the same markup as shown below.\n */\nexport default class Icon extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n /**\n * Use spread, so generateTypes.js makes a valid copy to create the types\n */\n ...iconPropTypes,\n }\n\n static defaultProps = {\n icon: null,\n modifier: null,\n size: null,\n width: null,\n height: null,\n border: null,\n color: null,\n inherit_color: true,\n alt: null,\n title: null,\n skeleton: null,\n attributes: null,\n\n className: null,\n children: null,\n }\n\n static getIcon(props) {\n if (props.icon) {\n return props.icon\n }\n return processChildren(props)\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Icon.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.Icon\n )\n\n const { icon, size, wrapperParams, iconParams, alt } = prepareIcon(\n props,\n this.context\n )\n\n if (!icon) {\n return null\n }\n\n const IconContainer = prerenderIcon({ icon, size, alt })\n\n // make sure we return an empty span if we don't could get the icon\n if (!IconContainer) return <></>\n\n return (\n <span {...wrapperParams}>\n <IconContainer {...iconParams} />\n </span>\n )\n }\n}\n\nexport const getIconNameFromComponent = (icon) => {\n const name =\n typeof icon === 'string'\n ? icon\n : icon && (icon.displayName || icon.name)\n if (/^data:image\\//.test(name)) {\n return null\n }\n return name\n}\n\nexport const calcSize = (props) => {\n const { icon, size, width, height } = props\n\n let sizeAsInt = -1\n let sizeAsString = null\n\n // if there is no size, check if we can find the actual size in the name\n if (!size || size === DefaultIconSize) {\n // get the icon name - we use is for several things\n const name = getIconNameFromComponent(icon)\n\n const nameParts = String(name || '').split('_')\n\n if (nameParts.length > 1) {\n const lastPartOfIconName = nameParts.reverse()[0]\n const potentialSize = ListDefaultIconSizes.filter(\n ([key]) => key === lastPartOfIconName\n ).reduce((acc, [key, value]) => {\n return key && value\n }, null)\n if (potentialSize) {\n sizeAsInt = potentialSize\n }\n if (ValidIconSizes.includes(lastPartOfIconName)) {\n sizeAsString = lastPartOfIconName\n }\n } else {\n if (typeof icon === 'function') {\n const elem = icon()\n if (elem.props) {\n let potentialSize = -1\n if (elem.props.width) {\n potentialSize = elem.props.width\n }\n if (!potentialSize && elem.props.viewBox) {\n potentialSize = /[0-9]+ [0-9]+ ([0-9]+)/.exec(\n elem.props.viewBox\n )[1] // get the width\n }\n if (potentialSize) {\n sizeAsInt = potentialSize\n }\n }\n }\n }\n }\n\n // if size is defined as a string, find the size number\n else if (typeof size === 'string' && !(parseFloat(size) > 0)) {\n sizeAsInt = ListDefaultIconSizes.filter(\n ([key]) => key === size\n ).reduce((acc, [key, value]) => {\n return key && value\n }, -1)\n\n // of if the size is a default size defined as a string\n if (ValidIconSizes.includes(size)) {\n sizeAsString = size\n }\n }\n\n // check if the size is given as a number, and if is a default size\n else if (parseFloat(size) > 0) {\n sizeAsInt = ListDefaultIconSizes.filter(\n ([key, value]) => key && value === parseFloat(size)\n ).reduce((acc, [key, value]) => {\n if (key && value) return value\n return acc\n }, -1)\n\n // has custom size\n if (sizeAsInt === -1) {\n sizeAsInt = parseFloat(size)\n sizeAsString = 'custom-size'\n }\n }\n\n // check if the sizeAsInt is a default size - and no sizeAsString exists yet\n if (!sizeAsString && sizeAsInt > 0) {\n const potentialSizeAsString = ListDefaultIconSizes.reduce(\n (acc, [key, value]) => {\n if (key && value === sizeAsInt) {\n return key\n }\n return acc\n },\n null\n )\n\n if (potentialSizeAsString) {\n sizeAsString = potentialSizeAsString\n }\n }\n\n // define all the svg parameters\n const { sizeAsString: isCustomSize, params: iconParams } =\n prepareIconParams({\n sizeAsString,\n sizeAsInt,\n size,\n width,\n height,\n })\n if (isCustomSize) {\n sizeAsString = isCustomSize\n }\n\n if (!(sizeAsInt > 0)) {\n sizeAsInt = DefaultIconSize\n }\n\n if (size === 'auto') {\n iconParams.width = '100%'\n iconParams.height = '100%'\n sizeAsString = 'auto'\n }\n\n return {\n iconParams,\n sizeAsInt,\n sizeAsString,\n }\n}\n\nconst prepareIconParams = ({ sizeAsString, ...rest }) => {\n const { size, width, height, sizeAsInt } = rest\n const params = {}\n\n if (!sizeAsString && !(sizeAsInt > 0) && parseFloat(size) > -1) {\n params.width = params.height = parseFloat(size)\n } else if (sizeAsString === 'custom-size') {\n params.width = params.height = parseFloat(sizeAsInt)\n }\n if (parseFloat(width) > -1) {\n sizeAsString = 'custom-size'\n params.width = parseFloat(width)\n }\n if (parseFloat(height) > -1) {\n sizeAsString = 'custom-size'\n params.height = parseFloat(height)\n }\n\n validateDOMAttributes({}, params)\n\n return { params, sizeAsString }\n}\n\nexport const prepareIcon = (props, context) => {\n const {\n icon,\n size, // eslint-disable-line\n width,\n height,\n border,\n color,\n inherit_color,\n modifier,\n alt,\n title,\n skeleton,\n className,\n ...attributes\n } = props\n\n const { sizeAsString, iconParams } = calcSize({\n icon,\n size,\n width,\n height,\n })\n\n if (color) {\n iconParams.color = color\n }\n\n const label = icon ? getIconNameFromComponent(icon) : null\n\n // some wrapper params\n // also used for code markup simulation\n const wrapperParams = validateDOMAttributes(props, {\n role: alt ? 'img' : 'presentation',\n alt, // in case the image don't shows up (because we define the role to be img)\n 'aria-label':\n label && !label.includes('default')\n ? label.replace(/_/g, ' ') + ' icon'\n : null, // for screen readers only\n title, // to show on hover, if defined\n ...attributes,\n })\n if (!alt && typeof wrapperParams['aria-hidden'] === 'undefined') {\n wrapperParams['aria-hidden'] = true\n }\n if (wrapperParams['aria-hidden']) {\n if (\n !wrapperParams['data-testid'] &&\n typeof process !== 'undefined' &&\n process.env.NODE_ENV === 'test'\n ) {\n wrapperParams['data-testid'] = wrapperParams['aria-label']\n }\n delete wrapperParams['aria-label']\n }\n\n wrapperParams.className = classnames(\n 'dnb-icon',\n modifier && `dnb-icon--${modifier}`,\n isTrue(border) && 'dnb-icon--border',\n isTrue(inherit_color) && 'dnb-icon--inherit-color',\n sizeAsString ? `dnb-icon--${sizeAsString}` : 'dnb-icon--default',\n createSkeletonClass(null, skeleton, context),\n createSpacingClasses(props),\n className\n )\n\n let iconToRender = Icon.getIcon(props)\n\n if (iconToRender && typeof iconToRender.defaultProps !== 'undefined') {\n iconToRender = React.createElement(\n iconToRender,\n validateDOMAttributes(\n {},\n {\n color,\n icon,\n size,\n width,\n height,\n }\n )\n )\n }\n\n return {\n ...props,\n icon: iconToRender,\n alt,\n iconParams,\n wrapperParams,\n }\n}\n\nexport const prerenderIcon = ({\n icon,\n size = null,\n listOfIcons = null,\n alt = null,\n} = {}) => {\n if (typeof icon === 'string' && /^data:image\\//.test(icon)) {\n return () => <img src={icon} alt={alt || 'no-alt'} />\n }\n\n if (typeof icon === 'function') {\n const elem = icon()\n if (React.isValidElement(elem)) {\n return icon\n }\n return elem\n }\n\n if (React.isValidElement(icon) || Array.isArray(icon)) {\n return () => icon\n }\n\n // for importing react component\n try {\n icon = iconCase(icon)\n if (\n size &&\n DefaultIconSizes[size] &&\n size !== 'default' &&\n !(parseFloat(size) > 0) &&\n !icon.includes(size)\n ) {\n icon = `${icon}_${size}`\n }\n const mod = (\n listOfIcons.dnbIcons ? listOfIcons.dnbIcons : listOfIcons\n )[icon]\n return mod && mod.default ? mod.default : mod\n } catch (e) {\n ErrorHandler(`Icon '${icon}' did not exist!`)\n return null\n }\n}\n\nIcon._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"Icon.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_errorHelper","_componentHelper","_Context","_SpacingHelper","_SkeletonHelper","_IconHelpers","_excluded","_excluded2","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","DefaultIconSize","exports","DefaultIconSizes","medium","ListDefaultIconSizes","ValidIconType","Icon","localProps","context","useContext","Context","props","extendPropsWithContext","skeleton","icon","iconProp","size","wrapperParams","iconParams","alt","children","prepareIcon","IconContainer","prerenderIcon","createElement","Fragment","getIconNameFromComponent","name","test","calcSize","width","height","sizeAsInt","sizeAsString","nameParts","split","_ListDefaultIconSizes","_ListDefaultIconSizes2","lastPartOfIconName","reverse","potentialSize","_ref","includes","elem","viewBox","parseFloat","exec","isNaN","_ListDefaultIconSizes3","_ListDefaultIconSizes4","_ListDefaultIconSizes5","_ref2","_ListDefaultIconSizes6","_ListDefaultIconSizes7","_ListDefaultIconSizes8","_ref3","potentialSizeAsString","reduce","acc","_ref4","isCustomSize","params","prepareIconParams","_ref5","rest","validateDOMAttributes","border","color","inheritColor","inherit_color","modifier","title","className","attributes","label","role","replace","process","env","NODE_ENV","classnames","createSkeletonClass","createSpacingClasses","iconToRender","getIcon","defaultProps","React","listOfIcons","src","isValidElement","Array","isArray","iconCase","mod","dnbIcons","e","ErrorHandler","processChildren","_supportsSpacingProps"],"sources":["../../../../src/components/icon/Icon.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport { ErrorHandler } from '../../shared/error-helper'\nimport {\n validateDOMAttributes,\n processChildren,\n extendPropsWithContext,\n} from '../../shared/component-helper'\nimport Context, { ContextProps } from '../../shared/Context'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport { createSkeletonClass } from '../skeleton/SkeletonHelper'\nimport { iconCase } from './IconHelpers'\nimport { SpacingProps } from '../../shared/types'\nimport { SkeletonShow } from '../Skeleton'\n\nexport const DefaultIconSize = 16\nexport const DefaultIconSizes = {\n // small: 8, // currently not in use\n default: 16,\n medium: 24,\n // large: 32 // currently not in use\n} as const\nexport const ListDefaultIconSizes: Array<\n [ValidIconType, ValidIconNumericSize]\n> = [\n ['default', 16],\n ['medium', 24],\n]\nexport const ValidIconType = [\n 'small', // 12px 0.75rem\n 'default', // 16px 1rem\n 'medium', // 24px 1.5rem\n 'large', // 32px 2rem\n 'x-large', // 40px 2.5rem\n 'xx-large', // 48px 3rem\n] as const\n\nexport type DefaultIconSizes = typeof DefaultIconSizes\nexport type ValidIconType = (typeof ValidIconType)[number]\nexport type ValidIconNumericSize = DefaultIconSizes[keyof DefaultIconSizes]\n\n/** For internal usage */\ntype IconType =\n | string\n | React.ReactElement<SVGElement>\n | ((props?: unknown) => JSX.Element)\n | false\n\n/** For external usage */\nexport type IconIcon = IconType | React.FC<unknown>\n\nexport type IconSize =\n | ValidIconNumericSize\n | `${ValidIconNumericSize | number}`\n | ValidIconType\n | 'auto'\n | 'basis'\n\nexport type IconColor =\n | string\n | number\n | { [key: string]: string | number }\n\nexport type IconProps = {\n /**\n * A React SVG Component or the icon name (in case we use `IconPrimary` or `dnb-icon-primary`).\n */\n icon?: IconIcon\n\n /**\n * The dimension of the icon. This will be the `viewBox` and represent `width` and `height`. Defaults to `16`. You can use `small`,`medium`, `large` or `auto`. Auto will enable that the icon size gets inherited by the parent HTML element if it provides a `font-size`.\n */\n size?: IconSize\n\n /**\n * The color can be any valid color property, such as Hex, RGB or preferable – any CSS variable from the <a href=\"/uilib/usage/customisation/colors\">colors table</a>, e.g. `var(--color-ocean-green)`. Default is no color, which means `--color-black-80`.\n */\n color?: IconColor\n\n /**\n * Defaults to `true`. Set to `false` if you do not want to inherit the color by `currentColor`.\n */\n inheritColor?: boolean\n\n /** @deprecated Use `inheritColor` instead */\n inherit_color?: boolean\n\n /**\n * The alternative label (text version) of the icon. Defaults to the imported icon name.\n */\n alt?: string\n\n /**\n * Use a title to provide extra information about the icon used.\n */\n title?: string\n\n /**\n * If set to `true`, an overlaying skeleton with animation will be shown.\n */\n skeleton?: SkeletonShow\n\n /**\n * Modifier class to define. Will result in: `dnb-icon--${modifier}`.\n */\n modifier?: string\n\n border?: boolean\n width?: `${IconSize}` | `${number}%` | number\n height?: `${IconSize}` | `${number}%` | number\n children?: IconIcon\n}\n\nexport type IconAllProps = IconProps &\n SpacingProps &\n Omit<React.HTMLProps<HTMLElement>, 'size' | 'children'>\n\nexport default function Icon(localProps: IconAllProps) {\n const context = useContext(Context)\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContext(\n localProps,\n {},\n { skeleton: context?.skeleton },\n context.Icon\n )\n\n // Todo: rewrite prepareIcon to hook\n const {\n icon: iconProp,\n size,\n wrapperParams,\n iconParams,\n alt,\n children,\n } = prepareIcon(props, context)\n const icon = iconProp ?? children\n\n if (!icon) {\n return null\n }\n\n const IconContainer = prerenderIcon({ icon, size, alt })\n\n // make sure we return an empty span if we couldn't get the icon\n if (!IconContainer) {\n return <></>\n }\n\n return (\n <span {...wrapperParams}>\n <IconContainer {...iconParams} />\n </span>\n )\n}\n\nexport function getIconNameFromComponent(icon: IconProps['icon']): string {\n const name = typeof icon === 'function' ? icon.name : String(icon)\n if (/^data:image\\//.test(name)) {\n return null\n }\n return name\n}\n\nexport function calcSize(props: IconProps) {\n const { icon, size, width, height } = props as Omit<\n IconProps,\n 'icon'\n > & { icon: IconType }\n\n let sizeAsInt: ValidIconNumericSize | -1 = null\n let sizeAsString = null\n\n // if there is no size, check if we can find the actual size in the name\n if (!size || size === DefaultIconSize) {\n // get the icon name - we use it for several things\n const name = getIconNameFromComponent(icon)\n\n const nameParts = String(name || '').split('_')\n\n if (nameParts.length > 1) {\n const lastPartOfIconName = nameParts.reverse()[0] as ValidIconType\n const potentialSize = ListDefaultIconSizes.filter(\n ([key]) => key === lastPartOfIconName\n )?.[0]?.[1]\n if (potentialSize) {\n sizeAsInt = potentialSize\n }\n if (ValidIconType.includes(lastPartOfIconName)) {\n sizeAsString = lastPartOfIconName\n }\n } else {\n if (typeof icon === 'function') {\n const elem = icon()\n if (elem.props) {\n let potentialSize: ValidIconNumericSize | -1 = null\n if (elem.props.width) {\n potentialSize = elem.props.width\n }\n if (!potentialSize && elem.props.viewBox) {\n potentialSize = parseFloat(\n /[0-9]+ [0-9]+ ([0-9]+)/.exec(elem.props.viewBox)[1]\n ) as ValidIconNumericSize // get the width\n }\n if (!isNaN(potentialSize)) {\n sizeAsInt = potentialSize\n }\n }\n }\n }\n }\n\n // if size is defined as a string, find the size number\n else if (typeof size === 'string' && !(parseFloat(size) > 0)) {\n sizeAsInt =\n ListDefaultIconSizes.filter(([key]) => key === size)?.[0]?.[1] ?? -1\n\n // or if the size is a default size defined as a string\n if (ValidIconType.includes(size as ValidIconType)) {\n sizeAsString = size\n }\n }\n\n // check if the size is given as a number, and if it's a default size\n else if (parseFloat(String(size)) > 0) {\n sizeAsInt =\n ListDefaultIconSizes.filter(\n ([key, value]) => key && value === parseFloat(String(size))\n )?.[0]?.[1] ?? -1\n\n // has custom size\n if (sizeAsInt === -1) {\n sizeAsInt = parseFloat(String(size)) as ValidIconNumericSize\n sizeAsString = 'custom-size'\n }\n }\n\n // check if the sizeAsInt is a default size - and no sizeAsString exists yet\n if (!sizeAsString && sizeAsInt > 0) {\n const potentialSizeAsString = ListDefaultIconSizes.reduce(\n (acc, [key, value]) => {\n if (key && value === sizeAsInt) {\n return key\n }\n return acc\n },\n null\n )\n\n if (potentialSizeAsString) {\n sizeAsString = potentialSizeAsString\n }\n }\n\n // define all the svg parameters\n const { sizeAsString: isCustomSize, params: iconParams } =\n prepareIconParams({\n sizeAsString,\n sizeAsInt,\n size,\n width,\n height,\n })\n\n if (isCustomSize) {\n sizeAsString = isCustomSize\n }\n\n if (!(sizeAsInt > 0)) {\n sizeAsInt = DefaultIconSize\n }\n\n if (size === 'auto') {\n iconParams.width = '100%'\n iconParams.height = '100%'\n sizeAsString = 'auto'\n }\n\n return {\n iconParams,\n sizeAsInt,\n sizeAsString,\n }\n}\n\nfunction prepareIconParams({\n sizeAsString,\n ...rest\n}: Omit<IconProps, 'icon'> & {\n sizeAsString?: ValidIconType | 'custom-size'\n sizeAsInt?: ValidIconNumericSize | -1\n}) {\n const { size, width, height, sizeAsInt } = rest\n const params: {\n height?: IconProps['height']\n width?: IconProps['width']\n color?: IconProps['color']\n } = {}\n\n if (!sizeAsString && !(sizeAsInt > 0) && parseFloat(String(size)) > -1) {\n params.width = params.height = parseFloat(String(size))\n } else if (sizeAsString === 'custom-size') {\n params.width = params.height = parseFloat(String(sizeAsInt))\n }\n if (parseFloat(String(width)) > -1) {\n sizeAsString = 'custom-size'\n params.width = parseFloat(String(width))\n }\n if (parseFloat(String(height)) > -1) {\n sizeAsString = 'custom-size'\n params.height = parseFloat(String(height))\n }\n\n validateDOMAttributes({}, params)\n\n return { params, sizeAsString }\n}\n\nexport function prepareIcon(props: IconAllProps, context: ContextProps) {\n const {\n icon,\n size,\n width,\n height,\n border,\n color,\n inheritColor,\n inherit_color,\n modifier,\n alt,\n title,\n skeleton,\n className,\n ...attributes\n } = props\n\n const { sizeAsString, iconParams } = calcSize({\n icon,\n size,\n width,\n height,\n })\n\n if (color) {\n iconParams.color = color\n }\n\n const label = icon ? getIconNameFromComponent(icon) : null\n\n // some wrapper params\n // also used for code markup simulation\n const wrapperParams = validateDOMAttributes(props, {\n role: alt ? 'img' : 'presentation',\n alt, // in case the image don't shows up (because we define the role to be img)\n 'aria-label':\n label && !label.includes('default')\n ? label.replace(/_/g, ' ') + ' icon'\n : null, // for screen readers only\n title, // to show on hover, if defined\n ...attributes,\n })\n if (!alt && typeof wrapperParams['aria-hidden'] === 'undefined') {\n wrapperParams['aria-hidden'] = true\n }\n if (wrapperParams['aria-hidden']) {\n if (\n !wrapperParams['data-testid'] &&\n typeof process !== 'undefined' &&\n process.env.NODE_ENV === 'test'\n ) {\n wrapperParams['data-testid'] = wrapperParams['aria-label']\n }\n delete wrapperParams['aria-label']\n }\n\n wrapperParams.className = classnames(\n 'dnb-icon',\n modifier && `dnb-icon--${modifier}`,\n border && 'dnb-icon--border',\n (inheritColor ?? inherit_color) !== false && 'dnb-icon--inherit-color',\n sizeAsString ? `dnb-icon--${sizeAsString}` : 'dnb-icon--default',\n createSkeletonClass(null, skeleton, context),\n createSpacingClasses(props),\n className\n )\n\n let iconToRender = getIcon(props)\n\n if (iconToRender && typeof iconToRender.defaultProps !== 'undefined') {\n iconToRender = React.createElement(\n iconToRender,\n validateDOMAttributes(\n {},\n {\n color,\n icon,\n size,\n width,\n height,\n }\n )\n )\n }\n\n return {\n ...props,\n icon: iconToRender,\n alt,\n iconParams,\n wrapperParams,\n }\n}\n\nexport function prerenderIcon(\n props: IconProps & {\n listOfIcons?: Record<string, IconIcon>\n }\n) {\n const { size = null, listOfIcons = null, alt = null } = props\n let { icon } = props as Omit<IconProps, 'icon'> & { icon: IconType }\n\n if (typeof icon === 'string' && /^data:image\\//.test(icon)) {\n return () => <img src={String(icon)} alt={alt || 'no-alt'} />\n }\n\n if (typeof icon === 'function') {\n const elem = icon()\n if (React.isValidElement(elem)) {\n return icon\n }\n return elem\n }\n\n if (React.isValidElement(icon) || Array.isArray(icon)) {\n return () => icon\n }\n\n // For UMD/ dynamic import of icons\n try {\n icon = iconCase(icon)\n if (\n size &&\n DefaultIconSizes[size] &&\n size !== 'basis' &&\n size !== 'default' &&\n !(parseFloat(String(size)) > 0) &&\n !icon.includes(size as ValidIconType)\n ) {\n icon = `${icon}_${size}`\n }\n const mod = (\n listOfIcons.dnbIcons ? listOfIcons.dnbIcons : listOfIcons\n )[icon]\n return mod && mod.default ? mod.default : mod\n } catch (e) {\n ErrorHandler(`Icon '${icon}' did not exist!`)\n return null\n }\n}\n\nfunction getIcon(props) {\n if (props.icon) {\n return props.icon\n }\n return processChildren(props)\n}\n\nIcon._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -1 +1,2 @@
1
- export function iconCase(name: any): any;
1
+ import { IconIcon } from './Icon';
2
+ export declare const iconCase: (name: IconIcon) => string;
@@ -4,6 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.iconCase = void 0;
7
- const iconCase = name => name.replace(/((?!^)[A-Z])/g, '_$1').toLowerCase().replace(/^[0-9]/g, '$1').replace(/[^a-z0-9_]/gi, '_');
7
+ const iconCase = name => String(name).replace(/((?!^)[A-Z])/g, '_$1').toLowerCase().replace(/^[0-9]/g, '$1').replace(/[^a-z0-9_]/gi, '_');
8
8
  exports.iconCase = iconCase;
9
9
  //# sourceMappingURL=IconHelpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IconHelpers.js","names":["iconCase","name","replace","toLowerCase","exports"],"sources":["../../../../src/components/icon/IconHelpers.js"],"sourcesContent":["// to replace icon names\nexport const iconCase = (name) =>\n name\n .replace(/((?!^)[A-Z])/g, '_$1')\n .toLowerCase()\n .replace(/^[0-9]/g, '$1')\n .replace(/[^a-z0-9_]/gi, '_')\n"],"mappings":";;;;;;AACO,MAAMA,QAAQ,GAAIC,IAAI,IAC3BA,IAAI,CACDC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAC/BC,WAAW,CAAC,CAAC,CACbD,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CACxBA,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC;AAAAE,OAAA,CAAAJ,QAAA,GAAAA,QAAA"}
1
+ {"version":3,"file":"IconHelpers.js","names":["iconCase","name","String","replace","toLowerCase","exports"],"sources":["../../../../src/components/icon/IconHelpers.ts"],"sourcesContent":["import { IconIcon } from './Icon'\n\n// to replace icon names\nexport const iconCase = (name: IconIcon) =>\n String(name)\n .replace(/((?!^)[A-Z])/g, '_$1')\n .toLowerCase()\n .replace(/^[0-9]/g, '$1')\n .replace(/[^a-z0-9_]/gi, '_')\n"],"mappings":";;;;;;AAGO,MAAMA,QAAQ,GAAIC,IAAc,IACrCC,MAAM,CAACD,IAAI,CAAC,CACTE,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAC/BC,WAAW,CAAC,CAAC,CACbD,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CACxBA,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC;AAAAE,OAAA,CAAAL,QAAA,GAAAA,QAAA"}
@@ -1,3 +1,3 @@
1
- export default IconPrimary;
2
- export * from "../icon-primary/IconPrimary";
3
1
  import IconPrimary from '../icon-primary/IconPrimary';
2
+ export default IconPrimary;
3
+ export * from '../icon-primary/IconPrimary';
@@ -1 +1 @@
1
- {"version":3,"file":"IconPrimary.js","names":["_IconPrimary","_interopRequireWildcard","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","_default","IconPrimary"],"sources":["../../../../src/components/icon/IconPrimary.js"],"sourcesContent":["import IconPrimary from '../icon-primary/IconPrimary'\nexport default IconPrimary\nexport * from '../icon-primary/IconPrimary'\n"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEAC,MAAA,CAAAC,IAAA,CAAAJ,YAAA,EAAAK,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAN,YAAA,CAAAM,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAd,YAAA,CAAAM,GAAA;IAAA;EAAA;AAAA;AAA2C,SAAAS,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAf,wBAAAmB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAT,GAAA,CAAAM,GAAA,SAAAK,MAAA,WAAAC,qBAAA,GAAAvB,MAAA,CAAAS,cAAA,IAAAT,MAAA,CAAAwB,wBAAA,WAAArB,GAAA,IAAAc,GAAA,QAAAd,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAW,GAAA,EAAAd,GAAA,SAAAsB,IAAA,GAAAF,qBAAA,GAAAvB,MAAA,CAAAwB,wBAAA,CAAAP,GAAA,EAAAd,GAAA,cAAAsB,IAAA,KAAAA,IAAA,CAAAd,GAAA,IAAAc,IAAA,CAAAC,GAAA,KAAA1B,MAAA,CAAAS,cAAA,CAAAa,MAAA,EAAAnB,GAAA,EAAAsB,IAAA,YAAAH,MAAA,CAAAnB,GAAA,IAAAc,GAAA,CAAAd,GAAA,SAAAmB,MAAA,CAAAH,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAM,GAAA,CAAAT,GAAA,EAAAK,MAAA,YAAAA,MAAA;AAAA,IAAAK,QAAA,GAD5BC,oBAAW;AAAApB,OAAA,CAAAW,OAAA,GAAAQ,QAAA"}
1
+ {"version":3,"file":"IconPrimary.js","names":["_IconPrimary","_interopRequireWildcard","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","_default","IconPrimary"],"sources":["../../../../src/components/icon/IconPrimary.ts"],"sourcesContent":["import IconPrimary from '../icon-primary/IconPrimary'\nexport default IconPrimary\nexport * from '../icon-primary/IconPrimary'\n"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEAC,MAAA,CAAAC,IAAA,CAAAJ,YAAA,EAAAK,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAN,YAAA,CAAAM,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAd,YAAA,CAAAM,GAAA;IAAA;EAAA;AAAA;AAA2C,SAAAS,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAf,wBAAAmB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAT,GAAA,CAAAM,GAAA,SAAAK,MAAA,WAAAC,qBAAA,GAAAvB,MAAA,CAAAS,cAAA,IAAAT,MAAA,CAAAwB,wBAAA,WAAArB,GAAA,IAAAc,GAAA,QAAAd,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAW,GAAA,EAAAd,GAAA,SAAAsB,IAAA,GAAAF,qBAAA,GAAAvB,MAAA,CAAAwB,wBAAA,CAAAP,GAAA,EAAAd,GAAA,cAAAsB,IAAA,KAAAA,IAAA,CAAAd,GAAA,IAAAc,IAAA,CAAAC,GAAA,KAAA1B,MAAA,CAAAS,cAAA,CAAAa,MAAA,EAAAnB,GAAA,EAAAsB,IAAA,YAAAH,MAAA,CAAAnB,GAAA,IAAAc,GAAA,CAAAd,GAAA,SAAAmB,MAAA,CAAAH,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAM,GAAA,CAAAT,GAAA,EAAAK,MAAA,YAAAA,MAAA;AAAA,IAAAK,QAAA,GAD5BC,oBAAW;AAAApB,OAAA,CAAAW,OAAA,GAAAQ,QAAA"}
@@ -1,12 +1,9 @@
1
- import * as React from 'react';
2
- import type { IconProps } from '../Icon';
3
- export interface IconPrimaryProps
4
- extends IconProps,
5
- Omit<React.HTMLProps<HTMLElement>, 'size' | 'ref'> {}
6
- export default class IconPrimary extends React.Component<
7
- IconPrimaryProps,
8
- any
9
- > {
10
- static defaultProps: object;
11
- render(): JSX.Element;
1
+ import { IconAllProps, IconProps } from '../icon/Icon';
2
+ export * from '../icon/Icon';
3
+ export type IconPrimaryProps = IconProps;
4
+ export type IconPrimaryAllProps = IconAllProps;
5
+ declare function IconPrimary(localProps: IconAllProps): import("react/jsx-runtime").JSX.Element;
6
+ declare namespace IconPrimary {
7
+ var _supportsSpacingProps: boolean;
12
8
  }
9
+ export default IconPrimary;