@dnb/eufemia 10.4.2 → 10.6.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 (1473) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/cjs/components/accordion/Accordion.d.ts +240 -136
  3. package/cjs/components/accordion/Accordion.js +217 -252
  4. package/cjs/components/accordion/Accordion.js.map +1 -1
  5. package/cjs/components/accordion/AccordionContent.d.ts +12 -14
  6. package/cjs/components/accordion/AccordionContent.js +3 -15
  7. package/cjs/components/accordion/AccordionContent.js.map +1 -1
  8. package/cjs/components/accordion/AccordionContext.d.ts +17 -2
  9. package/cjs/components/accordion/AccordionContext.js.map +1 -1
  10. package/cjs/components/accordion/AccordionGroup.d.ts +10 -12
  11. package/cjs/components/accordion/AccordionGroup.js +63 -72
  12. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  13. package/cjs/components/accordion/AccordionHeader.d.ts +62 -92
  14. package/cjs/components/accordion/AccordionHeader.js +178 -251
  15. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  16. package/cjs/components/accordion/AccordionProviderContext.d.ts +16 -2
  17. package/cjs/components/accordion/AccordionProviderContext.js.map +1 -1
  18. package/cjs/components/accordion/AccordionStore.d.ts +7 -6
  19. package/cjs/components/accordion/AccordionStore.js +1 -1
  20. package/cjs/components/accordion/AccordionStore.js.map +1 -1
  21. package/cjs/components/accordion/defaultProps.d.ts +2 -0
  22. package/cjs/components/accordion/defaultProps.js +12 -0
  23. package/cjs/components/accordion/defaultProps.js.map +1 -0
  24. package/cjs/components/anchor/style/anchor-mixins.scss +26 -27
  25. package/cjs/components/anchor/style/dnb-anchor.css +27 -16
  26. package/cjs/components/anchor/style/dnb-anchor.min.css +1 -1
  27. package/cjs/components/anchor/style/dnb-anchor.scss +1 -1
  28. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +97 -44
  29. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  30. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +48 -22
  31. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.css +20 -10
  32. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  33. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.scss +4 -9
  34. package/cjs/components/autocomplete/Autocomplete.js +2 -2
  35. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  36. package/cjs/components/button/style/themes/button-mixins.scss +23 -4
  37. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +80 -82
  38. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -1
  39. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +82 -54
  40. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  41. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  42. package/cjs/components/dialog/Dialog.d.ts +1 -1
  43. package/cjs/components/dialog/DialogContent.d.ts +1 -1
  44. package/cjs/components/dialog/DialogContent.js +4 -2
  45. package/cjs/components/dialog/DialogContent.js.map +1 -1
  46. package/cjs/components/dialog/parts/DialogAction.d.ts +5 -1
  47. package/cjs/components/dialog/parts/DialogAction.js +3 -2
  48. package/cjs/components/dialog/parts/DialogAction.js.map +1 -1
  49. package/cjs/components/form-row/FormRow.js.map +1 -1
  50. package/cjs/components/form-row/style/dnb-form-row.scss +2 -2
  51. package/cjs/components/form-set/FormSet.js.map +1 -1
  52. package/cjs/components/height-animation/HeightAnimation.d.ts +1 -1
  53. package/cjs/components/height-animation/HeightAnimation.js.map +1 -1
  54. package/cjs/components/height-animation/useHeightAnimation.js.map +1 -1
  55. package/cjs/components/icon/lib/SvgComparison.js.map +1 -1
  56. package/cjs/components/input/style/dnb-input.css +5 -0
  57. package/cjs/components/input/style/dnb-input.min.css +1 -1
  58. package/cjs/components/input/style/dnb-input.scss +7 -1
  59. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.css +104 -0
  60. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -0
  61. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.scss +126 -0
  62. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  63. package/cjs/components/input-masked/TextMask.js.map +1 -1
  64. package/cjs/components/modal/Modal.js +0 -2
  65. package/cjs/components/modal/Modal.js.map +1 -1
  66. package/cjs/components/modal/bodyScrollLock.js.map +1 -1
  67. package/cjs/components/number-format/NumberUtils.js +8 -6
  68. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  69. package/cjs/components/number-format/style/dnb-number-format.css +0 -7
  70. package/cjs/components/number-format/style/dnb-number-format.scss +0 -1
  71. package/cjs/components/pagination/PaginationInfinity.js.map +1 -1
  72. package/cjs/components/radio/Radio.js.map +1 -1
  73. package/cjs/components/section/style/themes/dnb-section-theme-ui.css +14 -7
  74. package/cjs/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  75. package/cjs/components/slider/hooks/useSliderEvents.js.map +1 -1
  76. package/cjs/components/slider/types.d.ts +1 -1
  77. package/cjs/components/slider/types.js.map +1 -1
  78. package/cjs/components/space/Space.d.ts +2 -2
  79. package/cjs/components/space/SpacingHelper.js.map +1 -1
  80. package/cjs/components/step-indicator/StepIndicatorProps.d.ts +1 -1
  81. package/cjs/components/table/TableAccordion.js.map +1 -1
  82. package/cjs/components/table/TableTr.js.map +1 -1
  83. package/cjs/components/textarea/Textarea.js.map +1 -1
  84. package/cjs/components/textarea/style/dnb-textarea.css +39 -1
  85. package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
  86. package/cjs/components/textarea/style/dnb-textarea.scss +20 -1
  87. package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +61 -0
  88. package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -0
  89. package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +72 -0
  90. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.css +0 -41
  91. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  92. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.scss +0 -22
  93. package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
  94. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  95. package/cjs/components/tooltip/TooltipContainer.js.map +1 -1
  96. package/cjs/components/upload/Upload.js +2 -2
  97. package/cjs/components/upload/Upload.js.map +1 -1
  98. package/cjs/components/upload/useUpload.d.ts +1 -1
  99. package/cjs/components/upload/useUpload.js +2 -2
  100. package/cjs/components/upload/useUpload.js.map +1 -1
  101. package/cjs/elements/blockquote/Blockquote.d.ts +1 -1
  102. package/cjs/elements/blockquote/Blockquote.js.map +1 -1
  103. package/cjs/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +0 -2
  104. package/cjs/extensions/forms/DataContext/At.d.ts +13 -0
  105. package/cjs/extensions/forms/DataContext/At.js +60 -0
  106. package/cjs/extensions/forms/DataContext/At.js.map +1 -0
  107. package/cjs/extensions/forms/DataContext/Context.d.ts +19 -0
  108. package/cjs/extensions/forms/DataContext/Context.js +25 -0
  109. package/cjs/extensions/forms/DataContext/Context.js.map +1 -0
  110. package/cjs/extensions/forms/DataContext/Provider.d.ts +19 -0
  111. package/cjs/extensions/forms/DataContext/Provider.js +112 -0
  112. package/cjs/extensions/forms/DataContext/Provider.js.map +1 -0
  113. package/cjs/extensions/forms/DataContext/SubmitButton.d.ts +9 -0
  114. package/cjs/extensions/forms/DataContext/SubmitButton.js +30 -0
  115. package/cjs/extensions/forms/DataContext/SubmitButton.js.map +1 -0
  116. package/cjs/extensions/forms/DataContext/index.d.ts +13 -0
  117. package/cjs/extensions/forms/DataContext/index.js +20 -0
  118. package/cjs/extensions/forms/DataContext/index.js.map +1 -0
  119. package/cjs/extensions/forms/Field/ArraySelection.d.ts +12 -0
  120. package/cjs/extensions/forms/Field/ArraySelection.js +68 -0
  121. package/cjs/extensions/forms/Field/ArraySelection.js.map +1 -0
  122. package/cjs/extensions/forms/Field/BankAccountNumber.d.ts +10 -0
  123. package/cjs/extensions/forms/Field/BankAccountNumber.js +40 -0
  124. package/cjs/extensions/forms/Field/BankAccountNumber.js.map +1 -0
  125. package/cjs/extensions/forms/Field/Boolean.d.ts +10 -0
  126. package/cjs/extensions/forms/Field/Boolean.js +34 -0
  127. package/cjs/extensions/forms/Field/Boolean.js.map +1 -0
  128. package/cjs/extensions/forms/Field/Currency.d.ts +10 -0
  129. package/cjs/extensions/forms/Field/Currency.js +61 -0
  130. package/cjs/extensions/forms/Field/Currency.js.map +1 -0
  131. package/cjs/extensions/forms/Field/Date.d.ts +8 -0
  132. package/cjs/extensions/forms/Field/Date.js +59 -0
  133. package/cjs/extensions/forms/Field/Date.js.map +1 -0
  134. package/cjs/extensions/forms/Field/Email.d.ts +7 -0
  135. package/cjs/extensions/forms/Field/Email.js +34 -0
  136. package/cjs/extensions/forms/Field/Email.js.map +1 -0
  137. package/cjs/extensions/forms/Field/FirstName.d.ts +7 -0
  138. package/cjs/extensions/forms/Field/FirstName.js +31 -0
  139. package/cjs/extensions/forms/Field/FirstName.js.map +1 -0
  140. package/cjs/extensions/forms/Field/LastName.d.ts +7 -0
  141. package/cjs/extensions/forms/Field/LastName.js +31 -0
  142. package/cjs/extensions/forms/Field/LastName.js.map +1 -0
  143. package/cjs/extensions/forms/Field/NationalIdentityNumber.d.ts +10 -0
  144. package/cjs/extensions/forms/Field/NationalIdentityNumber.js +39 -0
  145. package/cjs/extensions/forms/Field/NationalIdentityNumber.js.map +1 -0
  146. package/cjs/extensions/forms/Field/Number.d.ts +31 -0
  147. package/cjs/extensions/forms/Field/Number.js +111 -0
  148. package/cjs/extensions/forms/Field/Number.js.map +1 -0
  149. package/cjs/extensions/forms/Field/Option.d.ts +9 -0
  150. package/cjs/extensions/forms/Field/Option.js +22 -0
  151. package/cjs/extensions/forms/Field/Option.js.map +1 -0
  152. package/cjs/extensions/forms/Field/OrganizationNumber.d.ts +10 -0
  153. package/cjs/extensions/forms/Field/OrganizationNumber.js +40 -0
  154. package/cjs/extensions/forms/Field/OrganizationNumber.js.map +1 -0
  155. package/cjs/extensions/forms/Field/PhoneNumber.d.ts +12 -0
  156. package/cjs/extensions/forms/Field/PhoneNumber.js +101 -0
  157. package/cjs/extensions/forms/Field/PhoneNumber.js.map +1 -0
  158. package/cjs/extensions/forms/Field/PostalCodeAndCity.d.ts +10 -0
  159. package/cjs/extensions/forms/Field/PostalCodeAndCity.js +59 -0
  160. package/cjs/extensions/forms/Field/PostalCodeAndCity.js.map +1 -0
  161. package/cjs/extensions/forms/Field/SelectCountry.d.ts +7 -0
  162. package/cjs/extensions/forms/Field/SelectCountry.js +38 -0
  163. package/cjs/extensions/forms/Field/SelectCountry.js.map +1 -0
  164. package/cjs/extensions/forms/Field/Selection.d.ts +13 -0
  165. package/cjs/extensions/forms/Field/Selection.js +120 -0
  166. package/cjs/extensions/forms/Field/Selection.js.map +1 -0
  167. package/cjs/extensions/forms/Field/String.d.ts +32 -0
  168. package/cjs/extensions/forms/Field/String.js +135 -0
  169. package/cjs/extensions/forms/Field/String.js.map +1 -0
  170. package/cjs/extensions/forms/Field/Toggle.d.ts +14 -0
  171. package/cjs/extensions/forms/Field/Toggle.js +129 -0
  172. package/cjs/extensions/forms/Field/Toggle.js.map +1 -0
  173. package/cjs/extensions/forms/Field/fields.scss +2 -0
  174. package/cjs/extensions/forms/Field/hooks/index.d.ts +1 -0
  175. package/cjs/extensions/forms/Field/hooks/index.js +14 -0
  176. package/cjs/extensions/forms/Field/hooks/index.js.map +1 -0
  177. package/cjs/extensions/forms/Field/hooks/useField.d.ts +11 -0
  178. package/cjs/extensions/forms/Field/hooks/useField.js +163 -0
  179. package/cjs/extensions/forms/Field/hooks/useField.js.map +1 -0
  180. package/cjs/extensions/forms/Field/index.d.ts +39 -0
  181. package/cjs/extensions/forms/Field/index.js +48 -0
  182. package/cjs/extensions/forms/Field/index.js.map +1 -0
  183. package/cjs/extensions/forms/Field/style/dnb-number.css +11 -0
  184. package/cjs/extensions/forms/Field/style/dnb-number.min.css +1 -0
  185. package/cjs/extensions/forms/Field/style/dnb-number.scss +19 -0
  186. package/cjs/extensions/forms/Field/style/dnb-phone-number.css +23 -0
  187. package/cjs/extensions/forms/Field/style/dnb-phone-number.min.css +1 -0
  188. package/cjs/extensions/forms/Field/style/dnb-phone-number.scss +28 -0
  189. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.css +19 -0
  190. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -0
  191. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.scss +25 -0
  192. package/cjs/extensions/forms/Field/style/dnb-selection.css +6 -0
  193. package/cjs/extensions/forms/Field/style/dnb-selection.min.css +1 -0
  194. package/cjs/extensions/forms/Field/style/dnb-selection.scss +15 -0
  195. package/cjs/extensions/forms/Field/style/dnb-string.css +11 -0
  196. package/cjs/extensions/forms/Field/style/dnb-string.min.css +1 -0
  197. package/cjs/extensions/forms/Field/style/dnb-string.scss +19 -0
  198. package/cjs/extensions/forms/Field/style/index.d.ts +6 -0
  199. package/cjs/extensions/forms/Field/style/index.js +5 -0
  200. package/cjs/extensions/forms/Field/style/index.js.map +1 -0
  201. package/cjs/extensions/forms/Field/style/index.scss +5 -0
  202. package/cjs/extensions/forms/Field/style.d.ts +5 -0
  203. package/cjs/extensions/forms/Field/style.js +4 -0
  204. package/cjs/extensions/forms/Field/style.js.map +1 -0
  205. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +12 -0
  206. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +77 -0
  207. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -0
  208. package/cjs/extensions/forms/FieldBlock/index.d.ts +1 -0
  209. package/cjs/extensions/forms/FieldBlock/index.js +14 -0
  210. package/cjs/extensions/forms/FieldBlock/index.js.map +1 -0
  211. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +15 -0
  212. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -0
  213. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +19 -0
  214. package/cjs/extensions/forms/FieldBlock/style/index.d.ts +5 -0
  215. package/cjs/extensions/forms/FieldBlock/style/index.js +4 -0
  216. package/cjs/extensions/forms/FieldBlock/style/index.js.map +1 -0
  217. package/cjs/extensions/forms/FieldBlock/style.d.ts +5 -0
  218. package/cjs/extensions/forms/FieldBlock/style.js +4 -0
  219. package/cjs/extensions/forms/FieldBlock/style.js.map +1 -0
  220. package/cjs/extensions/forms/FieldGroup/FieldGroup.d.ts +17 -0
  221. package/cjs/extensions/forms/FieldGroup/FieldGroup.js +95 -0
  222. package/cjs/extensions/forms/FieldGroup/FieldGroup.js.map +1 -0
  223. package/cjs/extensions/forms/FieldGroup/index.d.ts +2 -0
  224. package/cjs/extensions/forms/FieldGroup/index.js +27 -0
  225. package/cjs/extensions/forms/FieldGroup/index.js.map +1 -0
  226. package/cjs/extensions/forms/Forms.d.ts +3 -0
  227. package/cjs/extensions/forms/Forms.js +22 -0
  228. package/cjs/extensions/forms/Forms.js.map +1 -0
  229. package/cjs/extensions/forms/Layout/ButtonRow.d.ts +10 -0
  230. package/cjs/extensions/forms/Layout/ButtonRow.js +25 -0
  231. package/cjs/extensions/forms/Layout/ButtonRow.js.map +1 -0
  232. package/cjs/extensions/forms/Layout/Card.d.ts +14 -0
  233. package/cjs/extensions/forms/Layout/Card.js +45 -0
  234. package/cjs/extensions/forms/Layout/Card.js.map +1 -0
  235. package/cjs/extensions/forms/Layout/Column.d.ts +7 -0
  236. package/cjs/extensions/forms/Layout/Column.js +26 -0
  237. package/cjs/extensions/forms/Layout/Column.js.map +1 -0
  238. package/cjs/extensions/forms/Layout/FlexContainer.d.ts +23 -0
  239. package/cjs/extensions/forms/Layout/FlexContainer.js +104 -0
  240. package/cjs/extensions/forms/Layout/FlexContainer.js.map +1 -0
  241. package/cjs/extensions/forms/Layout/FlexItem.d.ts +12 -0
  242. package/cjs/extensions/forms/Layout/FlexItem.js +28 -0
  243. package/cjs/extensions/forms/Layout/FlexItem.js.map +1 -0
  244. package/cjs/extensions/forms/Layout/InfoCardSection.d.ts +8 -0
  245. package/cjs/extensions/forms/Layout/InfoCardSection.js +25 -0
  246. package/cjs/extensions/forms/Layout/InfoCardSection.js.map +1 -0
  247. package/cjs/extensions/forms/Layout/MainHeading.d.ts +10 -0
  248. package/cjs/extensions/forms/Layout/MainHeading.js +27 -0
  249. package/cjs/extensions/forms/Layout/MainHeading.js.map +1 -0
  250. package/cjs/extensions/forms/Layout/Row.d.ts +7 -0
  251. package/cjs/extensions/forms/Layout/Row.js +26 -0
  252. package/cjs/extensions/forms/Layout/Row.js.map +1 -0
  253. package/cjs/extensions/forms/Layout/Section.d.ts +13 -0
  254. package/cjs/extensions/forms/Layout/Section.js +29 -0
  255. package/cjs/extensions/forms/Layout/Section.js.map +1 -0
  256. package/cjs/extensions/forms/Layout/SubHeading.d.ts +10 -0
  257. package/cjs/extensions/forms/Layout/SubHeading.js +26 -0
  258. package/cjs/extensions/forms/Layout/SubHeading.js.map +1 -0
  259. package/cjs/extensions/forms/Layout/index.d.ts +23 -0
  260. package/cjs/extensions/forms/Layout/index.js +32 -0
  261. package/cjs/extensions/forms/Layout/index.js.map +1 -0
  262. package/cjs/extensions/forms/Layout/style/dnb-button-row.css +7 -0
  263. package/cjs/extensions/forms/Layout/style/dnb-button-row.min.css +1 -0
  264. package/cjs/extensions/forms/Layout/style/dnb-button-row.scss +5 -0
  265. package/cjs/extensions/forms/Layout/style/dnb-card.css +13 -0
  266. package/cjs/extensions/forms/Layout/style/dnb-card.min.css +1 -0
  267. package/cjs/extensions/forms/Layout/style/dnb-card.scss +15 -0
  268. package/cjs/extensions/forms/Layout/style/dnb-flex-container.css +63 -0
  269. package/cjs/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -0
  270. package/cjs/extensions/forms/Layout/style/dnb-flex-container.scss +84 -0
  271. package/cjs/extensions/forms/Layout/style/dnb-flex-item.css +6 -0
  272. package/cjs/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -0
  273. package/cjs/extensions/forms/Layout/style/dnb-flex-item.scss +9 -0
  274. package/cjs/extensions/forms/Layout/style/dnb-section.css +3 -0
  275. package/cjs/extensions/forms/Layout/style/dnb-section.min.css +1 -0
  276. package/cjs/extensions/forms/Layout/style/dnb-section.scss +3 -0
  277. package/cjs/extensions/forms/Layout/style/index.d.ts +9 -0
  278. package/cjs/extensions/forms/Layout/style/index.js +8 -0
  279. package/cjs/extensions/forms/Layout/style/index.js.map +1 -0
  280. package/cjs/extensions/forms/Layout/style/index.scss +5 -0
  281. package/cjs/extensions/forms/Layout/style.d.ts +5 -0
  282. package/cjs/extensions/forms/Layout/style.js +4 -0
  283. package/cjs/extensions/forms/Layout/style.js.map +1 -0
  284. package/cjs/extensions/forms/StepsLayout/Buttons.d.ts +9 -0
  285. package/cjs/extensions/forms/StepsLayout/Buttons.js +27 -0
  286. package/cjs/extensions/forms/StepsLayout/Buttons.js.map +1 -0
  287. package/cjs/extensions/forms/StepsLayout/NextButton.d.ts +10 -0
  288. package/cjs/extensions/forms/StepsLayout/NextButton.js +37 -0
  289. package/cjs/extensions/forms/StepsLayout/NextButton.js.map +1 -0
  290. package/cjs/extensions/forms/StepsLayout/PreviousButton.d.ts +10 -0
  291. package/cjs/extensions/forms/StepsLayout/PreviousButton.js +37 -0
  292. package/cjs/extensions/forms/StepsLayout/PreviousButton.js.map +1 -0
  293. package/cjs/extensions/forms/StepsLayout/Step.d.ts +15 -0
  294. package/cjs/extensions/forms/StepsLayout/Step.js +37 -0
  295. package/cjs/extensions/forms/StepsLayout/Step.js.map +1 -0
  296. package/cjs/extensions/forms/StepsLayout/StepsContext.d.ts +8 -0
  297. package/cjs/extensions/forms/StepsLayout/StepsContext.js +12 -0
  298. package/cjs/extensions/forms/StepsLayout/StepsContext.js.map +1 -0
  299. package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +19 -0
  300. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +116 -0
  301. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -0
  302. package/cjs/extensions/forms/StepsLayout/index.d.ts +3 -0
  303. package/cjs/extensions/forms/StepsLayout/index.js +18 -0
  304. package/cjs/extensions/forms/StepsLayout/index.js.map +1 -0
  305. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +25 -0
  306. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -0
  307. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +23 -0
  308. package/cjs/extensions/forms/StepsLayout/style/index.d.ts +5 -0
  309. package/cjs/extensions/forms/StepsLayout/style/index.js +4 -0
  310. package/cjs/extensions/forms/StepsLayout/style/index.js.map +1 -0
  311. package/cjs/extensions/forms/StepsLayout/style/index.scss +1 -0
  312. package/cjs/extensions/forms/StepsLayout/style.d.ts +5 -0
  313. package/cjs/extensions/forms/StepsLayout/style.js +4 -0
  314. package/cjs/extensions/forms/StepsLayout/style.js.map +1 -0
  315. package/cjs/extensions/forms/Value/BankAccountNumber.d.ts +7 -0
  316. package/cjs/extensions/forms/Value/BankAccountNumber.js +32 -0
  317. package/cjs/extensions/forms/Value/BankAccountNumber.js.map +1 -0
  318. package/cjs/extensions/forms/Value/Boolean.d.ts +8 -0
  319. package/cjs/extensions/forms/Value/Boolean.js +37 -0
  320. package/cjs/extensions/forms/Value/Boolean.js.map +1 -0
  321. package/cjs/extensions/forms/Value/Currency.d.ts +7 -0
  322. package/cjs/extensions/forms/Value/Currency.js +26 -0
  323. package/cjs/extensions/forms/Value/Currency.js.map +1 -0
  324. package/cjs/extensions/forms/Value/Date.d.ts +7 -0
  325. package/cjs/extensions/forms/Value/Date.js +28 -0
  326. package/cjs/extensions/forms/Value/Date.js.map +1 -0
  327. package/cjs/extensions/forms/Value/Email.d.ts +7 -0
  328. package/cjs/extensions/forms/Value/Email.js +28 -0
  329. package/cjs/extensions/forms/Value/Email.js.map +1 -0
  330. package/cjs/extensions/forms/Value/FirstName.d.ts +7 -0
  331. package/cjs/extensions/forms/Value/FirstName.js +28 -0
  332. package/cjs/extensions/forms/Value/FirstName.js.map +1 -0
  333. package/cjs/extensions/forms/Value/LastName.d.ts +7 -0
  334. package/cjs/extensions/forms/Value/LastName.js +28 -0
  335. package/cjs/extensions/forms/Value/LastName.js.map +1 -0
  336. package/cjs/extensions/forms/Value/NationalIdentityNumber.d.ts +7 -0
  337. package/cjs/extensions/forms/Value/NationalIdentityNumber.js +32 -0
  338. package/cjs/extensions/forms/Value/NationalIdentityNumber.js.map +1 -0
  339. package/cjs/extensions/forms/Value/Number.d.ts +14 -0
  340. package/cjs/extensions/forms/Value/Number.js +44 -0
  341. package/cjs/extensions/forms/Value/Number.js.map +1 -0
  342. package/cjs/extensions/forms/Value/PhoneNumber.d.ts +7 -0
  343. package/cjs/extensions/forms/Value/PhoneNumber.js +32 -0
  344. package/cjs/extensions/forms/Value/PhoneNumber.js.map +1 -0
  345. package/cjs/extensions/forms/Value/String.d.ts +8 -0
  346. package/cjs/extensions/forms/Value/String.js +34 -0
  347. package/cjs/extensions/forms/Value/String.js.map +1 -0
  348. package/cjs/extensions/forms/Value/hooks/index.d.ts +1 -0
  349. package/cjs/extensions/forms/Value/hooks/index.js +14 -0
  350. package/cjs/extensions/forms/Value/hooks/index.js.map +1 -0
  351. package/cjs/extensions/forms/Value/hooks/useValue.d.ts +2 -0
  352. package/cjs/extensions/forms/Value/hooks/useValue.js +31 -0
  353. package/cjs/extensions/forms/Value/hooks/useValue.js.map +1 -0
  354. package/cjs/extensions/forms/Value/index.d.ts +25 -0
  355. package/cjs/extensions/forms/Value/index.js +34 -0
  356. package/cjs/extensions/forms/Value/index.js.map +1 -0
  357. package/cjs/extensions/forms/ValueBlock/ValueBlock.d.ts +11 -0
  358. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +38 -0
  359. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -0
  360. package/cjs/extensions/forms/ValueBlock/index.d.ts +1 -0
  361. package/cjs/extensions/forms/ValueBlock/index.js +14 -0
  362. package/cjs/extensions/forms/ValueBlock/index.js.map +1 -0
  363. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +16 -0
  364. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -0
  365. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +19 -0
  366. package/cjs/extensions/forms/ValueBlock/style/index.d.ts +5 -0
  367. package/cjs/extensions/forms/ValueBlock/style/index.js +4 -0
  368. package/cjs/extensions/forms/ValueBlock/style/index.js.map +1 -0
  369. package/cjs/extensions/forms/ValueBlock/style/index.scss +1 -0
  370. package/cjs/extensions/forms/ValueBlock/style.d.ts +5 -0
  371. package/cjs/extensions/forms/ValueBlock/style.js +4 -0
  372. package/cjs/extensions/forms/ValueBlock/style.js.map +1 -0
  373. package/cjs/extensions/forms/Visibility/Visibility.d.ts +24 -0
  374. package/cjs/extensions/forms/Visibility/Visibility.js +55 -0
  375. package/cjs/extensions/forms/Visibility/Visibility.js.map +1 -0
  376. package/cjs/extensions/forms/Visibility/index.d.ts +1 -0
  377. package/cjs/extensions/forms/Visibility/index.js +14 -0
  378. package/cjs/extensions/forms/Visibility/index.js.map +1 -0
  379. package/cjs/extensions/forms/component-types.d.ts +4 -0
  380. package/cjs/extensions/forms/component-types.js +1 -0
  381. package/cjs/extensions/forms/component-types.js.map +1 -0
  382. package/cjs/extensions/forms/constants/countries.d.ts +6 -0
  383. package/cjs/extensions/forms/constants/countries.js +969 -0
  384. package/cjs/extensions/forms/constants/countries.js.map +1 -0
  385. package/cjs/extensions/forms/field-types.d.ts +52 -0
  386. package/cjs/extensions/forms/field-types.js +1 -0
  387. package/cjs/extensions/forms/field-types.js.map +1 -0
  388. package/cjs/extensions/forms/index.d.ts +13 -0
  389. package/cjs/extensions/forms/index.js +110 -0
  390. package/cjs/extensions/forms/index.js.map +1 -0
  391. package/cjs/extensions/forms/style/dnb-forms.css +237 -0
  392. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -0
  393. package/cjs/extensions/forms/style/dnb-forms.scss +6 -0
  394. package/cjs/extensions/forms/style.d.ts +5 -0
  395. package/cjs/extensions/forms/style.js +4 -0
  396. package/cjs/extensions/forms/style.js.map +1 -0
  397. package/cjs/extensions/forms/types.d.ts +11 -0
  398. package/cjs/extensions/forms/types.js +20 -0
  399. package/cjs/extensions/forms/types.js.map +1 -0
  400. package/cjs/extensions/forms/utils/TestElement/TestElement.d.ts +6 -0
  401. package/cjs/extensions/forms/utils/TestElement/TestElement.js +17 -0
  402. package/cjs/extensions/forms/utils/TestElement/TestElement.js.map +1 -0
  403. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.css +6 -0
  404. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -0
  405. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.scss +6 -0
  406. package/cjs/extensions/forms/utils/TestElement/style/index.d.ts +5 -0
  407. package/cjs/extensions/forms/utils/TestElement/style/index.js +4 -0
  408. package/cjs/extensions/forms/utils/TestElement/style/index.js.map +1 -0
  409. package/cjs/extensions/forms/utils/TestElement/style.d.ts +5 -0
  410. package/cjs/extensions/forms/utils/TestElement/style.js +4 -0
  411. package/cjs/extensions/forms/utils/TestElement/style.js.map +1 -0
  412. package/cjs/extensions/forms/utils/ajv.d.ts +14 -0
  413. package/cjs/extensions/forms/utils/ajv.js +69 -0
  414. package/cjs/extensions/forms/utils/ajv.js.map +1 -0
  415. package/cjs/extensions/forms/utils/components.d.ts +3 -0
  416. package/cjs/extensions/forms/utils/components.js +32 -0
  417. package/cjs/extensions/forms/utils/components.js.map +1 -0
  418. package/cjs/extensions/forms/utils/index.d.ts +3 -0
  419. package/cjs/extensions/forms/utils/index.js +41 -0
  420. package/cjs/extensions/forms/utils/index.js.map +1 -0
  421. package/cjs/extensions/forms/utils/numbers.d.ts +17 -0
  422. package/cjs/extensions/forms/utils/numbers.js +42 -0
  423. package/cjs/extensions/forms/utils/numbers.js.map +1 -0
  424. package/cjs/extensions/forms/value-types.d.ts +15 -0
  425. package/cjs/extensions/forms/value-types.js +1 -0
  426. package/cjs/extensions/forms/value-types.js.map +1 -0
  427. package/cjs/extensions/index.d.ts +2 -1
  428. package/cjs/extensions/index.js +7 -0
  429. package/cjs/extensions/index.js.map +1 -1
  430. package/cjs/extensions/lib.d.ts +22 -1
  431. package/cjs/extensions/lib.js +8 -0
  432. package/cjs/extensions/lib.js.map +1 -1
  433. package/cjs/extensions/payment-card/utils/Types.js.map +1 -1
  434. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  435. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  436. package/cjs/shared/Context.d.ts +2 -0
  437. package/cjs/shared/Context.js.map +1 -1
  438. package/cjs/shared/Eufemia.d.ts +1 -1
  439. package/cjs/shared/Eufemia.js +2 -2
  440. package/cjs/shared/Eufemia.js.map +1 -1
  441. package/cjs/shared/VisibilityByTheme.d.ts +1 -1
  442. package/cjs/shared/VisibilityByTheme.js.map +1 -1
  443. package/cjs/shared/helpers.d.ts +2 -2
  444. package/cjs/shared/helpers.js.map +1 -1
  445. package/cjs/shared/locales/en-GB.d.ts +39 -0
  446. package/cjs/shared/locales/en-GB.js +39 -0
  447. package/cjs/shared/locales/en-GB.js.map +1 -1
  448. package/cjs/shared/locales/en-US.d.ts +39 -0
  449. package/cjs/shared/locales/index.d.ts +78 -0
  450. package/cjs/shared/locales/nb-NO.d.ts +39 -0
  451. package/cjs/shared/locales/nb-NO.js +39 -0
  452. package/cjs/shared/locales/nb-NO.js.map +1 -1
  453. package/cjs/style/core/utilities.scss +40 -8
  454. package/cjs/style/dnb-ui-components.css +71 -24
  455. package/cjs/style/dnb-ui-components.min.css +1 -1
  456. package/cjs/style/dnb-ui-extensions.css +238 -0
  457. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  458. package/cjs/style/dnb-ui-extensions.scss +1 -0
  459. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -11
  460. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  461. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +105 -82
  462. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  463. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +238 -0
  464. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  465. package/cjs/style/themes/theme-sbanken/properties.js +4 -4
  466. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  467. package/cjs/style/themes/theme-sbanken/properties.scss +4 -4
  468. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +4 -11
  469. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  470. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +429 -333
  471. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -1
  472. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  473. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +0 -7
  474. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +238 -0
  475. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  476. package/cjs/style/themes/theme-ui/ui-theme-basis.css +17 -11
  477. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  478. package/cjs/style/themes/theme-ui/ui-theme-components.css +105 -82
  479. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  480. package/cjs/style/themes/theme-ui/ui-theme-elements.css +17 -11
  481. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  482. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +238 -0
  483. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  484. package/cjs/style/themes/theme-ui/ui-theme-tags.css +24 -12
  485. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  486. package/components/accordion/Accordion.d.ts +240 -136
  487. package/components/accordion/Accordion.js +214 -251
  488. package/components/accordion/Accordion.js.map +1 -1
  489. package/components/accordion/AccordionContent.d.ts +12 -14
  490. package/components/accordion/AccordionContent.js +5 -17
  491. package/components/accordion/AccordionContent.js.map +1 -1
  492. package/components/accordion/AccordionContext.d.ts +17 -2
  493. package/components/accordion/AccordionContext.js.map +1 -1
  494. package/components/accordion/AccordionGroup.d.ts +10 -12
  495. package/components/accordion/AccordionGroup.js +60 -71
  496. package/components/accordion/AccordionGroup.js.map +1 -1
  497. package/components/accordion/AccordionHeader.d.ts +62 -92
  498. package/components/accordion/AccordionHeader.js +175 -251
  499. package/components/accordion/AccordionHeader.js.map +1 -1
  500. package/components/accordion/AccordionProviderContext.d.ts +16 -2
  501. package/components/accordion/AccordionProviderContext.js.map +1 -1
  502. package/components/accordion/AccordionStore.d.ts +7 -6
  503. package/components/accordion/AccordionStore.js +2 -2
  504. package/components/accordion/AccordionStore.js.map +1 -1
  505. package/components/accordion/defaultProps.d.ts +2 -0
  506. package/components/accordion/defaultProps.js +5 -0
  507. package/components/accordion/defaultProps.js.map +1 -0
  508. package/components/anchor/style/anchor-mixins.scss +26 -27
  509. package/components/anchor/style/dnb-anchor.css +27 -16
  510. package/components/anchor/style/dnb-anchor.min.css +1 -1
  511. package/components/anchor/style/dnb-anchor.scss +1 -1
  512. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +97 -44
  513. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  514. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +48 -22
  515. package/components/anchor/style/themes/dnb-anchor-theme-ui.css +20 -10
  516. package/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  517. package/components/anchor/style/themes/dnb-anchor-theme-ui.scss +4 -9
  518. package/components/autocomplete/Autocomplete.js +2 -2
  519. package/components/autocomplete/Autocomplete.js.map +1 -1
  520. package/components/button/style/themes/button-mixins.scss +23 -4
  521. package/components/button/style/themes/dnb-button-theme-sbanken.css +80 -82
  522. package/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -1
  523. package/components/button/style/themes/dnb-button-theme-sbanken.scss +82 -54
  524. package/components/date-picker/DatePicker.js.map +1 -1
  525. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  526. package/components/dialog/Dialog.d.ts +1 -1
  527. package/components/dialog/DialogContent.d.ts +1 -1
  528. package/components/dialog/DialogContent.js +4 -2
  529. package/components/dialog/DialogContent.js.map +1 -1
  530. package/components/dialog/parts/DialogAction.d.ts +5 -1
  531. package/components/dialog/parts/DialogAction.js +3 -2
  532. package/components/dialog/parts/DialogAction.js.map +1 -1
  533. package/components/form-row/FormRow.js.map +1 -1
  534. package/components/form-row/style/dnb-form-row.scss +2 -2
  535. package/components/form-set/FormSet.js.map +1 -1
  536. package/components/height-animation/HeightAnimation.d.ts +1 -1
  537. package/components/height-animation/HeightAnimation.js.map +1 -1
  538. package/components/height-animation/useHeightAnimation.js.map +1 -1
  539. package/components/icon/lib/SvgComparison.js.map +1 -1
  540. package/components/input/style/dnb-input.css +5 -0
  541. package/components/input/style/dnb-input.min.css +1 -1
  542. package/components/input/style/dnb-input.scss +7 -1
  543. package/components/input/style/themes/dnb-input-theme-sbanken.css +104 -0
  544. package/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -0
  545. package/components/input/style/themes/dnb-input-theme-sbanken.scss +126 -0
  546. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  547. package/components/input-masked/TextMask.js.map +1 -1
  548. package/components/modal/Modal.js +0 -2
  549. package/components/modal/Modal.js.map +1 -1
  550. package/components/modal/bodyScrollLock.js.map +1 -1
  551. package/components/number-format/NumberUtils.js +8 -6
  552. package/components/number-format/NumberUtils.js.map +1 -1
  553. package/components/number-format/style/dnb-number-format.css +0 -7
  554. package/components/number-format/style/dnb-number-format.scss +0 -1
  555. package/components/pagination/PaginationInfinity.js.map +1 -1
  556. package/components/radio/Radio.js.map +1 -1
  557. package/components/section/style/themes/dnb-section-theme-ui.css +14 -7
  558. package/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  559. package/components/slider/hooks/useSliderEvents.js.map +1 -1
  560. package/components/slider/types.d.ts +1 -1
  561. package/components/slider/types.js.map +1 -1
  562. package/components/space/Space.d.ts +2 -2
  563. package/components/space/SpacingHelper.js.map +1 -1
  564. package/components/step-indicator/StepIndicatorProps.d.ts +1 -1
  565. package/components/table/TableAccordion.js.map +1 -1
  566. package/components/table/TableTr.js.map +1 -1
  567. package/components/textarea/Textarea.js.map +1 -1
  568. package/components/textarea/style/dnb-textarea.css +39 -1
  569. package/components/textarea/style/dnb-textarea.min.css +1 -1
  570. package/components/textarea/style/dnb-textarea.scss +20 -1
  571. package/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +61 -0
  572. package/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -0
  573. package/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +72 -0
  574. package/components/textarea/style/themes/dnb-textarea-theme-ui.css +0 -41
  575. package/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  576. package/components/textarea/style/themes/dnb-textarea-theme-ui.scss +0 -22
  577. package/components/toggle-button/ToggleButton.js.map +1 -1
  578. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  579. package/components/tooltip/TooltipContainer.js.map +1 -1
  580. package/components/upload/Upload.js +2 -2
  581. package/components/upload/Upload.js.map +1 -1
  582. package/components/upload/useUpload.d.ts +1 -1
  583. package/components/upload/useUpload.js +2 -2
  584. package/components/upload/useUpload.js.map +1 -1
  585. package/elements/blockquote/Blockquote.d.ts +1 -1
  586. package/elements/blockquote/Blockquote.js.map +1 -1
  587. package/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +0 -2
  588. package/es/components/accordion/Accordion.d.ts +240 -136
  589. package/es/components/accordion/Accordion.js +210 -244
  590. package/es/components/accordion/Accordion.js.map +1 -1
  591. package/es/components/accordion/AccordionContent.d.ts +12 -14
  592. package/es/components/accordion/AccordionContent.js +5 -17
  593. package/es/components/accordion/AccordionContent.js.map +1 -1
  594. package/es/components/accordion/AccordionContext.d.ts +17 -2
  595. package/es/components/accordion/AccordionContext.js.map +1 -1
  596. package/es/components/accordion/AccordionGroup.d.ts +10 -12
  597. package/es/components/accordion/AccordionGroup.js +60 -71
  598. package/es/components/accordion/AccordionGroup.js.map +1 -1
  599. package/es/components/accordion/AccordionHeader.d.ts +62 -92
  600. package/es/components/accordion/AccordionHeader.js +176 -253
  601. package/es/components/accordion/AccordionHeader.js.map +1 -1
  602. package/es/components/accordion/AccordionProviderContext.d.ts +16 -2
  603. package/es/components/accordion/AccordionProviderContext.js.map +1 -1
  604. package/es/components/accordion/AccordionStore.d.ts +7 -6
  605. package/es/components/accordion/AccordionStore.js +2 -2
  606. package/es/components/accordion/AccordionStore.js.map +1 -1
  607. package/es/components/accordion/defaultProps.d.ts +2 -0
  608. package/es/components/accordion/defaultProps.js +5 -0
  609. package/es/components/accordion/defaultProps.js.map +1 -0
  610. package/es/components/anchor/style/anchor-mixins.scss +26 -27
  611. package/es/components/anchor/style/dnb-anchor.css +27 -16
  612. package/es/components/anchor/style/dnb-anchor.min.css +1 -1
  613. package/es/components/anchor/style/dnb-anchor.scss +1 -1
  614. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +97 -44
  615. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  616. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +48 -22
  617. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.css +20 -10
  618. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  619. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.scss +4 -9
  620. package/es/components/autocomplete/Autocomplete.js +2 -2
  621. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  622. package/es/components/button/style/themes/button-mixins.scss +23 -4
  623. package/es/components/button/style/themes/dnb-button-theme-sbanken.css +80 -82
  624. package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -1
  625. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +82 -54
  626. package/es/components/date-picker/DatePicker.js.map +1 -1
  627. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  628. package/es/components/dialog/Dialog.d.ts +1 -1
  629. package/es/components/dialog/DialogContent.d.ts +1 -1
  630. package/es/components/dialog/DialogContent.js +4 -2
  631. package/es/components/dialog/DialogContent.js.map +1 -1
  632. package/es/components/dialog/parts/DialogAction.d.ts +5 -1
  633. package/es/components/dialog/parts/DialogAction.js +3 -2
  634. package/es/components/dialog/parts/DialogAction.js.map +1 -1
  635. package/es/components/form-row/FormRow.js.map +1 -1
  636. package/es/components/form-row/style/dnb-form-row.scss +2 -2
  637. package/es/components/form-set/FormSet.js.map +1 -1
  638. package/es/components/height-animation/HeightAnimation.d.ts +1 -1
  639. package/es/components/height-animation/HeightAnimation.js.map +1 -1
  640. package/es/components/height-animation/useHeightAnimation.js.map +1 -1
  641. package/es/components/icon/lib/SvgComparison.js.map +1 -1
  642. package/es/components/input/style/dnb-input.css +5 -0
  643. package/es/components/input/style/dnb-input.min.css +1 -1
  644. package/es/components/input/style/dnb-input.scss +7 -1
  645. package/es/components/input/style/themes/dnb-input-theme-sbanken.css +104 -0
  646. package/es/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -0
  647. package/es/components/input/style/themes/dnb-input-theme-sbanken.scss +126 -0
  648. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  649. package/es/components/input-masked/TextMask.js.map +1 -1
  650. package/es/components/modal/Modal.js +0 -2
  651. package/es/components/modal/Modal.js.map +1 -1
  652. package/es/components/modal/bodyScrollLock.js.map +1 -1
  653. package/es/components/number-format/NumberUtils.js +8 -6
  654. package/es/components/number-format/NumberUtils.js.map +1 -1
  655. package/es/components/number-format/style/dnb-number-format.css +0 -7
  656. package/es/components/number-format/style/dnb-number-format.scss +0 -1
  657. package/es/components/pagination/PaginationInfinity.js.map +1 -1
  658. package/es/components/radio/Radio.js.map +1 -1
  659. package/es/components/section/style/themes/dnb-section-theme-ui.css +14 -7
  660. package/es/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  661. package/es/components/slider/hooks/useSliderEvents.js.map +1 -1
  662. package/es/components/slider/types.d.ts +1 -1
  663. package/es/components/slider/types.js.map +1 -1
  664. package/es/components/space/Space.d.ts +2 -2
  665. package/es/components/space/SpacingHelper.js.map +1 -1
  666. package/es/components/step-indicator/StepIndicatorProps.d.ts +1 -1
  667. package/es/components/table/TableAccordion.js.map +1 -1
  668. package/es/components/table/TableTr.js.map +1 -1
  669. package/es/components/textarea/Textarea.js.map +1 -1
  670. package/es/components/textarea/style/dnb-textarea.css +39 -1
  671. package/es/components/textarea/style/dnb-textarea.min.css +1 -1
  672. package/es/components/textarea/style/dnb-textarea.scss +20 -1
  673. package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +61 -0
  674. package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -0
  675. package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +72 -0
  676. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.css +0 -41
  677. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  678. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.scss +0 -22
  679. package/es/components/toggle-button/ToggleButton.js.map +1 -1
  680. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  681. package/es/components/tooltip/TooltipContainer.js.map +1 -1
  682. package/es/components/upload/Upload.js +2 -2
  683. package/es/components/upload/Upload.js.map +1 -1
  684. package/es/components/upload/useUpload.d.ts +1 -1
  685. package/es/components/upload/useUpload.js +2 -2
  686. package/es/components/upload/useUpload.js.map +1 -1
  687. package/es/elements/blockquote/Blockquote.d.ts +1 -1
  688. package/es/elements/blockquote/Blockquote.js.map +1 -1
  689. package/es/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +0 -2
  690. package/es/extensions/forms/DataContext/At.d.ts +13 -0
  691. package/es/extensions/forms/DataContext/At.js +48 -0
  692. package/es/extensions/forms/DataContext/At.js.map +1 -0
  693. package/es/extensions/forms/DataContext/Context.d.ts +19 -0
  694. package/es/extensions/forms/DataContext/Context.js +16 -0
  695. package/es/extensions/forms/DataContext/Context.js.map +1 -0
  696. package/es/extensions/forms/DataContext/Provider.d.ts +19 -0
  697. package/es/extensions/forms/DataContext/Provider.js +102 -0
  698. package/es/extensions/forms/DataContext/Provider.js.map +1 -0
  699. package/es/extensions/forms/DataContext/SubmitButton.d.ts +9 -0
  700. package/es/extensions/forms/DataContext/SubmitButton.js +20 -0
  701. package/es/extensions/forms/DataContext/SubmitButton.js.map +1 -0
  702. package/es/extensions/forms/DataContext/index.d.ts +13 -0
  703. package/es/extensions/forms/DataContext/index.js +12 -0
  704. package/es/extensions/forms/DataContext/index.js.map +1 -0
  705. package/es/extensions/forms/Field/ArraySelection.d.ts +12 -0
  706. package/es/extensions/forms/Field/ArraySelection.js +60 -0
  707. package/es/extensions/forms/Field/ArraySelection.js.map +1 -0
  708. package/es/extensions/forms/Field/BankAccountNumber.d.ts +10 -0
  709. package/es/extensions/forms/Field/BankAccountNumber.js +28 -0
  710. package/es/extensions/forms/Field/BankAccountNumber.js.map +1 -0
  711. package/es/extensions/forms/Field/Boolean.d.ts +10 -0
  712. package/es/extensions/forms/Field/Boolean.js +23 -0
  713. package/es/extensions/forms/Field/Boolean.js.map +1 -0
  714. package/es/extensions/forms/Field/Currency.d.ts +10 -0
  715. package/es/extensions/forms/Field/Currency.js +50 -0
  716. package/es/extensions/forms/Field/Currency.js.map +1 -0
  717. package/es/extensions/forms/Field/Date.d.ts +8 -0
  718. package/es/extensions/forms/Field/Date.js +46 -0
  719. package/es/extensions/forms/Field/Date.js.map +1 -0
  720. package/es/extensions/forms/Field/Email.d.ts +7 -0
  721. package/es/extensions/forms/Field/Email.js +22 -0
  722. package/es/extensions/forms/Field/Email.js.map +1 -0
  723. package/es/extensions/forms/Field/FirstName.d.ts +7 -0
  724. package/es/extensions/forms/Field/FirstName.js +19 -0
  725. package/es/extensions/forms/Field/FirstName.js.map +1 -0
  726. package/es/extensions/forms/Field/LastName.d.ts +7 -0
  727. package/es/extensions/forms/Field/LastName.js +19 -0
  728. package/es/extensions/forms/Field/LastName.js.map +1 -0
  729. package/es/extensions/forms/Field/NationalIdentityNumber.d.ts +10 -0
  730. package/es/extensions/forms/Field/NationalIdentityNumber.js +27 -0
  731. package/es/extensions/forms/Field/NationalIdentityNumber.js.map +1 -0
  732. package/es/extensions/forms/Field/Number.d.ts +31 -0
  733. package/es/extensions/forms/Field/Number.js +100 -0
  734. package/es/extensions/forms/Field/Number.js.map +1 -0
  735. package/es/extensions/forms/Field/Option.d.ts +9 -0
  736. package/es/extensions/forms/Field/Option.js +14 -0
  737. package/es/extensions/forms/Field/Option.js.map +1 -0
  738. package/es/extensions/forms/Field/OrganizationNumber.d.ts +10 -0
  739. package/es/extensions/forms/Field/OrganizationNumber.js +28 -0
  740. package/es/extensions/forms/Field/OrganizationNumber.js.map +1 -0
  741. package/es/extensions/forms/Field/PhoneNumber.d.ts +12 -0
  742. package/es/extensions/forms/Field/PhoneNumber.js +87 -0
  743. package/es/extensions/forms/Field/PhoneNumber.js.map +1 -0
  744. package/es/extensions/forms/Field/PostalCodeAndCity.d.ts +10 -0
  745. package/es/extensions/forms/Field/PostalCodeAndCity.js +46 -0
  746. package/es/extensions/forms/Field/PostalCodeAndCity.js.map +1 -0
  747. package/es/extensions/forms/Field/SelectCountry.d.ts +7 -0
  748. package/es/extensions/forms/Field/SelectCountry.js +26 -0
  749. package/es/extensions/forms/Field/SelectCountry.js.map +1 -0
  750. package/es/extensions/forms/Field/Selection.d.ts +13 -0
  751. package/es/extensions/forms/Field/Selection.js +107 -0
  752. package/es/extensions/forms/Field/Selection.js.map +1 -0
  753. package/es/extensions/forms/Field/String.d.ts +32 -0
  754. package/es/extensions/forms/Field/String.js +122 -0
  755. package/es/extensions/forms/Field/String.js.map +1 -0
  756. package/es/extensions/forms/Field/Toggle.d.ts +14 -0
  757. package/es/extensions/forms/Field/Toggle.js +116 -0
  758. package/es/extensions/forms/Field/Toggle.js.map +1 -0
  759. package/es/extensions/forms/Field/fields.scss +2 -0
  760. package/es/extensions/forms/Field/hooks/index.d.ts +1 -0
  761. package/es/extensions/forms/Field/hooks/index.js +1 -0
  762. package/es/extensions/forms/Field/hooks/index.js.map +1 -0
  763. package/es/extensions/forms/Field/hooks/useField.d.ts +11 -0
  764. package/es/extensions/forms/Field/hooks/useField.js +150 -0
  765. package/es/extensions/forms/Field/hooks/useField.js.map +1 -0
  766. package/es/extensions/forms/Field/index.d.ts +39 -0
  767. package/es/extensions/forms/Field/index.js +40 -0
  768. package/es/extensions/forms/Field/index.js.map +1 -0
  769. package/es/extensions/forms/Field/style/dnb-number.css +11 -0
  770. package/es/extensions/forms/Field/style/dnb-number.min.css +1 -0
  771. package/es/extensions/forms/Field/style/dnb-number.scss +19 -0
  772. package/es/extensions/forms/Field/style/dnb-phone-number.css +23 -0
  773. package/es/extensions/forms/Field/style/dnb-phone-number.min.css +1 -0
  774. package/es/extensions/forms/Field/style/dnb-phone-number.scss +28 -0
  775. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.css +19 -0
  776. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -0
  777. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.scss +25 -0
  778. package/es/extensions/forms/Field/style/dnb-selection.css +6 -0
  779. package/es/extensions/forms/Field/style/dnb-selection.min.css +1 -0
  780. package/es/extensions/forms/Field/style/dnb-selection.scss +15 -0
  781. package/es/extensions/forms/Field/style/dnb-string.css +11 -0
  782. package/es/extensions/forms/Field/style/dnb-string.min.css +1 -0
  783. package/es/extensions/forms/Field/style/dnb-string.scss +19 -0
  784. package/es/extensions/forms/Field/style/index.d.ts +6 -0
  785. package/es/extensions/forms/Field/style/index.js +3 -0
  786. package/es/extensions/forms/Field/style/index.js.map +1 -0
  787. package/es/extensions/forms/Field/style/index.scss +5 -0
  788. package/es/extensions/forms/Field/style.d.ts +5 -0
  789. package/es/extensions/forms/Field/style.js +1 -0
  790. package/es/extensions/forms/Field/style.js.map +1 -0
  791. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +12 -0
  792. package/es/extensions/forms/FieldBlock/FieldBlock.js +69 -0
  793. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -0
  794. package/es/extensions/forms/FieldBlock/index.d.ts +1 -0
  795. package/es/extensions/forms/FieldBlock/index.js +1 -0
  796. package/es/extensions/forms/FieldBlock/index.js.map +1 -0
  797. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +15 -0
  798. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -0
  799. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +19 -0
  800. package/es/extensions/forms/FieldBlock/style/index.d.ts +5 -0
  801. package/es/extensions/forms/FieldBlock/style/index.js +1 -0
  802. package/es/extensions/forms/FieldBlock/style/index.js.map +1 -0
  803. package/es/extensions/forms/FieldBlock/style.d.ts +5 -0
  804. package/es/extensions/forms/FieldBlock/style.js +1 -0
  805. package/es/extensions/forms/FieldBlock/style.js.map +1 -0
  806. package/es/extensions/forms/FieldGroup/FieldGroup.d.ts +17 -0
  807. package/es/extensions/forms/FieldGroup/FieldGroup.js +77 -0
  808. package/es/extensions/forms/FieldGroup/FieldGroup.js.map +1 -0
  809. package/es/extensions/forms/FieldGroup/index.d.ts +2 -0
  810. package/es/extensions/forms/FieldGroup/index.js +3 -0
  811. package/es/extensions/forms/FieldGroup/index.js.map +1 -0
  812. package/es/extensions/forms/Forms.d.ts +3 -0
  813. package/es/extensions/forms/Forms.js +4 -0
  814. package/es/extensions/forms/Forms.js.map +1 -0
  815. package/es/extensions/forms/Layout/ButtonRow.d.ts +10 -0
  816. package/es/extensions/forms/Layout/ButtonRow.js +17 -0
  817. package/es/extensions/forms/Layout/ButtonRow.js.map +1 -0
  818. package/es/extensions/forms/Layout/Card.d.ts +14 -0
  819. package/es/extensions/forms/Layout/Card.js +37 -0
  820. package/es/extensions/forms/Layout/Card.js.map +1 -0
  821. package/es/extensions/forms/Layout/Column.d.ts +7 -0
  822. package/es/extensions/forms/Layout/Column.js +17 -0
  823. package/es/extensions/forms/Layout/Column.js.map +1 -0
  824. package/es/extensions/forms/Layout/FlexContainer.d.ts +23 -0
  825. package/es/extensions/forms/Layout/FlexContainer.js +91 -0
  826. package/es/extensions/forms/Layout/FlexContainer.js.map +1 -0
  827. package/es/extensions/forms/Layout/FlexItem.d.ts +12 -0
  828. package/es/extensions/forms/Layout/FlexItem.js +20 -0
  829. package/es/extensions/forms/Layout/FlexItem.js.map +1 -0
  830. package/es/extensions/forms/Layout/InfoCardSection.d.ts +8 -0
  831. package/es/extensions/forms/Layout/InfoCardSection.js +17 -0
  832. package/es/extensions/forms/Layout/InfoCardSection.js.map +1 -0
  833. package/es/extensions/forms/Layout/MainHeading.d.ts +10 -0
  834. package/es/extensions/forms/Layout/MainHeading.js +19 -0
  835. package/es/extensions/forms/Layout/MainHeading.js.map +1 -0
  836. package/es/extensions/forms/Layout/Row.d.ts +7 -0
  837. package/es/extensions/forms/Layout/Row.js +17 -0
  838. package/es/extensions/forms/Layout/Row.js.map +1 -0
  839. package/es/extensions/forms/Layout/Section.d.ts +13 -0
  840. package/es/extensions/forms/Layout/Section.js +21 -0
  841. package/es/extensions/forms/Layout/Section.js.map +1 -0
  842. package/es/extensions/forms/Layout/SubHeading.d.ts +10 -0
  843. package/es/extensions/forms/Layout/SubHeading.js +18 -0
  844. package/es/extensions/forms/Layout/SubHeading.js.map +1 -0
  845. package/es/extensions/forms/Layout/index.d.ts +23 -0
  846. package/es/extensions/forms/Layout/index.js +24 -0
  847. package/es/extensions/forms/Layout/index.js.map +1 -0
  848. package/es/extensions/forms/Layout/style/dnb-button-row.css +7 -0
  849. package/es/extensions/forms/Layout/style/dnb-button-row.min.css +1 -0
  850. package/es/extensions/forms/Layout/style/dnb-button-row.scss +5 -0
  851. package/es/extensions/forms/Layout/style/dnb-card.css +13 -0
  852. package/es/extensions/forms/Layout/style/dnb-card.min.css +1 -0
  853. package/es/extensions/forms/Layout/style/dnb-card.scss +15 -0
  854. package/es/extensions/forms/Layout/style/dnb-flex-container.css +63 -0
  855. package/es/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -0
  856. package/es/extensions/forms/Layout/style/dnb-flex-container.scss +84 -0
  857. package/es/extensions/forms/Layout/style/dnb-flex-item.css +6 -0
  858. package/es/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -0
  859. package/es/extensions/forms/Layout/style/dnb-flex-item.scss +9 -0
  860. package/es/extensions/forms/Layout/style/dnb-section.css +3 -0
  861. package/es/extensions/forms/Layout/style/dnb-section.min.css +1 -0
  862. package/es/extensions/forms/Layout/style/dnb-section.scss +3 -0
  863. package/es/extensions/forms/Layout/style/index.d.ts +9 -0
  864. package/es/extensions/forms/Layout/style/index.js +6 -0
  865. package/es/extensions/forms/Layout/style/index.js.map +1 -0
  866. package/es/extensions/forms/Layout/style/index.scss +5 -0
  867. package/es/extensions/forms/Layout/style.d.ts +5 -0
  868. package/es/extensions/forms/Layout/style.js +1 -0
  869. package/es/extensions/forms/Layout/style.js.map +1 -0
  870. package/es/extensions/forms/StepsLayout/Buttons.d.ts +9 -0
  871. package/es/extensions/forms/StepsLayout/Buttons.js +19 -0
  872. package/es/extensions/forms/StepsLayout/Buttons.js.map +1 -0
  873. package/es/extensions/forms/StepsLayout/NextButton.d.ts +10 -0
  874. package/es/extensions/forms/StepsLayout/NextButton.js +27 -0
  875. package/es/extensions/forms/StepsLayout/NextButton.js.map +1 -0
  876. package/es/extensions/forms/StepsLayout/PreviousButton.d.ts +10 -0
  877. package/es/extensions/forms/StepsLayout/PreviousButton.js +27 -0
  878. package/es/extensions/forms/StepsLayout/PreviousButton.js.map +1 -0
  879. package/es/extensions/forms/StepsLayout/Step.d.ts +15 -0
  880. package/es/extensions/forms/StepsLayout/Step.js +27 -0
  881. package/es/extensions/forms/StepsLayout/Step.js.map +1 -0
  882. package/es/extensions/forms/StepsLayout/StepsContext.d.ts +8 -0
  883. package/es/extensions/forms/StepsLayout/StepsContext.js +4 -0
  884. package/es/extensions/forms/StepsLayout/StepsContext.js.map +1 -0
  885. package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +19 -0
  886. package/es/extensions/forms/StepsLayout/StepsLayout.js +105 -0
  887. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -0
  888. package/es/extensions/forms/StepsLayout/index.d.ts +3 -0
  889. package/es/extensions/forms/StepsLayout/index.js +4 -0
  890. package/es/extensions/forms/StepsLayout/index.js.map +1 -0
  891. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +25 -0
  892. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -0
  893. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +23 -0
  894. package/es/extensions/forms/StepsLayout/style/index.d.ts +5 -0
  895. package/es/extensions/forms/StepsLayout/style/index.js +1 -0
  896. package/es/extensions/forms/StepsLayout/style/index.js.map +1 -0
  897. package/es/extensions/forms/StepsLayout/style/index.scss +1 -0
  898. package/es/extensions/forms/StepsLayout/style.d.ts +5 -0
  899. package/es/extensions/forms/StepsLayout/style.js +1 -0
  900. package/es/extensions/forms/StepsLayout/style.js.map +1 -0
  901. package/es/extensions/forms/Value/BankAccountNumber.d.ts +7 -0
  902. package/es/extensions/forms/Value/BankAccountNumber.js +20 -0
  903. package/es/extensions/forms/Value/BankAccountNumber.js.map +1 -0
  904. package/es/extensions/forms/Value/Boolean.d.ts +8 -0
  905. package/es/extensions/forms/Value/Boolean.js +27 -0
  906. package/es/extensions/forms/Value/Boolean.js.map +1 -0
  907. package/es/extensions/forms/Value/Currency.d.ts +7 -0
  908. package/es/extensions/forms/Value/Currency.js +16 -0
  909. package/es/extensions/forms/Value/Currency.js.map +1 -0
  910. package/es/extensions/forms/Value/Date.d.ts +7 -0
  911. package/es/extensions/forms/Value/Date.js +16 -0
  912. package/es/extensions/forms/Value/Date.js.map +1 -0
  913. package/es/extensions/forms/Value/Email.d.ts +7 -0
  914. package/es/extensions/forms/Value/Email.js +16 -0
  915. package/es/extensions/forms/Value/Email.js.map +1 -0
  916. package/es/extensions/forms/Value/FirstName.d.ts +7 -0
  917. package/es/extensions/forms/Value/FirstName.js +16 -0
  918. package/es/extensions/forms/Value/FirstName.js.map +1 -0
  919. package/es/extensions/forms/Value/LastName.d.ts +7 -0
  920. package/es/extensions/forms/Value/LastName.js +16 -0
  921. package/es/extensions/forms/Value/LastName.js.map +1 -0
  922. package/es/extensions/forms/Value/NationalIdentityNumber.d.ts +7 -0
  923. package/es/extensions/forms/Value/NationalIdentityNumber.js +20 -0
  924. package/es/extensions/forms/Value/NationalIdentityNumber.js.map +1 -0
  925. package/es/extensions/forms/Value/Number.d.ts +14 -0
  926. package/es/extensions/forms/Value/Number.js +36 -0
  927. package/es/extensions/forms/Value/Number.js.map +1 -0
  928. package/es/extensions/forms/Value/PhoneNumber.d.ts +7 -0
  929. package/es/extensions/forms/Value/PhoneNumber.js +20 -0
  930. package/es/extensions/forms/Value/PhoneNumber.js.map +1 -0
  931. package/es/extensions/forms/Value/String.d.ts +8 -0
  932. package/es/extensions/forms/Value/String.js +26 -0
  933. package/es/extensions/forms/Value/String.js.map +1 -0
  934. package/es/extensions/forms/Value/hooks/index.d.ts +1 -0
  935. package/es/extensions/forms/Value/hooks/index.js +1 -0
  936. package/es/extensions/forms/Value/hooks/index.js.map +1 -0
  937. package/es/extensions/forms/Value/hooks/useValue.d.ts +2 -0
  938. package/es/extensions/forms/Value/hooks/useValue.js +22 -0
  939. package/es/extensions/forms/Value/hooks/useValue.js.map +1 -0
  940. package/es/extensions/forms/Value/index.d.ts +25 -0
  941. package/es/extensions/forms/Value/index.js +26 -0
  942. package/es/extensions/forms/Value/index.js.map +1 -0
  943. package/es/extensions/forms/ValueBlock/ValueBlock.d.ts +11 -0
  944. package/es/extensions/forms/ValueBlock/ValueBlock.js +30 -0
  945. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -0
  946. package/es/extensions/forms/ValueBlock/index.d.ts +1 -0
  947. package/es/extensions/forms/ValueBlock/index.js +1 -0
  948. package/es/extensions/forms/ValueBlock/index.js.map +1 -0
  949. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +16 -0
  950. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -0
  951. package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +19 -0
  952. package/es/extensions/forms/ValueBlock/style/index.d.ts +5 -0
  953. package/es/extensions/forms/ValueBlock/style/index.js +1 -0
  954. package/es/extensions/forms/ValueBlock/style/index.js.map +1 -0
  955. package/es/extensions/forms/ValueBlock/style/index.scss +1 -0
  956. package/es/extensions/forms/ValueBlock/style.d.ts +5 -0
  957. package/es/extensions/forms/ValueBlock/style.js +1 -0
  958. package/es/extensions/forms/ValueBlock/style.js.map +1 -0
  959. package/es/extensions/forms/Visibility/Visibility.d.ts +24 -0
  960. package/es/extensions/forms/Visibility/Visibility.js +44 -0
  961. package/es/extensions/forms/Visibility/Visibility.js.map +1 -0
  962. package/es/extensions/forms/Visibility/index.d.ts +1 -0
  963. package/es/extensions/forms/Visibility/index.js +1 -0
  964. package/es/extensions/forms/Visibility/index.js.map +1 -0
  965. package/es/extensions/forms/component-types.d.ts +4 -0
  966. package/es/extensions/forms/component-types.js +1 -0
  967. package/es/extensions/forms/component-types.js.map +1 -0
  968. package/es/extensions/forms/constants/countries.d.ts +6 -0
  969. package/es/extensions/forms/constants/countries.js +962 -0
  970. package/es/extensions/forms/constants/countries.js.map +1 -0
  971. package/es/extensions/forms/field-types.d.ts +52 -0
  972. package/es/extensions/forms/field-types.js +1 -0
  973. package/es/extensions/forms/field-types.js.map +1 -0
  974. package/es/extensions/forms/index.d.ts +13 -0
  975. package/es/extensions/forms/index.js +12 -0
  976. package/es/extensions/forms/index.js.map +1 -0
  977. package/es/extensions/forms/style/dnb-forms.css +237 -0
  978. package/es/extensions/forms/style/dnb-forms.min.css +1 -0
  979. package/es/extensions/forms/style/dnb-forms.scss +6 -0
  980. package/es/extensions/forms/style.d.ts +5 -0
  981. package/es/extensions/forms/style.js +1 -0
  982. package/es/extensions/forms/style.js.map +1 -0
  983. package/es/extensions/forms/types.d.ts +11 -0
  984. package/es/extensions/forms/types.js +11 -0
  985. package/es/extensions/forms/types.js.map +1 -0
  986. package/es/extensions/forms/utils/TestElement/TestElement.d.ts +6 -0
  987. package/es/extensions/forms/utils/TestElement/TestElement.js +9 -0
  988. package/es/extensions/forms/utils/TestElement/TestElement.js.map +1 -0
  989. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.css +6 -0
  990. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -0
  991. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.scss +6 -0
  992. package/es/extensions/forms/utils/TestElement/style/index.d.ts +5 -0
  993. package/es/extensions/forms/utils/TestElement/style/index.js +1 -0
  994. package/es/extensions/forms/utils/TestElement/style/index.js.map +1 -0
  995. package/es/extensions/forms/utils/TestElement/style.d.ts +5 -0
  996. package/es/extensions/forms/utils/TestElement/style.js +1 -0
  997. package/es/extensions/forms/utils/TestElement/style.js.map +1 -0
  998. package/es/extensions/forms/utils/ajv.d.ts +14 -0
  999. package/es/extensions/forms/utils/ajv.js +56 -0
  1000. package/es/extensions/forms/utils/ajv.js.map +1 -0
  1001. package/es/extensions/forms/utils/components.d.ts +3 -0
  1002. package/es/extensions/forms/utils/components.js +23 -0
  1003. package/es/extensions/forms/utils/components.js.map +1 -0
  1004. package/es/extensions/forms/utils/index.d.ts +3 -0
  1005. package/es/extensions/forms/utils/index.js +4 -0
  1006. package/es/extensions/forms/utils/index.js.map +1 -0
  1007. package/es/extensions/forms/utils/numbers.d.ts +17 -0
  1008. package/es/extensions/forms/utils/numbers.js +35 -0
  1009. package/es/extensions/forms/utils/numbers.js.map +1 -0
  1010. package/es/extensions/forms/value-types.d.ts +15 -0
  1011. package/es/extensions/forms/value-types.js +1 -0
  1012. package/es/extensions/forms/value-types.js.map +1 -0
  1013. package/es/extensions/index.d.ts +2 -1
  1014. package/es/extensions/index.js +2 -1
  1015. package/es/extensions/index.js.map +1 -1
  1016. package/es/extensions/lib.d.ts +22 -1
  1017. package/es/extensions/lib.js +3 -1
  1018. package/es/extensions/lib.js.map +1 -1
  1019. package/es/extensions/payment-card/utils/Types.js.map +1 -1
  1020. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  1021. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  1022. package/es/shared/Context.d.ts +2 -0
  1023. package/es/shared/Context.js.map +1 -1
  1024. package/es/shared/Eufemia.d.ts +1 -1
  1025. package/es/shared/Eufemia.js +2 -2
  1026. package/es/shared/Eufemia.js.map +1 -1
  1027. package/es/shared/VisibilityByTheme.d.ts +1 -1
  1028. package/es/shared/VisibilityByTheme.js.map +1 -1
  1029. package/es/shared/helpers.d.ts +2 -2
  1030. package/es/shared/helpers.js.map +1 -1
  1031. package/es/shared/locales/en-GB.d.ts +39 -0
  1032. package/es/shared/locales/en-GB.js +39 -0
  1033. package/es/shared/locales/en-GB.js.map +1 -1
  1034. package/es/shared/locales/en-US.d.ts +39 -0
  1035. package/es/shared/locales/index.d.ts +78 -0
  1036. package/es/shared/locales/nb-NO.d.ts +39 -0
  1037. package/es/shared/locales/nb-NO.js +39 -0
  1038. package/es/shared/locales/nb-NO.js.map +1 -1
  1039. package/es/style/core/utilities.scss +40 -8
  1040. package/es/style/dnb-ui-components.css +71 -24
  1041. package/es/style/dnb-ui-components.min.css +1 -1
  1042. package/es/style/dnb-ui-extensions.css +238 -0
  1043. package/es/style/dnb-ui-extensions.min.css +1 -1
  1044. package/es/style/dnb-ui-extensions.scss +1 -0
  1045. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -11
  1046. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1047. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +105 -82
  1048. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  1049. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +238 -0
  1050. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1051. package/es/style/themes/theme-sbanken/properties.js +4 -4
  1052. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  1053. package/es/style/themes/theme-sbanken/properties.scss +4 -4
  1054. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +4 -11
  1055. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1056. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +429 -333
  1057. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -1
  1058. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  1059. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +0 -7
  1060. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +238 -0
  1061. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1062. package/es/style/themes/theme-ui/ui-theme-basis.css +17 -11
  1063. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1064. package/es/style/themes/theme-ui/ui-theme-components.css +105 -82
  1065. package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  1066. package/es/style/themes/theme-ui/ui-theme-elements.css +17 -11
  1067. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1068. package/es/style/themes/theme-ui/ui-theme-extensions.css +238 -0
  1069. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1070. package/es/style/themes/theme-ui/ui-theme-tags.css +24 -12
  1071. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1072. package/esm/dnb-ui-basis.min.mjs +1 -1
  1073. package/esm/dnb-ui-components.min.mjs +1 -1
  1074. package/esm/dnb-ui-elements.min.mjs +1 -1
  1075. package/esm/dnb-ui-extensions.min.mjs +7 -1
  1076. package/esm/dnb-ui-lib.min.mjs +1 -1
  1077. package/extensions/forms/DataContext/At.d.ts +13 -0
  1078. package/extensions/forms/DataContext/At.js +48 -0
  1079. package/extensions/forms/DataContext/At.js.map +1 -0
  1080. package/extensions/forms/DataContext/Context.d.ts +19 -0
  1081. package/extensions/forms/DataContext/Context.js +16 -0
  1082. package/extensions/forms/DataContext/Context.js.map +1 -0
  1083. package/extensions/forms/DataContext/Provider.d.ts +19 -0
  1084. package/extensions/forms/DataContext/Provider.js +103 -0
  1085. package/extensions/forms/DataContext/Provider.js.map +1 -0
  1086. package/extensions/forms/DataContext/SubmitButton.d.ts +9 -0
  1087. package/extensions/forms/DataContext/SubmitButton.js +20 -0
  1088. package/extensions/forms/DataContext/SubmitButton.js.map +1 -0
  1089. package/extensions/forms/DataContext/index.d.ts +13 -0
  1090. package/extensions/forms/DataContext/index.js +12 -0
  1091. package/extensions/forms/DataContext/index.js.map +1 -0
  1092. package/extensions/forms/Field/ArraySelection.d.ts +12 -0
  1093. package/extensions/forms/Field/ArraySelection.js +60 -0
  1094. package/extensions/forms/Field/ArraySelection.js.map +1 -0
  1095. package/extensions/forms/Field/BankAccountNumber.d.ts +10 -0
  1096. package/extensions/forms/Field/BankAccountNumber.js +28 -0
  1097. package/extensions/forms/Field/BankAccountNumber.js.map +1 -0
  1098. package/extensions/forms/Field/Boolean.d.ts +10 -0
  1099. package/extensions/forms/Field/Boolean.js +23 -0
  1100. package/extensions/forms/Field/Boolean.js.map +1 -0
  1101. package/extensions/forms/Field/Currency.d.ts +10 -0
  1102. package/extensions/forms/Field/Currency.js +51 -0
  1103. package/extensions/forms/Field/Currency.js.map +1 -0
  1104. package/extensions/forms/Field/Date.d.ts +8 -0
  1105. package/extensions/forms/Field/Date.js +47 -0
  1106. package/extensions/forms/Field/Date.js.map +1 -0
  1107. package/extensions/forms/Field/Email.d.ts +7 -0
  1108. package/extensions/forms/Field/Email.js +22 -0
  1109. package/extensions/forms/Field/Email.js.map +1 -0
  1110. package/extensions/forms/Field/FirstName.d.ts +7 -0
  1111. package/extensions/forms/Field/FirstName.js +19 -0
  1112. package/extensions/forms/Field/FirstName.js.map +1 -0
  1113. package/extensions/forms/Field/LastName.d.ts +7 -0
  1114. package/extensions/forms/Field/LastName.js +19 -0
  1115. package/extensions/forms/Field/LastName.js.map +1 -0
  1116. package/extensions/forms/Field/NationalIdentityNumber.d.ts +10 -0
  1117. package/extensions/forms/Field/NationalIdentityNumber.js +27 -0
  1118. package/extensions/forms/Field/NationalIdentityNumber.js.map +1 -0
  1119. package/extensions/forms/Field/Number.d.ts +31 -0
  1120. package/extensions/forms/Field/Number.js +101 -0
  1121. package/extensions/forms/Field/Number.js.map +1 -0
  1122. package/extensions/forms/Field/Option.d.ts +9 -0
  1123. package/extensions/forms/Field/Option.js +15 -0
  1124. package/extensions/forms/Field/Option.js.map +1 -0
  1125. package/extensions/forms/Field/OrganizationNumber.d.ts +10 -0
  1126. package/extensions/forms/Field/OrganizationNumber.js +28 -0
  1127. package/extensions/forms/Field/OrganizationNumber.js.map +1 -0
  1128. package/extensions/forms/Field/PhoneNumber.d.ts +12 -0
  1129. package/extensions/forms/Field/PhoneNumber.js +89 -0
  1130. package/extensions/forms/Field/PhoneNumber.js.map +1 -0
  1131. package/extensions/forms/Field/PostalCodeAndCity.d.ts +10 -0
  1132. package/extensions/forms/Field/PostalCodeAndCity.js +46 -0
  1133. package/extensions/forms/Field/PostalCodeAndCity.js.map +1 -0
  1134. package/extensions/forms/Field/SelectCountry.d.ts +7 -0
  1135. package/extensions/forms/Field/SelectCountry.js +26 -0
  1136. package/extensions/forms/Field/SelectCountry.js.map +1 -0
  1137. package/extensions/forms/Field/Selection.d.ts +13 -0
  1138. package/extensions/forms/Field/Selection.js +110 -0
  1139. package/extensions/forms/Field/Selection.js.map +1 -0
  1140. package/extensions/forms/Field/String.d.ts +32 -0
  1141. package/extensions/forms/Field/String.js +123 -0
  1142. package/extensions/forms/Field/String.js.map +1 -0
  1143. package/extensions/forms/Field/Toggle.d.ts +14 -0
  1144. package/extensions/forms/Field/Toggle.js +117 -0
  1145. package/extensions/forms/Field/Toggle.js.map +1 -0
  1146. package/extensions/forms/Field/fields.scss +2 -0
  1147. package/extensions/forms/Field/hooks/index.d.ts +1 -0
  1148. package/extensions/forms/Field/hooks/index.js +1 -0
  1149. package/extensions/forms/Field/hooks/index.js.map +1 -0
  1150. package/extensions/forms/Field/hooks/useField.d.ts +11 -0
  1151. package/extensions/forms/Field/hooks/useField.js +152 -0
  1152. package/extensions/forms/Field/hooks/useField.js.map +1 -0
  1153. package/extensions/forms/Field/index.d.ts +39 -0
  1154. package/extensions/forms/Field/index.js +40 -0
  1155. package/extensions/forms/Field/index.js.map +1 -0
  1156. package/extensions/forms/Field/style/dnb-number.css +11 -0
  1157. package/extensions/forms/Field/style/dnb-number.min.css +1 -0
  1158. package/extensions/forms/Field/style/dnb-number.scss +19 -0
  1159. package/extensions/forms/Field/style/dnb-phone-number.css +23 -0
  1160. package/extensions/forms/Field/style/dnb-phone-number.min.css +1 -0
  1161. package/extensions/forms/Field/style/dnb-phone-number.scss +28 -0
  1162. package/extensions/forms/Field/style/dnb-postal-code-and-city.css +19 -0
  1163. package/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -0
  1164. package/extensions/forms/Field/style/dnb-postal-code-and-city.scss +25 -0
  1165. package/extensions/forms/Field/style/dnb-selection.css +6 -0
  1166. package/extensions/forms/Field/style/dnb-selection.min.css +1 -0
  1167. package/extensions/forms/Field/style/dnb-selection.scss +15 -0
  1168. package/extensions/forms/Field/style/dnb-string.css +11 -0
  1169. package/extensions/forms/Field/style/dnb-string.min.css +1 -0
  1170. package/extensions/forms/Field/style/dnb-string.scss +19 -0
  1171. package/extensions/forms/Field/style/index.d.ts +6 -0
  1172. package/extensions/forms/Field/style/index.js +3 -0
  1173. package/extensions/forms/Field/style/index.js.map +1 -0
  1174. package/extensions/forms/Field/style/index.scss +5 -0
  1175. package/extensions/forms/Field/style.d.ts +5 -0
  1176. package/extensions/forms/Field/style.js +1 -0
  1177. package/extensions/forms/Field/style.js.map +1 -0
  1178. package/extensions/forms/FieldBlock/FieldBlock.d.ts +12 -0
  1179. package/extensions/forms/FieldBlock/FieldBlock.js +69 -0
  1180. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -0
  1181. package/extensions/forms/FieldBlock/index.d.ts +1 -0
  1182. package/extensions/forms/FieldBlock/index.js +1 -0
  1183. package/extensions/forms/FieldBlock/index.js.map +1 -0
  1184. package/extensions/forms/FieldBlock/style/dnb-field-block.css +15 -0
  1185. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -0
  1186. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +19 -0
  1187. package/extensions/forms/FieldBlock/style/index.d.ts +5 -0
  1188. package/extensions/forms/FieldBlock/style/index.js +1 -0
  1189. package/extensions/forms/FieldBlock/style/index.js.map +1 -0
  1190. package/extensions/forms/FieldBlock/style.d.ts +5 -0
  1191. package/extensions/forms/FieldBlock/style.js +1 -0
  1192. package/extensions/forms/FieldBlock/style.js.map +1 -0
  1193. package/extensions/forms/FieldGroup/FieldGroup.d.ts +17 -0
  1194. package/extensions/forms/FieldGroup/FieldGroup.js +83 -0
  1195. package/extensions/forms/FieldGroup/FieldGroup.js.map +1 -0
  1196. package/extensions/forms/FieldGroup/index.d.ts +2 -0
  1197. package/extensions/forms/FieldGroup/index.js +3 -0
  1198. package/extensions/forms/FieldGroup/index.js.map +1 -0
  1199. package/extensions/forms/Forms.d.ts +3 -0
  1200. package/extensions/forms/Forms.js +4 -0
  1201. package/extensions/forms/Forms.js.map +1 -0
  1202. package/extensions/forms/Layout/ButtonRow.d.ts +10 -0
  1203. package/extensions/forms/Layout/ButtonRow.js +17 -0
  1204. package/extensions/forms/Layout/ButtonRow.js.map +1 -0
  1205. package/extensions/forms/Layout/Card.d.ts +14 -0
  1206. package/extensions/forms/Layout/Card.js +37 -0
  1207. package/extensions/forms/Layout/Card.js.map +1 -0
  1208. package/extensions/forms/Layout/Column.d.ts +7 -0
  1209. package/extensions/forms/Layout/Column.js +17 -0
  1210. package/extensions/forms/Layout/Column.js.map +1 -0
  1211. package/extensions/forms/Layout/FlexContainer.d.ts +23 -0
  1212. package/extensions/forms/Layout/FlexContainer.js +91 -0
  1213. package/extensions/forms/Layout/FlexContainer.js.map +1 -0
  1214. package/extensions/forms/Layout/FlexItem.d.ts +12 -0
  1215. package/extensions/forms/Layout/FlexItem.js +20 -0
  1216. package/extensions/forms/Layout/FlexItem.js.map +1 -0
  1217. package/extensions/forms/Layout/InfoCardSection.d.ts +8 -0
  1218. package/extensions/forms/Layout/InfoCardSection.js +17 -0
  1219. package/extensions/forms/Layout/InfoCardSection.js.map +1 -0
  1220. package/extensions/forms/Layout/MainHeading.d.ts +10 -0
  1221. package/extensions/forms/Layout/MainHeading.js +19 -0
  1222. package/extensions/forms/Layout/MainHeading.js.map +1 -0
  1223. package/extensions/forms/Layout/Row.d.ts +7 -0
  1224. package/extensions/forms/Layout/Row.js +17 -0
  1225. package/extensions/forms/Layout/Row.js.map +1 -0
  1226. package/extensions/forms/Layout/Section.d.ts +13 -0
  1227. package/extensions/forms/Layout/Section.js +21 -0
  1228. package/extensions/forms/Layout/Section.js.map +1 -0
  1229. package/extensions/forms/Layout/SubHeading.d.ts +10 -0
  1230. package/extensions/forms/Layout/SubHeading.js +18 -0
  1231. package/extensions/forms/Layout/SubHeading.js.map +1 -0
  1232. package/extensions/forms/Layout/index.d.ts +23 -0
  1233. package/extensions/forms/Layout/index.js +24 -0
  1234. package/extensions/forms/Layout/index.js.map +1 -0
  1235. package/extensions/forms/Layout/style/dnb-button-row.css +7 -0
  1236. package/extensions/forms/Layout/style/dnb-button-row.min.css +1 -0
  1237. package/extensions/forms/Layout/style/dnb-button-row.scss +5 -0
  1238. package/extensions/forms/Layout/style/dnb-card.css +13 -0
  1239. package/extensions/forms/Layout/style/dnb-card.min.css +1 -0
  1240. package/extensions/forms/Layout/style/dnb-card.scss +15 -0
  1241. package/extensions/forms/Layout/style/dnb-flex-container.css +63 -0
  1242. package/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -0
  1243. package/extensions/forms/Layout/style/dnb-flex-container.scss +84 -0
  1244. package/extensions/forms/Layout/style/dnb-flex-item.css +6 -0
  1245. package/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -0
  1246. package/extensions/forms/Layout/style/dnb-flex-item.scss +9 -0
  1247. package/extensions/forms/Layout/style/dnb-section.css +3 -0
  1248. package/extensions/forms/Layout/style/dnb-section.min.css +1 -0
  1249. package/extensions/forms/Layout/style/dnb-section.scss +3 -0
  1250. package/extensions/forms/Layout/style/index.d.ts +9 -0
  1251. package/extensions/forms/Layout/style/index.js +6 -0
  1252. package/extensions/forms/Layout/style/index.js.map +1 -0
  1253. package/extensions/forms/Layout/style/index.scss +5 -0
  1254. package/extensions/forms/Layout/style.d.ts +5 -0
  1255. package/extensions/forms/Layout/style.js +1 -0
  1256. package/extensions/forms/Layout/style.js.map +1 -0
  1257. package/extensions/forms/StepsLayout/Buttons.d.ts +9 -0
  1258. package/extensions/forms/StepsLayout/Buttons.js +19 -0
  1259. package/extensions/forms/StepsLayout/Buttons.js.map +1 -0
  1260. package/extensions/forms/StepsLayout/NextButton.d.ts +10 -0
  1261. package/extensions/forms/StepsLayout/NextButton.js +27 -0
  1262. package/extensions/forms/StepsLayout/NextButton.js.map +1 -0
  1263. package/extensions/forms/StepsLayout/PreviousButton.d.ts +10 -0
  1264. package/extensions/forms/StepsLayout/PreviousButton.js +27 -0
  1265. package/extensions/forms/StepsLayout/PreviousButton.js.map +1 -0
  1266. package/extensions/forms/StepsLayout/Step.d.ts +15 -0
  1267. package/extensions/forms/StepsLayout/Step.js +27 -0
  1268. package/extensions/forms/StepsLayout/Step.js.map +1 -0
  1269. package/extensions/forms/StepsLayout/StepsContext.d.ts +8 -0
  1270. package/extensions/forms/StepsLayout/StepsContext.js +4 -0
  1271. package/extensions/forms/StepsLayout/StepsContext.js.map +1 -0
  1272. package/extensions/forms/StepsLayout/StepsLayout.d.ts +19 -0
  1273. package/extensions/forms/StepsLayout/StepsLayout.js +106 -0
  1274. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -0
  1275. package/extensions/forms/StepsLayout/index.d.ts +3 -0
  1276. package/extensions/forms/StepsLayout/index.js +4 -0
  1277. package/extensions/forms/StepsLayout/index.js.map +1 -0
  1278. package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +25 -0
  1279. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -0
  1280. package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +23 -0
  1281. package/extensions/forms/StepsLayout/style/index.d.ts +5 -0
  1282. package/extensions/forms/StepsLayout/style/index.js +1 -0
  1283. package/extensions/forms/StepsLayout/style/index.js.map +1 -0
  1284. package/extensions/forms/StepsLayout/style/index.scss +1 -0
  1285. package/extensions/forms/StepsLayout/style.d.ts +5 -0
  1286. package/extensions/forms/StepsLayout/style.js +1 -0
  1287. package/extensions/forms/StepsLayout/style.js.map +1 -0
  1288. package/extensions/forms/Value/BankAccountNumber.d.ts +7 -0
  1289. package/extensions/forms/Value/BankAccountNumber.js +20 -0
  1290. package/extensions/forms/Value/BankAccountNumber.js.map +1 -0
  1291. package/extensions/forms/Value/Boolean.d.ts +8 -0
  1292. package/extensions/forms/Value/Boolean.js +27 -0
  1293. package/extensions/forms/Value/Boolean.js.map +1 -0
  1294. package/extensions/forms/Value/Currency.d.ts +7 -0
  1295. package/extensions/forms/Value/Currency.js +16 -0
  1296. package/extensions/forms/Value/Currency.js.map +1 -0
  1297. package/extensions/forms/Value/Date.d.ts +7 -0
  1298. package/extensions/forms/Value/Date.js +16 -0
  1299. package/extensions/forms/Value/Date.js.map +1 -0
  1300. package/extensions/forms/Value/Email.d.ts +7 -0
  1301. package/extensions/forms/Value/Email.js +16 -0
  1302. package/extensions/forms/Value/Email.js.map +1 -0
  1303. package/extensions/forms/Value/FirstName.d.ts +7 -0
  1304. package/extensions/forms/Value/FirstName.js +16 -0
  1305. package/extensions/forms/Value/FirstName.js.map +1 -0
  1306. package/extensions/forms/Value/LastName.d.ts +7 -0
  1307. package/extensions/forms/Value/LastName.js +16 -0
  1308. package/extensions/forms/Value/LastName.js.map +1 -0
  1309. package/extensions/forms/Value/NationalIdentityNumber.d.ts +7 -0
  1310. package/extensions/forms/Value/NationalIdentityNumber.js +20 -0
  1311. package/extensions/forms/Value/NationalIdentityNumber.js.map +1 -0
  1312. package/extensions/forms/Value/Number.d.ts +14 -0
  1313. package/extensions/forms/Value/Number.js +36 -0
  1314. package/extensions/forms/Value/Number.js.map +1 -0
  1315. package/extensions/forms/Value/PhoneNumber.d.ts +7 -0
  1316. package/extensions/forms/Value/PhoneNumber.js +20 -0
  1317. package/extensions/forms/Value/PhoneNumber.js.map +1 -0
  1318. package/extensions/forms/Value/String.d.ts +8 -0
  1319. package/extensions/forms/Value/String.js +26 -0
  1320. package/extensions/forms/Value/String.js.map +1 -0
  1321. package/extensions/forms/Value/hooks/index.d.ts +1 -0
  1322. package/extensions/forms/Value/hooks/index.js +1 -0
  1323. package/extensions/forms/Value/hooks/index.js.map +1 -0
  1324. package/extensions/forms/Value/hooks/useValue.d.ts +2 -0
  1325. package/extensions/forms/Value/hooks/useValue.js +22 -0
  1326. package/extensions/forms/Value/hooks/useValue.js.map +1 -0
  1327. package/extensions/forms/Value/index.d.ts +25 -0
  1328. package/extensions/forms/Value/index.js +26 -0
  1329. package/extensions/forms/Value/index.js.map +1 -0
  1330. package/extensions/forms/ValueBlock/ValueBlock.d.ts +11 -0
  1331. package/extensions/forms/ValueBlock/ValueBlock.js +30 -0
  1332. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -0
  1333. package/extensions/forms/ValueBlock/index.d.ts +1 -0
  1334. package/extensions/forms/ValueBlock/index.js +1 -0
  1335. package/extensions/forms/ValueBlock/index.js.map +1 -0
  1336. package/extensions/forms/ValueBlock/style/dnb-value-block.css +16 -0
  1337. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -0
  1338. package/extensions/forms/ValueBlock/style/dnb-value-block.scss +19 -0
  1339. package/extensions/forms/ValueBlock/style/index.d.ts +5 -0
  1340. package/extensions/forms/ValueBlock/style/index.js +1 -0
  1341. package/extensions/forms/ValueBlock/style/index.js.map +1 -0
  1342. package/extensions/forms/ValueBlock/style/index.scss +1 -0
  1343. package/extensions/forms/ValueBlock/style.d.ts +5 -0
  1344. package/extensions/forms/ValueBlock/style.js +1 -0
  1345. package/extensions/forms/ValueBlock/style.js.map +1 -0
  1346. package/extensions/forms/Visibility/Visibility.d.ts +24 -0
  1347. package/extensions/forms/Visibility/Visibility.js +45 -0
  1348. package/extensions/forms/Visibility/Visibility.js.map +1 -0
  1349. package/extensions/forms/Visibility/index.d.ts +1 -0
  1350. package/extensions/forms/Visibility/index.js +1 -0
  1351. package/extensions/forms/Visibility/index.js.map +1 -0
  1352. package/extensions/forms/component-types.d.ts +4 -0
  1353. package/extensions/forms/component-types.js +1 -0
  1354. package/extensions/forms/component-types.js.map +1 -0
  1355. package/extensions/forms/constants/countries.d.ts +6 -0
  1356. package/extensions/forms/constants/countries.js +962 -0
  1357. package/extensions/forms/constants/countries.js.map +1 -0
  1358. package/extensions/forms/field-types.d.ts +52 -0
  1359. package/extensions/forms/field-types.js +1 -0
  1360. package/extensions/forms/field-types.js.map +1 -0
  1361. package/extensions/forms/index.d.ts +13 -0
  1362. package/extensions/forms/index.js +12 -0
  1363. package/extensions/forms/index.js.map +1 -0
  1364. package/extensions/forms/style/dnb-forms.css +237 -0
  1365. package/extensions/forms/style/dnb-forms.min.css +1 -0
  1366. package/extensions/forms/style/dnb-forms.scss +6 -0
  1367. package/extensions/forms/style.d.ts +5 -0
  1368. package/extensions/forms/style.js +1 -0
  1369. package/extensions/forms/style.js.map +1 -0
  1370. package/extensions/forms/types.d.ts +11 -0
  1371. package/extensions/forms/types.js +11 -0
  1372. package/extensions/forms/types.js.map +1 -0
  1373. package/extensions/forms/utils/TestElement/TestElement.d.ts +6 -0
  1374. package/extensions/forms/utils/TestElement/TestElement.js +10 -0
  1375. package/extensions/forms/utils/TestElement/TestElement.js.map +1 -0
  1376. package/extensions/forms/utils/TestElement/style/dnb-test-element.css +6 -0
  1377. package/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -0
  1378. package/extensions/forms/utils/TestElement/style/dnb-test-element.scss +6 -0
  1379. package/extensions/forms/utils/TestElement/style/index.d.ts +5 -0
  1380. package/extensions/forms/utils/TestElement/style/index.js +1 -0
  1381. package/extensions/forms/utils/TestElement/style/index.js.map +1 -0
  1382. package/extensions/forms/utils/TestElement/style.d.ts +5 -0
  1383. package/extensions/forms/utils/TestElement/style.js +1 -0
  1384. package/extensions/forms/utils/TestElement/style.js.map +1 -0
  1385. package/extensions/forms/utils/ajv.d.ts +14 -0
  1386. package/extensions/forms/utils/ajv.js +56 -0
  1387. package/extensions/forms/utils/ajv.js.map +1 -0
  1388. package/extensions/forms/utils/components.d.ts +3 -0
  1389. package/extensions/forms/utils/components.js +23 -0
  1390. package/extensions/forms/utils/components.js.map +1 -0
  1391. package/extensions/forms/utils/index.d.ts +3 -0
  1392. package/extensions/forms/utils/index.js +4 -0
  1393. package/extensions/forms/utils/index.js.map +1 -0
  1394. package/extensions/forms/utils/numbers.d.ts +17 -0
  1395. package/extensions/forms/utils/numbers.js +35 -0
  1396. package/extensions/forms/utils/numbers.js.map +1 -0
  1397. package/extensions/forms/value-types.d.ts +15 -0
  1398. package/extensions/forms/value-types.js +1 -0
  1399. package/extensions/forms/value-types.js.map +1 -0
  1400. package/extensions/index.d.ts +2 -1
  1401. package/extensions/index.js +2 -1
  1402. package/extensions/index.js.map +1 -1
  1403. package/extensions/lib.d.ts +22 -1
  1404. package/extensions/lib.js +3 -1
  1405. package/extensions/lib.js.map +1 -1
  1406. package/extensions/payment-card/utils/Types.js.map +1 -1
  1407. package/fragments/drawer-list/DrawerList.js.map +1 -1
  1408. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  1409. package/package.json +4 -1
  1410. package/shared/Context.d.ts +2 -0
  1411. package/shared/Context.js.map +1 -1
  1412. package/shared/Eufemia.d.ts +1 -1
  1413. package/shared/Eufemia.js +2 -2
  1414. package/shared/Eufemia.js.map +1 -1
  1415. package/shared/VisibilityByTheme.d.ts +1 -1
  1416. package/shared/VisibilityByTheme.js.map +1 -1
  1417. package/shared/helpers.d.ts +2 -2
  1418. package/shared/helpers.js.map +1 -1
  1419. package/shared/locales/en-GB.d.ts +39 -0
  1420. package/shared/locales/en-GB.js +39 -0
  1421. package/shared/locales/en-GB.js.map +1 -1
  1422. package/shared/locales/en-US.d.ts +39 -0
  1423. package/shared/locales/index.d.ts +78 -0
  1424. package/shared/locales/nb-NO.d.ts +39 -0
  1425. package/shared/locales/nb-NO.js +39 -0
  1426. package/shared/locales/nb-NO.js.map +1 -1
  1427. package/style/core/utilities.scss +40 -8
  1428. package/style/dnb-ui-components.css +71 -24
  1429. package/style/dnb-ui-components.min.css +1 -1
  1430. package/style/dnb-ui-extensions.css +238 -0
  1431. package/style/dnb-ui-extensions.min.css +1 -1
  1432. package/style/dnb-ui-extensions.scss +1 -0
  1433. package/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -11
  1434. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1435. package/style/themes/theme-eiendom/eiendom-theme-components.css +105 -82
  1436. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  1437. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +238 -0
  1438. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1439. package/style/themes/theme-sbanken/properties.js +4 -4
  1440. package/style/themes/theme-sbanken/properties.js.map +1 -1
  1441. package/style/themes/theme-sbanken/properties.scss +4 -4
  1442. package/style/themes/theme-sbanken/sbanken-theme-basis.css +4 -11
  1443. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1444. package/style/themes/theme-sbanken/sbanken-theme-components.css +429 -333
  1445. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -1
  1446. package/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  1447. package/style/themes/theme-sbanken/sbanken-theme-elements.css +0 -7
  1448. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +238 -0
  1449. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1450. package/style/themes/theme-ui/ui-theme-basis.css +17 -11
  1451. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1452. package/style/themes/theme-ui/ui-theme-components.css +105 -82
  1453. package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  1454. package/style/themes/theme-ui/ui-theme-elements.css +17 -11
  1455. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1456. package/style/themes/theme-ui/ui-theme-extensions.css +238 -0
  1457. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1458. package/style/themes/theme-ui/ui-theme-tags.css +24 -12
  1459. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1460. package/umd/dnb-ui-basis.min.js +1 -1
  1461. package/umd/dnb-ui-components.min.js +1 -1
  1462. package/umd/dnb-ui-elements.min.js +1 -1
  1463. package/umd/dnb-ui-extensions.min.js +7 -1
  1464. package/umd/dnb-ui-lib.min.js +1 -1
  1465. package/cjs/components/accordion/AccordionPropTypes.d.ts +0 -79
  1466. package/cjs/components/accordion/AccordionPropTypes.js +0 -85
  1467. package/cjs/components/accordion/AccordionPropTypes.js.map +0 -1
  1468. package/components/accordion/AccordionPropTypes.d.ts +0 -79
  1469. package/components/accordion/AccordionPropTypes.js +0 -74
  1470. package/components/accordion/AccordionPropTypes.js.map +0 -1
  1471. package/es/components/accordion/AccordionPropTypes.d.ts +0 -79
  1472. package/es/components/accordion/AccordionPropTypes.js +0 -74
  1473. package/es/components/accordion/AccordionPropTypes.js.map +0 -1
@@ -0,0 +1,107 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ var _em;
3
+ import React, { useCallback } from 'react';
4
+ import { Div } from '../../../elements';
5
+ import { Dropdown, Radio, Checkbox } from '../../../components';
6
+ import classnames from 'classnames';
7
+ import { forwardSpaceProps } from '../utils';
8
+ import Option from './Option';
9
+ import { useField } from './hooks';
10
+ function Selection(props) {
11
+ const {
12
+ className,
13
+ variant,
14
+ label,
15
+ layout = 'vertical',
16
+ placeholder,
17
+ value,
18
+ error,
19
+ disabled,
20
+ emptyValue,
21
+ width = 'large',
22
+ onBlur,
23
+ onFocus,
24
+ onChange,
25
+ children
26
+ } = useField(props);
27
+ const handleDropdownChange = useCallback(({
28
+ data: {
29
+ selected_key
30
+ }
31
+ }) => {
32
+ onChange === null || onChange === void 0 ? void 0 : onChange(!selected_key ? emptyValue : selected_key);
33
+ }, [onChange, emptyValue]);
34
+ const handleRadioChange = useCallback(({
35
+ value
36
+ }) => {
37
+ onChange === null || onChange === void 0 ? void 0 : onChange(value === undefined ? emptyValue : value);
38
+ }, [onChange, emptyValue]);
39
+ const handleHide = useCallback(({
40
+ data
41
+ }) => {
42
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur({
43
+ onBlurValue: data === null || data === void 0 ? void 0 : data.selected_key
44
+ });
45
+ }, [onBlur]);
46
+ switch (variant) {
47
+ case 'checkbox':
48
+ return React.createElement(Div, _extends({
49
+ className: classnames('dnb-forms-field-selection', className)
50
+ }, forwardSpaceProps(props)), React.Children.toArray(children).filter(child => React.isValidElement(child) && child.type === Option).map((child, i) => React.createElement(Checkbox, {
51
+ key: child.props.value ?? `option-${i}`,
52
+ label: child.props.title ?? child.props.children,
53
+ value: String(child.props.value ?? '')
54
+ })));
55
+ case 'radio':
56
+ return React.createElement(Radio.Group, _extends({
57
+ className: classnames('dnb-forms-field-selection', className),
58
+ label: label,
59
+ layout_direction: "column",
60
+ on_change: handleRadioChange
61
+ }, forwardSpaceProps(props), {
62
+ vertical: true
63
+ }), React.Children.toArray(children).filter(child => React.isValidElement(child) && child.type === Option).map((child, i) => React.createElement(Radio, {
64
+ key: child.props.value ?? `option-${i}`,
65
+ label: child.props.title ?? child.props.children,
66
+ value: String(child.props.value ?? '')
67
+ })));
68
+ default:
69
+ case 'dropdown':
70
+ {
71
+ const data = React.Children.map(children, child => {
72
+ if (React.isValidElement(child) && child.type === Option) {
73
+ return child.props.text ? {
74
+ selected_key: String(child.props.value ?? ''),
75
+ content: [child.props.title ?? child.props.children ?? (_em || (_em = React.createElement("em", null, "Untitled"))), child.props.text]
76
+ } : {
77
+ selected_key: child.props.value,
78
+ content: child.props.title ?? child.props.children
79
+ };
80
+ }
81
+ return {
82
+ content: child
83
+ };
84
+ });
85
+ return React.createElement(Dropdown, _extends({
86
+ className: classnames('dnb-forms-field-selection', className, width !== false && width !== 'stretch' && `dnb-forms-field-selection--width-${width}`),
87
+ list_class: "dnb-forms-field-selection__list",
88
+ portal_class: "dnb-forms-field-selection__portal",
89
+ title: placeholder,
90
+ default_value: String(value ?? ''),
91
+ label: label,
92
+ label_direction: layout,
93
+ status: error === null || error === void 0 ? void 0 : error.message,
94
+ disabled: disabled,
95
+ data: data,
96
+ on_change: handleDropdownChange,
97
+ on_show: onFocus,
98
+ on_hide: handleHide
99
+ }, forwardSpaceProps(props), {
100
+ stretch: width === 'stretch'
101
+ }));
102
+ }
103
+ }
104
+ }
105
+ Selection._supportsEufemiaSpacingProps = true;
106
+ export default Selection;
107
+ //# sourceMappingURL=Selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Selection.js","names":["React","useCallback","Div","Dropdown","Radio","Checkbox","classnames","forwardSpaceProps","Option","useField","Selection","props","className","variant","label","layout","placeholder","value","error","disabled","emptyValue","width","onBlur","onFocus","onChange","children","handleDropdownChange","data","selected_key","handleRadioChange","undefined","handleHide","onBlurValue","createElement","_extends","Children","toArray","filter","child","isValidElement","type","map","i","key","title","String","Group","layout_direction","on_change","vertical","text","content","_em","list_class","portal_class","default_value","label_direction","status","message","on_show","on_hide","stretch","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Field/Selection.tsx"],"sourcesContent":["import React, { useCallback } from 'react'\nimport { Div } from '../../../elements'\nimport { Dropdown, Radio, Checkbox } from '../../../components'\nimport classnames from 'classnames'\nimport { forwardSpaceProps } from '../utils'\nimport Option from './Option'\nimport { useField } from './hooks'\nimport type { ComponentProps } from '../component-types'\nimport type { FieldProps } from '../field-types'\n\nexport type Props = ComponentProps &\n FieldProps<string | number> & {\n children?: React.ReactNode\n variant?: 'dropdown' | 'radio' | 'checkbox'\n // Styling\n width?: false | 'medium' | 'large' | 'stretch'\n }\n\nfunction Selection(props: Props) {\n const {\n className,\n variant,\n label,\n layout = 'vertical',\n placeholder,\n value,\n error,\n disabled,\n emptyValue,\n width = 'large',\n onBlur,\n onFocus,\n onChange,\n children,\n } = useField(props)\n\n const handleDropdownChange = useCallback(\n ({ data: { selected_key } }) => {\n onChange?.(!selected_key ? emptyValue : selected_key)\n },\n [onChange, emptyValue]\n )\n\n const handleRadioChange = useCallback(\n ({ value }) => {\n onChange?.(value === undefined ? emptyValue : value)\n },\n [onChange, emptyValue]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n // Provide a value because selecting an option will lead to onChange and onBlur called in parallel, so onBlur might receive the old value\n onBlur?.({ onBlurValue: data?.selected_key })\n },\n [onBlur]\n )\n\n switch (variant) {\n case 'checkbox':\n return (\n <Div\n className={classnames('dnb-forms-field-selection', className)}\n {...forwardSpaceProps(props)}\n >\n {React.Children.toArray(children)\n .filter(\n (child) =>\n React.isValidElement(child) && child.type === Option\n )\n .map((child: React.ReactElement, i) => (\n <Checkbox\n key={child.props.value ?? `option-${i}`}\n label={child.props.title ?? child.props.children}\n value={String(child.props.value ?? '')}\n />\n ))}\n </Div>\n )\n case 'radio':\n return (\n <Radio.Group\n className={classnames('dnb-forms-field-selection', className)}\n label={label}\n layout_direction=\"column\"\n on_change={handleRadioChange}\n {...forwardSpaceProps(props)}\n vertical\n >\n {React.Children.toArray(children)\n .filter(\n (child) =>\n React.isValidElement(child) && child.type === Option\n )\n .map((child: React.ReactElement, i) => (\n <Radio\n key={child.props.value ?? `option-${i}`}\n label={child.props.title ?? child.props.children}\n value={String(child.props.value ?? '')}\n />\n ))}\n </Radio.Group>\n )\n default:\n case 'dropdown': {\n const data = React.Children.map(children, (child) => {\n if (React.isValidElement(child) && child.type === Option) {\n // Option components\n return child.props.text\n ? {\n selected_key: String(child.props.value ?? ''),\n content: [\n child.props.title ?? child.props.children ?? (\n <em>Untitled</em>\n ),\n child.props.text,\n ],\n }\n : {\n selected_key: child.props.value,\n content: child.props.title ?? child.props.children,\n }\n }\n\n // For other children, just show them as content\n return {\n content: child,\n }\n })\n\n return (\n <Dropdown\n className={classnames(\n 'dnb-forms-field-selection',\n width !== false &&\n width !== 'stretch' &&\n `dnb-forms-field-selection--width-${width}`,\n className\n )}\n list_class=\"dnb-forms-field-selection__list\"\n portal_class=\"dnb-forms-field-selection__portal\"\n title={placeholder}\n default_value={String(value ?? '')}\n label={label}\n label_direction={layout}\n status={error?.message}\n disabled={disabled}\n data={data}\n on_change={handleDropdownChange}\n on_show={onFocus}\n on_hide={handleHide}\n {...forwardSpaceProps(props)}\n stretch={width === 'stretch'}\n />\n )\n }\n }\n}\n\nSelection._supportsEufemiaSpacingProps = true\nexport default Selection\n"],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { InputProps } from '../../../components/input/Input';
2
+ import { InputMaskedProps } from '../../../components/InputMasked';
3
+ import type { ComponentProps } from '../component-types';
4
+ import type { FieldProps } from '../field-types';
5
+ interface ErrorMessages {
6
+ required?: string;
7
+ schema?: string;
8
+ minLength?: string;
9
+ maxLength?: string;
10
+ pattern?: string;
11
+ }
12
+ export type Props = ComponentProps & FieldProps<string, undefined, ErrorMessages> & {
13
+ inputClassName?: string;
14
+ type?: InputProps['type'];
15
+ multiline?: boolean;
16
+ leftIcon?: string;
17
+ rightIcon?: string;
18
+ clear?: boolean;
19
+ autoresize?: boolean;
20
+ autoresizeMaxRows?: number;
21
+ characterCounter?: boolean;
22
+ mask?: InputMaskedProps['mask'];
23
+ minLength?: number;
24
+ maxLength?: number;
25
+ pattern?: string;
26
+ width?: false | 'medium' | 'large' | 'stretch';
27
+ };
28
+ declare function StringComponent(props: Props): import("react/jsx-runtime").JSX.Element;
29
+ declare namespace StringComponent {
30
+ var _supportsEufemiaSpacingProps: boolean;
31
+ }
32
+ export default StringComponent;
@@ -0,0 +1,122 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
+ import React, { useContext } from 'react';
6
+ import classnames from 'classnames';
7
+ import { Input, Textarea } from '../../../components';
8
+ import InputMasked from '../../../components/InputMasked';
9
+ import { forwardSpaceProps } from '../utils';
10
+ import SharedContext from '../../../shared/Context';
11
+ import FieldBlock from '../FieldBlock';
12
+ import { useField } from './hooks';
13
+ function StringComponent(props) {
14
+ var _props$minLength, _props$maxLength;
15
+ const sharedContext = useContext(SharedContext);
16
+ const preparedProps = _objectSpread(_objectSpread({}, props), {}, {
17
+ errorMessages: _objectSpread({
18
+ required: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.inputErrorRequired,
19
+ minLength: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.stringInputErrorMinLength.replace('{minLength}', (_props$minLength = props.minLength) === null || _props$minLength === void 0 ? void 0 : _props$minLength.toString()),
20
+ maxLength: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.stringInputErrorMaxLength.replace('{maxLength}', (_props$maxLength = props.maxLength) === null || _props$maxLength === void 0 ? void 0 : _props$maxLength.toString()),
21
+ pattern: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.inputErrorPattern
22
+ }, props.errorMessages),
23
+ schema: props.schema ?? {
24
+ type: 'string',
25
+ minLength: props.minLength,
26
+ maxLength: props.maxLength,
27
+ pattern: props.pattern
28
+ },
29
+ fromInput: ({
30
+ value,
31
+ cleanedValue
32
+ }) => {
33
+ if (value === '') {
34
+ return props.emptyValue;
35
+ }
36
+ return cleanedValue ?? value;
37
+ },
38
+ width: props.width ?? 'large'
39
+ });
40
+ const {
41
+ id,
42
+ className,
43
+ inputClassName,
44
+ layout,
45
+ type,
46
+ placeholder,
47
+ label,
48
+ labelDescription,
49
+ labelSecondary,
50
+ value,
51
+ info,
52
+ warning,
53
+ error,
54
+ disabled,
55
+ multiline,
56
+ leftIcon,
57
+ rightIcon,
58
+ clear,
59
+ autoresize = true,
60
+ autoresizeMaxRows = 6,
61
+ characterCounter,
62
+ mask,
63
+ width,
64
+ onFocus,
65
+ onBlur,
66
+ onChange
67
+ } = useField(preparedProps);
68
+ const characterCounterElement = characterCounter ? props.maxLength ? `${(value === null || value === void 0 ? void 0 : value.length) ?? '0'}/${props.maxLength}` : `${(value === null || value === void 0 ? void 0 : value.length) ?? '0'}` : undefined;
69
+ const cn = classnames('dnb-forms-field-string__input', inputClassName, width !== false && width !== 'stretch' && `dnb-forms-field-string__input--width-${width}`);
70
+ return React.createElement(FieldBlock, _extends({
71
+ className: classnames('dnb-forms-field-string', className),
72
+ forId: id,
73
+ layout: layout,
74
+ label: label,
75
+ labelDescription: labelDescription,
76
+ labelSecondary: labelSecondary ?? characterCounterElement,
77
+ info: info,
78
+ warning: warning,
79
+ error: error
80
+ }, forwardSpaceProps(props)), multiline ? React.createElement(Textarea, {
81
+ id: id,
82
+ className: cn,
83
+ placeholder: placeholder,
84
+ value: value,
85
+ on_focus: onFocus,
86
+ on_blur: onBlur,
87
+ on_change: onChange,
88
+ autoresize: autoresize,
89
+ autoresize_max_rows: autoresizeMaxRows,
90
+ disabled: disabled,
91
+ stretch: width === 'stretch'
92
+ }) : mask ? React.createElement(InputMasked, {
93
+ className: cn,
94
+ mask: mask,
95
+ placeholder: placeholder,
96
+ value: (value === null || value === void 0 ? void 0 : value.toString()) ?? '',
97
+ icon: leftIcon ?? rightIcon,
98
+ icon_position: rightIcon && !leftIcon ? 'right' : undefined,
99
+ on_focus: onFocus,
100
+ on_blur: onBlur,
101
+ on_change: onChange,
102
+ disabled: disabled,
103
+ stretch: width === 'stretch'
104
+ }) : React.createElement(Input, {
105
+ id: id,
106
+ className: cn,
107
+ type: type,
108
+ placeholder: placeholder,
109
+ value: (value === null || value === void 0 ? void 0 : value.toString()) ?? '',
110
+ icon: leftIcon ?? rightIcon,
111
+ icon_position: rightIcon && !leftIcon ? 'right' : undefined,
112
+ clear: clear,
113
+ on_focus: onFocus,
114
+ on_blur: onBlur,
115
+ on_change: onChange,
116
+ disabled: disabled,
117
+ stretch: width === 'stretch'
118
+ }));
119
+ }
120
+ StringComponent._supportsEufemiaSpacingProps = true;
121
+ export default StringComponent;
122
+ //# sourceMappingURL=String.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"String.js","names":["React","useContext","classnames","Input","Textarea","InputMasked","forwardSpaceProps","SharedContext","FieldBlock","useField","StringComponent","props","_props$minLength","_props$maxLength","sharedContext","preparedProps","_objectSpread","errorMessages","required","translation","Forms","inputErrorRequired","minLength","stringInputErrorMinLength","replace","toString","maxLength","stringInputErrorMaxLength","pattern","inputErrorPattern","schema","type","fromInput","value","cleanedValue","emptyValue","width","id","className","inputClassName","layout","placeholder","label","labelDescription","labelSecondary","info","warning","error","disabled","multiline","leftIcon","rightIcon","clear","autoresize","autoresizeMaxRows","characterCounter","mask","onFocus","onBlur","onChange","characterCounterElement","length","undefined","cn","createElement","_extends","forId","on_focus","on_blur","on_change","autoresize_max_rows","stretch","icon","icon_position","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Field/String.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport { Input, Textarea } from '../../../components'\nimport { InputProps } from '../../../components/input/Input'\nimport InputMasked, {\n InputMaskedProps,\n} from '../../../components/InputMasked'\nimport { forwardSpaceProps } from '../utils'\nimport SharedContext from '../../../shared/Context'\nimport FieldBlock from '../FieldBlock'\nimport { useField } from './hooks'\nimport type { ComponentProps } from '../component-types'\nimport type { FieldProps } from '../field-types'\n\ninterface ErrorMessages {\n required?: string\n schema?: string\n minLength?: string\n maxLength?: string\n pattern?: string\n}\nexport type Props = ComponentProps &\n FieldProps<string, undefined, ErrorMessages> & {\n inputClassName?: string\n type?: InputProps['type']\n multiline?: boolean\n leftIcon?: string\n rightIcon?: string\n clear?: boolean\n autoresize?: boolean\n autoresizeMaxRows?: number\n characterCounter?: boolean\n mask?: InputMaskedProps['mask']\n // Validation\n minLength?: number\n maxLength?: number\n pattern?: string\n // Styling\n width?: false | 'medium' | 'large' | 'stretch'\n }\n\nfunction StringComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n\n const preparedProps: Props = {\n ...props,\n errorMessages: {\n required: sharedContext?.translation.Forms.inputErrorRequired,\n minLength:\n sharedContext?.translation.Forms.stringInputErrorMinLength.replace(\n '{minLength}',\n props.minLength?.toString()\n ),\n maxLength:\n sharedContext?.translation.Forms.stringInputErrorMaxLength.replace(\n '{maxLength}',\n props.maxLength?.toString()\n ),\n pattern: sharedContext?.translation.Forms.inputErrorPattern,\n ...props.errorMessages,\n },\n schema: props.schema ?? {\n type: 'string',\n minLength: props.minLength,\n maxLength: props.maxLength,\n pattern: props.pattern,\n },\n fromInput: ({\n value,\n cleanedValue,\n }: {\n value: string\n cleanedValue: string\n }) => {\n if (value === '') {\n return props.emptyValue\n }\n // Cleaned value for masked\n return cleanedValue ?? value\n },\n width: props.width ?? 'large',\n }\n const {\n id,\n className,\n inputClassName,\n layout,\n type,\n placeholder,\n label,\n labelDescription,\n labelSecondary,\n value,\n info,\n warning,\n error,\n disabled,\n multiline,\n leftIcon,\n rightIcon,\n clear,\n autoresize = true,\n autoresizeMaxRows = 6,\n characterCounter,\n mask,\n width,\n onFocus,\n onBlur,\n onChange,\n } = useField(preparedProps)\n\n const characterCounterElement = characterCounter\n ? props.maxLength\n ? `${value?.length ?? '0'}/${props.maxLength}`\n : `${value?.length ?? '0'}`\n : undefined\n const cn = classnames(\n 'dnb-forms-field-string__input',\n width !== false &&\n width !== 'stretch' &&\n `dnb-forms-field-string__input--width-${width}`,\n inputClassName\n )\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-string', className)}\n forId={id}\n layout={layout}\n label={label}\n labelDescription={labelDescription}\n labelSecondary={labelSecondary ?? characterCounterElement}\n info={info}\n warning={warning}\n error={error}\n {...forwardSpaceProps(props)}\n >\n {multiline ? (\n <Textarea\n id={id}\n className={cn}\n placeholder={placeholder}\n value={value}\n on_focus={onFocus}\n on_blur={onBlur}\n on_change={onChange}\n autoresize={autoresize}\n autoresize_max_rows={autoresizeMaxRows}\n disabled={disabled}\n stretch={width === 'stretch'}\n />\n ) : mask ? (\n <InputMasked\n className={cn}\n mask={mask}\n placeholder={placeholder}\n value={value?.toString() ?? ''}\n icon={leftIcon ?? rightIcon}\n icon_position={rightIcon && !leftIcon ? 'right' : undefined}\n on_focus={onFocus}\n on_blur={onBlur}\n on_change={onChange}\n disabled={disabled}\n stretch={width === 'stretch'}\n />\n ) : (\n <Input\n id={id}\n className={cn}\n type={type}\n placeholder={placeholder}\n value={value?.toString() ?? ''}\n icon={leftIcon ?? rightIcon}\n icon_position={rightIcon && !leftIcon ? 'right' : undefined}\n clear={clear}\n on_focus={onFocus}\n on_blur={onBlur}\n on_change={onChange}\n disabled={disabled}\n stretch={width === 'stretch'}\n />\n )}\n </FieldBlock>\n )\n}\n\nStringComponent._supportsEufemiaSpacingProps = true\nexport default StringComponent\n"],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { ComponentProps } from '../component-types';
2
+ import type { FieldProps } from '../field-types';
3
+ export type Props = ComponentProps & FieldProps<unknown> & {
4
+ valueOn: unknown;
5
+ valueOff: unknown;
6
+ variant?: 'checkbox' | 'checkbox-button' | 'button' | 'buttons';
7
+ textOn?: string;
8
+ textOff?: string;
9
+ };
10
+ declare function Toggle(props: Props): import("react/jsx-runtime").JSX.Element;
11
+ declare namespace Toggle {
12
+ var _supportsEufemiaSpacingProps: boolean;
13
+ }
14
+ export default Toggle;
@@ -0,0 +1,116 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
+ var _Space;
4
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
+ import React, { useContext, useCallback } from 'react';
7
+ import { Checkbox, ToggleButton, Button, Space } from '../../../components';
8
+ import classnames from 'classnames';
9
+ import ButtonRow from '../Layout/ButtonRow';
10
+ import FieldBlock from '../FieldBlock';
11
+ import { useField } from './hooks';
12
+ import { forwardSpaceProps } from '../utils';
13
+ import SharedContext from '../../../shared/Context';
14
+ function Toggle(props) {
15
+ const sharedContext = useContext(SharedContext);
16
+ const {
17
+ id,
18
+ className,
19
+ valueOn,
20
+ valueOff,
21
+ layout,
22
+ variant,
23
+ disabled,
24
+ label,
25
+ labelDescription,
26
+ textOn,
27
+ textOff,
28
+ value,
29
+ info,
30
+ warning,
31
+ error,
32
+ onChange
33
+ } = useField(props);
34
+ const handleCheckboxChange = useCallback(({
35
+ checked
36
+ }) => {
37
+ onChange === null || onChange === void 0 ? void 0 : onChange(checked ? valueOn : valueOff);
38
+ }, [onChange, valueOn, valueOff]);
39
+ const setOn = useCallback(() => {
40
+ if (value !== valueOn) {
41
+ onChange === null || onChange === void 0 ? void 0 : onChange(valueOn);
42
+ }
43
+ }, [onChange, value, valueOn]);
44
+ const setOff = useCallback(() => {
45
+ if (value !== valueOff) {
46
+ onChange === null || onChange === void 0 ? void 0 : onChange(valueOff);
47
+ }
48
+ }, [onChange, value, valueOff]);
49
+ const cn = classnames('dnb-forms-field-boolean', className);
50
+ const fieldBlockPropsWithoutLabel = _objectSpread(_objectSpread({
51
+ forId: id,
52
+ className: cn
53
+ }, forwardSpaceProps(props)), {}, {
54
+ info,
55
+ warning,
56
+ error
57
+ });
58
+ const fieldBlockProps = _objectSpread(_objectSpread({}, fieldBlockPropsWithoutLabel), {}, {
59
+ layout,
60
+ label,
61
+ labelDescription
62
+ });
63
+ const isOn = value === valueOn;
64
+ switch (variant) {
65
+ default:
66
+ case 'checkbox':
67
+ return React.createElement(FieldBlock, fieldBlockPropsWithoutLabel, React.createElement(Checkbox, _extends({
68
+ id: id,
69
+ className: cn,
70
+ label: label,
71
+ checked: isOn,
72
+ disabled: disabled,
73
+ on_change: handleCheckboxChange
74
+ }, forwardSpaceProps(props))));
75
+ case 'button':
76
+ return React.createElement(FieldBlock, fieldBlockProps, React.createElement(ToggleButton, {
77
+ id: id,
78
+ text: isOn ? textOn ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanYes) : textOff ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanNo),
79
+ checked: isOn,
80
+ disabled: disabled,
81
+ value: value ? 'true' : 'false',
82
+ on_change: handleCheckboxChange
83
+ }));
84
+ case 'buttons':
85
+ return React.createElement(FieldBlock, fieldBlockProps, React.createElement(ButtonRow, null, React.createElement(Button, {
86
+ id: id,
87
+ text: textOn ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanYes),
88
+ on_click: setOn,
89
+ variant: isOn ? undefined : 'secondary',
90
+ status: error ? 'error' : undefined,
91
+ disabled: disabled
92
+ }), React.createElement(Button, {
93
+ id: id,
94
+ text: textOff ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanNo),
95
+ on_click: setOff,
96
+ variant: isOn ? 'secondary' : undefined,
97
+ status: error ? 'error' : undefined,
98
+ disabled: disabled
99
+ })), _Space || (_Space = React.createElement(Space, {
100
+ bottom: "x-small"
101
+ })));
102
+ case 'checkbox-button':
103
+ return React.createElement(FieldBlock, fieldBlockProps, React.createElement(ToggleButton, {
104
+ id: id,
105
+ variant: "checkbox",
106
+ text: isOn ? textOn ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanYes) : textOff ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanNo),
107
+ checked: isOn,
108
+ disabled: disabled,
109
+ value: value ? 'true' : 'false',
110
+ on_change: handleCheckboxChange
111
+ }));
112
+ }
113
+ }
114
+ Toggle._supportsEufemiaSpacingProps = true;
115
+ export default Toggle;
116
+ //# sourceMappingURL=Toggle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toggle.js","names":["React","useContext","useCallback","Checkbox","ToggleButton","Button","Space","classnames","ButtonRow","FieldBlock","useField","forwardSpaceProps","SharedContext","Toggle","props","sharedContext","id","className","valueOn","valueOff","layout","variant","disabled","label","labelDescription","textOn","textOff","value","info","warning","error","onChange","handleCheckboxChange","checked","setOn","setOff","cn","fieldBlockPropsWithoutLabel","_objectSpread","forId","fieldBlockProps","isOn","createElement","_extends","on_change","text","translation","Forms","booleanYes","booleanNo","on_click","undefined","status","_Space","bottom","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Field/Toggle.tsx"],"sourcesContent":["import React, { useContext, useCallback } from 'react'\nimport { Checkbox, ToggleButton, Button, Space } from '../../../components'\nimport classnames from 'classnames'\nimport ButtonRow from '../Layout/ButtonRow'\nimport FieldBlock from '../FieldBlock'\nimport { useField } from './hooks'\nimport type { ComponentProps } from '../component-types'\nimport type { FieldProps } from '../field-types'\nimport { forwardSpaceProps } from '../utils'\nimport SharedContext from '../../../shared/Context'\n\nexport type Props = ComponentProps &\n FieldProps<unknown> & {\n valueOn: unknown\n valueOff: unknown\n variant?: 'checkbox' | 'checkbox-button' | 'button' | 'buttons'\n textOn?: string\n textOff?: string\n }\n\nfunction Toggle(props: Props) {\n const sharedContext = useContext(SharedContext)\n const {\n id,\n className,\n valueOn,\n valueOff,\n layout,\n variant,\n disabled,\n label,\n labelDescription,\n textOn,\n textOff,\n value,\n info,\n warning,\n error,\n onChange,\n } = useField(props)\n\n const handleCheckboxChange = useCallback(\n ({ checked }) => {\n onChange?.(checked ? valueOn : valueOff)\n },\n [onChange, valueOn, valueOff]\n )\n\n const setOn = useCallback(() => {\n if (value !== valueOn) {\n onChange?.(valueOn)\n }\n }, [onChange, value, valueOn])\n\n const setOff = useCallback(() => {\n if (value !== valueOff) {\n onChange?.(valueOff)\n }\n }, [onChange, value, valueOff])\n\n const cn = classnames('dnb-forms-field-boolean', className)\n\n const fieldBlockPropsWithoutLabel = {\n forId: id,\n className: cn,\n ...forwardSpaceProps(props),\n info,\n warning,\n error,\n }\n\n const fieldBlockProps = {\n ...fieldBlockPropsWithoutLabel,\n layout,\n label,\n labelDescription,\n }\n\n const isOn = value === valueOn\n\n switch (variant) {\n default:\n case 'checkbox':\n return (\n <FieldBlock {...fieldBlockPropsWithoutLabel}>\n <Checkbox\n id={id}\n className={cn}\n label={label}\n checked={isOn}\n disabled={disabled}\n on_change={handleCheckboxChange}\n {...forwardSpaceProps(props)}\n />\n </FieldBlock>\n )\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ToggleButton\n id={id}\n text={\n isOn\n ? textOn ?? sharedContext?.translation.Forms.booleanYes\n : textOff ?? sharedContext?.translation.Forms.booleanNo\n }\n checked={isOn}\n disabled={disabled}\n value={value ? 'true' : 'false'}\n on_change={handleCheckboxChange}\n />\n </FieldBlock>\n )\n case 'buttons':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n <Button\n id={id}\n text={textOn ?? sharedContext?.translation.Forms.booleanYes}\n on_click={setOn}\n variant={isOn ? undefined : 'secondary'}\n status={error ? 'error' : undefined}\n disabled={disabled}\n />\n <Button\n id={id}\n text={textOff ?? sharedContext?.translation.Forms.booleanNo}\n on_click={setOff}\n variant={isOn ? 'secondary' : undefined}\n status={error ? 'error' : undefined}\n disabled={disabled}\n />\n </ButtonRow>\n <Space bottom=\"x-small\" />\n </FieldBlock>\n )\n case 'checkbox-button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ToggleButton\n id={id}\n variant=\"checkbox\"\n text={\n isOn\n ? textOn ?? sharedContext?.translation.Forms.booleanYes\n : textOff ?? sharedContext?.translation.Forms.booleanNo\n }\n checked={isOn}\n disabled={disabled}\n value={value ? 'true' : 'false'}\n on_change={handleCheckboxChange}\n />\n </FieldBlock>\n )\n }\n}\n\nToggle._supportsEufemiaSpacingProps = true\nexport default Toggle\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ $forms-field-width-medium: 176px;
2
+ $forms-field-width-large: 336px;
@@ -0,0 +1 @@
1
+ export { default as useField } from './useField';
@@ -0,0 +1 @@
1
+ export { default as useField } from './useField';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["default","useField"],"sources":["../../../../../../src/extensions/forms/Field/hooks/index.ts"],"sourcesContent":["export { default as useField } from './useField'\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,QAAQ,QAAQ,YAAY"}
@@ -0,0 +1,11 @@
1
+ import type { FieldProps } from '../../field-types';
2
+ interface ReturnPropOverrides {
3
+ onFocus: (options?: {
4
+ onFocusValue: unknown;
5
+ }) => void;
6
+ onBlur: (options?: {
7
+ onBlurValue: unknown;
8
+ }) => void;
9
+ }
10
+ export default function useField<Props extends FieldProps<any>>(props: Props): Omit<Props, keyof ReturnPropOverrides> & ReturnPropOverrides;
11
+ export {};
@@ -0,0 +1,150 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ import { useRef, useEffect, useContext, useCallback, useMemo, useState } from 'react';
5
+ import pointer from 'json-pointer';
6
+ import { FormError } from '../../types';
7
+ import ajv, { ajvErrorsToOneFormError } from '../../utils/ajv';
8
+ import DataContext from '../../DataContext';
9
+ import { FieldGroupContext } from '../../FieldGroup';
10
+ import { makeUniqueId } from '../../../../shared/component-helper';
11
+ export default function useField(props) {
12
+ const {
13
+ path,
14
+ emptyValue,
15
+ required,
16
+ error: errorProp,
17
+ onFocus: onFocusProp,
18
+ onBlur: onBlurProp,
19
+ onChange: onChangeProp,
20
+ validator: validatorProp,
21
+ onBlurValidator: onBlurValidatorProp,
22
+ schema,
23
+ errorMessages,
24
+ validateInitially,
25
+ validateUnchanged,
26
+ toInput = value => value,
27
+ fromInput = value => value
28
+ } = props;
29
+ const id = useMemo(() => props.id ?? makeUniqueId(), [props.id]);
30
+ const dataContext = useContext(DataContext.Context);
31
+ const fieldGroupContext = useContext(FieldGroupContext);
32
+ const inFieldGroup = Boolean(fieldGroupContext);
33
+ const {
34
+ setFieldError: setFieldGroupError,
35
+ setShowFieldError: setShowFieldGroupError
36
+ } = fieldGroupContext ?? {};
37
+ const {
38
+ handlePathChange: dataContextHandlePathChange,
39
+ setPathWithError: dataContextSetPathWithError,
40
+ errors: dataContextErrors
41
+ } = dataContext ?? {};
42
+ if (path && path.substring(0, 1) !== '/') {
43
+ throw new Error('Invalid path. Input path JSON Pointers must be from root (starting with a /).');
44
+ }
45
+ const externalValue = useMemo(() => {
46
+ return props.value ?? (dataContext.data && path !== undefined && pointer.has(dataContext.data, path) ? pointer.get(dataContext.data, path) : undefined);
47
+ }, [path, props.value, dataContext.data]);
48
+ const [value, setValue] = useState(externalValue);
49
+ const changedRef = useRef(false);
50
+ useEffect(() => {
51
+ setValue(externalValue);
52
+ }, [externalValue]);
53
+ const [error, setError] = useState();
54
+ const [showError, setShowError] = useState(Boolean(validateInitially || errorProp));
55
+ const schemaValidator = useMemo(() => schema && Object.keys(schema).length > 0 ? ajv.compile(schema) : undefined, [schema]);
56
+ const setErrorAndUpdateDataContext = useCallback(error => {
57
+ const errorWithCorrectMessage = error instanceof FormError && typeof error.validationRule === 'string' && (errorMessages === null || errorMessages === void 0 ? void 0 : errorMessages[error.validationRule]) !== undefined ? new FormError(errorMessages[error.validationRule]) : error;
58
+ setError(errorWithCorrectMessage);
59
+ if (path) {
60
+ dataContextSetPathWithError === null || dataContextSetPathWithError === void 0 ? void 0 : dataContextSetPathWithError(path, Boolean(error));
61
+ }
62
+ setFieldGroupError === null || setFieldGroupError === void 0 ? void 0 : setFieldGroupError(path ?? id, errorWithCorrectMessage);
63
+ }, [path, id, errorMessages, dataContextSetPathWithError, setFieldGroupError]);
64
+ const validateValue = useCallback(valueToValidate => {
65
+ if (typeof validatorProp === 'function') {
66
+ Promise.resolve(validatorProp(valueToValidate)).then(setErrorAndUpdateDataContext);
67
+ }
68
+ if (valueToValidate === emptyValue && required) {
69
+ const error = new FormError('The value is required', {
70
+ validationRule: 'required'
71
+ });
72
+ setErrorAndUpdateDataContext(error);
73
+ return error;
74
+ } else if (schemaValidator) {
75
+ if (valueToValidate === undefined && emptyValue === undefined) {
76
+ setErrorAndUpdateDataContext(undefined);
77
+ return undefined;
78
+ }
79
+ schemaValidator(valueToValidate);
80
+ const error = ajvErrorsToOneFormError(schemaValidator.errors);
81
+ setErrorAndUpdateDataContext(error);
82
+ return error;
83
+ } else {
84
+ setErrorAndUpdateDataContext(undefined);
85
+ return undefined;
86
+ }
87
+ }, [schemaValidator, emptyValue, required, setErrorAndUpdateDataContext, validatorProp]);
88
+ useEffect(() => {
89
+ if (!error && path && dataContextErrors !== null && dataContextErrors !== void 0 && dataContextErrors[path]) {
90
+ setErrorAndUpdateDataContext(dataContextErrors[path]);
91
+ }
92
+ }, [path, dataContextErrors, error, setErrorAndUpdateDataContext]);
93
+ useEffect(() => {
94
+ if (dataContext.showAllErrors) {
95
+ setShowError(true);
96
+ setShowFieldGroupError === null || setShowFieldGroupError === void 0 ? void 0 : setShowFieldGroupError(path ?? id, true);
97
+ }
98
+ }, [id, path, dataContext.showAllErrors, setShowFieldGroupError]);
99
+ const onFocus = useCallback(({
100
+ onFocusValue
101
+ }) => {
102
+ onFocusProp === null || onFocusProp === void 0 ? void 0 : onFocusProp(onFocusValue ?? value);
103
+ }, [value, onFocusProp]);
104
+ const onBlur = useCallback(({
105
+ onBlurValue
106
+ }) => {
107
+ onBlurProp === null || onBlurProp === void 0 ? void 0 : onBlurProp(onBlurValue ?? value);
108
+ if (!changedRef.current && !validateUnchanged) {
109
+ return;
110
+ }
111
+ if (typeof onBlurValidatorProp === 'function') {
112
+ Promise.resolve(onBlurValidatorProp(onBlurValue ?? value)).then(setErrorAndUpdateDataContext);
113
+ }
114
+ setShowError(true);
115
+ setShowFieldGroupError === null || setShowFieldGroupError === void 0 ? void 0 : setShowFieldGroupError(path ?? id, true);
116
+ }, [id, path, value, onBlurProp, validateUnchanged, onBlurValidatorProp, setErrorAndUpdateDataContext, setShowFieldGroupError]);
117
+ const onChange = useCallback(valueFromInput => {
118
+ const newValue = fromInput(valueFromInput);
119
+ setValue(newValue);
120
+ changedRef.current = true;
121
+ setShowError(false);
122
+ setShowFieldGroupError === null || setShowFieldGroupError === void 0 ? void 0 : setShowFieldGroupError(path ?? id, false);
123
+ validateValue(newValue);
124
+ onChangeProp === null || onChangeProp === void 0 ? void 0 : onChangeProp(newValue);
125
+ if (path) {
126
+ dataContextHandlePathChange === null || dataContextHandlePathChange === void 0 ? void 0 : dataContextHandlePathChange(path, newValue);
127
+ }
128
+ }, [id, path, onChangeProp, validateValue, dataContextHandlePathChange, setShowFieldGroupError, fromInput]);
129
+ const exportError = useMemo(() => errorProp ?? error, [errorProp, error]);
130
+ useEffect(() => {
131
+ if (path) {
132
+ dataContext === null || dataContext === void 0 ? void 0 : dataContext.handleMountField(path);
133
+ }
134
+ validateValue(externalValue);
135
+ return () => {
136
+ if (path) {
137
+ dataContext === null || dataContext === void 0 ? void 0 : dataContext.handleUnMountField(path);
138
+ }
139
+ };
140
+ }, []);
141
+ return _objectSpread(_objectSpread({}, props), {}, {
142
+ id,
143
+ value: toInput(value),
144
+ error: inFieldGroup ? undefined : showError ? exportError : undefined,
145
+ onFocus,
146
+ onBlur,
147
+ onChange
148
+ });
149
+ }
150
+ //# sourceMappingURL=useField.js.map