@dnb/eufemia 10.12.0 → 10.13.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 (582) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/cjs/components/accordion/Accordion.js +1 -0
  3. package/cjs/components/accordion/Accordion.js.map +1 -1
  4. package/cjs/components/accordion/AccordionGroup.js +1 -0
  5. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  6. package/cjs/components/accordion/AccordionHeader.js +5 -15
  7. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  8. package/cjs/components/accordion/style/dnb-accordion.css +2 -2
  9. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  10. package/cjs/components/accordion/style/dnb-accordion.scss +3 -8
  11. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +1 -1
  12. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  13. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +1 -1
  14. package/cjs/components/anchor/Anchor.js.map +1 -1
  15. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +2 -2
  16. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  17. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +1 -2
  18. package/cjs/components/autocomplete/Autocomplete.d.ts +2 -2
  19. package/cjs/components/autocomplete/Autocomplete.js +41 -16
  20. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  21. package/cjs/components/breadcrumb/Breadcrumb.js +1 -0
  22. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  23. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
  24. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +2 -2
  25. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +1 -1
  26. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +2 -2
  27. package/cjs/components/card/Card.js +2 -2
  28. package/cjs/components/card/Card.js.map +1 -1
  29. package/cjs/components/dialog/Dialog.js +1 -0
  30. package/cjs/components/dialog/Dialog.js.map +1 -1
  31. package/cjs/components/dialog/DialogContent.js +1 -0
  32. package/cjs/components/dialog/DialogContent.js.map +1 -1
  33. package/cjs/components/dialog/parts/DialogAction.js +1 -0
  34. package/cjs/components/dialog/parts/DialogAction.js.map +1 -1
  35. package/cjs/components/drawer/Drawer.js +1 -0
  36. package/cjs/components/drawer/Drawer.js.map +1 -1
  37. package/cjs/components/drawer/DrawerContent.js +1 -0
  38. package/cjs/components/drawer/DrawerContent.js.map +1 -1
  39. package/cjs/components/drawer/parts/DrawerContentContext.js +1 -0
  40. package/cjs/components/drawer/parts/DrawerContentContext.js.map +1 -1
  41. package/cjs/components/flex/Container.js +6 -4
  42. package/cjs/components/flex/Container.js.map +1 -1
  43. package/cjs/components/flex/utils.js +2 -2
  44. package/cjs/components/flex/utils.js.map +1 -1
  45. package/cjs/components/form-row/style/dnb-form-row.scss +1 -1
  46. package/cjs/components/icon/style/dnb-icon.scss +1 -1
  47. package/cjs/components/input-masked/InputMasked.d.ts +1 -1
  48. package/cjs/components/input-masked/MultiInputMask.d.ts +3 -3
  49. package/cjs/components/input-masked/MultiInputMask.js +2 -1
  50. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  51. package/cjs/components/input-masked/hooks/useHandleCursorPosition.js +1 -0
  52. package/cjs/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  53. package/cjs/components/input-masked/hooks/useMultiInputValues.js +1 -0
  54. package/cjs/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
  55. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  56. package/cjs/components/number-format/useNumberFormat.js +1 -0
  57. package/cjs/components/number-format/useNumberFormat.js.map +1 -1
  58. package/cjs/components/pagination/PaginationBar.js +1 -0
  59. package/cjs/components/pagination/PaginationBar.js.map +1 -1
  60. package/cjs/components/step-indicator/StepIndicatorContext.js +1 -0
  61. package/cjs/components/step-indicator/StepIndicatorContext.js.map +1 -1
  62. package/cjs/components/step-indicator/StepIndicatorItem.js +3 -2
  63. package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
  64. package/cjs/components/step-indicator/StepIndicatorList.js +1 -0
  65. package/cjs/components/step-indicator/StepIndicatorList.js.map +1 -1
  66. package/cjs/components/step-indicator/StepIndicatorModal.js +1 -0
  67. package/cjs/components/step-indicator/StepIndicatorModal.js.map +1 -1
  68. package/cjs/components/step-indicator/StepIndicatorSidebar.js +1 -0
  69. package/cjs/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  70. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +1 -0
  71. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  72. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.css +1 -0
  73. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  74. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.scss +1 -0
  75. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -1
  76. package/cjs/components/tooltip/TooltipWithEvents.js.map +1 -1
  77. package/cjs/components/upload/UploadContext.js +1 -0
  78. package/cjs/components/upload/UploadContext.js.map +1 -1
  79. package/cjs/components/upload/UploadFileInput.js +1 -0
  80. package/cjs/components/upload/UploadFileInput.js.map +1 -1
  81. package/cjs/components/upload/UploadFileListCell.js +1 -0
  82. package/cjs/components/upload/UploadFileListCell.js.map +1 -1
  83. package/cjs/elements/lists/Dl.d.ts +1 -1
  84. package/cjs/elements/lists/Dl.js.map +1 -1
  85. package/cjs/elements/typography/style/dnb-typography.scss +1 -1
  86. package/cjs/elements/typography/style/typography-mixins.scss +2 -2
  87. package/cjs/extensions/forms/DataContext/At/At.js +1 -0
  88. package/cjs/extensions/forms/DataContext/At/At.js.map +1 -1
  89. package/cjs/extensions/forms/DataContext/Provider/Provider.js +5 -3
  90. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  91. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +12 -9
  92. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  93. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +5 -3
  94. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  95. package/cjs/extensions/forms/Field/Boolean/Boolean.js +3 -2
  96. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  97. package/cjs/extensions/forms/Field/Currency/Currency.js +3 -2
  98. package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
  99. package/cjs/extensions/forms/Field/Date/Date.js +2 -1
  100. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  101. package/cjs/extensions/forms/Field/Email/Email.js +5 -3
  102. package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
  103. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +5 -3
  104. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  105. package/cjs/extensions/forms/Field/Number/Number.js +3 -2
  106. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  107. package/cjs/extensions/forms/Field/Option/Option.js +1 -1
  108. package/cjs/extensions/forms/Field/Option/Option.js.map +1 -1
  109. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +5 -3
  110. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  111. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +5 -0
  112. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +58 -18
  113. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  114. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +6 -4
  115. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  116. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +12 -8
  117. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  118. package/cjs/extensions/forms/Field/Selection/Selection.js +29 -20
  119. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  120. package/cjs/extensions/forms/Field/String/String.js +10 -9
  121. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  122. package/cjs/extensions/forms/Field/Toggle/Toggle.js +5 -4
  123. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  124. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +1 -0
  125. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  126. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js +1 -0
  127. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  128. package/cjs/extensions/forms/Iterate/Array/Array.js +2 -2
  129. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  130. package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +3 -2
  131. package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  132. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +2 -1
  133. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  134. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js +1 -0
  135. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  136. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +1 -0
  137. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  138. package/cjs/extensions/forms/StepsLayout/Step/Step.js +1 -0
  139. package/cjs/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
  140. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +3 -1
  141. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  142. package/cjs/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +3 -1
  143. package/cjs/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  144. package/cjs/extensions/forms/Value/Boolean/Boolean.js +1 -0
  145. package/cjs/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  146. package/cjs/extensions/forms/Value/Currency/Currency.js +3 -2
  147. package/cjs/extensions/forms/Value/Currency/Currency.js.map +1 -1
  148. package/cjs/extensions/forms/Value/Date/Date.js +3 -1
  149. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  150. package/cjs/extensions/forms/Value/Email/Email.js +3 -1
  151. package/cjs/extensions/forms/Value/Email/Email.js.map +1 -1
  152. package/cjs/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +3 -1
  153. package/cjs/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  154. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js +3 -1
  155. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  156. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +1 -1
  157. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  158. package/cjs/extensions/forms/Visibility/Visibility.js +1 -0
  159. package/cjs/extensions/forms/Visibility/Visibility.js.map +1 -1
  160. package/cjs/extensions/forms/hooks/useDataValue.js +21 -17
  161. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  162. package/cjs/extensions/forms/types.js +6 -6
  163. package/cjs/extensions/forms/types.js.map +1 -1
  164. package/cjs/extensions/forms/utils/ajv.js +3 -2
  165. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  166. package/cjs/extensions/forms/utils/numbers.js +2 -2
  167. package/cjs/extensions/forms/utils/numbers.js.map +1 -1
  168. package/cjs/extensions/forms/utils/useWasChanged.js +8 -6
  169. package/cjs/extensions/forms/utils/useWasChanged.js.map +1 -1
  170. package/cjs/fragments/drawer-list/DrawerListHelpers.js +1 -1
  171. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  172. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  173. package/cjs/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +1 -1
  174. package/cjs/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -2
  175. package/cjs/shared/Eufemia.d.ts +1 -1
  176. package/cjs/shared/Eufemia.js +2 -2
  177. package/cjs/shared/Eufemia.js.map +1 -1
  178. package/cjs/style/dnb-ui-components.css +2 -2
  179. package/cjs/style/dnb-ui-components.min.css +1 -1
  180. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +2 -2
  181. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  182. package/cjs/style/themes/theme-sbanken/fonts.scss +5 -4
  183. package/cjs/style/themes/theme-sbanken/properties.js +2 -2
  184. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  185. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -2
  186. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  187. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +8 -7
  188. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  189. package/cjs/style/themes/theme-sbanken/theme-mapping.scss +2 -1
  190. package/cjs/style/themes/theme-ui/ui-theme-components.css +2 -2
  191. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  192. package/components/accordion/Accordion.js +2 -0
  193. package/components/accordion/Accordion.js.map +1 -1
  194. package/components/accordion/AccordionGroup.js +2 -0
  195. package/components/accordion/AccordionGroup.js.map +1 -1
  196. package/components/accordion/AccordionHeader.js +6 -15
  197. package/components/accordion/AccordionHeader.js.map +1 -1
  198. package/components/accordion/style/dnb-accordion.css +2 -2
  199. package/components/accordion/style/dnb-accordion.min.css +1 -1
  200. package/components/accordion/style/dnb-accordion.scss +3 -8
  201. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +1 -1
  202. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  203. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +1 -1
  204. package/components/anchor/Anchor.js.map +1 -1
  205. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +2 -2
  206. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  207. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +1 -2
  208. package/components/autocomplete/Autocomplete.d.ts +2 -2
  209. package/components/autocomplete/Autocomplete.js +42 -17
  210. package/components/autocomplete/Autocomplete.js.map +1 -1
  211. package/components/breadcrumb/Breadcrumb.js +2 -0
  212. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  213. package/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
  214. package/components/button/style/themes/dnb-button-theme-sbanken.css +2 -2
  215. package/components/button/style/themes/dnb-button-theme-sbanken.min.css +1 -1
  216. package/components/button/style/themes/dnb-button-theme-sbanken.scss +2 -2
  217. package/components/card/Card.js +2 -2
  218. package/components/card/Card.js.map +1 -1
  219. package/components/dialog/Dialog.js +2 -0
  220. package/components/dialog/Dialog.js.map +1 -1
  221. package/components/dialog/DialogContent.js +2 -0
  222. package/components/dialog/DialogContent.js.map +1 -1
  223. package/components/dialog/parts/DialogAction.js +2 -0
  224. package/components/dialog/parts/DialogAction.js.map +1 -1
  225. package/components/drawer/Drawer.js +2 -0
  226. package/components/drawer/Drawer.js.map +1 -1
  227. package/components/drawer/DrawerContent.js +2 -0
  228. package/components/drawer/DrawerContent.js.map +1 -1
  229. package/components/drawer/parts/DrawerContentContext.js +2 -0
  230. package/components/drawer/parts/DrawerContentContext.js.map +1 -1
  231. package/components/flex/Container.js +6 -4
  232. package/components/flex/Container.js.map +1 -1
  233. package/components/flex/utils.js +2 -2
  234. package/components/flex/utils.js.map +1 -1
  235. package/components/form-row/style/dnb-form-row.scss +1 -1
  236. package/components/icon/style/dnb-icon.scss +1 -1
  237. package/components/input-masked/InputMasked.d.ts +1 -1
  238. package/components/input-masked/MultiInputMask.d.ts +3 -3
  239. package/components/input-masked/MultiInputMask.js +3 -1
  240. package/components/input-masked/MultiInputMask.js.map +1 -1
  241. package/components/input-masked/hooks/useHandleCursorPosition.js +2 -0
  242. package/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  243. package/components/input-masked/hooks/useMultiInputValues.js +2 -0
  244. package/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
  245. package/components/number-format/NumberUtils.js.map +1 -1
  246. package/components/number-format/useNumberFormat.js +2 -0
  247. package/components/number-format/useNumberFormat.js.map +1 -1
  248. package/components/pagination/PaginationBar.js +2 -0
  249. package/components/pagination/PaginationBar.js.map +1 -1
  250. package/components/step-indicator/StepIndicatorContext.js +2 -0
  251. package/components/step-indicator/StepIndicatorContext.js.map +1 -1
  252. package/components/step-indicator/StepIndicatorItem.js +4 -2
  253. package/components/step-indicator/StepIndicatorItem.js.map +1 -1
  254. package/components/step-indicator/StepIndicatorList.js +2 -0
  255. package/components/step-indicator/StepIndicatorList.js.map +1 -1
  256. package/components/step-indicator/StepIndicatorModal.js +2 -0
  257. package/components/step-indicator/StepIndicatorModal.js.map +1 -1
  258. package/components/step-indicator/StepIndicatorSidebar.js +2 -0
  259. package/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  260. package/components/step-indicator/StepIndicatorTriggerButton.js +2 -0
  261. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  262. package/components/table/style/themes/dnb-table-theme-sbanken.css +1 -0
  263. package/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  264. package/components/table/style/themes/dnb-table-theme-sbanken.scss +1 -0
  265. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -1
  266. package/components/tooltip/TooltipWithEvents.js.map +1 -1
  267. package/components/upload/UploadContext.js +2 -0
  268. package/components/upload/UploadContext.js.map +1 -1
  269. package/components/upload/UploadFileInput.js +2 -0
  270. package/components/upload/UploadFileInput.js.map +1 -1
  271. package/components/upload/UploadFileListCell.js +2 -0
  272. package/components/upload/UploadFileListCell.js.map +1 -1
  273. package/elements/lists/Dl.d.ts +1 -1
  274. package/elements/lists/Dl.js.map +1 -1
  275. package/elements/typography/style/dnb-typography.scss +1 -1
  276. package/elements/typography/style/typography-mixins.scss +2 -2
  277. package/es/components/accordion/Accordion.js +2 -0
  278. package/es/components/accordion/Accordion.js.map +1 -1
  279. package/es/components/accordion/AccordionGroup.js +2 -0
  280. package/es/components/accordion/AccordionGroup.js.map +1 -1
  281. package/es/components/accordion/AccordionHeader.js +6 -15
  282. package/es/components/accordion/AccordionHeader.js.map +1 -1
  283. package/es/components/accordion/style/dnb-accordion.css +2 -2
  284. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  285. package/es/components/accordion/style/dnb-accordion.scss +3 -8
  286. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +1 -1
  287. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  288. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +1 -1
  289. package/es/components/anchor/Anchor.js.map +1 -1
  290. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +2 -2
  291. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  292. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +1 -2
  293. package/es/components/autocomplete/Autocomplete.d.ts +2 -2
  294. package/es/components/autocomplete/Autocomplete.js +42 -17
  295. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  296. package/es/components/breadcrumb/Breadcrumb.js +2 -0
  297. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  298. package/es/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
  299. package/es/components/button/style/themes/dnb-button-theme-sbanken.css +2 -2
  300. package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +1 -1
  301. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +2 -2
  302. package/es/components/card/Card.js +2 -2
  303. package/es/components/card/Card.js.map +1 -1
  304. package/es/components/dialog/Dialog.js +2 -0
  305. package/es/components/dialog/Dialog.js.map +1 -1
  306. package/es/components/dialog/DialogContent.js +2 -0
  307. package/es/components/dialog/DialogContent.js.map +1 -1
  308. package/es/components/dialog/parts/DialogAction.js +2 -0
  309. package/es/components/dialog/parts/DialogAction.js.map +1 -1
  310. package/es/components/drawer/Drawer.js +2 -0
  311. package/es/components/drawer/Drawer.js.map +1 -1
  312. package/es/components/drawer/DrawerContent.js +2 -0
  313. package/es/components/drawer/DrawerContent.js.map +1 -1
  314. package/es/components/drawer/parts/DrawerContentContext.js +2 -0
  315. package/es/components/drawer/parts/DrawerContentContext.js.map +1 -1
  316. package/es/components/flex/Container.js +6 -4
  317. package/es/components/flex/Container.js.map +1 -1
  318. package/es/components/flex/utils.js +2 -2
  319. package/es/components/flex/utils.js.map +1 -1
  320. package/es/components/form-row/style/dnb-form-row.scss +1 -1
  321. package/es/components/icon/style/dnb-icon.scss +1 -1
  322. package/es/components/input-masked/InputMasked.d.ts +1 -1
  323. package/es/components/input-masked/MultiInputMask.d.ts +3 -3
  324. package/es/components/input-masked/MultiInputMask.js +3 -1
  325. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  326. package/es/components/input-masked/hooks/useHandleCursorPosition.js +2 -0
  327. package/es/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  328. package/es/components/input-masked/hooks/useMultiInputValues.js +2 -0
  329. package/es/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
  330. package/es/components/number-format/NumberUtils.js.map +1 -1
  331. package/es/components/number-format/useNumberFormat.js +2 -0
  332. package/es/components/number-format/useNumberFormat.js.map +1 -1
  333. package/es/components/pagination/PaginationBar.js +2 -0
  334. package/es/components/pagination/PaginationBar.js.map +1 -1
  335. package/es/components/step-indicator/StepIndicatorContext.js +2 -0
  336. package/es/components/step-indicator/StepIndicatorContext.js.map +1 -1
  337. package/es/components/step-indicator/StepIndicatorItem.js +4 -2
  338. package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
  339. package/es/components/step-indicator/StepIndicatorList.js +2 -0
  340. package/es/components/step-indicator/StepIndicatorList.js.map +1 -1
  341. package/es/components/step-indicator/StepIndicatorModal.js +2 -0
  342. package/es/components/step-indicator/StepIndicatorModal.js.map +1 -1
  343. package/es/components/step-indicator/StepIndicatorSidebar.js +2 -0
  344. package/es/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  345. package/es/components/step-indicator/StepIndicatorTriggerButton.js +2 -0
  346. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  347. package/es/components/table/style/themes/dnb-table-theme-sbanken.css +1 -0
  348. package/es/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  349. package/es/components/table/style/themes/dnb-table-theme-sbanken.scss +1 -0
  350. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -1
  351. package/es/components/tooltip/TooltipWithEvents.js.map +1 -1
  352. package/es/components/upload/UploadContext.js +2 -0
  353. package/es/components/upload/UploadContext.js.map +1 -1
  354. package/es/components/upload/UploadFileInput.js +2 -0
  355. package/es/components/upload/UploadFileInput.js.map +1 -1
  356. package/es/components/upload/UploadFileListCell.js +2 -0
  357. package/es/components/upload/UploadFileListCell.js.map +1 -1
  358. package/es/elements/lists/Dl.d.ts +1 -1
  359. package/es/elements/lists/Dl.js.map +1 -1
  360. package/es/elements/typography/style/dnb-typography.scss +1 -1
  361. package/es/elements/typography/style/typography-mixins.scss +2 -2
  362. package/es/extensions/forms/DataContext/At/At.js +2 -0
  363. package/es/extensions/forms/DataContext/At/At.js.map +1 -1
  364. package/es/extensions/forms/DataContext/Provider/Provider.js +6 -3
  365. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  366. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +12 -9
  367. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  368. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +6 -3
  369. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  370. package/es/extensions/forms/Field/Boolean/Boolean.js +4 -2
  371. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  372. package/es/extensions/forms/Field/Currency/Currency.js +3 -2
  373. package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
  374. package/es/extensions/forms/Field/Date/Date.js +3 -1
  375. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  376. package/es/extensions/forms/Field/Email/Email.js +6 -3
  377. package/es/extensions/forms/Field/Email/Email.js.map +1 -1
  378. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -3
  379. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  380. package/es/extensions/forms/Field/Number/Number.js +3 -2
  381. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  382. package/es/extensions/forms/Field/Option/Option.js +1 -1
  383. package/es/extensions/forms/Field/Option/Option.js.map +1 -1
  384. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +6 -3
  385. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  386. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +5 -0
  387. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +48 -16
  388. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  389. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -4
  390. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  391. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +13 -8
  392. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  393. package/es/extensions/forms/Field/Selection/Selection.js +30 -20
  394. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  395. package/es/extensions/forms/Field/String/String.js +11 -9
  396. package/es/extensions/forms/Field/String/String.js.map +1 -1
  397. package/es/extensions/forms/Field/Toggle/Toggle.js +6 -4
  398. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  399. package/es/extensions/forms/FieldBlock/FieldBlock.js +2 -0
  400. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  401. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js +2 -0
  402. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  403. package/es/extensions/forms/Iterate/Array/Array.js +2 -2
  404. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  405. package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +4 -2
  406. package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  407. package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +3 -1
  408. package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  409. package/es/extensions/forms/StepsLayout/NextButton/NextButton.js +2 -0
  410. package/es/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  411. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +2 -0
  412. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  413. package/es/extensions/forms/StepsLayout/Step/Step.js +2 -0
  414. package/es/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
  415. package/es/extensions/forms/StepsLayout/StepsLayout.js +4 -1
  416. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  417. package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +4 -1
  418. package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  419. package/es/extensions/forms/Value/Boolean/Boolean.js +2 -0
  420. package/es/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  421. package/es/extensions/forms/Value/Currency/Currency.js +3 -2
  422. package/es/extensions/forms/Value/Currency/Currency.js.map +1 -1
  423. package/es/extensions/forms/Value/Date/Date.js +4 -1
  424. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  425. package/es/extensions/forms/Value/Email/Email.js +4 -1
  426. package/es/extensions/forms/Value/Email/Email.js.map +1 -1
  427. package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +4 -1
  428. package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  429. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js +4 -1
  430. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  431. package/es/extensions/forms/ValueBlock/ValueBlock.js +1 -1
  432. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  433. package/es/extensions/forms/Visibility/Visibility.js +2 -0
  434. package/es/extensions/forms/Visibility/Visibility.js.map +1 -1
  435. package/es/extensions/forms/hooks/useDataValue.js +22 -17
  436. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  437. package/es/extensions/forms/types.js +6 -6
  438. package/es/extensions/forms/types.js.map +1 -1
  439. package/es/extensions/forms/utils/ajv.js +3 -2
  440. package/es/extensions/forms/utils/ajv.js.map +1 -1
  441. package/es/extensions/forms/utils/numbers.js +2 -2
  442. package/es/extensions/forms/utils/numbers.js.map +1 -1
  443. package/es/extensions/forms/utils/useWasChanged.js +9 -6
  444. package/es/extensions/forms/utils/useWasChanged.js.map +1 -1
  445. package/es/fragments/drawer-list/DrawerListHelpers.js +1 -1
  446. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  447. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  448. package/es/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +1 -1
  449. package/es/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -2
  450. package/es/shared/Eufemia.d.ts +1 -1
  451. package/es/shared/Eufemia.js +2 -2
  452. package/es/shared/Eufemia.js.map +1 -1
  453. package/es/style/dnb-ui-components.css +2 -2
  454. package/es/style/dnb-ui-components.min.css +1 -1
  455. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +2 -2
  456. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  457. package/es/style/themes/theme-sbanken/fonts.scss +5 -4
  458. package/es/style/themes/theme-sbanken/properties.js +2 -2
  459. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  460. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -2
  461. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  462. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +8 -7
  463. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  464. package/es/style/themes/theme-sbanken/theme-mapping.scss +2 -1
  465. package/es/style/themes/theme-ui/ui-theme-components.css +2 -2
  466. package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  467. package/esm/dnb-ui-basis.min.mjs +1 -1
  468. package/esm/dnb-ui-components.min.mjs +1 -1
  469. package/esm/dnb-ui-elements.min.mjs +1 -1
  470. package/esm/dnb-ui-extensions.min.mjs +2 -2
  471. package/esm/dnb-ui-lib.min.mjs +1 -1
  472. package/extensions/forms/DataContext/At/At.js +2 -0
  473. package/extensions/forms/DataContext/At/At.js.map +1 -1
  474. package/extensions/forms/DataContext/Provider/Provider.js +6 -3
  475. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  476. package/extensions/forms/Field/ArraySelection/ArraySelection.js +12 -9
  477. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  478. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +6 -3
  479. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  480. package/extensions/forms/Field/Boolean/Boolean.js +4 -2
  481. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  482. package/extensions/forms/Field/Currency/Currency.js +3 -2
  483. package/extensions/forms/Field/Currency/Currency.js.map +1 -1
  484. package/extensions/forms/Field/Date/Date.js +3 -1
  485. package/extensions/forms/Field/Date/Date.js.map +1 -1
  486. package/extensions/forms/Field/Email/Email.js +6 -3
  487. package/extensions/forms/Field/Email/Email.js.map +1 -1
  488. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -3
  489. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  490. package/extensions/forms/Field/Number/Number.js +3 -2
  491. package/extensions/forms/Field/Number/Number.js.map +1 -1
  492. package/extensions/forms/Field/Option/Option.js +1 -1
  493. package/extensions/forms/Field/Option/Option.js.map +1 -1
  494. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +6 -3
  495. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  496. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +5 -0
  497. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +59 -18
  498. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  499. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -4
  500. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  501. package/extensions/forms/Field/SelectCountry/SelectCountry.js +13 -8
  502. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  503. package/extensions/forms/Field/Selection/Selection.js +30 -20
  504. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  505. package/extensions/forms/Field/String/String.js +11 -9
  506. package/extensions/forms/Field/String/String.js.map +1 -1
  507. package/extensions/forms/Field/Toggle/Toggle.js +6 -4
  508. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  509. package/extensions/forms/FieldBlock/FieldBlock.js +2 -0
  510. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  511. package/extensions/forms/Form/SubmitButton/SubmitButton.js +2 -0
  512. package/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  513. package/extensions/forms/Iterate/Array/Array.js +2 -2
  514. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  515. package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +4 -2
  516. package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  517. package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +3 -1
  518. package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  519. package/extensions/forms/StepsLayout/NextButton/NextButton.js +2 -0
  520. package/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  521. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +2 -0
  522. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  523. package/extensions/forms/StepsLayout/Step/Step.js +2 -0
  524. package/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
  525. package/extensions/forms/StepsLayout/StepsLayout.js +4 -1
  526. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  527. package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +4 -1
  528. package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  529. package/extensions/forms/Value/Boolean/Boolean.js +2 -0
  530. package/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  531. package/extensions/forms/Value/Currency/Currency.js +3 -2
  532. package/extensions/forms/Value/Currency/Currency.js.map +1 -1
  533. package/extensions/forms/Value/Date/Date.js +4 -1
  534. package/extensions/forms/Value/Date/Date.js.map +1 -1
  535. package/extensions/forms/Value/Email/Email.js +4 -1
  536. package/extensions/forms/Value/Email/Email.js.map +1 -1
  537. package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +4 -1
  538. package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  539. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js +4 -1
  540. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  541. package/extensions/forms/ValueBlock/ValueBlock.js +1 -1
  542. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  543. package/extensions/forms/Visibility/Visibility.js +2 -0
  544. package/extensions/forms/Visibility/Visibility.js.map +1 -1
  545. package/extensions/forms/hooks/useDataValue.js +22 -17
  546. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  547. package/extensions/forms/types.js +6 -6
  548. package/extensions/forms/types.js.map +1 -1
  549. package/extensions/forms/utils/ajv.js +3 -2
  550. package/extensions/forms/utils/ajv.js.map +1 -1
  551. package/extensions/forms/utils/numbers.js +2 -2
  552. package/extensions/forms/utils/numbers.js.map +1 -1
  553. package/extensions/forms/utils/useWasChanged.js +9 -6
  554. package/extensions/forms/utils/useWasChanged.js.map +1 -1
  555. package/fragments/drawer-list/DrawerListHelpers.js +1 -1
  556. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  557. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  558. package/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +1 -1
  559. package/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -2
  560. package/package.json +11 -1
  561. package/shared/Eufemia.d.ts +1 -1
  562. package/shared/Eufemia.js +2 -2
  563. package/shared/Eufemia.js.map +1 -1
  564. package/style/dnb-ui-components.css +2 -2
  565. package/style/dnb-ui-components.min.css +1 -1
  566. package/style/themes/theme-eiendom/eiendom-theme-components.css +2 -2
  567. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  568. package/style/themes/theme-sbanken/fonts.scss +5 -4
  569. package/style/themes/theme-sbanken/properties.js +2 -2
  570. package/style/themes/theme-sbanken/properties.js.map +1 -1
  571. package/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -2
  572. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  573. package/style/themes/theme-sbanken/sbanken-theme-components.css +8 -7
  574. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  575. package/style/themes/theme-sbanken/theme-mapping.scss +2 -1
  576. package/style/themes/theme-ui/ui-theme-components.css +2 -2
  577. package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  578. package/umd/dnb-ui-basis.min.js +1 -1
  579. package/umd/dnb-ui-components.min.js +1 -1
  580. package/umd/dnb-ui-elements.min.js +1 -1
  581. package/umd/dnb-ui-extensions.min.js +2 -2
  582. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"UploadFileInput.js","names":["_react","_interopRequireWildcard","require","_Button","_interopRequireDefault","_icons","_componentHelper","_UploadContext","_UploadStatus2","_UploadVerify","_UploadStatus","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UploadFileInput","fileInput","useRef","context","React","useContext","UploadContext","id","acceptedFileTypes","buttonText","onInputUpload","filesAmountLimit","openFileDialog","_fileInput$current","current","click","sharedId","makeUniqueId","accept","getAcceptedFileTypes","createElement","top","className","icon","FolderIcon","icon_position","variant","wrap","onClick","ref","type","onChange","onChangeHandler","onClickHandler","multiple","event","target","files","Array","from","map","file","value","_default","exports"],"sources":["../../../../src/components/upload/UploadFileInput.tsx"],"sourcesContent":["import React, { useRef } from 'react'\n\n// Components\nimport Button from '../button/Button'\n\n// Icons\nimport { folder as FolderIcon } from '../../icons'\n\n// Shared\nimport { makeUniqueId } from '../../shared/component-helper'\n\n// Internal\nimport { UploadContext } from './UploadContext'\nimport UploadStatus from './UploadStatus'\nimport { getAcceptedFileTypes } from './UploadVerify'\n\nconst UploadFileInput = () => {\n const fileInput = useRef<HTMLInputElement>(null)\n\n const context = React.useContext(UploadContext)\n\n const {\n id,\n acceptedFileTypes,\n buttonText,\n onInputUpload,\n filesAmountLimit,\n } = context\n\n const openFileDialog = () => fileInput.current?.click()\n\n const sharedId = id || makeUniqueId()\n const accept = getAcceptedFileTypes(acceptedFileTypes)\n\n return (\n <div>\n <Button\n top=\"medium\"\n id={`${sharedId}-input`}\n className=\"dnb-upload__file-input-button\"\n icon={FolderIcon}\n icon_position=\"left\"\n variant=\"secondary\"\n wrap\n onClick={openFileDialog}\n >\n {buttonText}\n </Button>\n\n <UploadStatus />\n\n <input\n aria-labelledby={`${sharedId}-input`}\n ref={fileInput}\n accept={accept}\n className=\"dnb-upload__file-input\"\n type=\"file\"\n onChange={onChangeHandler}\n onClick={onClickHandler}\n multiple={filesAmountLimit > 1}\n />\n </div>\n )\n\n function onChangeHandler(event: React.SyntheticEvent) {\n const target = event.target as HTMLInputElement\n const { files } = target\n\n onInputUpload(\n Array.from(files).map((file) => {\n return { file }\n })\n )\n }\n\n function onClickHandler(event: React.SyntheticEvent) {\n const target = event.target as HTMLInputElement\n\n /**\n * This resets the internal state.\n * Some browsers (chromium) to check for already selected files.\n * But we have our own logic for that.\n * We also align the UX to be the same to all browsers,\n * and to be same when the drag file API is used.\n */\n target.value = null\n }\n}\n\nexport default UploadFileInput\n"],"mappings":"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"}
1
+ {"version":3,"file":"UploadFileInput.js","names":["_react","_interopRequireWildcard","require","_Button","_interopRequireDefault","_icons","_componentHelper","_UploadContext","_UploadStatus2","_UploadVerify","_UploadStatus","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UploadFileInput","fileInput","useRef","context","React","useContext","UploadContext","id","acceptedFileTypes","buttonText","onInputUpload","filesAmountLimit","openFileDialog","_fileInput$current","current","click","sharedId","makeUniqueId","accept","getAcceptedFileTypes","createElement","top","className","icon","FolderIcon","icon_position","variant","wrap","onClick","ref","type","onChange","onChangeHandler","onClickHandler","multiple","event","target","files","Array","from","map","file","value","_default","exports"],"sources":["../../../../src/components/upload/UploadFileInput.tsx"],"sourcesContent":["import React, { useRef } from 'react'\n\n// Components\nimport Button from '../button/Button'\n\n// Icons\nimport { folder as FolderIcon } from '../../icons'\n\n// Shared\nimport { makeUniqueId } from '../../shared/component-helper'\n\n// Internal\nimport { UploadContext } from './UploadContext'\nimport UploadStatus from './UploadStatus'\nimport { getAcceptedFileTypes } from './UploadVerify'\n\nconst UploadFileInput = () => {\n const fileInput = useRef<HTMLInputElement>(null)\n\n const context = React.useContext(UploadContext)\n\n const {\n id,\n acceptedFileTypes,\n buttonText,\n onInputUpload,\n filesAmountLimit,\n } = context\n\n const openFileDialog = () => fileInput.current?.click()\n\n const sharedId = id || makeUniqueId()\n const accept = getAcceptedFileTypes(acceptedFileTypes)\n\n return (\n <div>\n <Button\n top=\"medium\"\n id={`${sharedId}-input`}\n className=\"dnb-upload__file-input-button\"\n icon={FolderIcon}\n icon_position=\"left\"\n variant=\"secondary\"\n wrap\n onClick={openFileDialog}\n >\n {buttonText}\n </Button>\n\n <UploadStatus />\n\n <input\n aria-labelledby={`${sharedId}-input`}\n ref={fileInput}\n accept={accept}\n className=\"dnb-upload__file-input\"\n type=\"file\"\n onChange={onChangeHandler}\n onClick={onClickHandler}\n multiple={filesAmountLimit > 1}\n />\n </div>\n )\n\n function onChangeHandler(event: React.SyntheticEvent) {\n const target = event.target as HTMLInputElement\n const { files } = target\n\n onInputUpload(\n Array.from(files).map((file) => {\n return { file }\n })\n )\n }\n\n function onClickHandler(event: React.SyntheticEvent) {\n const target = event.target as HTMLInputElement\n\n /**\n * This resets the internal state.\n * Some browsers (chromium) to check for already selected files.\n * But we have our own logic for that.\n * We also align the UX to be the same to all browsers,\n * and to be same when the drag file API is used.\n */\n target.value = null\n }\n}\n\nexport default UploadFileInput\n"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ "use client";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
@@ -1 +1 @@
1
- {"version":3,"file":"UploadFileListCell.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Button","_Icon2","_FormStatus2","_progressIndicator","_P2","_icons","_componentHelper","_useUpload","_UploadVerify","_ProgressIndicator","_Icon","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","images","pdf","xls","ppt","csv","txt","xml","file","UploadFileListCell","_ref","_div","_P","_FormStatus","id","uploadFile","onDelete","loadingText","deleteButtonText","errorMessage","isLoading","hasWarning","fileType","getFileTypeFromExtension","humanFileType","toUpperCase","imageUrl","URL","createObjectURL","cellRef","useRef","exists","useExistsHighlight","handleDisappearFocus","cellElement","current","focusElement","getPreviousSibling","querySelector","focus","e","warn","onDeleteHandler","createElement","className","classnames","ref","getIcon","getTitle","icon","TrashIcon","variant","onClick","icon_position","getWarning","ExclamationIcon","iconFileType","mimeParts","type","split","target","href","rel","name","size","top","text","stretch","_default","exports","internalFiles","useUpload","updateExists","React","useState","timerRef","clearTimers","clearTimeout","useEffect","some","_ref2","f","setTimeout"],"sources":["../../../../src/components/upload/UploadFileListCell.tsx"],"sourcesContent":["import React, { useRef } from 'react'\nimport classnames from 'classnames'\n\n// Components\nimport Button from '../button/Button'\nimport Icon from '../../components/Icon'\nimport FormStatus from '../../components/FormStatus'\nimport ProgressIndicator from '../../components/progress-indicator'\nimport P from '../../elements/P'\n\n// Icons\nimport {\n trash as TrashIcon,\n exclamation_medium as ExclamationIcon,\n file_pdf_medium as pdf,\n file_xls_medium as xls,\n file_ppt_medium as ppt,\n file_csv_medium as csv,\n file_txt_medium as txt,\n file_xml_medium as xml,\n file_medium as file,\n} from '../../icons'\nimport { UploadFile } from './types'\n\n// Shared\nimport { getPreviousSibling, warn } from '../../shared/component-helper'\nimport useUpload from './useUpload'\nimport { getFileTypeFromExtension } from './UploadVerify'\n\nconst images = {\n pdf,\n xls,\n ppt,\n csv,\n txt,\n xml,\n file,\n}\n\nexport type UploadFileListCellProps = {\n id: string\n\n /**\n * Uploaded file\n */\n uploadFile: UploadFile\n\n /**\n * Calls onDelete when clicking the delete button\n */\n onDelete: () => void\n\n /**\n * Text\n */\n loadingText: React.ReactNode\n deleteButtonText: React.ReactNode\n}\n\nconst UploadFileListCell = ({\n id,\n uploadFile,\n onDelete,\n loadingText,\n deleteButtonText,\n}: UploadFileListCellProps) => {\n const { file, errorMessage, isLoading } = uploadFile\n const hasWarning = errorMessage != null\n\n const fileType = getFileTypeFromExtension(file)\n const humanFileType = fileType.toUpperCase()\n\n const imageUrl = URL.createObjectURL(file)\n const cellRef = useRef<HTMLLIElement>()\n const exists = useExistsHighlight(id, file)\n\n const handleDisappearFocus = () => {\n try {\n const cellElement = cellRef.current\n const focusElement = getPreviousSibling(\n '.dnb-upload',\n cellElement\n ).querySelector(\n '.dnb-upload__file-input-button'\n ) as HTMLButtonElement\n focusElement.focus()\n } catch (e) {\n warn(e)\n }\n }\n\n const onDeleteHandler = () => {\n handleDisappearFocus()\n\n onDelete()\n }\n\n return (\n <li\n className={classnames(\n 'dnb-upload__file-cell',\n hasWarning && 'dnb-upload__file-cell--warning',\n exists && 'dnb-upload__file-cell--highlight'\n )}\n ref={cellRef}\n >\n <div className=\"dnb-upload__file-cell__content\">\n <div className=\"dnb-upload__file-cell__content__left\">\n {getIcon()}\n {getTitle()}\n </div>\n <div>\n <Button\n icon={TrashIcon}\n variant=\"tertiary\"\n onClick={onDeleteHandler}\n icon_position=\"left\"\n >\n {deleteButtonText}\n </Button>\n </div>\n </div>\n\n {getWarning()}\n </li>\n )\n\n function getIcon() {\n if (isLoading) {\n return <ProgressIndicator />\n }\n\n if (hasWarning) return <Icon icon={ExclamationIcon} />\n\n let iconFileType = fileType\n\n if (!iconFileType) {\n const mimeParts = file.type.split('/')\n iconFileType = images[mimeParts[0]] || images[mimeParts[1]]\n }\n\n if (!Object.prototype.hasOwnProperty.call(images, iconFileType)) {\n iconFileType = 'file'\n }\n\n return <Icon icon={images[iconFileType]} />\n }\n\n function getTitle() {\n return isLoading ? (\n <div\n className={classnames(\n 'dnb-upload__file-cell__text-container',\n 'dnb-upload__file-cell__text-container--loading'\n )}\n >\n {loadingText}\n </div>\n ) : (\n <div className=\"dnb-upload__file-cell__text-container\">\n <a\n target=\"_blank\"\n href={imageUrl}\n className={classnames(\n 'dnb-anchor',\n 'dnb-upload__file-cell__title'\n )}\n rel=\"noopener noreferrer\"\n >\n {file.name}\n </a>\n <P\n className=\"dnb-upload__file-cell__subtitle\"\n size=\"x-small\"\n top=\"xx-small\"\n >\n {humanFileType}\n </P>\n </div>\n )\n }\n\n function getWarning() {\n return hasWarning ? (\n <FormStatus top=\"small\" text={errorMessage} stretch />\n ) : null\n }\n}\n\nexport default UploadFileListCell\n\nfunction useExistsHighlight(id: string, file: File) {\n const { internalFiles } = useUpload(id)\n const [exists, updateExists] = React.useState(false)\n const timerRef = React.useRef<NodeJS.Timer>()\n\n const clearTimers = () => {\n clearTimeout(timerRef.current)\n }\n\n React.useEffect(() => {\n const exists = internalFiles.some(({ exists, file: f }) => {\n return exists && f.name === file.name && f.size === file.size\n })\n\n if (exists) {\n updateExists(true)\n clearTimers()\n timerRef.current = setTimeout(() => updateExists(false), 1500) // transition-duration in CSS\n }\n\n return clearTimers\n }, [file, internalFiles])\n\n return exists\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"UploadFileListCell.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Button","_Icon2","_FormStatus2","_progressIndicator","_P2","_icons","_componentHelper","_useUpload","_UploadVerify","_ProgressIndicator","_Icon","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","images","pdf","xls","ppt","csv","txt","xml","file","UploadFileListCell","_ref","_div","_P","_FormStatus","id","uploadFile","onDelete","loadingText","deleteButtonText","errorMessage","isLoading","hasWarning","fileType","getFileTypeFromExtension","humanFileType","toUpperCase","imageUrl","URL","createObjectURL","cellRef","useRef","exists","useExistsHighlight","handleDisappearFocus","cellElement","current","focusElement","getPreviousSibling","querySelector","focus","e","warn","onDeleteHandler","createElement","className","classnames","ref","getIcon","getTitle","icon","TrashIcon","variant","onClick","icon_position","getWarning","ExclamationIcon","iconFileType","mimeParts","type","split","target","href","rel","name","size","top","text","stretch","_default","exports","internalFiles","useUpload","updateExists","React","useState","timerRef","clearTimers","clearTimeout","useEffect","some","_ref2","f","setTimeout"],"sources":["../../../../src/components/upload/UploadFileListCell.tsx"],"sourcesContent":["import React, { useRef } from 'react'\nimport classnames from 'classnames'\n\n// Components\nimport Button from '../button/Button'\nimport Icon from '../../components/Icon'\nimport FormStatus from '../../components/FormStatus'\nimport ProgressIndicator from '../../components/progress-indicator'\nimport P from '../../elements/P'\n\n// Icons\nimport {\n trash as TrashIcon,\n exclamation_medium as ExclamationIcon,\n file_pdf_medium as pdf,\n file_xls_medium as xls,\n file_ppt_medium as ppt,\n file_csv_medium as csv,\n file_txt_medium as txt,\n file_xml_medium as xml,\n file_medium as file,\n} from '../../icons'\nimport { UploadFile } from './types'\n\n// Shared\nimport { getPreviousSibling, warn } from '../../shared/component-helper'\nimport useUpload from './useUpload'\nimport { getFileTypeFromExtension } from './UploadVerify'\n\nconst images = {\n pdf,\n xls,\n ppt,\n csv,\n txt,\n xml,\n file,\n}\n\nexport type UploadFileListCellProps = {\n id: string\n\n /**\n * Uploaded file\n */\n uploadFile: UploadFile\n\n /**\n * Calls onDelete when clicking the delete button\n */\n onDelete: () => void\n\n /**\n * Text\n */\n loadingText: React.ReactNode\n deleteButtonText: React.ReactNode\n}\n\nconst UploadFileListCell = ({\n id,\n uploadFile,\n onDelete,\n loadingText,\n deleteButtonText,\n}: UploadFileListCellProps) => {\n const { file, errorMessage, isLoading } = uploadFile\n const hasWarning = errorMessage != null\n\n const fileType = getFileTypeFromExtension(file)\n const humanFileType = fileType.toUpperCase()\n\n const imageUrl = URL.createObjectURL(file)\n const cellRef = useRef<HTMLLIElement>()\n const exists = useExistsHighlight(id, file)\n\n const handleDisappearFocus = () => {\n try {\n const cellElement = cellRef.current\n const focusElement = getPreviousSibling(\n '.dnb-upload',\n cellElement\n ).querySelector(\n '.dnb-upload__file-input-button'\n ) as HTMLButtonElement\n focusElement.focus()\n } catch (e) {\n warn(e)\n }\n }\n\n const onDeleteHandler = () => {\n handleDisappearFocus()\n\n onDelete()\n }\n\n return (\n <li\n className={classnames(\n 'dnb-upload__file-cell',\n hasWarning && 'dnb-upload__file-cell--warning',\n exists && 'dnb-upload__file-cell--highlight'\n )}\n ref={cellRef}\n >\n <div className=\"dnb-upload__file-cell__content\">\n <div className=\"dnb-upload__file-cell__content__left\">\n {getIcon()}\n {getTitle()}\n </div>\n <div>\n <Button\n icon={TrashIcon}\n variant=\"tertiary\"\n onClick={onDeleteHandler}\n icon_position=\"left\"\n >\n {deleteButtonText}\n </Button>\n </div>\n </div>\n\n {getWarning()}\n </li>\n )\n\n function getIcon() {\n if (isLoading) {\n return <ProgressIndicator />\n }\n\n if (hasWarning) return <Icon icon={ExclamationIcon} />\n\n let iconFileType = fileType\n\n if (!iconFileType) {\n const mimeParts = file.type.split('/')\n iconFileType = images[mimeParts[0]] || images[mimeParts[1]]\n }\n\n if (!Object.prototype.hasOwnProperty.call(images, iconFileType)) {\n iconFileType = 'file'\n }\n\n return <Icon icon={images[iconFileType]} />\n }\n\n function getTitle() {\n return isLoading ? (\n <div\n className={classnames(\n 'dnb-upload__file-cell__text-container',\n 'dnb-upload__file-cell__text-container--loading'\n )}\n >\n {loadingText}\n </div>\n ) : (\n <div className=\"dnb-upload__file-cell__text-container\">\n <a\n target=\"_blank\"\n href={imageUrl}\n className={classnames(\n 'dnb-anchor',\n 'dnb-upload__file-cell__title'\n )}\n rel=\"noopener noreferrer\"\n >\n {file.name}\n </a>\n <P\n className=\"dnb-upload__file-cell__subtitle\"\n size=\"x-small\"\n top=\"xx-small\"\n >\n {humanFileType}\n </P>\n </div>\n )\n }\n\n function getWarning() {\n return hasWarning ? (\n <FormStatus top=\"small\" text={errorMessage} stretch />\n ) : null\n }\n}\n\nexport default UploadFileListCell\n\nfunction useExistsHighlight(id: string, file: File) {\n const { internalFiles } = useUpload(id)\n const [exists, updateExists] = React.useState(false)\n const timerRef = React.useRef<NodeJS.Timer>()\n\n const clearTimers = () => {\n clearTimeout(timerRef.current)\n }\n\n React.useEffect(() => {\n const exists = internalFiles.some(({ exists, file: f }) => {\n return exists && f.name === file.name && f.size === file.size\n })\n\n if (exists) {\n updateExists(true)\n clearTimers()\n timerRef.current = setTimeout(() => updateExists(false), 1500) // transition-duration in CSS\n }\n\n return clearTimers\n }, [file, internalFiles])\n\n return exists\n}\n"],"mappings":"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"}
@@ -7,7 +7,7 @@ import { ElementProps } from '../Element';
7
7
  import type { SpacingProps } from '../../shared/types';
8
8
  export type DlProps = {
9
9
  /**
10
- * Use "true" to horizontallly align both the term and the description
10
+ * Use "true" to horizontally align both the term and the description
11
11
  */
12
12
  direction?: 'vertical' | 'horizontal';
13
13
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Dl.js","names":["_react","_interopRequireDefault","require","_classnames","_Element","_excluded","_excluded2","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Dl","_ref","direction","props","className","classnames","createElement","as","skeleton","Item","_ref2","children","Fragment","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/elements/lists/Dl.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport E, { ElementProps } from '../Element'\nimport type { SpacingProps } from '../../shared/types'\n\nexport type DlProps = {\n /**\n * Use \"true\" to horizontallly align both the term and the description\n */\n direction?: 'vertical' | 'horizontal'\n}\n\nexport type DlAllProps = DlProps &\n React.AllHTMLAttributes<HTMLDListElement> &\n ElementProps\n\nconst Dl = ({ direction, ...props }: DlAllProps) => {\n if (direction) {\n props.className = classnames(\n props.className,\n `dnb-dl__direction--${direction}`\n )\n }\n return <E as=\"dl\" {...props} skeleton={false} />\n}\n\nDl.Item = ({\n className,\n children,\n ...props\n}: React.AllHTMLAttributes<HTMLSpanElement> & SpacingProps) => {\n return (\n <>\n {children}\n <E\n as=\"dd\"\n aria-hidden\n className={classnames(className, 'dnb-dl__item')}\n {...props}\n />\n </>\n )\n}\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nDl._supportsSpacingProps = true\n\nexport default Dl\n"],"mappings":"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"}
1
+ {"version":3,"file":"Dl.js","names":["_react","_interopRequireDefault","require","_classnames","_Element","_excluded","_excluded2","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Dl","_ref","direction","props","className","classnames","createElement","as","skeleton","Item","_ref2","children","Fragment","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/elements/lists/Dl.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport E, { ElementProps } from '../Element'\nimport type { SpacingProps } from '../../shared/types'\n\nexport type DlProps = {\n /**\n * Use \"true\" to horizontally align both the term and the description\n */\n direction?: 'vertical' | 'horizontal'\n}\n\nexport type DlAllProps = DlProps &\n React.AllHTMLAttributes<HTMLDListElement> &\n ElementProps\n\nconst Dl = ({ direction, ...props }: DlAllProps) => {\n if (direction) {\n props.className = classnames(\n props.className,\n `dnb-dl__direction--${direction}`\n )\n }\n return <E as=\"dl\" {...props} skeleton={false} />\n}\n\nDl.Item = ({\n className,\n children,\n ...props\n}: React.AllHTMLAttributes<HTMLSpanElement> & SpacingProps) => {\n return (\n <>\n {children}\n <E\n as=\"dd\"\n aria-hidden\n className={classnames(className, 'dnb-dl__item')}\n {...props}\n />\n </>\n )\n}\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nDl._supportsSpacingProps = true\n\nexport default Dl\n"],"mappings":"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"}
@@ -122,7 +122,7 @@ sub {
122
122
  @include headingSize_medium();
123
123
  }
124
124
 
125
- // The rest of the Headings are nod defned by the Eufemia Typography
125
+ // The rest of the Headings are not defined by the Eufemia Typography
126
126
  .dnb-h--basis {
127
127
  @include headingSize_basis();
128
128
  }
@@ -9,7 +9,7 @@
9
9
  // prettier-ignore
10
10
  $selectors: #{$selectors}, &;
11
11
  @at-root {
12
- @include otherSelectos() {
12
+ @include otherSelectors() {
13
13
  // prettier-ignore
14
14
  $selectors: #{$selectors}, &;
15
15
 
@@ -56,7 +56,7 @@
56
56
  }
57
57
  }
58
58
 
59
- @mixin otherSelectos() {
59
+ @mixin otherSelectors() {
60
60
  p,
61
61
  b,
62
62
  small,
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ "use client";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
@@ -1 +1 @@
1
- {"version":3,"file":"At.js","names":["_react","_interopRequireWildcard","require","_jsonPointer","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","At","props","path","iterate","children","dataContext","useContext","Context","data","contextData","handlePathChange","contextHandlePathChange","pointer","useMemo","changePath","Array","isArray","createElement","Fragment","map","element","Provider","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/DataContext/At/At.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport pointer from 'json-pointer'\nimport type { ComponentProps } from '../../types'\nimport Context from '../Context'\n\nexport type Props = ComponentProps & {\n /** JSON Pointer for where in the source dataset to point at in sub components */\n path?: string\n iterate?: boolean\n children?: React.ReactNode\n}\n\nfunction At(props: Props) {\n const { path = '/', iterate, children } = props\n const dataContext = useContext(Context)\n const { data: contextData, handlePathChange: contextHandlePathChange } =\n dataContext\n\n const data =\n contextData && pointer.has(contextData, path)\n ? pointer.get(contextData, path)\n : undefined\n\n const handlePathChange = useMemo(\n () =>\n contextHandlePathChange\n ? (changePath, value) => {\n contextHandlePathChange(`${path}${changePath}`, value)\n }\n : undefined,\n [contextHandlePathChange, path]\n )\n\n if (iterate) {\n if (!Array.isArray(data)) {\n return null\n }\n return (\n <>\n {data.map((element, i) => {\n const handlePathChange = contextHandlePathChange\n ? (changePath, value) => {\n contextHandlePathChange(`${path}/${i}${changePath}`, value)\n }\n : undefined\n\n return (\n <Context.Provider\n key={`element${i}`}\n value={{\n ...dataContext,\n data: element,\n handlePathChange,\n }}\n >\n {children}\n </Context.Provider>\n )\n })}\n </>\n )\n }\n\n return (\n <Context.Provider\n value={{\n ...dataContext,\n data,\n handlePathChange,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n\nAt._supportsSpacingProps = true\nexport default At\n"],"mappings":"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"}
1
+ {"version":3,"file":"At.js","names":["_react","_interopRequireWildcard","require","_jsonPointer","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","At","props","path","iterate","children","dataContext","useContext","Context","data","contextData","handlePathChange","contextHandlePathChange","pointer","useMemo","changePath","Array","isArray","createElement","Fragment","map","element","Provider","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/DataContext/At/At.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport pointer from 'json-pointer'\nimport type { ComponentProps } from '../../types'\nimport Context from '../Context'\n\nexport type Props = ComponentProps & {\n /** JSON Pointer for where in the source dataset to point at in sub components */\n path?: string\n iterate?: boolean\n children?: React.ReactNode\n}\n\nfunction At(props: Props) {\n const { path = '/', iterate, children } = props\n const dataContext = useContext(Context)\n const { data: contextData, handlePathChange: contextHandlePathChange } =\n dataContext\n\n const data =\n contextData && pointer.has(contextData, path)\n ? pointer.get(contextData, path)\n : undefined\n\n const handlePathChange = useMemo(\n () =>\n contextHandlePathChange\n ? (changePath, value) => {\n contextHandlePathChange(`${path}${changePath}`, value)\n }\n : undefined,\n [contextHandlePathChange, path]\n )\n\n if (iterate) {\n if (!Array.isArray(data)) {\n return null\n }\n return (\n <>\n {data.map((element, i) => {\n const handlePathChange = contextHandlePathChange\n ? (changePath, value) => {\n contextHandlePathChange(`${path}/${i}${changePath}`, value)\n }\n : undefined\n\n return (\n <Context.Provider\n key={`element${i}`}\n value={{\n ...dataContext,\n data: element,\n handlePathChange,\n }}\n >\n {children}\n </Context.Provider>\n )\n })}\n </>\n )\n }\n\n return (\n <Context.Provider\n value={{\n ...dataContext,\n data,\n handlePathChange,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n\nAt._supportsSpacingProps = true\nexport default At\n"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ "use client";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
@@ -53,7 +54,7 @@ function Provider(_ref) {
53
54
  return JSON.parse(sessionDataJSON);
54
55
  }
55
56
  }
56
- return data ?? defaultData;
57
+ return data !== null && data !== void 0 ? data : defaultData;
57
58
  }, [data, defaultData, sessionStorageId]);
58
59
  const ajvSchemaValidator = (0, _react.useMemo)(() => schema ? _ajv.default.compile(schema) : undefined, [schema]);
59
60
  const [internalData, setInternalData] = (0, _react.useState)(initialData);
@@ -81,7 +82,8 @@ function Provider(_ref) {
81
82
  }
82
83
  }, [ajvSchemaValidator]);
83
84
  const validateBySchemaAndUpdateState = (0, _react.useCallback)(data => {
84
- errorsRef.current = validateBySchema(data) ?? {};
85
+ var _validateBySchema;
86
+ errorsRef.current = (_validateBySchema = validateBySchema(data)) !== null && _validateBySchema !== void 0 ? _validateBySchema : {};
85
87
  }, [validateBySchema]);
86
88
  const setPathWithError = (0, _react.useCallback)((path, hasError) => {
87
89
  pathsWithErrorRef.current = hasError ? addListPath(pathsWithErrorRef.current, path) : removeListPath(pathsWithErrorRef.current, path);
@@ -91,7 +93,7 @@ function Provider(_ref) {
91
93
  return;
92
94
  }
93
95
  onPathChange === null || onPathChange === void 0 ? void 0 : onPathChange(path, value);
94
- const newData = (0, _structuredClone.default)(path === '/' ? value : internalData ?? (path.match(isArrayJsonPointer) ? [] : {}));
96
+ const newData = (0, _structuredClone.default)(path === '/' ? value : internalData !== null && internalData !== void 0 ? internalData : path.match(isArrayJsonPointer) ? [] : {});
95
97
  if (path !== '/') {
96
98
  _jsonPointer.default.set(newData, path, value);
97
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Provider.js","names":["_react","_interopRequireWildcard","require","_jsonPointer","_interopRequireDefault","_ajv","_Context","_structuredClone","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","addListPath","paths","path","includes","concat","removeListPath","thisPath","isArrayJsonPointer","Provider","_ref","defaultData","data","schema","onChange","onPathChange","onSubmit","onSubmitRequest","scrollTopOnSubmit","sessionStorageId","children","rest","console","error","wasMounted","useRef","initialData","useMemo","window","_window$sessionStorag","sessionDataJSON","sessionStorage","getItem","JSON","parse","ajvSchemaValidator","ajv","compile","internalData","setInternalData","useState","mountedFieldPathsRef","errorsRef","showAllErrors","setShowAllErrors","pathsWithErrorRef","hasErrors","useCallback","Boolean","current","find","mountedFieldPath","useEffect","validateBySchema","errors","ajvErrorsToFormErrors","validateBySchemaAndUpdateState","setPathWithError","hasError","handlePathChange","newData","structuredClone","match","pointer","_window$sessionStorag2","setItem","stringify","handleMountField","handleUnMountField","handleSubmit","formElement","_formElement$reset","reset","removeItem","_window","scrollTo","top","behavior","createElement","mountedFieldPaths"],"sources":["../../../../../../src/extensions/forms/DataContext/Provider/Provider.tsx"],"sourcesContent":["import React, {\n useEffect,\n useRef,\n useMemo,\n useCallback,\n useState,\n} from 'react'\nimport pointer, { JsonObject } from 'json-pointer'\nimport { JSONSchema7 } from 'json-schema'\nimport ajv, { ajvErrorsToFormErrors } from '../../utils/ajv'\nimport { FormError } from '../../types'\nimport Context, { ContextState } from '../Context'\n\n/**\n * Deprecated, as it is supported my all mihor browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport interface Props<Data extends JsonObject> {\n /** Default source data, only used if no other source is available, and not leading to updates if changed after mount */\n defaultData?: Partial<Data>\n /** Dynamic source data used as both initial data, and updates internal data if changed after mount */\n data?: Partial<Data>\n /** JSON Schema for validating the data, like during input or after attempting submit */\n schema?: JSONSchema7\n /** Change handler for the whole data set */\n onChange?: (data: Data) => void\n /** Change handler for each value */\n onPathChange?: (path: string, value: any) => void\n /** Submit called, data was valid (if validation available) */\n onSubmit?: (data: Data) => void\n /** Submit was requested, but data was invalid */\n onSubmitRequest?: () => void\n scrollTopOnSubmit?: boolean\n /** Key for caching the data in session storage */\n sessionStorageId?: string\n children: React.ReactNode\n}\n\ntype PathList = string[]\n\nfunction addListPath(paths: PathList, path: string): PathList {\n return paths.includes(path) ? paths : paths.concat(path)\n}\n\nfunction removeListPath(paths: PathList, path: string): PathList {\n return paths.filter((thisPath) => thisPath !== path)\n}\n\nconst isArrayJsonPointer = /^\\/\\d+(\\/|$)/\n\nexport default function Provider<Data extends JsonObject>({\n defaultData,\n data,\n schema,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n scrollTopOnSubmit,\n sessionStorageId,\n children,\n ...rest\n}: Props<Data>) {\n // Prop error handling\n if (data !== undefined && sessionStorageId !== undefined) {\n console.error(\n 'Providing both data and sessionStorageId could lead to competing data sources. To provide default data to use only before anything is changed in the interface, use defaultData.'\n )\n }\n\n // State\n const wasMounted = useRef(false)\n const initialData = useMemo(() => {\n if (sessionStorageId && typeof window !== 'undefined') {\n const sessionDataJSON =\n window.sessionStorage?.getItem(sessionStorageId)\n if (sessionDataJSON) {\n return JSON.parse(sessionDataJSON)\n }\n }\n return data ?? defaultData\n }, [data, defaultData, sessionStorageId])\n const ajvSchemaValidator = useMemo(\n () => (schema ? ajv.compile(schema) : undefined),\n [schema]\n )\n const [internalData, setInternalData] =\n useState<Partial<Data>>(initialData)\n const mountedFieldPathsRef = useRef<string[]>([])\n\n // Errors from provider validation (the whole data set)\n const errorsRef = useRef<Record<string, FormError>>({})\n const [showAllErrors, setShowAllErrors] = useState<boolean>(false)\n // Errors reported by fields, based on their direct validation rules\n const pathsWithErrorRef = useRef<string[]>([])\n\n const hasErrors = useCallback(\n () =>\n Boolean(\n mountedFieldPathsRef.current.find(\n (mountedFieldPath) =>\n errorsRef.current[mountedFieldPath] !== undefined ||\n pathsWithErrorRef.current.includes(mountedFieldPath)\n )\n ),\n []\n )\n\n useEffect(() => {\n if (!wasMounted.current) {\n wasMounted.current = true\n return\n }\n // When receivint the initial data, or receiving updated data by props, update the internal data (controlled state)\n setInternalData(data)\n }, [data])\n\n const validateBySchema = useCallback(\n (data: Partial<Data>): Record<string, Error> | undefined => {\n if (!ajvSchemaValidator) {\n // No schema-based validator. Assume data is valid.\n return\n }\n\n if (!ajvSchemaValidator(data)) {\n // Errors found\n const errors = ajvErrorsToFormErrors(ajvSchemaValidator.errors)\n return errors\n } else {\n return\n }\n },\n [ajvSchemaValidator]\n )\n\n const validateBySchemaAndUpdateState = useCallback(\n (data: Partial<Data>) => {\n errorsRef.current = validateBySchema(data) ?? {}\n },\n [validateBySchema]\n )\n\n const setPathWithError = useCallback(\n (path: string, hasError: boolean) => {\n pathsWithErrorRef.current = hasError\n ? addListPath(pathsWithErrorRef.current, path)\n : removeListPath(pathsWithErrorRef.current, path)\n },\n []\n )\n\n const handlePathChange = useCallback(\n (path, value) => {\n if (!path) {\n return\n }\n onPathChange?.(path, value)\n\n // Update the data even if it contains errors. Submit/SubmitRequest will be called accordingly\n const newData = structuredClone(\n path === '/'\n ? // When setting the root of the data, the whole data set should be the new value\n value\n : // For sub paths, use the the existing data set (or empty array/object), but modify it below (since pointer.set is not immutable)\n internalData ?? (path.match(isArrayJsonPointer) ? [] : {})\n )\n if (path !== '/') {\n pointer.set(newData as Data, path, value)\n }\n\n onChange?.(newData as Data)\n\n if (sessionStorageId && typeof window !== 'undefined') {\n window.sessionStorage?.setItem(\n sessionStorageId,\n JSON.stringify(newData)\n )\n }\n\n validateBySchemaAndUpdateState(newData)\n\n setInternalData(newData)\n\n setShowAllErrors(false)\n },\n [internalData, onChange, onPathChange, validateBySchemaAndUpdateState]\n )\n\n // Mounted fields\n const handleMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = addListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n const handleUnMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = removeListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n /**\n * Request to submit the whole form\n */\n const handleSubmit = useCallback<ContextState['handleSubmit']>(\n ({ formElement = null } = {}) => {\n if (!hasErrors()) {\n onSubmit?.(internalData as Data)\n\n formElement?.reset?.()\n\n if (typeof window !== 'undefined') {\n if (sessionStorageId) {\n window.sessionStorage.removeItem(sessionStorageId)\n }\n\n if (scrollTopOnSubmit) {\n window?.scrollTo({ top: 0, behavior: 'smooth' })\n }\n }\n } else {\n setShowAllErrors(true)\n onSubmitRequest?.()\n }\n return internalData\n },\n [internalData, scrollTopOnSubmit, hasErrors, onSubmit, onSubmitRequest]\n )\n\n useEffect(() => {\n // Mount procedure\n if (initialData) {\n // Validate the initial data to know if the user can submit, and to show errors if inputs are requested to with props\n validateBySchemaAndUpdateState(initialData)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- Only run for mount and unmount\n }, [])\n\n return (\n <Context.Provider\n value={{\n data: internalData,\n ...rest,\n handlePathChange,\n handleSubmit,\n errors: errorsRef.current,\n showAllErrors,\n setShowAllErrors,\n mountedFieldPaths: mountedFieldPathsRef.current,\n handleMountField,\n handleUnMountField,\n hasErrors,\n setPathWithError,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Provider.js","names":["_react","_interopRequireWildcard","require","_jsonPointer","_interopRequireDefault","_ajv","_Context","_structuredClone","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","addListPath","paths","path","includes","concat","removeListPath","thisPath","isArrayJsonPointer","Provider","_ref","defaultData","data","schema","onChange","onPathChange","onSubmit","onSubmitRequest","scrollTopOnSubmit","sessionStorageId","children","rest","console","error","wasMounted","useRef","initialData","useMemo","window","_window$sessionStorag","sessionDataJSON","sessionStorage","getItem","JSON","parse","ajvSchemaValidator","ajv","compile","internalData","setInternalData","useState","mountedFieldPathsRef","errorsRef","showAllErrors","setShowAllErrors","pathsWithErrorRef","hasErrors","useCallback","Boolean","current","find","mountedFieldPath","useEffect","validateBySchema","errors","ajvErrorsToFormErrors","validateBySchemaAndUpdateState","_validateBySchema","setPathWithError","hasError","handlePathChange","newData","structuredClone","match","pointer","_window$sessionStorag2","setItem","stringify","handleMountField","handleUnMountField","handleSubmit","formElement","_formElement$reset","reset","removeItem","_window","scrollTo","top","behavior","createElement","mountedFieldPaths"],"sources":["../../../../../../src/extensions/forms/DataContext/Provider/Provider.tsx"],"sourcesContent":["import React, {\n useEffect,\n useRef,\n useMemo,\n useCallback,\n useState,\n} from 'react'\nimport pointer, { JsonObject } from 'json-pointer'\nimport { JSONSchema7 } from 'json-schema'\nimport ajv, { ajvErrorsToFormErrors } from '../../utils/ajv'\nimport { FormError } from '../../types'\nimport Context, { ContextState } from '../Context'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport interface Props<Data extends JsonObject> {\n /** Default source data, only used if no other source is available, and not leading to updates if changed after mount */\n defaultData?: Partial<Data>\n /** Dynamic source data used as both initial data, and updates internal data if changed after mount */\n data?: Partial<Data>\n /** JSON Schema for validating the data, like during input or after attempting submit */\n schema?: JSONSchema7\n /** Change handler for the whole data set */\n onChange?: (data: Data) => void\n /** Change handler for each value */\n onPathChange?: (path: string, value: any) => void\n /** Submit called, data was valid (if validation available) */\n onSubmit?: (data: Data) => void\n /** Submit was requested, but data was invalid */\n onSubmitRequest?: () => void\n scrollTopOnSubmit?: boolean\n /** Key for caching the data in session storage */\n sessionStorageId?: string\n children: React.ReactNode\n}\n\ntype PathList = string[]\n\nfunction addListPath(paths: PathList, path: string): PathList {\n return paths.includes(path) ? paths : paths.concat(path)\n}\n\nfunction removeListPath(paths: PathList, path: string): PathList {\n return paths.filter((thisPath) => thisPath !== path)\n}\n\nconst isArrayJsonPointer = /^\\/\\d+(\\/|$)/\n\nexport default function Provider<Data extends JsonObject>({\n defaultData,\n data,\n schema,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n scrollTopOnSubmit,\n sessionStorageId,\n children,\n ...rest\n}: Props<Data>) {\n // Prop error handling\n if (data !== undefined && sessionStorageId !== undefined) {\n console.error(\n 'Providing both data and sessionStorageId could lead to competing data sources. To provide default data to use only before anything is changed in the interface, use defaultData.'\n )\n }\n\n // State\n const wasMounted = useRef(false)\n const initialData = useMemo(() => {\n if (sessionStorageId && typeof window !== 'undefined') {\n const sessionDataJSON =\n window.sessionStorage?.getItem(sessionStorageId)\n if (sessionDataJSON) {\n return JSON.parse(sessionDataJSON)\n }\n }\n return data ?? defaultData\n }, [data, defaultData, sessionStorageId])\n const ajvSchemaValidator = useMemo(\n () => (schema ? ajv.compile(schema) : undefined),\n [schema]\n )\n const [internalData, setInternalData] =\n useState<Partial<Data>>(initialData)\n const mountedFieldPathsRef = useRef<string[]>([])\n\n // Errors from provider validation (the whole data set)\n const errorsRef = useRef<Record<string, FormError>>({})\n const [showAllErrors, setShowAllErrors] = useState<boolean>(false)\n // Errors reported by fields, based on their direct validation rules\n const pathsWithErrorRef = useRef<string[]>([])\n\n const hasErrors = useCallback(\n () =>\n Boolean(\n mountedFieldPathsRef.current.find(\n (mountedFieldPath) =>\n errorsRef.current[mountedFieldPath] !== undefined ||\n pathsWithErrorRef.current.includes(mountedFieldPath)\n )\n ),\n []\n )\n\n useEffect(() => {\n if (!wasMounted.current) {\n wasMounted.current = true\n return\n }\n // When receiving the initial data, or receiving updated data by props, update the internal data (controlled state)\n setInternalData(data)\n }, [data])\n\n const validateBySchema = useCallback(\n (data: Partial<Data>): Record<string, Error> | undefined => {\n if (!ajvSchemaValidator) {\n // No schema-based validator. Assume data is valid.\n return\n }\n\n if (!ajvSchemaValidator(data)) {\n // Errors found\n const errors = ajvErrorsToFormErrors(ajvSchemaValidator.errors)\n return errors\n } else {\n return\n }\n },\n [ajvSchemaValidator]\n )\n\n const validateBySchemaAndUpdateState = useCallback(\n (data: Partial<Data>) => {\n errorsRef.current = validateBySchema(data) ?? {}\n },\n [validateBySchema]\n )\n\n const setPathWithError = useCallback(\n (path: string, hasError: boolean) => {\n pathsWithErrorRef.current = hasError\n ? addListPath(pathsWithErrorRef.current, path)\n : removeListPath(pathsWithErrorRef.current, path)\n },\n []\n )\n\n const handlePathChange = useCallback(\n (path, value) => {\n if (!path) {\n return\n }\n onPathChange?.(path, value)\n\n // Update the data even if it contains errors. Submit/SubmitRequest will be called accordingly\n const newData = structuredClone(\n path === '/'\n ? // When setting the root of the data, the whole data set should be the new value\n value\n : // For sub paths, use the the existing data set (or empty array/object), but modify it below (since pointer.set is not immutable)\n internalData ?? (path.match(isArrayJsonPointer) ? [] : {})\n )\n if (path !== '/') {\n pointer.set(newData as Data, path, value)\n }\n\n onChange?.(newData as Data)\n\n if (sessionStorageId && typeof window !== 'undefined') {\n window.sessionStorage?.setItem(\n sessionStorageId,\n JSON.stringify(newData)\n )\n }\n\n validateBySchemaAndUpdateState(newData)\n\n setInternalData(newData)\n\n setShowAllErrors(false)\n },\n [internalData, onChange, onPathChange, validateBySchemaAndUpdateState]\n )\n\n // Mounted fields\n const handleMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = addListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n const handleUnMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = removeListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n /**\n * Request to submit the whole form\n */\n const handleSubmit = useCallback<ContextState['handleSubmit']>(\n ({ formElement = null } = {}) => {\n if (!hasErrors()) {\n onSubmit?.(internalData as Data)\n\n formElement?.reset?.()\n\n if (typeof window !== 'undefined') {\n if (sessionStorageId) {\n window.sessionStorage.removeItem(sessionStorageId)\n }\n\n if (scrollTopOnSubmit) {\n window?.scrollTo({ top: 0, behavior: 'smooth' })\n }\n }\n } else {\n setShowAllErrors(true)\n onSubmitRequest?.()\n }\n return internalData\n },\n [internalData, scrollTopOnSubmit, hasErrors, onSubmit, onSubmitRequest]\n )\n\n useEffect(() => {\n // Mount procedure\n if (initialData) {\n // Validate the initial data to know if the user can submit, and to show errors if inputs are requested to with props\n validateBySchemaAndUpdateState(initialData)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- Only run for mount and unmount\n }, [])\n\n return (\n <Context.Provider\n value={{\n data: internalData,\n ...rest,\n handlePathChange,\n handleSubmit,\n errors: errorsRef.current,\n showAllErrors,\n setShowAllErrors,\n mountedFieldPaths: mountedFieldPathsRef.current,\n handleMountField,\n handleUnMountField,\n hasErrors,\n setPathWithError,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n"],"mappings":"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"}
@@ -51,15 +51,18 @@ function ArraySelection(props) {
51
51
  labelDescription,
52
52
  labelSecondary
53
53
  }, (0, _utils.pickSpacingProps)(props));
54
- const options = (0, _react.useMemo)(() => _react.default.Children.toArray(children).filter(child => _react.default.isValidElement(child) && child.type === _Option.default).map(option => ({
55
- title: option.props.title ?? option.props.children,
56
- value: option.props.value,
57
- handleSelect: () => {
58
- const selected = option.props.value;
59
- const newValue = value !== null && value !== void 0 && value.includes(selected) ? value.filter(value => value !== selected) : [...(value ?? []), selected];
60
- handleChange === null || handleChange === void 0 ? void 0 : handleChange(newValue.length === 0 ? emptyValue : newValue);
61
- }
62
- })), [children, value, emptyValue, handleChange]);
54
+ const options = (0, _react.useMemo)(() => _react.default.Children.toArray(children).filter(child => _react.default.isValidElement(child) && child.type === _Option.default).map(option => {
55
+ var _option$props$title;
56
+ return {
57
+ title: (_option$props$title = option.props.title) !== null && _option$props$title !== void 0 ? _option$props$title : option.props.children,
58
+ value: option.props.value,
59
+ handleSelect: () => {
60
+ const selected = option.props.value;
61
+ const newValue = value !== null && value !== void 0 && value.includes(selected) ? value.filter(value => value !== selected) : [...(value !== null && value !== void 0 ? value : []), selected];
62
+ handleChange === null || handleChange === void 0 ? void 0 : handleChange(newValue.length === 0 ? emptyValue : newValue);
63
+ }
64
+ };
65
+ }), [children, value, emptyValue, handleChange]);
63
66
  switch (variant) {
64
67
  case 'button':
65
68
  return _react.default.createElement(_FieldBlock.default, fieldBlockProps, _react.default.createElement(_ButtonRow.default, null, options.map((option, i) => _react.default.createElement(_components.Button, {
@@ -1 +1 @@
1
- {"version":3,"file":"ArraySelection.js","names":["_react","_interopRequireWildcard","require","_components","_ButtonRow","_interopRequireDefault","_classnames","_Option","_FieldBlock","_hooks","_utils","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","ArraySelection","props","id","className","variant","layout","optionsLayout","label","labelDescription","labelSecondary","error","info","warning","disabled","emptyValue","handleChange","children","useDataValue","fieldBlockProps","forId","classnames","contentClassName","pickSpacingProps","options","useMemo","React","Children","toArray","child","isValidElement","type","Option","map","option","title","handleSelect","selected","newValue","includes","createElement","Button","text","on_click","status","Checkbox","checked","on_change","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/ArraySelection/ArraySelection.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { Checkbox, Button } from '../../../../components'\nimport ButtonRow from '../../Form/ButtonRow'\nimport classnames from 'classnames'\nimport Option from '../Option'\nimport FieldBlock from '../../FieldBlock'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\n\ninterface IOption {\n title: string\n value: number | string\n handleSelect: () => void\n}\n\nexport type Props = FieldProps<Array<string | number>> & {\n children?: React.ReactNode\n variant?: 'checkbox' | 'button'\n optionsLayout?: 'horizontal' | 'vertical'\n}\n\nfunction ArraySelection(props: Props) {\n const {\n id,\n className,\n variant = 'checkbox',\n layout = 'vertical',\n optionsLayout = 'vertical',\n label,\n labelDescription,\n labelSecondary,\n value,\n error,\n info,\n warning,\n disabled,\n emptyValue,\n handleChange,\n children,\n } = useDataValue(props)\n\n const fieldBlockProps = {\n forId: id,\n className: classnames(\n 'dnb-forms-field-array-selection',\n `dnb-forms-field-array-selection--options-layout-${optionsLayout}`,\n className\n ),\n contentClassName: 'dnb-forms-field-array-selection__options',\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n labelSecondary,\n ...pickSpacingProps(props),\n }\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) => React.isValidElement(child) && child.type === Option\n )\n .map((option: React.ReactElement) => ({\n title: option.props.title ?? option.props.children,\n value: option.props.value,\n handleSelect: () => {\n const selected = option.props.value\n\n const newValue = value?.includes(selected)\n ? value.filter((value) => value !== selected)\n : [...(value ?? []), selected]\n\n handleChange?.(newValue.length === 0 ? emptyValue : newValue)\n },\n })),\n [children, value, emptyValue, handleChange]\n )\n\n switch (variant) {\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n {options.map((option, i) => (\n <Button\n key={`option-${i}-${option.value}`}\n id={id}\n text={option.title}\n on_click={option.handleSelect}\n variant={\n value?.includes(option.value) ? undefined : 'secondary'\n }\n status={error ? 'error' : undefined}\n disabled={disabled}\n />\n ))}\n </ButtonRow>\n </FieldBlock>\n )\n case 'checkbox':\n return (\n <FieldBlock {...fieldBlockProps}>\n {options.map((option, i) => (\n <Checkbox\n key={`option-${i}-${option.value}`}\n className=\"dnb-forms-field-array-selection__checkbox\"\n label={option.title}\n checked={value?.includes(option.value)}\n disabled={disabled}\n on_change={option.handleSelect}\n />\n ))}\n </FieldBlock>\n )\n }\n}\n\nArraySelection._supportsSpacingProps = true\nexport default ArraySelection\n"],"mappings":"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"}
1
+ {"version":3,"file":"ArraySelection.js","names":["_react","_interopRequireWildcard","require","_components","_ButtonRow","_interopRequireDefault","_classnames","_Option","_FieldBlock","_hooks","_utils","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","ArraySelection","props","id","className","variant","layout","optionsLayout","label","labelDescription","labelSecondary","error","info","warning","disabled","emptyValue","handleChange","children","useDataValue","fieldBlockProps","forId","classnames","contentClassName","pickSpacingProps","options","useMemo","React","Children","toArray","child","isValidElement","type","Option","map","option","_option$props$title","title","handleSelect","selected","newValue","includes","createElement","Button","text","on_click","status","Checkbox","checked","on_change","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/ArraySelection/ArraySelection.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { Checkbox, Button } from '../../../../components'\nimport ButtonRow from '../../Form/ButtonRow'\nimport classnames from 'classnames'\nimport Option from '../Option'\nimport FieldBlock from '../../FieldBlock'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\n\ninterface IOption {\n title: string\n value: number | string\n handleSelect: () => void\n}\n\nexport type Props = FieldProps<Array<string | number>> & {\n children?: React.ReactNode\n variant?: 'checkbox' | 'button'\n optionsLayout?: 'horizontal' | 'vertical'\n}\n\nfunction ArraySelection(props: Props) {\n const {\n id,\n className,\n variant = 'checkbox',\n layout = 'vertical',\n optionsLayout = 'vertical',\n label,\n labelDescription,\n labelSecondary,\n value,\n error,\n info,\n warning,\n disabled,\n emptyValue,\n handleChange,\n children,\n } = useDataValue(props)\n\n const fieldBlockProps = {\n forId: id,\n className: classnames(\n 'dnb-forms-field-array-selection',\n `dnb-forms-field-array-selection--options-layout-${optionsLayout}`,\n className\n ),\n contentClassName: 'dnb-forms-field-array-selection__options',\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n labelSecondary,\n ...pickSpacingProps(props),\n }\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) => React.isValidElement(child) && child.type === Option\n )\n .map((option: React.ReactElement) => ({\n title: option.props.title ?? option.props.children,\n value: option.props.value,\n handleSelect: () => {\n const selected = option.props.value\n\n const newValue = value?.includes(selected)\n ? value.filter((value) => value !== selected)\n : [...(value ?? []), selected]\n\n handleChange?.(newValue.length === 0 ? emptyValue : newValue)\n },\n })),\n [children, value, emptyValue, handleChange]\n )\n\n switch (variant) {\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n {options.map((option, i) => (\n <Button\n key={`option-${i}-${option.value}`}\n id={id}\n text={option.title}\n on_click={option.handleSelect}\n variant={\n value?.includes(option.value) ? undefined : 'secondary'\n }\n status={error ? 'error' : undefined}\n disabled={disabled}\n />\n ))}\n </ButtonRow>\n </FieldBlock>\n )\n case 'checkbox':\n return (\n <FieldBlock {...fieldBlockProps}>\n {options.map((option, i) => (\n <Checkbox\n key={`option-${i}-${option.value}`}\n className=\"dnb-forms-field-array-selection__checkbox\"\n label={option.title}\n checked={value?.includes(option.value)}\n disabled={disabled}\n on_change={option.handleSelect}\n />\n ))}\n </FieldBlock>\n )\n }\n}\n\nArraySelection._supportsSpacingProps = true\nexport default ArraySelection\n"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ "use client";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
@@ -16,6 +17,7 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
16
17
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
17
18
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
18
19
  function BankAccountNumber(props) {
20
+ var _props$pattern, _props$label, _props$width;
19
21
  const sharedContext = (0, _react.useContext)(_Context.default);
20
22
  const {
21
23
  validate = true,
@@ -23,14 +25,14 @@ function BankAccountNumber(props) {
23
25
  } = props;
24
26
  const stringComponentProps = _objectSpread(_objectSpread({}, props), {}, {
25
27
  className: 'dnb-forms-field-bank-account-number',
26
- pattern: props.pattern ?? (validate ? '^[0-9]{11}$' : undefined),
27
- label: props.label ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.bankAccountNumberLabel),
28
+ pattern: (_props$pattern = props.pattern) !== null && _props$pattern !== void 0 ? _props$pattern : validate ? '^[0-9]{11}$' : undefined,
29
+ label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.bankAccountNumberLabel,
28
30
  errorMessages: _objectSpread({
29
31
  required: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.bankAccountNumberErrorRequired,
30
32
  pattern: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.bankAccountNumberErrorPattern
31
33
  }, props.errorMessages),
32
34
  mask: omitMask ? [/\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/] : [/\d/, /\d/, /\d/, /\d/, ' ', /\d/, /\d/, ' ', /\d/, /\d/, /\d/, /\d/, /\d/],
33
- width: props.width ?? 'medium'
35
+ width: (_props$width = props.width) !== null && _props$width !== void 0 ? _props$width : 'medium'
34
36
  });
35
37
  return _react.default.createElement(_String.default, stringComponentProps);
36
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BankAccountNumber.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","BankAccountNumber","props","sharedContext","useContext","SharedContext","validate","omitMask","stringComponentProps","className","pattern","label","translation","Forms","bankAccountNumberLabel","errorMessages","required","bankAccountNumberErrorRequired","bankAccountNumberErrorPattern","mask","width","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/BankAccountNumber/BankAccountNumber.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport StringComponent, { Props as StringComponentProps } from '../String'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = StringComponentProps & {\n validate?: boolean\n omitMask?: boolean\n}\n\nfunction BankAccountNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const { validate = true, omitMask } = props\n\n const stringComponentProps: Props = {\n ...props,\n className: 'dnb-forms-field-bank-account-number',\n pattern: props.pattern ?? (validate ? '^[0-9]{11}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.bankAccountNumberLabel,\n errorMessages: {\n required:\n sharedContext?.translation.Forms.bankAccountNumberErrorRequired,\n pattern:\n sharedContext?.translation.Forms.bankAccountNumberErrorPattern,\n ...props.errorMessages,\n },\n mask: omitMask\n ? [/\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/]\n : [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ],\n width: props.width ?? 'medium',\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nBankAccountNumber._supportsSpacingProps = true\nexport default BankAccountNumber\n"],"mappings":"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"}
1
+ {"version":3,"file":"BankAccountNumber.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","BankAccountNumber","props","_props$pattern","_props$label","_props$width","sharedContext","useContext","SharedContext","validate","omitMask","stringComponentProps","className","pattern","label","translation","Forms","bankAccountNumberLabel","errorMessages","required","bankAccountNumberErrorRequired","bankAccountNumberErrorPattern","mask","width","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/BankAccountNumber/BankAccountNumber.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport StringComponent, { Props as StringComponentProps } from '../String'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = StringComponentProps & {\n validate?: boolean\n omitMask?: boolean\n}\n\nfunction BankAccountNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const { validate = true, omitMask } = props\n\n const stringComponentProps: Props = {\n ...props,\n className: 'dnb-forms-field-bank-account-number',\n pattern: props.pattern ?? (validate ? '^[0-9]{11}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.bankAccountNumberLabel,\n errorMessages: {\n required:\n sharedContext?.translation.Forms.bankAccountNumberErrorRequired,\n pattern:\n sharedContext?.translation.Forms.bankAccountNumberErrorPattern,\n ...props.errorMessages,\n },\n mask: omitMask\n ? [/\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/]\n : [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ],\n width: props.width ?? 'medium',\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nBankAccountNumber._supportsSpacingProps = true\nexport default BankAccountNumber\n"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ "use client";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
@@ -24,8 +25,8 @@ function BooleanComponent(props) {
24
25
  return _react.default.createElement(_Toggle.default, _extends({}, restProps, {
25
26
  valueOn: true,
26
27
  valueOff: false,
27
- textOn: trueText ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanYes),
28
- textOff: falseText ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanNo)
28
+ textOn: trueText !== null && trueText !== void 0 ? trueText : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanYes,
29
+ textOff: falseText !== null && falseText !== void 0 ? falseText : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanNo
29
30
  }));
30
31
  }
31
32
  BooleanComponent._supportsSpacingProps = true;
@@ -1 +1 @@
1
- {"version":3,"file":"Boolean.js","names":["_react","_interopRequireWildcard","require","_Toggle","_interopRequireDefault","_Context","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","BooleanComponent","props","sharedContext","useContext","SharedContext","trueText","falseText","restProps","createElement","valueOn","valueOff","textOn","translation","Forms","booleanYes","textOff","booleanNo","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Boolean/Boolean.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport Toggle, { Props as ToggleProps } from '../Toggle'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = Omit<\n ToggleProps,\n 'valueOn' | 'valueOff' | 'textOn' | 'textOff'\n> & {\n trueText?: string\n falseText?: string\n}\n\nfunction BooleanComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const { trueText, falseText, ...restProps } = props\n return (\n <Toggle\n {...restProps}\n valueOn={true}\n valueOff={false}\n textOn={trueText ?? sharedContext?.translation.Forms.booleanYes}\n textOff={falseText ?? sharedContext?.translation.Forms.booleanNo}\n />\n )\n}\n\nBooleanComponent._supportsSpacingProps = true\nexport default BooleanComponent\n"],"mappings":"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"}
1
+ {"version":3,"file":"Boolean.js","names":["_react","_interopRequireWildcard","require","_Toggle","_interopRequireDefault","_Context","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","BooleanComponent","props","sharedContext","useContext","SharedContext","trueText","falseText","restProps","createElement","valueOn","valueOff","textOn","translation","Forms","booleanYes","textOff","booleanNo","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Boolean/Boolean.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport Toggle, { Props as ToggleProps } from '../Toggle'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = Omit<\n ToggleProps,\n 'valueOn' | 'valueOff' | 'textOn' | 'textOff'\n> & {\n trueText?: string\n falseText?: string\n}\n\nfunction BooleanComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const { trueText, falseText, ...restProps } = props\n return (\n <Toggle\n {...restProps}\n valueOn={true}\n valueOff={false}\n textOn={trueText ?? sharedContext?.translation.Forms.booleanYes}\n textOff={falseText ?? sharedContext?.translation.Forms.booleanNo}\n />\n )\n}\n\nBooleanComponent._supportsSpacingProps = true\nexport default BooleanComponent\n"],"mappings":"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"}
@@ -15,9 +15,10 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
15
15
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
16
16
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
17
17
  function Currency(props) {
18
+ var _props$currency, _props$placeholder;
18
19
  const preparedProps = _objectSpread(_objectSpread({}, props), {}, {
19
- currency: props.currency ?? 'NOK',
20
- placeholder: props.placeholder ?? 'kr'
20
+ currency: (_props$currency = props.currency) !== null && _props$currency !== void 0 ? _props$currency : 'NOK',
21
+ placeholder: (_props$placeholder = props.placeholder) !== null && _props$placeholder !== void 0 ? _props$placeholder : 'kr'
21
22
  });
22
23
  return _react.default.createElement(_Number.default, _extends({}, preparedProps, {
23
24
  className: (0, _classnames.default)('dnb-forms-field-currency', props.className)