@dnb/eufemia 10.62.3 → 10.63.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 (946) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/cjs/components/accordion/Accordion.d.ts +1 -125
  3. package/cjs/components/accordion/Accordion.js +0 -1
  4. package/cjs/components/accordion/Accordion.js.map +1 -1
  5. package/cjs/components/autocomplete/Autocomplete.js +3 -2
  6. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  7. package/cjs/components/button/Button.d.ts +3 -6
  8. package/cjs/components/button/Button.js +8 -18
  9. package/cjs/components/button/Button.js.map +1 -1
  10. package/cjs/components/button/ButtonDocs.d.ts +2 -0
  11. package/cjs/components/button/ButtonDocs.js +135 -0
  12. package/cjs/components/button/ButtonDocs.js.map +1 -0
  13. package/cjs/components/card/Card.js +2 -1
  14. package/cjs/components/card/Card.js.map +1 -1
  15. package/cjs/components/date-picker/DatePicker.d.ts +4 -0
  16. package/cjs/components/date-picker/DatePicker.js +24 -10
  17. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  18. package/cjs/components/date-picker/DatePickerDocs.js +5 -0
  19. package/cjs/components/date-picker/DatePickerDocs.js.map +1 -1
  20. package/cjs/components/date-picker/DatePickerPortal.d.ts +9 -0
  21. package/cjs/components/date-picker/DatePickerPortal.js +61 -0
  22. package/cjs/components/date-picker/DatePickerPortal.js.map +1 -0
  23. package/cjs/components/date-picker/style/dnb-date-picker.css +64 -55
  24. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  25. package/cjs/components/date-picker/style/dnb-date-picker.scss +90 -75
  26. package/cjs/components/form-row/FormRow.js +2 -7
  27. package/cjs/components/form-row/FormRow.js.map +1 -1
  28. package/cjs/components/form-row/style/dnb-form-row.css +3 -3
  29. package/cjs/components/form-row/style/dnb-form-row.min.css +1 -1
  30. package/cjs/components/form-status/FormStatus.js +17 -19
  31. package/cjs/components/form-status/FormStatus.js.map +1 -1
  32. package/cjs/components/height-animation/HeightAnimationInstance.d.ts +1 -0
  33. package/cjs/components/height-animation/HeightAnimationInstance.js +26 -1
  34. package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
  35. package/cjs/components/input-masked/InputMasked.d.ts +1 -1
  36. package/cjs/components/input-masked/InputMasked.js +2 -2
  37. package/cjs/components/input-masked/InputMasked.js.map +1 -1
  38. package/cjs/components/input-masked/InputMaskedDocs.js +1 -1
  39. package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -1
  40. package/cjs/components/input-masked/InputMaskedHooks.js +1 -1
  41. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  42. package/cjs/components/input-masked/InputMaskedUtils.js +1 -1
  43. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  44. package/cjs/components/input-masked/style/dnb-input-masked.css +3 -3
  45. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  46. package/cjs/components/pagination/Pagination.d.ts +12 -0
  47. package/cjs/components/pagination/Pagination.js +7 -3
  48. package/cjs/components/pagination/Pagination.js.map +1 -1
  49. package/cjs/components/pagination/PaginationBar.d.ts +2 -1
  50. package/cjs/components/pagination/PaginationBar.js +10 -3
  51. package/cjs/components/pagination/PaginationBar.js.map +1 -1
  52. package/cjs/components/radio/style/dnb-radio.css +3 -3
  53. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  54. package/cjs/components/space/style/dnb-space.css +4 -4
  55. package/cjs/components/space/style/dnb-space.min.css +1 -1
  56. package/cjs/components/space/style/dnb-space.scss +2 -12
  57. package/cjs/components/space/style/space-mixins.scss +21 -0
  58. package/cjs/components/tabs/Tabs.d.ts +1 -1
  59. package/cjs/components/tabs/Tabs.js +4 -12
  60. package/cjs/components/tabs/Tabs.js.map +1 -1
  61. package/cjs/components/toggle-button/ToggleButton.d.ts +9 -5
  62. package/cjs/components/toggle-button/ToggleButton.js +2 -0
  63. package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
  64. package/cjs/components/toggle-button/ToggleButtonDocs.d.ts +2 -0
  65. package/cjs/components/toggle-button/ToggleButtonDocs.js +87 -0
  66. package/cjs/components/toggle-button/ToggleButtonDocs.js.map +1 -0
  67. package/cjs/components/toggle-button/ToggleButtonGroup.d.ts +21 -6
  68. package/cjs/components/toggle-button/ToggleButtonGroupDocs.d.ts +2 -0
  69. package/cjs/components/toggle-button/ToggleButtonGroupDocs.js +90 -0
  70. package/cjs/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -0
  71. package/cjs/components/toggle-button/style/dnb-toggle-button.css +3 -3
  72. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  73. package/cjs/elements/blockquote/style/blockquote-mixins.scss +5 -3
  74. package/cjs/elements/code/style/code-mixins.scss +2 -3
  75. package/cjs/elements/hr/style/hr-mixins.scss +2 -3
  76. package/cjs/elements/img/style/img-mixins.scss +3 -3
  77. package/cjs/elements/lists/style/lists-mixins.scss +3 -6
  78. package/cjs/elements/typography/style/typography-mixins.scss +2 -3
  79. package/cjs/extensions/forms/DataContext/Context.d.ts +15 -4
  80. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  81. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
  82. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  83. package/cjs/extensions/forms/DataContext/Provider/Provider.js +28 -17
  84. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  85. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
  86. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  87. package/cjs/extensions/forms/Field/Date/Date.js +5 -4
  88. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  89. package/cjs/extensions/forms/Field/Expiry/Expiry.js +4 -3
  90. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  91. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
  92. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  93. package/cjs/extensions/forms/Field/Number/Number.js +2 -2
  94. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  95. package/cjs/extensions/forms/Field/Option/Option.d.ts +2 -1
  96. package/cjs/extensions/forms/Field/Option/Option.js +2 -14
  97. package/cjs/extensions/forms/Field/Option/Option.js.map +1 -1
  98. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +10 -5
  99. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  100. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +4 -3
  101. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +12 -4
  102. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  103. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +8 -1
  104. package/cjs/extensions/forms/Field/Selection/Selection.js +19 -12
  105. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  106. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js +5 -0
  107. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  108. package/cjs/extensions/forms/Field/Slider/Slider.js +4 -3
  109. package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -1
  110. package/cjs/extensions/forms/Field/String/String.js +2 -2
  111. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  112. package/cjs/extensions/forms/Field/Toggle/Toggle.js +14 -4
  113. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  114. package/cjs/extensions/forms/Field/Upload/Upload.js +21 -21
  115. package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
  116. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +14 -38
  117. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  118. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  119. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  120. package/cjs/extensions/forms/Form/Isolation/Isolation.js +17 -3
  121. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  122. package/cjs/extensions/forms/Form/MainHeading/MainHeadingDocs.d.ts +2 -0
  123. package/cjs/extensions/forms/Form/MainHeading/MainHeadingDocs.js +27 -0
  124. package/cjs/extensions/forms/Form/MainHeading/MainHeadingDocs.js.map +1 -0
  125. package/cjs/extensions/forms/Form/Section/EditContainer/CancelButton.js +7 -18
  126. package/cjs/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -1
  127. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.css +0 -10
  128. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  129. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.scss +1 -12
  130. package/cjs/extensions/forms/Form/SubHeading/SubHeadingDocs.d.ts +2 -0
  131. package/cjs/extensions/forms/Form/SubHeading/SubHeadingDocs.js +27 -0
  132. package/cjs/extensions/forms/Form/SubHeading/SubHeadingDocs.js.map +1 -0
  133. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +11 -1
  134. package/cjs/extensions/forms/Form/Visibility/Visibility.js +18 -10
  135. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  136. package/cjs/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -0
  137. package/cjs/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  138. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  139. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  140. package/cjs/extensions/forms/Form/Visibility/useVisibility.js +18 -9
  141. package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  142. package/cjs/extensions/forms/Form/data-context/useValidation.d.ts +2 -1
  143. package/cjs/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  144. package/cjs/extensions/forms/Iterate/Array/Array.js +49 -29
  145. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  146. package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js +14 -4
  147. package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  148. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js +2 -1
  149. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  150. package/cjs/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +2 -0
  151. package/cjs/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -1
  152. package/cjs/extensions/forms/Iterate/Array/types.d.ts +8 -3
  153. package/cjs/extensions/forms/Iterate/Array/types.js.map +1 -1
  154. package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -15
  155. package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
  156. package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.js +10 -1
  157. package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
  158. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -3
  159. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  160. package/cjs/extensions/forms/Iterate/ItemNo/useIItemNo.d.ts +5 -0
  161. package/cjs/extensions/forms/Iterate/ItemNo/useIItemNo.js +50 -0
  162. package/cjs/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +1 -0
  163. package/cjs/extensions/forms/Iterate/IterateItemContext.d.ts +2 -0
  164. package/cjs/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
  165. package/cjs/extensions/forms/Iterate/PushButton/PushButton.d.ts +1 -0
  166. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +16 -14
  167. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  168. package/cjs/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
  169. package/cjs/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
  170. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +17 -1
  171. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +32 -16
  172. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  173. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +1 -0
  174. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -1
  175. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +10 -0
  176. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  177. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +7 -6
  178. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  179. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js +3 -2
  180. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  181. package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -0
  182. package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
  183. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -3
  184. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  185. package/cjs/extensions/forms/Iterate/Visibility/Visibility.d.ts +7 -0
  186. package/cjs/extensions/forms/Iterate/Visibility/Visibility.js +31 -0
  187. package/cjs/extensions/forms/Iterate/Visibility/Visibility.js.map +1 -0
  188. package/cjs/extensions/forms/Iterate/Visibility/index.d.ts +2 -0
  189. package/cjs/extensions/forms/Iterate/Visibility/index.js +27 -0
  190. package/cjs/extensions/forms/Iterate/Visibility/index.js.map +1 -0
  191. package/cjs/extensions/forms/Iterate/hooks/index.d.ts +1 -0
  192. package/cjs/extensions/forms/Iterate/hooks/index.js +7 -0
  193. package/cjs/extensions/forms/Iterate/hooks/index.js.map +1 -1
  194. package/cjs/extensions/forms/Iterate/hooks/useArrayLimit.d.ts +1 -3
  195. package/cjs/extensions/forms/Iterate/hooks/useArrayLimit.js +1 -4
  196. package/cjs/extensions/forms/Iterate/hooks/useArrayLimit.js.map +1 -1
  197. package/cjs/extensions/forms/Iterate/hooks/useItemPath.d.ts +4 -0
  198. package/cjs/extensions/forms/Iterate/hooks/useItemPath.js +22 -0
  199. package/cjs/extensions/forms/Iterate/hooks/useItemPath.js.map +1 -0
  200. package/cjs/extensions/forms/Iterate/hooks/useSwitchContainerMode.d.ts +1 -3
  201. package/cjs/extensions/forms/Iterate/hooks/useSwitchContainerMode.js +1 -4
  202. package/cjs/extensions/forms/Iterate/hooks/useSwitchContainerMode.js.map +1 -1
  203. package/cjs/extensions/forms/Iterate/index.d.ts +1 -0
  204. package/cjs/extensions/forms/Iterate/index.js +7 -0
  205. package/cjs/extensions/forms/Iterate/index.js.map +1 -1
  206. package/cjs/extensions/forms/Iterate/style/dnb-iterate.css +16 -0
  207. package/cjs/extensions/forms/Iterate/style/dnb-iterate.min.css +1 -1
  208. package/cjs/extensions/forms/Iterate/style/dnb-iterate.scss +25 -2
  209. package/cjs/extensions/forms/Tools/GenerateSchema.js +15 -9
  210. package/cjs/extensions/forms/Tools/GenerateSchema.js.map +1 -1
  211. package/cjs/extensions/forms/Tools/ListAllProps.js +11 -7
  212. package/cjs/extensions/forms/Tools/ListAllProps.js.map +1 -1
  213. package/cjs/extensions/forms/Tools/Log.js +2 -1
  214. package/cjs/extensions/forms/Tools/Log.js.map +1 -1
  215. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js +4 -4
  216. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  217. package/cjs/extensions/forms/Value/Selection/Selection.js +5 -5
  218. package/cjs/extensions/forms/Value/Selection/Selection.js.map +1 -1
  219. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +25 -7
  220. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  221. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +6 -1
  222. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  223. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +22 -10
  224. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +6 -3
  225. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  226. package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +2 -1
  227. package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +4 -3
  228. package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
  229. package/cjs/extensions/forms/hooks/DataValueWritePropsDocs.js +9 -9
  230. package/cjs/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -1
  231. package/cjs/extensions/forms/hooks/useDataValue.d.ts +2 -2
  232. package/cjs/extensions/forms/hooks/useDataValue.js +5 -9
  233. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  234. package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -1
  235. package/cjs/extensions/forms/hooks/useFieldProps.d.ts +8 -2
  236. package/cjs/extensions/forms/hooks/useFieldProps.js +164 -76
  237. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  238. package/cjs/extensions/forms/hooks/usePath.js.map +1 -1
  239. package/cjs/extensions/forms/hooks/useValueProps.js +5 -5
  240. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  241. package/cjs/extensions/forms/style/dnb-forms.css +25 -14
  242. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  243. package/cjs/extensions/forms/types.d.ts +33 -6
  244. package/cjs/extensions/forms/types.js.map +1 -1
  245. package/cjs/extensions/forms/utils/json-pointer/json-pointer.js +8 -0
  246. package/cjs/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -1
  247. package/cjs/extensions/payment-card/PaymentCard.js +3 -12
  248. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  249. package/cjs/fragments/drawer-list/DrawerList.d.ts +4 -2
  250. package/cjs/fragments/drawer-list/DrawerList.js +33 -47
  251. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  252. package/cjs/fragments/drawer-list/DrawerListDocs.js +3 -3
  253. package/cjs/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  254. package/cjs/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
  255. package/cjs/shared/AlignmentHelper.js +0 -4
  256. package/cjs/shared/AlignmentHelper.js.map +1 -1
  257. package/cjs/shared/Eufemia.d.ts +1 -1
  258. package/cjs/shared/Eufemia.js +2 -2
  259. package/cjs/shared/Eufemia.js.map +1 -1
  260. package/cjs/shared/component-helper.js +2 -1
  261. package/cjs/shared/component-helper.js.map +1 -1
  262. package/cjs/style/core/scopes.scss +1 -1
  263. package/cjs/style/core/utilities.scss +3 -12
  264. package/cjs/style/dnb-ui-basis.css +1 -1
  265. package/cjs/style/dnb-ui-basis.min.css +1 -1
  266. package/cjs/style/dnb-ui-body.css +1 -1
  267. package/cjs/style/dnb-ui-body.min.css +1 -1
  268. package/cjs/style/dnb-ui-components.css +106 -86
  269. package/cjs/style/dnb-ui-components.min.css +4 -4
  270. package/cjs/style/dnb-ui-core.css +1 -1
  271. package/cjs/style/dnb-ui-core.min.css +1 -1
  272. package/cjs/style/dnb-ui-elements.css +151 -31
  273. package/cjs/style/dnb-ui-elements.min.css +1 -1
  274. package/cjs/style/dnb-ui-extensions.css +25 -14
  275. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  276. package/cjs/style/dnb-ui-forms.css +25 -14
  277. package/cjs/style/dnb-ui-forms.min.css +1 -1
  278. package/cjs/style/dnb-ui-fragments.css +1 -1
  279. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  280. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +151 -31
  281. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  282. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +131 -100
  283. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  284. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +151 -31
  285. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  286. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +25 -14
  287. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  288. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +25 -14
  289. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  290. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +151 -31
  291. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  292. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +131 -100
  293. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  294. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +151 -31
  295. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  296. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +25 -14
  297. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  298. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +25 -14
  299. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  300. package/cjs/style/themes/theme-ui/ui-theme-basis.css +151 -31
  301. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  302. package/cjs/style/themes/theme-ui/ui-theme-components.css +131 -100
  303. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  304. package/cjs/style/themes/theme-ui/ui-theme-elements.css +151 -31
  305. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  306. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +25 -14
  307. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  308. package/cjs/style/themes/theme-ui/ui-theme-forms.css +25 -14
  309. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  310. package/cjs/style/themes/theme-ui/ui-theme-tags.css +100 -19
  311. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  312. package/components/accordion/Accordion.d.ts +1 -125
  313. package/components/accordion/Accordion.js +0 -1
  314. package/components/accordion/Accordion.js.map +1 -1
  315. package/components/autocomplete/Autocomplete.js +3 -2
  316. package/components/autocomplete/Autocomplete.js.map +1 -1
  317. package/components/button/Button.d.ts +3 -6
  318. package/components/button/Button.js +8 -18
  319. package/components/button/Button.js.map +1 -1
  320. package/components/button/ButtonDocs.d.ts +2 -0
  321. package/components/button/ButtonDocs.js +128 -0
  322. package/components/button/ButtonDocs.js.map +1 -0
  323. package/components/card/Card.js +2 -1
  324. package/components/card/Card.js.map +1 -1
  325. package/components/date-picker/DatePicker.d.ts +4 -0
  326. package/components/date-picker/DatePicker.js +25 -11
  327. package/components/date-picker/DatePicker.js.map +1 -1
  328. package/components/date-picker/DatePickerDocs.js +5 -0
  329. package/components/date-picker/DatePickerDocs.js.map +1 -1
  330. package/components/date-picker/DatePickerPortal.d.ts +9 -0
  331. package/components/date-picker/DatePickerPortal.js +53 -0
  332. package/components/date-picker/DatePickerPortal.js.map +1 -0
  333. package/components/date-picker/style/dnb-date-picker.css +64 -55
  334. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  335. package/components/date-picker/style/dnb-date-picker.scss +90 -75
  336. package/components/form-row/FormRow.js +2 -7
  337. package/components/form-row/FormRow.js.map +1 -1
  338. package/components/form-row/style/dnb-form-row.css +3 -3
  339. package/components/form-row/style/dnb-form-row.min.css +1 -1
  340. package/components/form-status/FormStatus.js +17 -19
  341. package/components/form-status/FormStatus.js.map +1 -1
  342. package/components/height-animation/HeightAnimationInstance.d.ts +1 -0
  343. package/components/height-animation/HeightAnimationInstance.js +26 -1
  344. package/components/height-animation/HeightAnimationInstance.js.map +1 -1
  345. package/components/input-masked/InputMasked.d.ts +1 -1
  346. package/components/input-masked/InputMasked.js +2 -2
  347. package/components/input-masked/InputMasked.js.map +1 -1
  348. package/components/input-masked/InputMaskedDocs.js +1 -1
  349. package/components/input-masked/InputMaskedDocs.js.map +1 -1
  350. package/components/input-masked/InputMaskedHooks.js +1 -1
  351. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  352. package/components/input-masked/InputMaskedUtils.js +1 -1
  353. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  354. package/components/input-masked/style/dnb-input-masked.css +3 -3
  355. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  356. package/components/pagination/Pagination.d.ts +12 -0
  357. package/components/pagination/Pagination.js +7 -3
  358. package/components/pagination/Pagination.js.map +1 -1
  359. package/components/pagination/PaginationBar.d.ts +2 -1
  360. package/components/pagination/PaginationBar.js +10 -3
  361. package/components/pagination/PaginationBar.js.map +1 -1
  362. package/components/radio/style/dnb-radio.css +3 -3
  363. package/components/radio/style/dnb-radio.min.css +1 -1
  364. package/components/space/style/dnb-space.css +4 -4
  365. package/components/space/style/dnb-space.min.css +1 -1
  366. package/components/space/style/dnb-space.scss +2 -12
  367. package/components/space/style/space-mixins.scss +21 -0
  368. package/components/tabs/Tabs.d.ts +1 -1
  369. package/components/tabs/Tabs.js +4 -12
  370. package/components/tabs/Tabs.js.map +1 -1
  371. package/components/toggle-button/ToggleButton.d.ts +9 -5
  372. package/components/toggle-button/ToggleButton.js +2 -0
  373. package/components/toggle-button/ToggleButton.js.map +1 -1
  374. package/components/toggle-button/ToggleButtonDocs.d.ts +2 -0
  375. package/components/toggle-button/ToggleButtonDocs.js +80 -0
  376. package/components/toggle-button/ToggleButtonDocs.js.map +1 -0
  377. package/components/toggle-button/ToggleButtonGroup.d.ts +21 -6
  378. package/components/toggle-button/ToggleButtonGroupDocs.d.ts +2 -0
  379. package/components/toggle-button/ToggleButtonGroupDocs.js +83 -0
  380. package/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -0
  381. package/components/toggle-button/style/dnb-toggle-button.css +3 -3
  382. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  383. package/elements/blockquote/style/blockquote-mixins.scss +5 -3
  384. package/elements/code/style/code-mixins.scss +2 -3
  385. package/elements/hr/style/hr-mixins.scss +2 -3
  386. package/elements/img/style/img-mixins.scss +3 -3
  387. package/elements/lists/style/lists-mixins.scss +3 -6
  388. package/elements/typography/style/typography-mixins.scss +2 -3
  389. package/es/components/accordion/Accordion.d.ts +1 -125
  390. package/es/components/accordion/Accordion.js +0 -1
  391. package/es/components/accordion/Accordion.js.map +1 -1
  392. package/es/components/autocomplete/Autocomplete.js +3 -2
  393. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  394. package/es/components/button/Button.d.ts +3 -6
  395. package/es/components/button/Button.js +8 -18
  396. package/es/components/button/Button.js.map +1 -1
  397. package/es/components/button/ButtonDocs.d.ts +2 -0
  398. package/es/components/button/ButtonDocs.js +128 -0
  399. package/es/components/button/ButtonDocs.js.map +1 -0
  400. package/es/components/card/Card.js +2 -1
  401. package/es/components/card/Card.js.map +1 -1
  402. package/es/components/date-picker/DatePicker.d.ts +4 -0
  403. package/es/components/date-picker/DatePicker.js +25 -11
  404. package/es/components/date-picker/DatePicker.js.map +1 -1
  405. package/es/components/date-picker/DatePickerDocs.js +5 -0
  406. package/es/components/date-picker/DatePickerDocs.js.map +1 -1
  407. package/es/components/date-picker/DatePickerPortal.d.ts +9 -0
  408. package/es/components/date-picker/DatePickerPortal.js +52 -0
  409. package/es/components/date-picker/DatePickerPortal.js.map +1 -0
  410. package/es/components/date-picker/style/dnb-date-picker.css +64 -55
  411. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  412. package/es/components/date-picker/style/dnb-date-picker.scss +90 -75
  413. package/es/components/form-row/FormRow.js +2 -7
  414. package/es/components/form-row/FormRow.js.map +1 -1
  415. package/es/components/form-row/style/dnb-form-row.css +3 -3
  416. package/es/components/form-row/style/dnb-form-row.min.css +1 -1
  417. package/es/components/form-status/FormStatus.js +17 -19
  418. package/es/components/form-status/FormStatus.js.map +1 -1
  419. package/es/components/height-animation/HeightAnimationInstance.d.ts +1 -0
  420. package/es/components/height-animation/HeightAnimationInstance.js +26 -1
  421. package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
  422. package/es/components/input-masked/InputMasked.d.ts +1 -1
  423. package/es/components/input-masked/InputMasked.js +2 -2
  424. package/es/components/input-masked/InputMasked.js.map +1 -1
  425. package/es/components/input-masked/InputMaskedDocs.js +1 -1
  426. package/es/components/input-masked/InputMaskedDocs.js.map +1 -1
  427. package/es/components/input-masked/InputMaskedHooks.js +1 -1
  428. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  429. package/es/components/input-masked/InputMaskedUtils.js +1 -1
  430. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  431. package/es/components/input-masked/style/dnb-input-masked.css +3 -3
  432. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  433. package/es/components/pagination/Pagination.d.ts +12 -0
  434. package/es/components/pagination/Pagination.js +7 -3
  435. package/es/components/pagination/Pagination.js.map +1 -1
  436. package/es/components/pagination/PaginationBar.d.ts +2 -1
  437. package/es/components/pagination/PaginationBar.js +10 -3
  438. package/es/components/pagination/PaginationBar.js.map +1 -1
  439. package/es/components/radio/style/dnb-radio.css +3 -3
  440. package/es/components/radio/style/dnb-radio.min.css +1 -1
  441. package/es/components/space/style/dnb-space.css +4 -4
  442. package/es/components/space/style/dnb-space.min.css +1 -1
  443. package/es/components/space/style/dnb-space.scss +2 -12
  444. package/es/components/space/style/space-mixins.scss +21 -0
  445. package/es/components/tabs/Tabs.d.ts +1 -1
  446. package/es/components/tabs/Tabs.js +4 -12
  447. package/es/components/tabs/Tabs.js.map +1 -1
  448. package/es/components/toggle-button/ToggleButton.d.ts +9 -5
  449. package/es/components/toggle-button/ToggleButton.js +2 -0
  450. package/es/components/toggle-button/ToggleButton.js.map +1 -1
  451. package/es/components/toggle-button/ToggleButtonDocs.d.ts +2 -0
  452. package/es/components/toggle-button/ToggleButtonDocs.js +80 -0
  453. package/es/components/toggle-button/ToggleButtonDocs.js.map +1 -0
  454. package/es/components/toggle-button/ToggleButtonGroup.d.ts +21 -6
  455. package/es/components/toggle-button/ToggleButtonGroupDocs.d.ts +2 -0
  456. package/es/components/toggle-button/ToggleButtonGroupDocs.js +83 -0
  457. package/es/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -0
  458. package/es/components/toggle-button/style/dnb-toggle-button.css +3 -3
  459. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  460. package/es/elements/blockquote/style/blockquote-mixins.scss +5 -3
  461. package/es/elements/code/style/code-mixins.scss +2 -3
  462. package/es/elements/hr/style/hr-mixins.scss +2 -3
  463. package/es/elements/img/style/img-mixins.scss +3 -3
  464. package/es/elements/lists/style/lists-mixins.scss +3 -6
  465. package/es/elements/typography/style/typography-mixins.scss +2 -3
  466. package/es/extensions/forms/DataContext/Context.d.ts +15 -4
  467. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  468. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
  469. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  470. package/es/extensions/forms/DataContext/Provider/Provider.js +27 -16
  471. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  472. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
  473. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  474. package/es/extensions/forms/Field/Date/Date.js +5 -4
  475. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  476. package/es/extensions/forms/Field/Expiry/Expiry.js +4 -3
  477. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  478. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
  479. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  480. package/es/extensions/forms/Field/Number/Number.js +2 -2
  481. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  482. package/es/extensions/forms/Field/Option/Option.d.ts +2 -1
  483. package/es/extensions/forms/Field/Option/Option.js +2 -12
  484. package/es/extensions/forms/Field/Option/Option.js.map +1 -1
  485. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +10 -5
  486. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  487. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +4 -3
  488. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +12 -4
  489. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  490. package/es/extensions/forms/Field/Selection/Selection.d.ts +8 -1
  491. package/es/extensions/forms/Field/Selection/Selection.js +22 -14
  492. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  493. package/es/extensions/forms/Field/Selection/SelectionDocs.js +5 -0
  494. package/es/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  495. package/es/extensions/forms/Field/Slider/Slider.js +4 -3
  496. package/es/extensions/forms/Field/Slider/Slider.js.map +1 -1
  497. package/es/extensions/forms/Field/String/String.js +2 -2
  498. package/es/extensions/forms/Field/String/String.js.map +1 -1
  499. package/es/extensions/forms/Field/Toggle/Toggle.js +14 -4
  500. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  501. package/es/extensions/forms/Field/Upload/Upload.js +21 -20
  502. package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
  503. package/es/extensions/forms/FieldBlock/FieldBlock.js +14 -38
  504. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  505. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  506. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  507. package/es/extensions/forms/Form/Isolation/Isolation.js +17 -3
  508. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  509. package/es/extensions/forms/Form/MainHeading/MainHeadingDocs.d.ts +2 -0
  510. package/es/extensions/forms/Form/MainHeading/MainHeadingDocs.js +20 -0
  511. package/es/extensions/forms/Form/MainHeading/MainHeadingDocs.js.map +1 -0
  512. package/es/extensions/forms/Form/Section/EditContainer/CancelButton.js +7 -18
  513. package/es/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -1
  514. package/es/extensions/forms/Form/Section/style/dnb-form-section.css +0 -10
  515. package/es/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  516. package/es/extensions/forms/Form/Section/style/dnb-form-section.scss +1 -12
  517. package/es/extensions/forms/Form/SubHeading/SubHeadingDocs.d.ts +2 -0
  518. package/es/extensions/forms/Form/SubHeading/SubHeadingDocs.js +20 -0
  519. package/es/extensions/forms/Form/SubHeading/SubHeadingDocs.js.map +1 -0
  520. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +11 -1
  521. package/es/extensions/forms/Form/Visibility/Visibility.js +20 -11
  522. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  523. package/es/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -0
  524. package/es/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  525. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  526. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  527. package/es/extensions/forms/Form/Visibility/useVisibility.js +18 -9
  528. package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  529. package/es/extensions/forms/Form/data-context/useValidation.d.ts +2 -1
  530. package/es/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  531. package/es/extensions/forms/Iterate/Array/Array.js +47 -28
  532. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  533. package/es/extensions/forms/Iterate/Array/ArrayDocs.js +14 -4
  534. package/es/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  535. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js +2 -1
  536. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  537. package/es/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +2 -0
  538. package/es/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -1
  539. package/es/extensions/forms/Iterate/Array/types.d.ts +8 -3
  540. package/es/extensions/forms/Iterate/Array/types.js.map +1 -1
  541. package/es/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -15
  542. package/es/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
  543. package/es/extensions/forms/Iterate/EditContainer/DoneButton.js +9 -1
  544. package/es/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
  545. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -3
  546. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  547. package/es/extensions/forms/Iterate/ItemNo/useIItemNo.d.ts +5 -0
  548. package/es/extensions/forms/Iterate/ItemNo/useIItemNo.js +41 -0
  549. package/es/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +1 -0
  550. package/es/extensions/forms/Iterate/IterateItemContext.d.ts +2 -0
  551. package/es/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
  552. package/es/extensions/forms/Iterate/PushButton/PushButton.d.ts +1 -0
  553. package/es/extensions/forms/Iterate/PushButton/PushButton.js +17 -15
  554. package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  555. package/es/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
  556. package/es/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
  557. package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +17 -1
  558. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +34 -18
  559. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  560. package/es/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +1 -0
  561. package/es/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -1
  562. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +10 -0
  563. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  564. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +7 -6
  565. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  566. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js +3 -2
  567. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  568. package/es/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -0
  569. package/es/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
  570. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -3
  571. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  572. package/es/extensions/forms/Iterate/Visibility/Visibility.d.ts +7 -0
  573. package/es/extensions/forms/Iterate/Visibility/Visibility.js +11 -0
  574. package/es/extensions/forms/Iterate/Visibility/Visibility.js.map +1 -0
  575. package/es/extensions/forms/Iterate/Visibility/index.d.ts +2 -0
  576. package/es/extensions/forms/Iterate/Visibility/index.js +3 -0
  577. package/es/extensions/forms/Iterate/Visibility/index.js.map +1 -0
  578. package/es/extensions/forms/Iterate/hooks/index.d.ts +1 -0
  579. package/es/extensions/forms/Iterate/hooks/index.js +1 -0
  580. package/es/extensions/forms/Iterate/hooks/index.js.map +1 -1
  581. package/es/extensions/forms/Iterate/hooks/useArrayLimit.d.ts +1 -3
  582. package/es/extensions/forms/Iterate/hooks/useArrayLimit.js +1 -3
  583. package/es/extensions/forms/Iterate/hooks/useArrayLimit.js.map +1 -1
  584. package/es/extensions/forms/Iterate/hooks/useItemPath.d.ts +4 -0
  585. package/es/extensions/forms/Iterate/hooks/useItemPath.js +16 -0
  586. package/es/extensions/forms/Iterate/hooks/useItemPath.js.map +1 -0
  587. package/es/extensions/forms/Iterate/hooks/useSwitchContainerMode.d.ts +1 -3
  588. package/es/extensions/forms/Iterate/hooks/useSwitchContainerMode.js +1 -3
  589. package/es/extensions/forms/Iterate/hooks/useSwitchContainerMode.js.map +1 -1
  590. package/es/extensions/forms/Iterate/index.d.ts +1 -0
  591. package/es/extensions/forms/Iterate/index.js +1 -0
  592. package/es/extensions/forms/Iterate/index.js.map +1 -1
  593. package/es/extensions/forms/Iterate/style/dnb-iterate.css +16 -0
  594. package/es/extensions/forms/Iterate/style/dnb-iterate.min.css +1 -1
  595. package/es/extensions/forms/Iterate/style/dnb-iterate.scss +25 -2
  596. package/es/extensions/forms/Tools/GenerateSchema.js +12 -6
  597. package/es/extensions/forms/Tools/GenerateSchema.js.map +1 -1
  598. package/es/extensions/forms/Tools/ListAllProps.js +9 -5
  599. package/es/extensions/forms/Tools/ListAllProps.js.map +1 -1
  600. package/es/extensions/forms/Tools/Log.js +2 -1
  601. package/es/extensions/forms/Tools/Log.js.map +1 -1
  602. package/es/extensions/forms/Value/ArraySelection/ArraySelection.js +4 -4
  603. package/es/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  604. package/es/extensions/forms/Value/Selection/Selection.js +5 -5
  605. package/es/extensions/forms/Value/Selection/Selection.js.map +1 -1
  606. package/es/extensions/forms/ValueBlock/ValueBlock.js +26 -9
  607. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  608. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +6 -1
  609. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  610. package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +22 -10
  611. package/es/extensions/forms/Wizard/Container/WizardContainer.js +6 -3
  612. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  613. package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +2 -1
  614. package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +4 -3
  615. package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
  616. package/es/extensions/forms/hooks/DataValueWritePropsDocs.js +9 -9
  617. package/es/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -1
  618. package/es/extensions/forms/hooks/useDataValue.d.ts +2 -2
  619. package/es/extensions/forms/hooks/useDataValue.js +4 -8
  620. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  621. package/es/extensions/forms/hooks/useExternalValue.js +2 -2
  622. package/es/extensions/forms/hooks/useExternalValue.js.map +1 -1
  623. package/es/extensions/forms/hooks/useFieldProps.d.ts +8 -2
  624. package/es/extensions/forms/hooks/useFieldProps.js +163 -76
  625. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  626. package/es/extensions/forms/hooks/usePath.js +2 -2
  627. package/es/extensions/forms/hooks/usePath.js.map +1 -1
  628. package/es/extensions/forms/hooks/useValueProps.js +5 -5
  629. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  630. package/es/extensions/forms/style/dnb-forms.css +25 -14
  631. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  632. package/es/extensions/forms/types.d.ts +33 -6
  633. package/es/extensions/forms/types.js.map +1 -1
  634. package/es/extensions/forms/utils/json-pointer/json-pointer.js +6 -0
  635. package/es/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -1
  636. package/es/extensions/payment-card/PaymentCard.js +3 -12
  637. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  638. package/es/fragments/drawer-list/DrawerList.d.ts +4 -2
  639. package/es/fragments/drawer-list/DrawerList.js +33 -47
  640. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  641. package/es/fragments/drawer-list/DrawerListDocs.js +3 -3
  642. package/es/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  643. package/es/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
  644. package/es/shared/AlignmentHelper.js +0 -4
  645. package/es/shared/AlignmentHelper.js.map +1 -1
  646. package/es/shared/Eufemia.d.ts +1 -1
  647. package/es/shared/Eufemia.js +2 -2
  648. package/es/shared/Eufemia.js.map +1 -1
  649. package/es/shared/component-helper.js +2 -1
  650. package/es/shared/component-helper.js.map +1 -1
  651. package/es/style/core/scopes.scss +1 -1
  652. package/es/style/core/utilities.scss +3 -12
  653. package/es/style/dnb-ui-basis.css +1 -1
  654. package/es/style/dnb-ui-basis.min.css +1 -1
  655. package/es/style/dnb-ui-body.css +1 -1
  656. package/es/style/dnb-ui-body.min.css +1 -1
  657. package/es/style/dnb-ui-components.css +106 -86
  658. package/es/style/dnb-ui-components.min.css +4 -4
  659. package/es/style/dnb-ui-core.css +1 -1
  660. package/es/style/dnb-ui-core.min.css +1 -1
  661. package/es/style/dnb-ui-elements.css +151 -31
  662. package/es/style/dnb-ui-elements.min.css +1 -1
  663. package/es/style/dnb-ui-extensions.css +25 -14
  664. package/es/style/dnb-ui-extensions.min.css +1 -1
  665. package/es/style/dnb-ui-forms.css +25 -14
  666. package/es/style/dnb-ui-forms.min.css +1 -1
  667. package/es/style/dnb-ui-fragments.css +1 -1
  668. package/es/style/dnb-ui-fragments.min.css +1 -1
  669. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +151 -31
  670. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  671. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +131 -100
  672. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  673. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +151 -31
  674. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  675. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +25 -14
  676. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  677. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +25 -14
  678. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  679. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +151 -31
  680. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  681. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +131 -100
  682. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  683. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +151 -31
  684. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  685. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +25 -14
  686. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  687. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +25 -14
  688. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  689. package/es/style/themes/theme-ui/ui-theme-basis.css +151 -31
  690. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  691. package/es/style/themes/theme-ui/ui-theme-components.css +131 -100
  692. package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  693. package/es/style/themes/theme-ui/ui-theme-elements.css +151 -31
  694. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  695. package/es/style/themes/theme-ui/ui-theme-extensions.css +25 -14
  696. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  697. package/es/style/themes/theme-ui/ui-theme-forms.css +25 -14
  698. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  699. package/es/style/themes/theme-ui/ui-theme-tags.css +100 -19
  700. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  701. package/esm/dnb-ui-basis.min.mjs +1 -1
  702. package/esm/dnb-ui-components.min.mjs +1 -1
  703. package/esm/dnb-ui-elements.min.mjs +1 -1
  704. package/esm/dnb-ui-extensions.min.mjs +5 -5
  705. package/esm/dnb-ui-lib.min.mjs +1 -1
  706. package/extensions/forms/DataContext/Context.d.ts +15 -4
  707. package/extensions/forms/DataContext/Context.js.map +1 -1
  708. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
  709. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  710. package/extensions/forms/DataContext/Provider/Provider.js +28 -17
  711. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  712. package/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
  713. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  714. package/extensions/forms/Field/Date/Date.js +5 -4
  715. package/extensions/forms/Field/Date/Date.js.map +1 -1
  716. package/extensions/forms/Field/Expiry/Expiry.js +4 -3
  717. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  718. package/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
  719. package/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  720. package/extensions/forms/Field/Number/Number.js +2 -2
  721. package/extensions/forms/Field/Number/Number.js.map +1 -1
  722. package/extensions/forms/Field/Option/Option.d.ts +2 -1
  723. package/extensions/forms/Field/Option/Option.js +2 -13
  724. package/extensions/forms/Field/Option/Option.js.map +1 -1
  725. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +10 -5
  726. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  727. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +4 -3
  728. package/extensions/forms/Field/SelectCountry/SelectCountry.js +12 -4
  729. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  730. package/extensions/forms/Field/Selection/Selection.d.ts +8 -1
  731. package/extensions/forms/Field/Selection/Selection.js +19 -12
  732. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  733. package/extensions/forms/Field/Selection/SelectionDocs.js +5 -0
  734. package/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  735. package/extensions/forms/Field/Slider/Slider.js +4 -3
  736. package/extensions/forms/Field/Slider/Slider.js.map +1 -1
  737. package/extensions/forms/Field/String/String.js +2 -2
  738. package/extensions/forms/Field/String/String.js.map +1 -1
  739. package/extensions/forms/Field/Toggle/Toggle.js +14 -4
  740. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  741. package/extensions/forms/Field/Upload/Upload.js +21 -21
  742. package/extensions/forms/Field/Upload/Upload.js.map +1 -1
  743. package/extensions/forms/FieldBlock/FieldBlock.js +14 -38
  744. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  745. package/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  746. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  747. package/extensions/forms/Form/Isolation/Isolation.js +17 -3
  748. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  749. package/extensions/forms/Form/MainHeading/MainHeadingDocs.d.ts +2 -0
  750. package/extensions/forms/Form/MainHeading/MainHeadingDocs.js +20 -0
  751. package/extensions/forms/Form/MainHeading/MainHeadingDocs.js.map +1 -0
  752. package/extensions/forms/Form/Section/EditContainer/CancelButton.js +7 -18
  753. package/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -1
  754. package/extensions/forms/Form/Section/style/dnb-form-section.css +0 -10
  755. package/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  756. package/extensions/forms/Form/Section/style/dnb-form-section.scss +1 -12
  757. package/extensions/forms/Form/SubHeading/SubHeadingDocs.d.ts +2 -0
  758. package/extensions/forms/Form/SubHeading/SubHeadingDocs.js +20 -0
  759. package/extensions/forms/Form/SubHeading/SubHeadingDocs.js.map +1 -0
  760. package/extensions/forms/Form/Visibility/Visibility.d.ts +11 -1
  761. package/extensions/forms/Form/Visibility/Visibility.js +20 -11
  762. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  763. package/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -0
  764. package/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  765. package/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  766. package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  767. package/extensions/forms/Form/Visibility/useVisibility.js +18 -9
  768. package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  769. package/extensions/forms/Form/data-context/useValidation.d.ts +2 -1
  770. package/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  771. package/extensions/forms/Iterate/Array/Array.js +50 -30
  772. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  773. package/extensions/forms/Iterate/Array/ArrayDocs.js +14 -4
  774. package/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  775. package/extensions/forms/Iterate/Array/ArrayItemArea.js +2 -1
  776. package/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  777. package/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +2 -0
  778. package/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -1
  779. package/extensions/forms/Iterate/Array/types.d.ts +8 -3
  780. package/extensions/forms/Iterate/Array/types.js.map +1 -1
  781. package/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -15
  782. package/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
  783. package/extensions/forms/Iterate/EditContainer/DoneButton.js +9 -1
  784. package/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
  785. package/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -3
  786. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  787. package/extensions/forms/Iterate/ItemNo/useIItemNo.d.ts +5 -0
  788. package/extensions/forms/Iterate/ItemNo/useIItemNo.js +42 -0
  789. package/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +1 -0
  790. package/extensions/forms/Iterate/IterateItemContext.d.ts +2 -0
  791. package/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
  792. package/extensions/forms/Iterate/PushButton/PushButton.d.ts +1 -0
  793. package/extensions/forms/Iterate/PushButton/PushButton.js +17 -15
  794. package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  795. package/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
  796. package/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
  797. package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +17 -1
  798. package/extensions/forms/Iterate/PushContainer/PushContainer.js +34 -18
  799. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  800. package/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +1 -0
  801. package/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -1
  802. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +10 -0
  803. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  804. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +7 -6
  805. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  806. package/extensions/forms/Iterate/Toolbar/Toolbar.js +3 -2
  807. package/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  808. package/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -0
  809. package/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
  810. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -3
  811. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  812. package/extensions/forms/Iterate/Visibility/Visibility.d.ts +7 -0
  813. package/extensions/forms/Iterate/Visibility/Visibility.js +11 -0
  814. package/extensions/forms/Iterate/Visibility/Visibility.js.map +1 -0
  815. package/extensions/forms/Iterate/Visibility/index.d.ts +2 -0
  816. package/extensions/forms/Iterate/Visibility/index.js +3 -0
  817. package/extensions/forms/Iterate/Visibility/index.js.map +1 -0
  818. package/extensions/forms/Iterate/hooks/index.d.ts +1 -0
  819. package/extensions/forms/Iterate/hooks/index.js +1 -0
  820. package/extensions/forms/Iterate/hooks/index.js.map +1 -1
  821. package/extensions/forms/Iterate/hooks/useArrayLimit.d.ts +1 -3
  822. package/extensions/forms/Iterate/hooks/useArrayLimit.js +1 -4
  823. package/extensions/forms/Iterate/hooks/useArrayLimit.js.map +1 -1
  824. package/extensions/forms/Iterate/hooks/useItemPath.d.ts +4 -0
  825. package/extensions/forms/Iterate/hooks/useItemPath.js +16 -0
  826. package/extensions/forms/Iterate/hooks/useItemPath.js.map +1 -0
  827. package/extensions/forms/Iterate/hooks/useSwitchContainerMode.d.ts +1 -3
  828. package/extensions/forms/Iterate/hooks/useSwitchContainerMode.js +1 -4
  829. package/extensions/forms/Iterate/hooks/useSwitchContainerMode.js.map +1 -1
  830. package/extensions/forms/Iterate/index.d.ts +1 -0
  831. package/extensions/forms/Iterate/index.js +1 -0
  832. package/extensions/forms/Iterate/index.js.map +1 -1
  833. package/extensions/forms/Iterate/style/dnb-iterate.css +16 -0
  834. package/extensions/forms/Iterate/style/dnb-iterate.min.css +1 -1
  835. package/extensions/forms/Iterate/style/dnb-iterate.scss +25 -2
  836. package/extensions/forms/Tools/GenerateSchema.js +15 -9
  837. package/extensions/forms/Tools/GenerateSchema.js.map +1 -1
  838. package/extensions/forms/Tools/ListAllProps.js +11 -7
  839. package/extensions/forms/Tools/ListAllProps.js.map +1 -1
  840. package/extensions/forms/Tools/Log.js +2 -1
  841. package/extensions/forms/Tools/Log.js.map +1 -1
  842. package/extensions/forms/Value/ArraySelection/ArraySelection.js +4 -4
  843. package/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  844. package/extensions/forms/Value/Selection/Selection.js +5 -5
  845. package/extensions/forms/Value/Selection/Selection.js.map +1 -1
  846. package/extensions/forms/ValueBlock/ValueBlock.js +27 -9
  847. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  848. package/extensions/forms/ValueBlock/style/dnb-value-block.css +6 -1
  849. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  850. package/extensions/forms/ValueBlock/style/dnb-value-block.scss +22 -10
  851. package/extensions/forms/Wizard/Container/WizardContainer.js +6 -3
  852. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  853. package/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +2 -1
  854. package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +4 -3
  855. package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
  856. package/extensions/forms/hooks/DataValueWritePropsDocs.js +9 -9
  857. package/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -1
  858. package/extensions/forms/hooks/useDataValue.d.ts +2 -2
  859. package/extensions/forms/hooks/useDataValue.js +5 -9
  860. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  861. package/extensions/forms/hooks/useExternalValue.js +2 -2
  862. package/extensions/forms/hooks/useExternalValue.js.map +1 -1
  863. package/extensions/forms/hooks/useFieldProps.d.ts +8 -2
  864. package/extensions/forms/hooks/useFieldProps.js +164 -76
  865. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  866. package/extensions/forms/hooks/usePath.js +2 -2
  867. package/extensions/forms/hooks/usePath.js.map +1 -1
  868. package/extensions/forms/hooks/useValueProps.js +5 -5
  869. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  870. package/extensions/forms/style/dnb-forms.css +25 -14
  871. package/extensions/forms/style/dnb-forms.min.css +1 -1
  872. package/extensions/forms/types.d.ts +33 -6
  873. package/extensions/forms/types.js.map +1 -1
  874. package/extensions/forms/utils/json-pointer/json-pointer.js +6 -0
  875. package/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -1
  876. package/extensions/payment-card/PaymentCard.js +3 -12
  877. package/extensions/payment-card/PaymentCard.js.map +1 -1
  878. package/fragments/drawer-list/DrawerList.d.ts +4 -2
  879. package/fragments/drawer-list/DrawerList.js +33 -47
  880. package/fragments/drawer-list/DrawerList.js.map +1 -1
  881. package/fragments/drawer-list/DrawerListDocs.js +3 -3
  882. package/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  883. package/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
  884. package/package.json +1 -1
  885. package/shared/AlignmentHelper.js +0 -4
  886. package/shared/AlignmentHelper.js.map +1 -1
  887. package/shared/Eufemia.d.ts +1 -1
  888. package/shared/Eufemia.js +2 -2
  889. package/shared/Eufemia.js.map +1 -1
  890. package/shared/component-helper.js +2 -1
  891. package/shared/component-helper.js.map +1 -1
  892. package/style/core/scopes.scss +1 -1
  893. package/style/core/utilities.scss +3 -12
  894. package/style/dnb-ui-basis.css +1 -1
  895. package/style/dnb-ui-basis.min.css +1 -1
  896. package/style/dnb-ui-body.css +1 -1
  897. package/style/dnb-ui-body.min.css +1 -1
  898. package/style/dnb-ui-components.css +106 -86
  899. package/style/dnb-ui-components.min.css +4 -4
  900. package/style/dnb-ui-core.css +1 -1
  901. package/style/dnb-ui-core.min.css +1 -1
  902. package/style/dnb-ui-elements.css +151 -31
  903. package/style/dnb-ui-elements.min.css +1 -1
  904. package/style/dnb-ui-extensions.css +25 -14
  905. package/style/dnb-ui-extensions.min.css +1 -1
  906. package/style/dnb-ui-forms.css +25 -14
  907. package/style/dnb-ui-forms.min.css +1 -1
  908. package/style/dnb-ui-fragments.css +1 -1
  909. package/style/dnb-ui-fragments.min.css +1 -1
  910. package/style/themes/theme-eiendom/eiendom-theme-basis.css +151 -31
  911. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  912. package/style/themes/theme-eiendom/eiendom-theme-components.css +131 -100
  913. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  914. package/style/themes/theme-eiendom/eiendom-theme-elements.css +151 -31
  915. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  916. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +25 -14
  917. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  918. package/style/themes/theme-eiendom/eiendom-theme-forms.css +25 -14
  919. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  920. package/style/themes/theme-sbanken/sbanken-theme-basis.css +151 -31
  921. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  922. package/style/themes/theme-sbanken/sbanken-theme-components.css +131 -100
  923. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  924. package/style/themes/theme-sbanken/sbanken-theme-elements.css +151 -31
  925. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  926. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +25 -14
  927. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  928. package/style/themes/theme-sbanken/sbanken-theme-forms.css +25 -14
  929. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  930. package/style/themes/theme-ui/ui-theme-basis.css +151 -31
  931. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  932. package/style/themes/theme-ui/ui-theme-components.css +131 -100
  933. package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  934. package/style/themes/theme-ui/ui-theme-elements.css +151 -31
  935. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  936. package/style/themes/theme-ui/ui-theme-extensions.css +25 -14
  937. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  938. package/style/themes/theme-ui/ui-theme-forms.css +25 -14
  939. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  940. package/style/themes/theme-ui/ui-theme-tags.css +100 -19
  941. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  942. package/umd/dnb-ui-basis.min.js +1 -1
  943. package/umd/dnb-ui-components.min.js +1 -1
  944. package/umd/dnb-ui-elements.min.js +1 -1
  945. package/umd/dnb-ui-extensions.min.js +3 -3
  946. package/umd/dnb-ui-lib.min.js +1 -1
@@ -65,7 +65,7 @@ export type ButtonProps = {
65
65
  */
66
66
  text?: ButtonText;
67
67
  /**
68
- * `button`, `reset` or `submit` for the `type` HTML attribute. Defaults to `button` for legacy reasons.
68
+ * The type HTML attribute. Defaults to `button` for legacy reasons.
69
69
  */
70
70
  type?: string;
71
71
  /**
@@ -81,7 +81,7 @@ export type ButtonProps = {
81
81
  */
82
82
  size?: ButtonSize;
83
83
  /**
84
- * To be included in the button. <a href="/icons/primary">Primary Icons</a> can be set as a string (e.g. `icon="chevron_right"`), other icons should be set as React elements.
84
+ * To be included in the button. [Primary Icons](/icons/primary) can be set as a string (e.g. `icon="chevron_right"`), other icons should be set as React elements.
85
85
  */
86
86
  icon?: ButtonIcon;
87
87
  /**
@@ -110,7 +110,7 @@ export type ButtonProps = {
110
110
  status_props?: FormStatusProps;
111
111
  status_no_animation?: boolean;
112
112
  /**
113
- * The <a href="/uilib/components/global-status/properties/#configuration-object">configuration</a> used for the target <a href="/uilib/components/global-status">GlobalStatus</a>.
113
+ * The [configuration](/uilib/components/global-status/properties/#configuration-object) used for the target [GlobalStatus](/uilib/components/global-status).
114
114
  */
115
115
  globalStatus?: GlobalStatusConfigObject;
116
116
  id?: string;
@@ -155,9 +155,6 @@ export type ButtonProps = {
155
155
  className?: string;
156
156
  class?: string;
157
157
  innerRef?: any;
158
- /**
159
- * The content of the button can be a string or a React Element.
160
- */
161
158
  children?: ButtonChildren;
162
159
  /**
163
160
  * Only meant to be used for special use cases. Defaults to `button` or `a` depending if href is set or not.
@@ -261,14 +261,14 @@ Button.defaultProps = {
261
261
  };
262
262
  function Content(_ref) {
263
263
  let {
264
- title,
265
- content,
266
- custom_content,
267
- icon,
268
- icon_size,
269
- bounding,
270
- skeleton,
271
- isIconOnly
264
+ title = null,
265
+ content = null,
266
+ custom_content = null,
267
+ icon = null,
268
+ icon_size = 'default',
269
+ bounding = null,
270
+ skeleton = null,
271
+ isIconOnly = null
272
272
  } = _ref;
273
273
  return _react.default.createElement(_react.default.Fragment, null, (0, _componentHelper.isTrue)(bounding) && (_span || (_span = _react.default.createElement("span", {
274
274
  key: "button-bounding",
@@ -305,16 +305,6 @@ process.env.NODE_ENV !== "production" ? Content.propTypes = {
305
305
  skeleton: _propTypes.default.bool,
306
306
  isIconOnly: _propTypes.default.bool
307
307
  } : void 0;
308
- Content.defaultProps = {
309
- custom_content: null,
310
- title: null,
311
- content: null,
312
- icon: null,
313
- icon_size: 'default',
314
- bounding: null,
315
- skeleton: null,
316
- isIconOnly: null
317
- };
318
308
  Button._formElement = true;
319
309
  Button._supportsSpacingProps = true;
320
310
  //# sourceMappingURL=Button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_Context","_componentHelper","_SpacingHelper","_SkeletonHelper","_filterValidProps","_IconPrimary","_FormStatus","_Anchor","_interopRequireWildcard","_icons","_Tooltip","_span","_span2","_span3","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","buttonVariantPropType","variant","PropTypes","oneOf","exports","Button","React","PureComponent","getContent","props","processChildren","constructor","src","event","afterContent","dispatchCustomElementEvent","isValidElement","setState","_id","id","status","tooltip","makeUniqueId","_ref","createRef","state","componentDidMount","innerRef","current","inner_ref","render","_this$context","_this$context2","_this$context3","_this$context4","_this$context4$theme","extendPropsWithContextInClassComponent","defaultProps","skeleton","context","pickFormElementProps","FormRow","formElement","class","classProp","className","size","title","custom_content","status_state","status_props","status_no_animation","globalStatus","disabled","text","_text","icon","_icon","icon_position","icon_size","wrap","bounding","stretch","element","attributes","showStatus","getStatusState","usedVariant","usedSize","iconSize","content","warn","isIconOnly","Boolean","Element","href","to","Anchor","omitClass","opensNewTab","launch","classes","classnames","createSkeletonClass","createSpacingClasses","theme","darkBackground","isTrue","params","on_click","onClick","getOnClickHandler","type","skeletonDOMAttributes","validateDOMAttributes","createElement","Fragment","ref","Content","show","label","text_id","no_animation","targetElement","Context","process","env","NODE_ENV","propTypes","oneOfType","string","node","func","number","bool","shape","message","rel","children","spacingPropTypes","pickIcon","array","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/button/Button.js"],"sourcesContent":["/**\n * Web Button 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 Context from '../../shared/Context'\nimport {\n warn,\n makeUniqueId,\n isTrue,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n processChildren,\n getStatusState,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport IconPrimary from '../icon-primary/IconPrimary'\nimport FormStatus from '../form-status/FormStatus'\nimport Anchor, { pickIcon, opensNewTab } from '../anchor/Anchor'\nimport { launch } from '../../icons'\nimport Tooltip from '../tooltip/Tooltip'\n\nexport const buttonVariantPropType = {\n variant: PropTypes.oneOf([\n 'primary',\n 'secondary',\n 'tertiary',\n 'signal',\n\n /**\n * For internal use only (as of now)\n */\n 'unstyled',\n ]),\n}\n\n/**\n * The button component should be used as the call-to-action in a form, or as a user interaction mechanism. Generally speaking, a button should not be used when a link would do the trick. Exceptions are made at times when it is used as a navigation element in the action-nav element.\n */\nexport default class Button extends React.PureComponent {\n static contextType = Context\n\n static getContent(props) {\n return processChildren(props)\n }\n\n constructor(props) {\n super(props)\n\n this._id =\n props.id || ((props.status || props.tooltip) && makeUniqueId()) // cause we need an id anyway\n this._ref = React.createRef()\n\n this.state = { afterContent: null }\n }\n\n componentDidMount() {\n if (this.props.innerRef) {\n typeof this.props.innerRef === 'function'\n ? this.props.innerRef(this._ref.current)\n : (this.props.innerRef.current = this._ref.current)\n }\n if (this.props.inner_ref) {\n typeof this.props.innerRef === 'function'\n ? this.props.inner_ref(this._ref.current)\n : (this.props.inner_ref.current = this._ref.current)\n }\n }\n\n getOnClickHandler = (src) => (event) => {\n const afterContent = dispatchCustomElementEvent(src, 'on_click', {\n event,\n })\n if (afterContent && React.isValidElement(afterContent)) {\n this.setState({\n afterContent,\n })\n }\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Button.defaultProps,\n { skeleton: this.context?.skeleton },\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Button\n )\n\n const {\n class: classProp, // @deprecated – can be removed in v11\n className,\n variant,\n size,\n title,\n custom_content,\n tooltip,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n id, // eslint-disable-line\n disabled,\n text: _text, // eslint-disable-line\n icon: _icon, // eslint-disable-line\n icon_position,\n icon_size,\n wrap,\n bounding, // eslint-disable-line\n stretch,\n skeleton,\n element,\n inner_ref, // eslint-disable-line\n innerRef, // eslint-disable-line\n ...attributes\n } = props\n\n const showStatus = getStatusState(status)\n\n let { text, icon } = props\n let usedVariant = variant\n let usedSize = size\n let iconSize = icon_size\n const content = Button.getContent(this.props)\n\n if (\n variant === 'tertiary' &&\n (text || content) &&\n !icon &&\n icon !== false\n ) {\n warn(\n `Icon required: A Tertiary Button requires an icon to be WCAG compliant in most cases, because variant tertiary has no underline.\n(Override this warning using icon={false}, or consider using one of the other variants)`\n )\n }\n\n // if only has Icon, then resize it and define it as secondary\n const isIconOnly = Boolean(!text && !content && icon)\n if (isIconOnly) {\n if (!usedVariant) {\n usedVariant = 'secondary'\n }\n if (!iconSize && (usedSize === 'default' || usedSize === 'large')) {\n iconSize = 'medium'\n }\n if (!usedSize) {\n usedSize = 'medium'\n }\n } else if (content) {\n if (!usedVariant) {\n usedVariant = 'primary'\n }\n if (!usedSize) {\n usedSize = 'default'\n }\n }\n if (!iconSize && variant === 'tertiary' && icon_position === 'top') {\n iconSize = 'medium'\n }\n\n const Element = element\n ? element\n : props.href || props.to\n ? Anchor\n : 'button'\n if (Element === Anchor) {\n attributes.omitClass = true\n if (opensNewTab(props.target, props.href) && !icon) {\n icon = launch\n }\n }\n\n const classes = classnames(\n 'dnb-button',\n `dnb-button--${usedVariant || 'primary'}`,\n usedSize && usedSize !== 'default' && `dnb-button--size-${usedSize}`,\n this.context?.theme?.darkBackground &&\n `dnb-button--on-dark-background`,\n icon && `dnb-button--icon-position-${icon_position}`,\n isTrue(stretch) && 'dnb-button--stretch',\n icon && iconSize && `dnb-button--icon-size-${iconSize}`,\n (text || content || custom_content) && 'dnb-button--has-text',\n icon && 'dnb-button--has-icon',\n wrap && 'dnb-button--wrap',\n status && `dnb-button__status--${status_state}`,\n createSkeletonClass(\n variant === 'tertiary' ? 'font' : 'shape',\n skeleton,\n this.context\n ),\n createSpacingClasses(props),\n classProp, // @deprecated – can be removed in v11\n className,\n props.href || props.to ? '' : null, // dnb-anchor--no-underline dnb-anchor--no-hover\n Element === Anchor && 'dnb-anchor--no-style'\n )\n\n const params = {\n className: classes,\n title,\n id: this._id,\n disabled: isTrue(disabled),\n ...attributes,\n }\n\n if (props.on_click || props.onClick) {\n params.onClick = this.getOnClickHandler(props)\n }\n\n if (Element !== Anchor && !params.type) {\n params.type = params.type === '' ? undefined : 'button'\n }\n if (isIconOnly) {\n params['aria-label'] = params['aria-label'] || title\n }\n\n skeletonDOMAttributes(params, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n return (\n <>\n <Element ref={this._ref} {...params}>\n <Content\n {...this.props}\n icon={icon}\n icon_size={iconSize}\n content={text || content}\n custom_content={custom_content}\n isIconOnly={isIconOnly}\n skeleton={isTrue(skeleton)}\n />\n </Element>\n\n {this.state.afterContent}\n\n <FormStatus\n show={showStatus}\n id={this._id + '-form-status'}\n globalStatus={globalStatus}\n label={text}\n text={status}\n state={status_state}\n text_id={this._id + '-status'} // used for \"aria-describedby\"\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n {tooltip && this._ref && (\n <Tooltip\n id={this._id + '-tooltip'}\n targetElement={this._ref}\n tooltip={tooltip}\n />\n )}\n </>\n )\n }\n}\n\nButton.propTypes = {\n text: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n type: PropTypes.string,\n title: PropTypes.string,\n variant: buttonVariantPropType.variant,\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_position: PropTypes.oneOf(['left', 'right', 'top']),\n icon_size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n tooltip: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n id: PropTypes.string,\n href: PropTypes.string,\n target: PropTypes.string,\n rel: PropTypes.string,\n to: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.func,\n ]),\n custom_content: PropTypes.node,\n wrap: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n bounding: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n inner_ref: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n className: PropTypes.string,\n /**\n * @deprecated – use className instead. Will be removed in v11.\n */\n class: PropTypes.string,\n innerRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n element: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.node,\n ]),\n\n ...spacingPropTypes,\n\n on_click: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n}\n\nButton.defaultProps = {\n type: null, // set the type because of the anchor/href situation – can be made more smart in future\n text: null,\n variant: null,\n size: null,\n title: null,\n icon: null,\n icon_position: 'right',\n icon_size: null,\n href: null,\n target: null,\n rel: null,\n to: null,\n id: null,\n custom_content: null,\n wrap: null,\n bounding: null,\n stretch: null,\n skeleton: null,\n disabled: null,\n tooltip: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n inner_ref: null,\n\n className: null,\n /**\n * @deprecated – use className instead. Will be removed in v11.\n */\n class: null,\n innerRef: null,\n children: null,\n element: null,\n\n on_click: null,\n onClick: null,\n}\n\nfunction Content({\n title,\n content,\n custom_content,\n icon,\n icon_size,\n bounding,\n skeleton,\n isIconOnly,\n}) {\n return (\n <>\n {isTrue(bounding) && (\n <span key=\"button-bounding\" className=\"dnb-button__bounding\" />\n )}\n\n {custom_content && (\n <React.Fragment key=\"button-custom-content\">\n {custom_content}\n </React.Fragment>\n )}\n\n {content && (\n <>\n <span\n key=\"button-alignment\"\n className=\"dnb-button__alignment\"\n aria-hidden\n >\n &zwnj;\n </span>\n <span\n key=\"button-text\"\n className=\"dnb-button__text dnb-skeleton--show-font\"\n >\n {content}\n </span>\n </>\n )}\n\n {\n // on empty text, use a zero-width non-joiner\n // so the icon button gets vertical aligned\n // we need the dnb-button__text for alignment\n !content && icon && (\n <span\n key=\"button-alignment\"\n className=\"dnb-button__alignment\"\n aria-hidden\n >\n &zwnj;\n </span>\n )\n }\n\n {icon &&\n (pickIcon(icon, 'dnb-button__icon') || (\n <IconPrimary\n key=\"button-icon\"\n className=\"dnb-button__icon\"\n icon={icon}\n size={icon_size}\n aria-hidden={isIconOnly && !title ? null : true}\n skeleton={skeleton}\n />\n ))}\n </>\n )\n}\n\nContent.propTypes = {\n title: PropTypes.string,\n custom_content: PropTypes.node,\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array,\n PropTypes.node,\n ]),\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n bounding: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.bool,\n isIconOnly: PropTypes.bool,\n}\n\nContent.defaultProps = {\n custom_content: null,\n title: null,\n content: null,\n icon: null,\n icon_size: 'default',\n bounding: null,\n skeleton: null,\n isIconOnly: null,\n}\n\nButton._formElement = true\nButton._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"Button.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_Context","_componentHelper","_SpacingHelper","_SkeletonHelper","_filterValidProps","_IconPrimary","_FormStatus","_Anchor","_interopRequireWildcard","_icons","_Tooltip","_span","_span2","_span3","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","buttonVariantPropType","variant","PropTypes","oneOf","exports","Button","React","PureComponent","getContent","props","processChildren","constructor","src","event","afterContent","dispatchCustomElementEvent","isValidElement","setState","_id","id","status","tooltip","makeUniqueId","_ref","createRef","state","componentDidMount","innerRef","current","inner_ref","render","_this$context","_this$context2","_this$context3","_this$context4","_this$context4$theme","extendPropsWithContextInClassComponent","defaultProps","skeleton","context","pickFormElementProps","FormRow","formElement","class","classProp","className","size","title","custom_content","status_state","status_props","status_no_animation","globalStatus","disabled","text","_text","icon","_icon","icon_position","icon_size","wrap","bounding","stretch","element","attributes","showStatus","getStatusState","usedVariant","usedSize","iconSize","content","warn","isIconOnly","Boolean","Element","href","to","Anchor","omitClass","opensNewTab","launch","classes","classnames","createSkeletonClass","createSpacingClasses","theme","darkBackground","isTrue","params","on_click","onClick","getOnClickHandler","type","skeletonDOMAttributes","validateDOMAttributes","createElement","Fragment","ref","Content","show","label","text_id","no_animation","targetElement","Context","process","env","NODE_ENV","propTypes","oneOfType","string","node","func","number","bool","shape","message","rel","children","spacingPropTypes","pickIcon","array","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/button/Button.js"],"sourcesContent":["/**\n * Web Button 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 Context from '../../shared/Context'\nimport {\n warn,\n makeUniqueId,\n isTrue,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n processChildren,\n getStatusState,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport IconPrimary from '../icon-primary/IconPrimary'\nimport FormStatus from '../form-status/FormStatus'\nimport Anchor, { pickIcon, opensNewTab } from '../anchor/Anchor'\nimport { launch } from '../../icons'\nimport Tooltip from '../tooltip/Tooltip'\n\nexport const buttonVariantPropType = {\n variant: PropTypes.oneOf([\n 'primary',\n 'secondary',\n 'tertiary',\n 'signal',\n\n /**\n * For internal use only (as of now)\n */\n 'unstyled',\n ]),\n}\n\n/**\n * The button component should be used as the call-to-action in a form, or as a user interaction mechanism. Generally speaking, a button should not be used when a link would do the trick. Exceptions are made at times when it is used as a navigation element in the action-nav element.\n */\nexport default class Button extends React.PureComponent {\n static contextType = Context\n\n static getContent(props) {\n return processChildren(props)\n }\n\n constructor(props) {\n super(props)\n\n this._id =\n props.id || ((props.status || props.tooltip) && makeUniqueId()) // cause we need an id anyway\n this._ref = React.createRef()\n\n this.state = { afterContent: null }\n }\n\n componentDidMount() {\n if (this.props.innerRef) {\n typeof this.props.innerRef === 'function'\n ? this.props.innerRef(this._ref.current)\n : (this.props.innerRef.current = this._ref.current)\n }\n if (this.props.inner_ref) {\n typeof this.props.innerRef === 'function'\n ? this.props.inner_ref(this._ref.current)\n : (this.props.inner_ref.current = this._ref.current)\n }\n }\n\n getOnClickHandler = (src) => (event) => {\n const afterContent = dispatchCustomElementEvent(src, 'on_click', {\n event,\n })\n if (afterContent && React.isValidElement(afterContent)) {\n this.setState({\n afterContent,\n })\n }\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Button.defaultProps,\n { skeleton: this.context?.skeleton },\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Button\n )\n\n const {\n class: classProp, // @deprecated – can be removed in v11\n className,\n variant,\n size,\n title,\n custom_content,\n tooltip,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n id, // eslint-disable-line\n disabled,\n text: _text, // eslint-disable-line\n icon: _icon, // eslint-disable-line\n icon_position,\n icon_size,\n wrap,\n bounding, // eslint-disable-line\n stretch,\n skeleton,\n element,\n inner_ref, // eslint-disable-line\n innerRef, // eslint-disable-line\n ...attributes\n } = props\n\n const showStatus = getStatusState(status)\n\n let { text, icon } = props\n let usedVariant = variant\n let usedSize = size\n let iconSize = icon_size\n const content = Button.getContent(this.props)\n\n if (\n variant === 'tertiary' &&\n (text || content) &&\n !icon &&\n icon !== false\n ) {\n warn(\n `Icon required: A Tertiary Button requires an icon to be WCAG compliant in most cases, because variant tertiary has no underline.\n(Override this warning using icon={false}, or consider using one of the other variants)`\n )\n }\n\n // if only has Icon, then resize it and define it as secondary\n const isIconOnly = Boolean(!text && !content && icon)\n if (isIconOnly) {\n if (!usedVariant) {\n usedVariant = 'secondary'\n }\n if (!iconSize && (usedSize === 'default' || usedSize === 'large')) {\n iconSize = 'medium'\n }\n if (!usedSize) {\n usedSize = 'medium'\n }\n } else if (content) {\n if (!usedVariant) {\n usedVariant = 'primary'\n }\n if (!usedSize) {\n usedSize = 'default'\n }\n }\n if (!iconSize && variant === 'tertiary' && icon_position === 'top') {\n iconSize = 'medium'\n }\n\n const Element = element\n ? element\n : props.href || props.to\n ? Anchor\n : 'button'\n if (Element === Anchor) {\n attributes.omitClass = true\n if (opensNewTab(props.target, props.href) && !icon) {\n icon = launch\n }\n }\n\n const classes = classnames(\n 'dnb-button',\n `dnb-button--${usedVariant || 'primary'}`,\n usedSize && usedSize !== 'default' && `dnb-button--size-${usedSize}`,\n this.context?.theme?.darkBackground &&\n `dnb-button--on-dark-background`,\n icon && `dnb-button--icon-position-${icon_position}`,\n isTrue(stretch) && 'dnb-button--stretch',\n icon && iconSize && `dnb-button--icon-size-${iconSize}`,\n (text || content || custom_content) && 'dnb-button--has-text',\n icon && 'dnb-button--has-icon',\n wrap && 'dnb-button--wrap',\n status && `dnb-button__status--${status_state}`,\n createSkeletonClass(\n variant === 'tertiary' ? 'font' : 'shape',\n skeleton,\n this.context\n ),\n createSpacingClasses(props),\n classProp, // @deprecated – can be removed in v11\n className,\n props.href || props.to ? '' : null, // dnb-anchor--no-underline dnb-anchor--no-hover\n Element === Anchor && 'dnb-anchor--no-style'\n )\n\n const params = {\n className: classes,\n title,\n id: this._id,\n disabled: isTrue(disabled),\n ...attributes,\n }\n\n if (props.on_click || props.onClick) {\n params.onClick = this.getOnClickHandler(props)\n }\n\n if (Element !== Anchor && !params.type) {\n params.type = params.type === '' ? undefined : 'button'\n }\n if (isIconOnly) {\n params['aria-label'] = params['aria-label'] || title\n }\n\n skeletonDOMAttributes(params, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n return (\n <>\n <Element ref={this._ref} {...params}>\n <Content\n {...this.props}\n icon={icon}\n icon_size={iconSize}\n content={text || content}\n custom_content={custom_content}\n isIconOnly={isIconOnly}\n skeleton={isTrue(skeleton)}\n />\n </Element>\n\n {this.state.afterContent}\n\n <FormStatus\n show={showStatus}\n id={this._id + '-form-status'}\n globalStatus={globalStatus}\n label={text}\n text={status}\n state={status_state}\n text_id={this._id + '-status'} // used for \"aria-describedby\"\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n {tooltip && this._ref && (\n <Tooltip\n id={this._id + '-tooltip'}\n targetElement={this._ref}\n tooltip={tooltip}\n />\n )}\n </>\n )\n }\n}\n\nButton.propTypes = {\n text: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n type: PropTypes.string,\n title: PropTypes.string,\n variant: buttonVariantPropType.variant,\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_position: PropTypes.oneOf(['left', 'right', 'top']),\n icon_size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n tooltip: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n id: PropTypes.string,\n href: PropTypes.string,\n target: PropTypes.string,\n rel: PropTypes.string,\n to: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.func,\n ]),\n custom_content: PropTypes.node,\n wrap: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n bounding: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n inner_ref: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n className: PropTypes.string,\n /**\n * @deprecated – use className instead. Will be removed in v11.\n */\n class: PropTypes.string,\n innerRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n element: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.node,\n ]),\n\n ...spacingPropTypes,\n\n on_click: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n}\n\nButton.defaultProps = {\n type: null, // set the type because of the anchor/href situation – can be made more smart in future\n text: null,\n variant: null,\n size: null,\n title: null,\n icon: null,\n icon_position: 'right',\n icon_size: null,\n href: null,\n target: null,\n rel: null,\n to: null,\n id: null,\n custom_content: null,\n wrap: null,\n bounding: null,\n stretch: null,\n skeleton: null,\n disabled: null,\n tooltip: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n inner_ref: null,\n\n className: null,\n /**\n * @deprecated – use className instead. Will be removed in v11.\n */\n class: null,\n innerRef: null,\n children: null,\n element: null,\n\n on_click: null,\n onClick: null,\n}\n\nfunction Content({\n title = null,\n content = null,\n custom_content = null,\n icon = null,\n icon_size = 'default',\n bounding = null,\n skeleton = null,\n isIconOnly = null,\n}) {\n return (\n <>\n {isTrue(bounding) && (\n <span key=\"button-bounding\" className=\"dnb-button__bounding\" />\n )}\n\n {custom_content && (\n <React.Fragment key=\"button-custom-content\">\n {custom_content}\n </React.Fragment>\n )}\n\n {content && (\n <>\n <span\n key=\"button-alignment\"\n className=\"dnb-button__alignment\"\n aria-hidden\n >\n &zwnj;\n </span>\n <span\n key=\"button-text\"\n className=\"dnb-button__text dnb-skeleton--show-font\"\n >\n {content}\n </span>\n </>\n )}\n\n {\n // on empty text, use a zero-width non-joiner\n // so the icon button gets vertical aligned\n // we need the dnb-button__text for alignment\n !content && icon && (\n <span\n key=\"button-alignment\"\n className=\"dnb-button__alignment\"\n aria-hidden\n >\n &zwnj;\n </span>\n )\n }\n\n {icon &&\n (pickIcon(icon, 'dnb-button__icon') || (\n <IconPrimary\n key=\"button-icon\"\n className=\"dnb-button__icon\"\n icon={icon}\n size={icon_size}\n aria-hidden={isIconOnly && !title ? null : true}\n skeleton={skeleton}\n />\n ))}\n </>\n )\n}\n\nContent.propTypes = {\n title: PropTypes.string,\n custom_content: PropTypes.node,\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array,\n PropTypes.node,\n ]),\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n bounding: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.bool,\n isIconOnly: PropTypes.bool,\n}\n\nButton._formElement = true\nButton._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { PropertiesTableProps } from '../../shared/types';
2
+ export declare const ButtonProperties: PropertiesTableProps;
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ButtonProperties = void 0;
7
+ const ButtonProperties = {
8
+ type: {
9
+ doc: 'The type HTML attribute. Defaults to `button` for legacy reasons.',
10
+ type: ['button', 'reset', 'submit'],
11
+ status: 'optional'
12
+ },
13
+ text: {
14
+ doc: 'The content of the button can be a string or a React Element.',
15
+ type: ['string', 'React.ReactNode'],
16
+ status: 'optional'
17
+ },
18
+ 'aria-label': {
19
+ doc: 'Required if there is no text in the button. If `text` and `children` are undefined, setting the `title` property will automatically set `aria-label` with the same value.',
20
+ type: 'string',
21
+ status: 'optional'
22
+ },
23
+ title: {
24
+ doc: 'Required if there is no text in the button. If `text` and `children` are undefined, setting the `title` property will automatically set `aria-label` with the same value.',
25
+ type: 'string',
26
+ status: 'optional'
27
+ },
28
+ variant: {
29
+ doc: 'Defines the kind of button. Possible values are `primary`, `secondary`, `tertiary` and `signal`. Defaults to `primary` (or `secondary` if icon only).',
30
+ type: ['primary', 'secondary', 'tertiary', 'signal'],
31
+ status: 'optional'
32
+ },
33
+ size: {
34
+ doc: 'The size of the button. For now there is `small`, `medium`, `default` and `large`.',
35
+ type: ['small', 'medium', 'default', 'large'],
36
+ status: 'optional'
37
+ },
38
+ icon: {
39
+ doc: 'To be included in the button. [Primary Icons](/icons/primary) can be set as a string (e.g. `icon="chevron_right"`), other icons should be set as React elements.',
40
+ type: ['string', 'React.ReactNode'],
41
+ status: 'optional'
42
+ },
43
+ icon_position: {
44
+ doc: 'Position of icon inside the button. Set to `left` or `right`. Tertiary button variant also supports `top`. Defaults to `right` if not set.',
45
+ type: ['left', 'right', 'top'],
46
+ status: 'optional'
47
+ },
48
+ icon_size: {
49
+ doc: 'Define icon width and height. Defaults to 16px.',
50
+ type: 'string',
51
+ status: 'optional'
52
+ },
53
+ href: {
54
+ doc: 'If you want the button to behave as a link. Use with caution! A link should normally visually be a link and not a button.',
55
+ type: 'string',
56
+ status: 'optional'
57
+ },
58
+ target: {
59
+ doc: 'When button behaves as a link. Used to specify where to open the linked document, specified by `href`. Possible values are `_self`, `_blank`, `_parent` and `_top`.',
60
+ type: ['_self', '_blank', '_parent', '_top'],
61
+ status: 'optional'
62
+ },
63
+ rel: {
64
+ doc: 'When button behaves as a link. Used to specify the relationship between a linked resource and the current document. Examples(non-exhaustive list) of values are `nofollow`, `search`, and `tag`.',
65
+ type: 'string',
66
+ status: 'optional'
67
+ },
68
+ to: {
69
+ doc: 'Use this property only if you are using a router Link component as the `element` that uses the `to` property to declare the navigation url.',
70
+ type: 'string',
71
+ status: 'optional'
72
+ },
73
+ wrap: {
74
+ doc: 'If set to `true` the button text will wrap in to new lines if the overflow point is reached. Defaults to `false`.',
75
+ type: 'boolean',
76
+ status: 'optional'
77
+ },
78
+ stretch: {
79
+ doc: 'Set it to `true` in order to stretch the button to the available space. Defaults to false.',
80
+ type: 'boolean',
81
+ status: 'optional'
82
+ },
83
+ bounding: {
84
+ doc: 'Set it to `true` in order to extend the bounding box (above the visual button background). You may also look into the HTML class `dnb-button__bounding` if it needs some CSS customization in order to get the particular button right for your use-case.',
85
+ type: 'boolean',
86
+ status: 'optional'
87
+ },
88
+ element: {
89
+ doc: 'Only meant to be used for special use cases. Defaults to `button` or `a` depending if href is set or not.',
90
+ type: 'string',
91
+ status: 'optional'
92
+ },
93
+ custom_content: {
94
+ doc: 'If you need to inject completely custom markup (React Element) into the button component. You have then to handle alignment and styling by yourself.',
95
+ type: 'React.ReactNode',
96
+ status: 'optional'
97
+ },
98
+ skeleton: {
99
+ doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',
100
+ type: 'boolean',
101
+ status: 'optional'
102
+ },
103
+ tooltip: {
104
+ doc: 'Provide a string or a React Element to be shown as the tooltip content.',
105
+ type: ['string', 'React.ReactNode'],
106
+ status: 'optional'
107
+ },
108
+ status: {
109
+ doc: 'Set it to either `status="error"` or a text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.',
110
+ type: ['error', 'info', 'boolean'],
111
+ status: 'optional'
112
+ },
113
+ status_state: {
114
+ doc: 'Defines the state of the status. Currently there are two statuses `[error, info]`. Defaults to `error`.',
115
+ type: ['error', 'info'],
116
+ status: 'optional'
117
+ },
118
+ status_props: {
119
+ doc: 'Use an object to define additional FormStatus properties.',
120
+ type: 'object',
121
+ status: 'optional'
122
+ },
123
+ globalStatus: {
124
+ doc: 'The [configuration](/uilib/components/global-status/properties/#configuration-object) used for the target [GlobalStatus](/uilib/components/global-status).',
125
+ type: 'object',
126
+ status: 'optional'
127
+ },
128
+ '[Space](/uilib/layout/space/properties)': {
129
+ doc: 'Spacing properties like `top` or `bottom` are supported.',
130
+ type: ['string', 'object'],
131
+ status: 'optional'
132
+ }
133
+ };
134
+ exports.ButtonProperties = ButtonProperties;
135
+ //# sourceMappingURL=ButtonDocs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ButtonDocs.js","names":["ButtonProperties","type","doc","status","text","title","variant","size","icon","icon_position","icon_size","href","target","rel","to","wrap","stretch","bounding","element","custom_content","skeleton","tooltip","status_state","status_props","globalStatus","exports"],"sources":["../../../../src/components/button/ButtonDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const ButtonProperties: PropertiesTableProps = {\n type: {\n doc: 'The type HTML attribute. Defaults to `button` for legacy reasons.',\n type: ['button', 'reset', 'submit'],\n status: 'optional',\n },\n text: {\n doc: 'The content of the button can be a string or a React Element.',\n type: ['string', 'React.ReactNode'],\n status: 'optional',\n },\n 'aria-label': {\n doc: 'Required if there is no text in the button. If `text` and `children` are undefined, setting the `title` property will automatically set `aria-label` with the same value.',\n type: 'string',\n status: 'optional',\n },\n title: {\n doc: 'Required if there is no text in the button. If `text` and `children` are undefined, setting the `title` property will automatically set `aria-label` with the same value.',\n type: 'string',\n status: 'optional',\n },\n variant: {\n doc: 'Defines the kind of button. Possible values are `primary`, `secondary`, `tertiary` and `signal`. Defaults to `primary` (or `secondary` if icon only).',\n type: ['primary', 'secondary', 'tertiary', 'signal'],\n status: 'optional',\n },\n size: {\n doc: 'The size of the button. For now there is `small`, `medium`, `default` and `large`.',\n type: ['small', 'medium', 'default', 'large'],\n status: 'optional',\n },\n icon: {\n doc: 'To be included in the button. [Primary Icons](/icons/primary) can be set as a string (e.g. `icon=\"chevron_right\"`), other icons should be set as React elements.',\n type: ['string', 'React.ReactNode'],\n status: 'optional',\n },\n icon_position: {\n doc: 'Position of icon inside the button. Set to `left` or `right`. Tertiary button variant also supports `top`. Defaults to `right` if not set.',\n type: ['left', 'right', 'top'],\n status: 'optional',\n },\n icon_size: {\n doc: 'Define icon width and height. Defaults to 16px.',\n type: 'string',\n status: 'optional',\n },\n href: {\n doc: 'If you want the button to behave as a link. Use with caution! A link should normally visually be a link and not a button.',\n type: 'string',\n status: 'optional',\n },\n target: {\n doc: 'When button behaves as a link. Used to specify where to open the linked document, specified by `href`. Possible values are `_self`, `_blank`, `_parent` and `_top`.',\n type: ['_self', '_blank', '_parent', '_top'],\n status: 'optional',\n },\n rel: {\n doc: 'When button behaves as a link. Used to specify the relationship between a linked resource and the current document. Examples(non-exhaustive list) of values are `nofollow`, `search`, and `tag`.',\n type: 'string',\n status: 'optional',\n },\n to: {\n doc: 'Use this property only if you are using a router Link component as the `element` that uses the `to` property to declare the navigation url.',\n type: 'string',\n status: 'optional',\n },\n wrap: {\n doc: 'If set to `true` the button text will wrap in to new lines if the overflow point is reached. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n stretch: {\n doc: 'Set it to `true` in order to stretch the button to the available space. Defaults to false.',\n type: 'boolean',\n status: 'optional',\n },\n bounding: {\n doc: 'Set it to `true` in order to extend the bounding box (above the visual button background). You may also look into the HTML class `dnb-button__bounding` if it needs some CSS customization in order to get the particular button right for your use-case.',\n type: 'boolean',\n status: 'optional',\n },\n element: {\n doc: 'Only meant to be used for special use cases. Defaults to `button` or `a` depending if href is set or not.',\n type: 'string',\n status: 'optional',\n },\n custom_content: {\n doc: 'If you need to inject completely custom markup (React Element) into the button component. You have then to handle alignment and styling by yourself.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n skeleton: {\n doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',\n type: 'boolean',\n status: 'optional',\n },\n tooltip: {\n doc: 'Provide a string or a React Element to be shown as the tooltip content.',\n type: ['string', 'React.ReactNode'],\n status: 'optional',\n },\n status: {\n doc: 'Set it to either `status=\"error\"` or a text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.',\n type: ['error', 'info', 'boolean'],\n status: 'optional',\n },\n status_state: {\n doc: 'Defines the state of the status. Currently there are two statuses `[error, info]`. Defaults to `error`.',\n type: ['error', 'info'],\n status: 'optional',\n },\n status_props: {\n doc: 'Use an object to define additional FormStatus properties.',\n type: 'object',\n status: 'optional',\n },\n globalStatus: {\n doc: 'The [configuration](/uilib/components/global-status/properties/#configuration-object) used for the target [GlobalStatus](/uilib/components/global-status).',\n type: 'object',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n"],"mappings":"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"}
@@ -26,6 +26,7 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
26
26
  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; }
27
27
  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; }
28
28
  function Card(props) {
29
+ var _ref;
29
30
  const nestedContext = (0, _react.useContext)(_CardContext.default);
30
31
  const {
31
32
  className,
@@ -93,7 +94,7 @@ function Card(props) {
93
94
  alignSelf: alignSelf,
94
95
  align: stack ? 'stretch' : align,
95
96
  wrap: !stack,
96
- gap: stack ? 'medium' : (gap !== null && gap !== void 0 ? gap : spacing) || false,
97
+ gap: (_ref = gap !== null && gap !== void 0 ? gap : spacing) !== null && _ref !== void 0 ? _ref : stack ? 'medium' : false,
97
98
  rowGap: rowGap || false
98
99
  }, title && _react.default.createElement(_Space.default, {
99
100
  id: titleId,
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Flex","_Section","_componentHelper","_CardContext","_Space","_useId","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","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","Card","props","nestedContext","useContext","CardContext","className","stack","direction","gap","spacing","innerSpace","alignSelf","align","divider","rowGap","responsive","isNested","filled","outset","title","children","rest","titleId","useId","falseWhenSmall","small","medium","large","trueWhenSmall","basisSpace","top","right","bottom","left","smallSpace","params","SectionParams","classnames","breakout","roundedCorner","outline","combineLabelledBy","createElement","Item","element","Provider","Container","wrap","id","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/card/Card.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport Flex from '../flex/Flex'\nimport { SectionParams, SectionProps } from '../section/Section'\nimport { combineLabelledBy } from '../../shared/component-helper'\nimport CardContext from './CardContext'\nimport Space from '../Space'\nimport useId from '../../shared/helpers/useId'\n\nimport type { BasicProps as FlexContainerProps } from '../flex/Container'\nimport type { BasicProps as FlexItemProps } from '../flex/Item'\nimport type { SpaceTypeMedia } from '../../shared/types'\nimport type { SpaceProps } from '../Space'\n\nexport type Props = {\n /**\n * Define a title that appears on top of the Card\n */\n title?: React.ReactNode\n\n /**\n * Define if the Card should behave responsive. Defaults to `true`\n */\n responsive?: boolean\n\n /**\n * Define if the Card should get the same background color as the outline border\n */\n filled?: boolean\n} & FlexContainerProps &\n Pick<SectionProps, 'outset'> &\n FlexItemProps & {\n stack?: boolean\n } & SpaceProps &\n Omit<React.HTMLProps<HTMLElement>, 'ref' | 'wrap' | 'size' | 'title'>\n\nfunction Card(props: Props) {\n const nestedContext = useContext(CardContext)\n\n const {\n className,\n stack,\n direction,\n gap,\n spacing,\n innerSpace,\n alignSelf = 'stretch',\n align,\n divider = 'space',\n rowGap,\n responsive = !nestedContext?.isNested,\n filled,\n outset,\n title,\n children,\n ...rest\n } = props\n\n const titleId = useId()\n const falseWhenSmall = { small: false, medium: true, large: true }\n const trueWhenSmall = { small: true, medium: false, large: false }\n const basisSpace = {\n top: 'medium',\n right: 'medium',\n bottom: 'large',\n left: 'medium',\n }\n const smallSpace = responsive\n ? {\n ...basisSpace,\n right: 0,\n left: 0,\n }\n : basisSpace\n\n const params = SectionParams({\n className: classnames(\n 'dnb-card',\n className,\n responsive && 'dnb-card--responsive',\n filled && 'dnb-card--filled'\n ),\n breakout: responsive ? trueWhenSmall : false,\n outset: nestedContext?.isNested\n ? false\n : outset === true\n ? falseWhenSmall\n : outset,\n roundedCorner: responsive ? falseWhenSmall : true,\n outline: '--outline-card-color',\n innerSpace:\n innerSpace ??\n ({\n small: smallSpace,\n medium: basisSpace,\n large: basisSpace,\n } as SpaceTypeMedia),\n ...(rest as SectionProps),\n 'aria-labelledby': combineLabelledBy(rest, title && titleId),\n })\n\n return (\n <Flex.Item alignSelf={alignSelf} element=\"section\" {...params}>\n <CardContext.Provider value={{ isNested: true }}>\n <Flex.Container\n direction={direction ?? 'vertical'}\n divider={divider}\n alignSelf={alignSelf}\n align={stack ? 'stretch' : align}\n wrap={!stack}\n gap={stack ? 'medium' : (gap ?? spacing) || false}\n rowGap={rowGap || false}\n >\n {title && (\n <Space id={titleId} className=\"dnb-card__title\">\n {title}\n </Space>\n )}\n {children}\n </Flex.Container>\n </CardContext.Provider>\n </Flex.Item>\n )\n}\n\nCard._supportsSpacingProps = true\n\nexport default Card\n"],"mappings":"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"}
1
+ {"version":3,"file":"Card.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Flex","_Section","_componentHelper","_CardContext","_Space","_useId","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","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","Card","props","_ref","nestedContext","useContext","CardContext","className","stack","direction","gap","spacing","innerSpace","alignSelf","align","divider","rowGap","responsive","isNested","filled","outset","title","children","rest","titleId","useId","falseWhenSmall","small","medium","large","trueWhenSmall","basisSpace","top","right","bottom","left","smallSpace","params","SectionParams","classnames","breakout","roundedCorner","outline","combineLabelledBy","createElement","Item","element","Provider","Container","wrap","id","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/card/Card.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport Flex from '../flex/Flex'\nimport { SectionParams, SectionProps } from '../section/Section'\nimport { combineLabelledBy } from '../../shared/component-helper'\nimport CardContext from './CardContext'\nimport Space from '../Space'\nimport useId from '../../shared/helpers/useId'\n\nimport type { BasicProps as FlexContainerProps } from '../flex/Container'\nimport type { BasicProps as FlexItemProps } from '../flex/Item'\nimport type { SpaceTypeMedia } from '../../shared/types'\nimport type { SpaceProps } from '../Space'\n\nexport type Props = {\n /**\n * Define a title that appears on top of the Card\n */\n title?: React.ReactNode\n\n /**\n * Define if the Card should behave responsive. Defaults to `true`\n */\n responsive?: boolean\n\n /**\n * Define if the Card should get the same background color as the outline border\n */\n filled?: boolean\n} & FlexContainerProps &\n Pick<SectionProps, 'outset'> &\n FlexItemProps & {\n stack?: boolean\n } & SpaceProps &\n Omit<React.HTMLProps<HTMLElement>, 'ref' | 'wrap' | 'size' | 'title'>\n\nfunction Card(props: Props) {\n const nestedContext = useContext(CardContext)\n\n const {\n className,\n stack,\n direction,\n gap,\n spacing,\n innerSpace,\n alignSelf = 'stretch',\n align,\n divider = 'space',\n rowGap,\n responsive = !nestedContext?.isNested,\n filled,\n outset,\n title,\n children,\n ...rest\n } = props\n\n const titleId = useId()\n const falseWhenSmall = { small: false, medium: true, large: true }\n const trueWhenSmall = { small: true, medium: false, large: false }\n const basisSpace = {\n top: 'medium',\n right: 'medium',\n bottom: 'large',\n left: 'medium',\n }\n const smallSpace = responsive\n ? {\n ...basisSpace,\n right: 0,\n left: 0,\n }\n : basisSpace\n\n const params = SectionParams({\n className: classnames(\n 'dnb-card',\n className,\n responsive && 'dnb-card--responsive',\n filled && 'dnb-card--filled'\n ),\n breakout: responsive ? trueWhenSmall : false,\n outset: nestedContext?.isNested\n ? false\n : outset === true\n ? falseWhenSmall\n : outset,\n roundedCorner: responsive ? falseWhenSmall : true,\n outline: '--outline-card-color',\n innerSpace:\n innerSpace ??\n ({\n small: smallSpace,\n medium: basisSpace,\n large: basisSpace,\n } as SpaceTypeMedia),\n ...(rest as SectionProps),\n 'aria-labelledby': combineLabelledBy(rest, title && titleId),\n })\n\n return (\n <Flex.Item alignSelf={alignSelf} element=\"section\" {...params}>\n <CardContext.Provider value={{ isNested: true }}>\n <Flex.Container\n direction={direction ?? 'vertical'}\n divider={divider}\n alignSelf={alignSelf}\n align={stack ? 'stretch' : align}\n wrap={!stack}\n gap={gap ?? spacing ?? (stack ? 'medium' : false)}\n rowGap={rowGap || false}\n >\n {title && (\n <Space id={titleId} className=\"dnb-card__title\">\n {title}\n </Space>\n )}\n {children}\n </Flex.Container>\n </CardContext.Provider>\n </Flex.Item>\n )\n}\n\nCard._supportsSpacingProps = true\n\nexport default Card\n"],"mappings":"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"}
@@ -210,6 +210,10 @@ export type DatePickerProps = {
210
210
  * Use `right` to change the calendar alignment direction. Defaults to `left`.
211
211
  */
212
212
  alignPicker?: 'auto' | 'left' | 'right';
213
+ /**
214
+ * If set to `true`, the calendar will not be rendered inside a react portal. Defaults to `false`.
215
+ */
216
+ skipPortal?: boolean;
213
217
  className?: string;
214
218
  /**
215
219
  * Will be called right before every new calendar view gets rendered. See the example above.
@@ -24,9 +24,10 @@ var _DatePickerFooter = _interopRequireDefault(require("./DatePickerFooter"));
24
24
  var _filterValidProps = require("../../shared/helpers/filterValidProps");
25
25
  var _shared = require("../../shared");
26
26
  var _withSnakeCaseProps = require("../../shared/helpers/withSnakeCaseProps");
27
+ var _DatePickerPortal = _interopRequireDefault(require("./DatePickerPortal"));
27
28
  var _AlignmentHelper;
28
29
  const _excluded = ["hidePicker"],
29
- _excluded2 = ["label", "title", "labelDirection", "labelSrOnly", "onlyMonth", "hideLastWeek", "disableAutofocus", "hideNavigationButtons", "firstDay", "resetDate", "link", "sync", "inputElement", "addonElement", "shortcuts", "disabled", "stretch", "skeleton", "size", "status", "statusState", "statusProps", "statusNoAnimation", "globalStatus", "suffix", "maskOrder", "maskPlaceholder", "submitButtonText", "cancelButtonText", "resetButtonText", "showResetButton", "className", "tooltip"];
30
+ _excluded2 = ["label", "title", "labelDirection", "labelSrOnly", "onlyMonth", "hideLastWeek", "disableAutofocus", "hideNavigationButtons", "firstDay", "resetDate", "link", "sync", "inputElement", "addonElement", "shortcuts", "disabled", "stretch", "skeleton", "size", "status", "statusState", "statusProps", "statusNoAnimation", "globalStatus", "suffix", "maskOrder", "maskPlaceholder", "submitButtonText", "cancelButtonText", "resetButtonText", "showResetButton", "className", "tooltip", "skipPortal"];
30
31
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
32
  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); }
32
33
  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; }
@@ -62,7 +63,8 @@ const defaultProps = {
62
63
  statusState: 'error',
63
64
  opened: false,
64
65
  noAnimation: false,
65
- direction: 'auto'
66
+ direction: 'auto',
67
+ skipPortal: false
66
68
  };
67
69
  function DatePicker(externalProps) {
68
70
  const props = _objectSpread(_objectSpread({}, defaultProps), externalProps);
@@ -96,6 +98,7 @@ function DatePicker(externalProps) {
96
98
  const getReturnObject = (0, _react.useRef)();
97
99
  const hideTimeout = (0, _react.useRef)();
98
100
  const outsideClick = (0, _react.useRef)();
101
+ const calendarContainerRef = (0, _react.useRef)();
99
102
  const translation = (0, _shared.useTranslation)().DatePicker;
100
103
  if (endDateProp && !range) {
101
104
  (0, _componentHelper.warn)(`The DatePicker got a "endDate". You have to set range={true} as well!.`);
@@ -129,7 +132,7 @@ function DatePicker(externalProps) {
129
132
  removeOutsideClickHandler();
130
133
  }, [noAnimation, preventClose, onHide, removeOutsideClickHandler]);
131
134
  const setOutsideClickHandler = (0, _react.useCallback)(() => {
132
- outsideClick.current = (0, _componentHelper.detectOutsideClick)(innerRef.current, _ref => {
135
+ outsideClick.current = (0, _componentHelper.detectOutsideClick)([innerRef.current, calendarContainerRef], _ref => {
133
136
  let {
134
137
  event
135
138
  } = _ref;
@@ -163,9 +166,13 @@ function DatePicker(externalProps) {
163
166
  setOpened(true);
164
167
  setHidden(false);
165
168
  onShow === null || onShow === void 0 ? void 0 : onShow(_objectSpread({}, getReturnObject.current(event)));
166
- setTrianglePosition();
167
169
  setOutsideClickHandler();
168
- }, [setTrianglePosition, setOutsideClickHandler, onShow]);
170
+ }, [setOutsideClickHandler, onShow]);
171
+ (0, _react.useLayoutEffect)(() => {
172
+ if (!hidden) {
173
+ setTrianglePosition();
174
+ }
175
+ }, [hidden, setTrianglePosition]);
169
176
  (0, _react.useEffect)(() => {
170
177
  if (openedProp) {
171
178
  showPicker();
@@ -257,7 +264,8 @@ function DatePicker(externalProps) {
257
264
  resetButtonText,
258
265
  showResetButton,
259
266
  className,
260
- tooltip
267
+ tooltip,
268
+ skipPortal
261
269
  } = extendedProps,
262
270
  restProps = _objectWithoutProperties(extendedProps, _excluded2);
263
271
  const attributes = (0, _react.useMemo)(() => filterOutNonAttributes(restProps), [restProps]);
@@ -279,6 +287,7 @@ function DatePicker(externalProps) {
279
287
  className: (0, _classnames.default)("dnb-date-picker dnb-form-component", (range || showSubmitButton || showCancelButton || showResetButton) && 'dnb-date-picker--show-footer', (0, _SpacingHelper.createSpacingClasses)(props), className, status && `dnb-date-picker__status--${statusState}`, labelDirection && `dnb-date-picker--${labelDirection}`, opened && 'dnb-date-picker--opened', hidden && 'dnb-date-picker--hidden', showInput && 'dnb-date-picker--show-input', alignPicker && `dnb-date-picker--${alignPicker}`, stretch && `dnb-date-picker--stretch`, size && `dnb-date-picker--${size}`),
280
288
  lang: context.locale
281
289
  };
290
+ const containerClassNames = (0, _classnames.default)('dnb-date-picker__container', opened ? 'dnb-date-picker__container--opened' : 'dnb-date-picker__container--closed', hidden && 'dnb-date-picker__container--hidden', showInput && 'dnb-date-picker__container--show-input', alignPicker && `dnb-date-picker__container--${alignPicker}`, size && `dnb-date-picker--${size}`);
282
291
  const remainingDOMProps = (0, _componentHelper.validateDOMAttributes)(props, attributes);
283
292
  const remainingSubmitProps = (0, _componentHelper.validateDOMAttributes)(null, submitParams);
284
293
  const remainingPickerProps = (0, _componentHelper.validateDOMAttributes)(null, (0, _SkeletonHelper.skeletonDOMAttributes)(pickerParams, skeleton, context));
@@ -334,12 +343,17 @@ function DatePicker(externalProps) {
334
343
  }, attributes, {
335
344
  submitAttributes: remainingSubmitProps,
336
345
  onSubmit: togglePicker
337
- }, statusProps)), _react.default.createElement("span", {
338
- className: "dnb-date-picker__container"
346
+ }, statusProps)), !hidden && _react.default.createElement(_DatePickerPortal.default, {
347
+ alignment: alignPicker,
348
+ skipPortal: skipPortal,
349
+ targetElementRef: innerRef
350
+ }, _react.default.createElement("span", {
351
+ className: containerClassNames,
352
+ ref: calendarContainerRef
339
353
  }, _react.default.createElement("span", {
340
354
  className: "dnb-date-picker__triangle",
341
355
  ref: triangleRef
342
- }), !hidden && _react.default.createElement(_react.default.Fragment, null, _react.default.createElement(_DatePickerRange.default, {
356
+ }), _react.default.createElement(_DatePickerRange.default, {
343
357
  id: id,
344
358
  firstDayOfWeek: firstDay,
345
359
  resetDate: resetDate,
@@ -377,7 +391,7 @@ function DatePicker(externalProps) {
377
391
  "aria-live": "assertive"
378
392
  }, selectedDateTitle)));
379
393
  }
380
- const NonAttributes = ['locale', 'id', 'month', 'date', 'startDate', 'endDate', 'minDate', 'maxDate', 'enableKeyboardNav', 'hideNavigation', 'returnFormat', 'dateFormat', 'hideDays', 'correctInvalidDate', 'opened', 'direction', 'range', 'showInput', 'noAnimation', 'onDaysRender', 'onShow', 'onType', 'onHide', 'showSubmitButton', 'showCancelButton', 'selectedDate', 'selectedMonth', 'selectedYear', 'nextMonth', 'nextYear', 'openPickerText', 'placeholderCharacters', 'prevMonth', 'prevYear', 'endMonth', 'startMonth', 'alignPicker'];
394
+ const NonAttributes = ['locale', 'id', 'month', 'date', 'startDate', 'endDate', 'minDate', 'maxDate', 'enableKeyboardNav', 'hideNavigation', 'returnFormat', 'dateFormat', 'hideDays', 'correctInvalidDate', 'opened', 'direction', 'range', 'showInput', 'noAnimation', 'onDaysRender', 'onShow', 'onType', 'onHide', 'showSubmitButton', 'showCancelButton', 'selectedDate', 'selectedMonth', 'selectedYear', 'nextMonth', 'nextYear', 'openPickerText', 'placeholderCharacters', 'prevMonth', 'prevYear', 'endMonth', 'startMonth', 'alignPicker', 'preventClose'];
381
395
  function filterOutNonAttributes(props) {
382
396
  return Object.keys(props).reduce((attributes, key) => {
383
397
  if (!NonAttributes.includes(key)) {