@dnb/eufemia 10.73.1 → 10.74.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 (648) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/cjs/components/autocomplete/Autocomplete.js +7 -4
  3. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  4. package/cjs/components/autocomplete/AutocompleteDocs.d.ts +289 -3
  5. package/cjs/components/autocomplete/AutocompleteDocs.js +2 -2
  6. package/cjs/components/autocomplete/AutocompleteDocs.js.map +1 -1
  7. package/cjs/components/button/style/dnb-button.css +1 -0
  8. package/cjs/components/button/style/dnb-button.min.css +1 -1
  9. package/cjs/components/button/style/dnb-button.scss +1 -0
  10. package/cjs/components/checkbox/Checkbox.d.ts +9 -1
  11. package/cjs/components/checkbox/Checkbox.js +59 -34
  12. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  13. package/cjs/components/checkbox/CheckboxDocs.js +6 -1
  14. package/cjs/components/checkbox/CheckboxDocs.js.map +1 -1
  15. package/cjs/components/date-picker/DatePicker.d.ts +4 -0
  16. package/cjs/components/date-picker/DatePicker.js +4 -3
  17. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  18. package/cjs/components/date-picker/DatePickerCalendar.d.ts +2 -16
  19. package/cjs/components/date-picker/DatePickerCalendar.js +27 -86
  20. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  21. package/cjs/components/date-picker/DatePickerCalendarNavigator.d.ts +37 -0
  22. package/cjs/components/date-picker/DatePickerCalendarNavigator.js +173 -0
  23. package/cjs/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
  24. package/cjs/components/date-picker/DatePickerContext.d.ts +3 -0
  25. package/cjs/components/date-picker/DatePickerContext.js.map +1 -1
  26. package/cjs/components/date-picker/DatePickerDocs.js +6 -1
  27. package/cjs/components/date-picker/DatePickerDocs.js.map +1 -1
  28. package/cjs/components/date-picker/DatePickerFooter.js +20 -17
  29. package/cjs/components/date-picker/DatePickerFooter.js.map +1 -1
  30. package/cjs/components/date-picker/DatePickerProvider.js +7 -0
  31. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  32. package/cjs/components/date-picker/DatePickerRange.js +2 -28
  33. package/cjs/components/date-picker/DatePickerRange.js.map +1 -1
  34. package/cjs/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
  35. package/cjs/components/date-picker/hooks/useSubmittedDates.js +19 -0
  36. package/cjs/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
  37. package/cjs/components/date-picker/style/dnb-date-picker.css +1 -1
  38. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  39. package/cjs/components/date-picker/style/dnb-date-picker.scss +1 -1
  40. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +17 -0
  41. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  42. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +19 -0
  43. package/cjs/components/drawer/Drawer.js +1 -0
  44. package/cjs/components/drawer/Drawer.js.map +1 -1
  45. package/cjs/components/dropdown/Dropdown.js +6 -4
  46. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  47. package/cjs/components/dropdown/DropdownDocs.d.ts +179 -3
  48. package/cjs/components/dropdown/DropdownDocs.js.map +1 -1
  49. package/cjs/components/heading/HeadingHelpers.js +9 -5
  50. package/cjs/components/heading/HeadingHelpers.js.map +1 -1
  51. package/cjs/components/icon/Icon.d.ts +2 -2
  52. package/cjs/components/input-masked/InputMaskedDocs.js +1 -1
  53. package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -1
  54. package/cjs/components/input-masked/InputMaskedHooks.d.ts +1 -0
  55. package/cjs/components/input-masked/InputMaskedHooks.js +38 -6
  56. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  57. package/cjs/components/input-masked/InputMaskedUtils.js +5 -4
  58. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  59. package/cjs/components/number-format/NumberUtils.js +6 -4
  60. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  61. package/cjs/components/switch/SwitchDocs.js +2 -2
  62. package/cjs/components/switch/SwitchDocs.js.map +1 -1
  63. package/cjs/components/toggle-button/ToggleButton.js +1 -1
  64. package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
  65. package/cjs/components/upload/UploadStatus.js +1 -0
  66. package/cjs/components/upload/UploadStatus.js.map +1 -1
  67. package/cjs/extensions/forms/DataContext/Context.d.ts +1 -1
  68. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  69. package/cjs/extensions/forms/DataContext/Provider/Provider.js +9 -0
  70. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  71. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -0
  72. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  73. package/cjs/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
  74. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  75. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
  76. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js +8 -1
  77. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  78. package/cjs/extensions/forms/Field/Date/Date.d.ts +1 -1
  79. package/cjs/extensions/forms/Field/Date/Date.js +1 -1
  80. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  81. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  82. package/cjs/extensions/forms/Field/Number/NumberDocs.js +1 -1
  83. package/cjs/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  84. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +3 -0
  85. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  86. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  87. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +2 -2
  88. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  89. package/cjs/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +2 -2
  90. package/cjs/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
  91. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +2 -0
  92. package/cjs/extensions/forms/Field/Selection/Selection.js +10 -9
  93. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  94. package/cjs/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
  95. package/cjs/extensions/forms/Field/Toggle/Toggle.js +38 -14
  96. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  97. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
  98. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js +8 -1
  99. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  100. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
  101. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js +64 -0
  102. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
  103. package/cjs/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
  104. package/cjs/extensions/forms/Form/Isolation/Isolation.js +39 -14
  105. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  106. package/cjs/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
  107. package/cjs/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
  108. package/cjs/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
  109. package/cjs/extensions/forms/Form/Isolation/IsolationContext.js +11 -0
  110. package/cjs/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
  111. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
  112. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js +31 -0
  113. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
  114. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
  115. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  116. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
  117. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js +112 -0
  118. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
  119. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
  120. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js +58 -0
  121. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
  122. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
  123. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js +57 -0
  124. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
  125. package/cjs/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +11 -9
  126. package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
  127. package/cjs/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
  128. package/cjs/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
  129. package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
  130. package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  131. package/cjs/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
  132. package/cjs/extensions/forms/Iterate/EditContainer/index.js +1 -1
  133. package/cjs/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  134. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
  135. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +15 -56
  136. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  137. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  138. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  139. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -1
  140. package/cjs/extensions/forms/constants/locales/en-GB.js +3 -3
  141. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  142. package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -1
  143. package/cjs/extensions/forms/constants/locales/index.d.ts +2 -2
  144. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -1
  145. package/cjs/extensions/forms/constants/locales/nb-NO.js +3 -3
  146. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  147. package/cjs/extensions/forms/constants/locales/sv-SE.d.ts +1 -1
  148. package/cjs/extensions/forms/constants/locales/sv-SE.js +3 -3
  149. package/cjs/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  150. package/cjs/extensions/forms/hooks/useDataContext.js +5 -3
  151. package/cjs/extensions/forms/hooks/useDataContext.js.map +1 -1
  152. package/cjs/extensions/forms/hooks/useSnapshot.js +17 -14
  153. package/cjs/extensions/forms/hooks/useSnapshot.js.map +1 -1
  154. package/cjs/fragments/drawer-list/DrawerList.d.ts +176 -224
  155. package/cjs/fragments/drawer-list/DrawerList.js +70 -175
  156. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  157. package/cjs/fragments/drawer-list/DrawerListContext.d.ts +27 -2
  158. package/cjs/fragments/drawer-list/DrawerListContext.js.map +1 -1
  159. package/cjs/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
  160. package/cjs/fragments/drawer-list/DrawerListDocs.js +2 -2
  161. package/cjs/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  162. package/cjs/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
  163. package/cjs/fragments/drawer-list/DrawerListHelpers.js +52 -58
  164. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  165. package/cjs/fragments/drawer-list/DrawerListItem.d.ts +30 -0
  166. package/cjs/fragments/drawer-list/DrawerListItem.js +106 -0
  167. package/cjs/fragments/drawer-list/DrawerListItem.js.map +1 -0
  168. package/cjs/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
  169. package/cjs/fragments/drawer-list/DrawerListPortal.js +93 -125
  170. package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  171. package/cjs/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
  172. package/cjs/fragments/drawer-list/DrawerListProvider.js +11 -18
  173. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  174. package/cjs/shared/Eufemia.d.ts +1 -1
  175. package/cjs/shared/Eufemia.js +2 -2
  176. package/cjs/shared/Eufemia.js.map +1 -1
  177. package/cjs/shared/component-helper.d.ts +45 -48
  178. package/cjs/shared/component-helper.js +72 -201
  179. package/cjs/shared/component-helper.js.map +1 -1
  180. package/cjs/shared/helpers/withCamelCaseProps.d.ts +4 -5
  181. package/cjs/shared/helpers/withCamelCaseProps.js +7 -2
  182. package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
  183. package/cjs/shared/legacy/component-helper-legacy.d.ts +19 -0
  184. package/cjs/shared/legacy/component-helper-legacy.js +202 -0
  185. package/cjs/shared/legacy/component-helper-legacy.js.map +1 -0
  186. package/cjs/shared/locales/en-GB.d.ts +1 -0
  187. package/cjs/shared/locales/en-GB.js +1 -0
  188. package/cjs/shared/locales/en-GB.js.map +1 -1
  189. package/cjs/shared/locales/en-US.js.map +1 -1
  190. package/cjs/shared/locales/index.d.ts +2 -0
  191. package/cjs/shared/locales/nb-NO.d.ts +1 -0
  192. package/cjs/shared/locales/nb-NO.js +2 -1
  193. package/cjs/shared/locales/nb-NO.js.map +1 -1
  194. package/cjs/shared/locales/sv-SE.d.ts +1 -0
  195. package/cjs/shared/locales/sv-SE.js +1 -0
  196. package/cjs/shared/locales/sv-SE.js.map +1 -1
  197. package/cjs/style/core/scopes.scss +1 -1
  198. package/cjs/style/dnb-ui-basis.css +1 -1
  199. package/cjs/style/dnb-ui-basis.min.css +1 -1
  200. package/cjs/style/dnb-ui-body.css +1 -1
  201. package/cjs/style/dnb-ui-body.min.css +1 -1
  202. package/cjs/style/dnb-ui-components.css +2 -1
  203. package/cjs/style/dnb-ui-components.min.css +1 -1
  204. package/cjs/style/dnb-ui-core.css +1 -1
  205. package/cjs/style/dnb-ui-core.min.css +1 -1
  206. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +19 -1
  207. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  208. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +19 -1
  209. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  210. package/cjs/style/themes/theme-ui/ui-theme-components.css +19 -1
  211. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  212. package/components/autocomplete/Autocomplete.js +6 -3
  213. package/components/autocomplete/Autocomplete.js.map +1 -1
  214. package/components/autocomplete/AutocompleteDocs.d.ts +289 -3
  215. package/components/autocomplete/AutocompleteDocs.js +1 -1
  216. package/components/autocomplete/AutocompleteDocs.js.map +1 -1
  217. package/components/button/style/dnb-button.css +1 -0
  218. package/components/button/style/dnb-button.min.css +1 -1
  219. package/components/button/style/dnb-button.scss +1 -0
  220. package/components/checkbox/Checkbox.d.ts +9 -1
  221. package/components/checkbox/Checkbox.js +60 -35
  222. package/components/checkbox/Checkbox.js.map +1 -1
  223. package/components/checkbox/CheckboxDocs.js +6 -1
  224. package/components/checkbox/CheckboxDocs.js.map +1 -1
  225. package/components/date-picker/DatePicker.d.ts +4 -0
  226. package/components/date-picker/DatePicker.js +4 -3
  227. package/components/date-picker/DatePicker.js.map +1 -1
  228. package/components/date-picker/DatePickerCalendar.d.ts +2 -16
  229. package/components/date-picker/DatePickerCalendar.js +27 -86
  230. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  231. package/components/date-picker/DatePickerCalendarNavigator.d.ts +37 -0
  232. package/components/date-picker/DatePickerCalendarNavigator.js +162 -0
  233. package/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
  234. package/components/date-picker/DatePickerContext.d.ts +3 -0
  235. package/components/date-picker/DatePickerContext.js.map +1 -1
  236. package/components/date-picker/DatePickerDocs.js +6 -1
  237. package/components/date-picker/DatePickerDocs.js.map +1 -1
  238. package/components/date-picker/DatePickerFooter.js +20 -17
  239. package/components/date-picker/DatePickerFooter.js.map +1 -1
  240. package/components/date-picker/DatePickerProvider.js +7 -0
  241. package/components/date-picker/DatePickerProvider.js.map +1 -1
  242. package/components/date-picker/DatePickerRange.js +2 -28
  243. package/components/date-picker/DatePickerRange.js.map +1 -1
  244. package/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
  245. package/components/date-picker/hooks/useSubmittedDates.js +14 -0
  246. package/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
  247. package/components/date-picker/style/dnb-date-picker.css +1 -1
  248. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  249. package/components/date-picker/style/dnb-date-picker.scss +1 -1
  250. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +17 -0
  251. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  252. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +19 -0
  253. package/components/drawer/Drawer.js +1 -0
  254. package/components/drawer/Drawer.js.map +1 -1
  255. package/components/dropdown/Dropdown.js +6 -4
  256. package/components/dropdown/Dropdown.js.map +1 -1
  257. package/components/dropdown/DropdownDocs.d.ts +179 -3
  258. package/components/dropdown/DropdownDocs.js.map +1 -1
  259. package/components/heading/HeadingHelpers.js +9 -5
  260. package/components/heading/HeadingHelpers.js.map +1 -1
  261. package/components/icon/Icon.d.ts +2 -2
  262. package/components/input-masked/InputMaskedDocs.js +1 -1
  263. package/components/input-masked/InputMaskedDocs.js.map +1 -1
  264. package/components/input-masked/InputMaskedHooks.d.ts +1 -0
  265. package/components/input-masked/InputMaskedHooks.js +39 -7
  266. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  267. package/components/input-masked/InputMaskedUtils.js +6 -5
  268. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  269. package/components/number-format/NumberUtils.js +5 -4
  270. package/components/number-format/NumberUtils.js.map +1 -1
  271. package/components/switch/SwitchDocs.js +2 -2
  272. package/components/switch/SwitchDocs.js.map +1 -1
  273. package/components/toggle-button/ToggleButton.js +1 -1
  274. package/components/toggle-button/ToggleButton.js.map +1 -1
  275. package/components/upload/UploadStatus.js +1 -0
  276. package/components/upload/UploadStatus.js.map +1 -1
  277. package/es/components/autocomplete/Autocomplete.js +6 -3
  278. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  279. package/es/components/autocomplete/AutocompleteDocs.d.ts +289 -3
  280. package/es/components/autocomplete/AutocompleteDocs.js +1 -1
  281. package/es/components/autocomplete/AutocompleteDocs.js.map +1 -1
  282. package/es/components/button/style/dnb-button.css +1 -0
  283. package/es/components/button/style/dnb-button.min.css +1 -1
  284. package/es/components/button/style/dnb-button.scss +1 -0
  285. package/es/components/checkbox/Checkbox.d.ts +9 -1
  286. package/es/components/checkbox/Checkbox.js +60 -35
  287. package/es/components/checkbox/Checkbox.js.map +1 -1
  288. package/es/components/checkbox/CheckboxDocs.js +6 -1
  289. package/es/components/checkbox/CheckboxDocs.js.map +1 -1
  290. package/es/components/date-picker/DatePicker.d.ts +4 -0
  291. package/es/components/date-picker/DatePicker.js +4 -3
  292. package/es/components/date-picker/DatePicker.js.map +1 -1
  293. package/es/components/date-picker/DatePickerCalendar.d.ts +2 -16
  294. package/es/components/date-picker/DatePickerCalendar.js +23 -80
  295. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  296. package/es/components/date-picker/DatePickerCalendarNavigator.d.ts +37 -0
  297. package/es/components/date-picker/DatePickerCalendarNavigator.js +158 -0
  298. package/es/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
  299. package/es/components/date-picker/DatePickerContext.d.ts +3 -0
  300. package/es/components/date-picker/DatePickerContext.js.map +1 -1
  301. package/es/components/date-picker/DatePickerDocs.js +6 -1
  302. package/es/components/date-picker/DatePickerDocs.js.map +1 -1
  303. package/es/components/date-picker/DatePickerFooter.js +20 -17
  304. package/es/components/date-picker/DatePickerFooter.js.map +1 -1
  305. package/es/components/date-picker/DatePickerProvider.js +7 -0
  306. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  307. package/es/components/date-picker/DatePickerRange.js +2 -27
  308. package/es/components/date-picker/DatePickerRange.js.map +1 -1
  309. package/es/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
  310. package/es/components/date-picker/hooks/useSubmittedDates.js +14 -0
  311. package/es/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
  312. package/es/components/date-picker/style/dnb-date-picker.css +1 -1
  313. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  314. package/es/components/date-picker/style/dnb-date-picker.scss +1 -1
  315. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +17 -0
  316. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  317. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +19 -0
  318. package/es/components/drawer/Drawer.js +1 -0
  319. package/es/components/drawer/Drawer.js.map +1 -1
  320. package/es/components/dropdown/Dropdown.js +6 -4
  321. package/es/components/dropdown/Dropdown.js.map +1 -1
  322. package/es/components/dropdown/DropdownDocs.d.ts +179 -3
  323. package/es/components/dropdown/DropdownDocs.js.map +1 -1
  324. package/es/components/heading/HeadingHelpers.js +9 -5
  325. package/es/components/heading/HeadingHelpers.js.map +1 -1
  326. package/es/components/icon/Icon.d.ts +2 -2
  327. package/es/components/input-masked/InputMaskedDocs.js +1 -1
  328. package/es/components/input-masked/InputMaskedDocs.js.map +1 -1
  329. package/es/components/input-masked/InputMaskedHooks.d.ts +1 -0
  330. package/es/components/input-masked/InputMaskedHooks.js +39 -7
  331. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  332. package/es/components/input-masked/InputMaskedUtils.js +6 -5
  333. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  334. package/es/components/number-format/NumberUtils.js +5 -4
  335. package/es/components/number-format/NumberUtils.js.map +1 -1
  336. package/es/components/switch/SwitchDocs.js +2 -2
  337. package/es/components/switch/SwitchDocs.js.map +1 -1
  338. package/es/components/toggle-button/ToggleButton.js +1 -1
  339. package/es/components/toggle-button/ToggleButton.js.map +1 -1
  340. package/es/components/upload/UploadStatus.js +1 -0
  341. package/es/components/upload/UploadStatus.js.map +1 -1
  342. package/es/extensions/forms/DataContext/Context.d.ts +1 -1
  343. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  344. package/es/extensions/forms/DataContext/Provider/Provider.js +9 -0
  345. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  346. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -0
  347. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  348. package/es/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
  349. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  350. package/es/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
  351. package/es/extensions/forms/Field/Boolean/BooleanDocs.js +7 -0
  352. package/es/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  353. package/es/extensions/forms/Field/Date/Date.d.ts +1 -1
  354. package/es/extensions/forms/Field/Date/Date.js +1 -1
  355. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  356. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  357. package/es/extensions/forms/Field/Number/NumberDocs.js +1 -1
  358. package/es/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  359. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +3 -0
  360. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  361. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  362. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +3 -3
  363. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  364. package/es/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +3 -3
  365. package/es/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
  366. package/es/extensions/forms/Field/Selection/Selection.d.ts +2 -0
  367. package/es/extensions/forms/Field/Selection/Selection.js +9 -8
  368. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  369. package/es/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
  370. package/es/extensions/forms/Field/Toggle/Toggle.js +38 -12
  371. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  372. package/es/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
  373. package/es/extensions/forms/Field/Toggle/ToggleDocs.js +7 -0
  374. package/es/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  375. package/es/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
  376. package/es/extensions/forms/Form/Isolation/IsolatedContainer.js +53 -0
  377. package/es/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
  378. package/es/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
  379. package/es/extensions/forms/Form/Isolation/Isolation.js +40 -14
  380. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  381. package/es/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
  382. package/es/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
  383. package/es/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
  384. package/es/extensions/forms/Form/Isolation/IsolationContext.js +6 -0
  385. package/es/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
  386. package/es/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
  387. package/es/extensions/forms/Form/Isolation/IsolationDataReference.js +25 -0
  388. package/es/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
  389. package/es/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
  390. package/es/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  391. package/es/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
  392. package/es/extensions/forms/Form/Isolation/IsolationResetButton.js +99 -0
  393. package/es/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
  394. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
  395. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js +50 -0
  396. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
  397. package/es/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
  398. package/es/extensions/forms/Form/Isolation/useHandleStatus.js +48 -0
  399. package/es/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
  400. package/es/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +12 -10
  401. package/es/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
  402. package/es/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
  403. package/es/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
  404. package/es/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
  405. package/es/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  406. package/es/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
  407. package/es/extensions/forms/Iterate/EditContainer/index.js +1 -1
  408. package/es/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  409. package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
  410. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +16 -55
  411. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  412. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  413. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  414. package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -1
  415. package/es/extensions/forms/constants/locales/en-GB.js +3 -3
  416. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  417. package/es/extensions/forms/constants/locales/en-US.d.ts +1 -1
  418. package/es/extensions/forms/constants/locales/index.d.ts +2 -2
  419. package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -1
  420. package/es/extensions/forms/constants/locales/nb-NO.js +3 -3
  421. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  422. package/es/extensions/forms/constants/locales/sv-SE.d.ts +1 -1
  423. package/es/extensions/forms/constants/locales/sv-SE.js +3 -3
  424. package/es/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  425. package/es/extensions/forms/hooks/useDataContext.js +5 -3
  426. package/es/extensions/forms/hooks/useDataContext.js.map +1 -1
  427. package/es/extensions/forms/hooks/useSnapshot.js +18 -15
  428. package/es/extensions/forms/hooks/useSnapshot.js.map +1 -1
  429. package/es/fragments/drawer-list/DrawerList.d.ts +176 -224
  430. package/es/fragments/drawer-list/DrawerList.js +72 -173
  431. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  432. package/es/fragments/drawer-list/DrawerListContext.d.ts +27 -2
  433. package/es/fragments/drawer-list/DrawerListContext.js.map +1 -1
  434. package/es/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
  435. package/es/fragments/drawer-list/DrawerListDocs.js +2 -2
  436. package/es/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  437. package/es/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
  438. package/es/fragments/drawer-list/DrawerListHelpers.js +45 -54
  439. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  440. package/es/fragments/drawer-list/DrawerListItem.d.ts +30 -0
  441. package/es/fragments/drawer-list/DrawerListItem.js +90 -0
  442. package/es/fragments/drawer-list/DrawerListItem.js.map +1 -0
  443. package/es/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
  444. package/es/fragments/drawer-list/DrawerListPortal.js +88 -120
  445. package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  446. package/es/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
  447. package/es/fragments/drawer-list/DrawerListProvider.js +33 -19
  448. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  449. package/es/shared/Eufemia.d.ts +1 -1
  450. package/es/shared/Eufemia.js +2 -2
  451. package/es/shared/Eufemia.js.map +1 -1
  452. package/es/shared/component-helper.d.ts +45 -48
  453. package/es/shared/component-helper.js +20 -183
  454. package/es/shared/component-helper.js.map +1 -1
  455. package/es/shared/helpers/withCamelCaseProps.d.ts +4 -5
  456. package/es/shared/helpers/withCamelCaseProps.js +7 -2
  457. package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
  458. package/es/shared/legacy/component-helper-legacy.d.ts +19 -0
  459. package/es/shared/legacy/component-helper-legacy.js +180 -0
  460. package/es/shared/legacy/component-helper-legacy.js.map +1 -0
  461. package/es/shared/locales/en-GB.d.ts +1 -0
  462. package/es/shared/locales/en-GB.js +1 -0
  463. package/es/shared/locales/en-GB.js.map +1 -1
  464. package/es/shared/locales/en-US.js.map +1 -1
  465. package/es/shared/locales/index.d.ts +2 -0
  466. package/es/shared/locales/nb-NO.d.ts +1 -0
  467. package/es/shared/locales/nb-NO.js +2 -1
  468. package/es/shared/locales/nb-NO.js.map +1 -1
  469. package/es/shared/locales/sv-SE.d.ts +1 -0
  470. package/es/shared/locales/sv-SE.js +1 -0
  471. package/es/shared/locales/sv-SE.js.map +1 -1
  472. package/es/style/core/scopes.scss +1 -1
  473. package/es/style/dnb-ui-basis.css +1 -1
  474. package/es/style/dnb-ui-basis.min.css +1 -1
  475. package/es/style/dnb-ui-body.css +1 -1
  476. package/es/style/dnb-ui-body.min.css +1 -1
  477. package/es/style/dnb-ui-components.css +2 -1
  478. package/es/style/dnb-ui-components.min.css +1 -1
  479. package/es/style/dnb-ui-core.css +1 -1
  480. package/es/style/dnb-ui-core.min.css +1 -1
  481. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +19 -1
  482. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  483. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +19 -1
  484. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  485. package/es/style/themes/theme-ui/ui-theme-components.css +19 -1
  486. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  487. package/esm/dnb-ui-basis.min.mjs +1 -1
  488. package/esm/dnb-ui-components.min.mjs +1 -1
  489. package/esm/dnb-ui-elements.min.mjs +1 -1
  490. package/esm/dnb-ui-extensions.min.mjs +2 -2
  491. package/esm/dnb-ui-lib.min.mjs +1 -1
  492. package/extensions/forms/DataContext/Context.d.ts +1 -1
  493. package/extensions/forms/DataContext/Context.js.map +1 -1
  494. package/extensions/forms/DataContext/Provider/Provider.js +9 -0
  495. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  496. package/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -0
  497. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  498. package/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
  499. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  500. package/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
  501. package/extensions/forms/Field/Boolean/BooleanDocs.js +7 -0
  502. package/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  503. package/extensions/forms/Field/Date/Date.d.ts +1 -1
  504. package/extensions/forms/Field/Date/Date.js +1 -1
  505. package/extensions/forms/Field/Date/Date.js.map +1 -1
  506. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  507. package/extensions/forms/Field/Number/NumberDocs.js +1 -1
  508. package/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  509. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +3 -0
  510. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  511. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  512. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +3 -3
  513. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  514. package/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +3 -3
  515. package/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
  516. package/extensions/forms/Field/Selection/Selection.d.ts +2 -0
  517. package/extensions/forms/Field/Selection/Selection.js +10 -9
  518. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  519. package/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
  520. package/extensions/forms/Field/Toggle/Toggle.js +40 -15
  521. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  522. package/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
  523. package/extensions/forms/Field/Toggle/ToggleDocs.js +7 -0
  524. package/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  525. package/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
  526. package/extensions/forms/Form/Isolation/IsolatedContainer.js +54 -0
  527. package/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
  528. package/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
  529. package/extensions/forms/Form/Isolation/Isolation.js +40 -15
  530. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  531. package/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
  532. package/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
  533. package/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
  534. package/extensions/forms/Form/Isolation/IsolationContext.js +6 -0
  535. package/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
  536. package/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
  537. package/extensions/forms/Form/Isolation/IsolationDataReference.js +25 -0
  538. package/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
  539. package/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
  540. package/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  541. package/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
  542. package/extensions/forms/Form/Isolation/IsolationResetButton.js +100 -0
  543. package/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
  544. package/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
  545. package/extensions/forms/Form/Isolation/useDataContextSnapshot.js +52 -0
  546. package/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
  547. package/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
  548. package/extensions/forms/Form/Isolation/useHandleStatus.js +51 -0
  549. package/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
  550. package/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +12 -10
  551. package/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
  552. package/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
  553. package/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
  554. package/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
  555. package/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  556. package/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
  557. package/extensions/forms/Iterate/EditContainer/index.js +1 -1
  558. package/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  559. package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
  560. package/extensions/forms/Iterate/PushContainer/PushContainer.js +16 -57
  561. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  562. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  563. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  564. package/extensions/forms/constants/locales/en-GB.d.ts +1 -1
  565. package/extensions/forms/constants/locales/en-GB.js +3 -3
  566. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  567. package/extensions/forms/constants/locales/en-US.d.ts +1 -1
  568. package/extensions/forms/constants/locales/index.d.ts +2 -2
  569. package/extensions/forms/constants/locales/nb-NO.d.ts +1 -1
  570. package/extensions/forms/constants/locales/nb-NO.js +3 -3
  571. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  572. package/extensions/forms/constants/locales/sv-SE.d.ts +1 -1
  573. package/extensions/forms/constants/locales/sv-SE.js +3 -3
  574. package/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  575. package/extensions/forms/hooks/useDataContext.js +5 -3
  576. package/extensions/forms/hooks/useDataContext.js.map +1 -1
  577. package/extensions/forms/hooks/useSnapshot.js +18 -15
  578. package/extensions/forms/hooks/useSnapshot.js.map +1 -1
  579. package/fragments/drawer-list/DrawerList.d.ts +176 -224
  580. package/fragments/drawer-list/DrawerList.js +71 -175
  581. package/fragments/drawer-list/DrawerList.js.map +1 -1
  582. package/fragments/drawer-list/DrawerListContext.d.ts +27 -2
  583. package/fragments/drawer-list/DrawerListContext.js.map +1 -1
  584. package/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
  585. package/fragments/drawer-list/DrawerListDocs.js +2 -2
  586. package/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  587. package/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
  588. package/fragments/drawer-list/DrawerListHelpers.js +45 -53
  589. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  590. package/fragments/drawer-list/DrawerListItem.d.ts +30 -0
  591. package/fragments/drawer-list/DrawerListItem.js +91 -0
  592. package/fragments/drawer-list/DrawerListItem.js.map +1 -0
  593. package/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
  594. package/fragments/drawer-list/DrawerListPortal.js +91 -121
  595. package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  596. package/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
  597. package/fragments/drawer-list/DrawerListProvider.js +12 -19
  598. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  599. package/package.json +1 -1
  600. package/shared/Eufemia.d.ts +1 -1
  601. package/shared/Eufemia.js +2 -2
  602. package/shared/Eufemia.js.map +1 -1
  603. package/shared/component-helper.d.ts +45 -48
  604. package/shared/component-helper.js +23 -189
  605. package/shared/component-helper.js.map +1 -1
  606. package/shared/helpers/withCamelCaseProps.d.ts +4 -5
  607. package/shared/helpers/withCamelCaseProps.js +7 -2
  608. package/shared/helpers/withCamelCaseProps.js.map +1 -1
  609. package/shared/legacy/component-helper-legacy.d.ts +19 -0
  610. package/shared/legacy/component-helper-legacy.js +185 -0
  611. package/shared/legacy/component-helper-legacy.js.map +1 -0
  612. package/shared/locales/en-GB.d.ts +1 -0
  613. package/shared/locales/en-GB.js +1 -0
  614. package/shared/locales/en-GB.js.map +1 -1
  615. package/shared/locales/en-US.js.map +1 -1
  616. package/shared/locales/index.d.ts +2 -0
  617. package/shared/locales/nb-NO.d.ts +1 -0
  618. package/shared/locales/nb-NO.js +2 -1
  619. package/shared/locales/nb-NO.js.map +1 -1
  620. package/shared/locales/sv-SE.d.ts +1 -0
  621. package/shared/locales/sv-SE.js +1 -0
  622. package/shared/locales/sv-SE.js.map +1 -1
  623. package/style/core/scopes.scss +1 -1
  624. package/style/dnb-ui-basis.css +1 -1
  625. package/style/dnb-ui-basis.min.css +1 -1
  626. package/style/dnb-ui-body.css +1 -1
  627. package/style/dnb-ui-body.min.css +1 -1
  628. package/style/dnb-ui-components.css +2 -1
  629. package/style/dnb-ui-components.min.css +1 -1
  630. package/style/dnb-ui-core.css +1 -1
  631. package/style/dnb-ui-core.min.css +1 -1
  632. package/style/themes/theme-eiendom/eiendom-theme-components.css +19 -1
  633. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  634. package/style/themes/theme-sbanken/sbanken-theme-components.css +19 -1
  635. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  636. package/style/themes/theme-ui/ui-theme-components.css +19 -1
  637. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  638. package/umd/dnb-ui-basis.min.js +1 -1
  639. package/umd/dnb-ui-components.min.js +1 -1
  640. package/umd/dnb-ui-elements.min.js +1 -1
  641. package/umd/dnb-ui-extensions.min.js +3 -3
  642. package/umd/dnb-ui-lib.min.js +1 -1
  643. package/cjs/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
  644. package/es/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
  645. package/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
  646. /package/cjs/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
  647. /package/es/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
  648. /package/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
@@ -1,31 +1,33 @@
1
1
  "use client";
2
2
 
3
- import { useContext, useEffect, useMemo, useRef } from 'react';
4
- import DataContext from '../../DataContext/Context';
3
+ import { useContext, useMemo } from 'react';
5
4
  import pointer from '../../utils/json-pointer';
6
- import structuredClone from '@ungap/structured-clone';
5
+ import DataContext from '../../DataContext/Context';
6
+ import useDataContextSnapshot from './useDataContextSnapshot';
7
7
  export default function useHasContentChanged() {
8
8
  const {
9
9
  internalDataRef
10
10
  } = useContext(DataContext);
11
- const snapshotRef = useRef();
12
- useEffect(() => {
13
- snapshotRef.current = structuredClone(internalDataRef === null || internalDataRef === void 0 ? void 0 : internalDataRef.current);
14
- }, [internalDataRef]);
11
+ const {
12
+ snapshotRef
13
+ } = useDataContextSnapshot({
14
+ enabled: true
15
+ });
15
16
  const data = internalDataRef === null || internalDataRef === void 0 ? void 0 : internalDataRef.current;
17
+ const snapshot = snapshotRef === null || snapshotRef === void 0 ? void 0 : snapshotRef.current;
16
18
  const hasContentChanged = useMemo(() => {
17
- if (data === undefined) {
19
+ if (!data || !snapshot) {
18
20
  return undefined;
19
21
  }
20
22
  let hasChanged = false;
21
23
  pointer.walk(data, (value, path) => {
22
- if (pointer.has(snapshotRef.current, path) && pointer.get(snapshotRef.current, path) !== value) {
24
+ if (pointer.has(snapshot, path) && pointer.get(snapshot, path) !== value) {
23
25
  hasChanged = true;
24
26
  return false;
25
27
  }
26
28
  });
27
29
  return hasChanged;
28
- }, [data]);
30
+ }, [data, snapshot]);
29
31
  return {
30
32
  hasContentChanged
31
33
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useHasContentChanged.js","names":["useContext","useMemo","pointer","DataContext","useDataContextSnapshot","useHasContentChanged","internalDataRef","snapshotRef","enabled","data","current","snapshot","hasContentChanged","undefined","hasChanged","walk","value","path","has","get"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useHasContentChanged.ts"],"sourcesContent":["import { useContext, useMemo } from 'react'\nimport pointer from '../../utils/json-pointer'\nimport DataContext from '../../DataContext/Context'\nimport useDataContextSnapshot from './useDataContextSnapshot'\n\nexport default function useHasContentChanged() {\n const { internalDataRef } = useContext(DataContext)\n const { snapshotRef } = useDataContextSnapshot({ enabled: true })\n\n const data = internalDataRef?.current\n const snapshot = snapshotRef?.current // To support a custom data reference, we need to have a snapshot in the hook deps.\n const hasContentChanged = useMemo(() => {\n if (!data || !snapshot) {\n return undefined\n }\n\n let hasChanged = false\n\n pointer.walk(data, (value, path) => {\n if (\n pointer.has(snapshot, path) &&\n pointer.get(snapshot, path) !== value\n ) {\n hasChanged = true\n return false\n }\n })\n\n return hasChanged\n }, [data, snapshot])\n\n return { hasContentChanged }\n}\n"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAC3C,OAAOC,OAAO,MAAM,0BAA0B;AAC9C,OAAOC,WAAW,MAAM,2BAA2B;AACnD,OAAOC,sBAAsB,MAAM,0BAA0B;AAE7D,eAAe,SAASC,oBAAoBA,CAAA,EAAG;EAC7C,MAAM;IAAEC;EAAgB,CAAC,GAAGN,UAAU,CAACG,WAAW,CAAC;EACnD,MAAM;IAAEI;EAAY,CAAC,GAAGH,sBAAsB,CAAC;IAAEI,OAAO,EAAE;EAAK,CAAC,CAAC;EAEjE,MAAMC,IAAI,GAAGH,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEI,OAAO;EACrC,MAAMC,QAAQ,GAAGJ,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEG,OAAO;EACrC,MAAME,iBAAiB,GAAGX,OAAO,CAAC,MAAM;IACtC,IAAI,CAACQ,IAAI,IAAI,CAACE,QAAQ,EAAE;MACtB,OAAOE,SAAS;IAClB;IAEA,IAAIC,UAAU,GAAG,KAAK;IAEtBZ,OAAO,CAACa,IAAI,CAACN,IAAI,EAAE,CAACO,KAAK,EAAEC,IAAI,KAAK;MAClC,IACEf,OAAO,CAACgB,GAAG,CAACP,QAAQ,EAAEM,IAAI,CAAC,IAC3Bf,OAAO,CAACiB,GAAG,CAACR,QAAQ,EAAEM,IAAI,CAAC,KAAKD,KAAK,EACrC;QACAF,UAAU,GAAG,IAAI;QACjB,OAAO,KAAK;MACd;IACF,CAAC,CAAC;IAEF,OAAOA,UAAU;EACnB,CAAC,EAAE,CAACL,IAAI,EAAEE,QAAQ,CAAC,CAAC;EAEpB,OAAO;IAAEC;EAAkB,CAAC;AAC9B","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- export type SnapshotId = string | number;
2
+ import { SharedStateId } from '../../../../shared/helpers/useSharedState';
3
+ export type SnapshotId = SharedStateId | number;
3
4
  export type SnapshotName = string;
4
5
  export type SnapshotProps = {
5
6
  name: SnapshotName;
@@ -1 +1 @@
1
- {"version":3,"file":"Snapshot.js","names":["React","useCallback","useContext","useEffect","useRef","SnapshotContext","DataContext","SnapshotProvider","props","name","children","snapshotsRef","mountedFieldsRef","current","Map","setMountedField","path","state","set","contextValue","createElement","Provider","value","_supportsSpacingProps","undefined"],"sources":["../../../../../../src/extensions/forms/Form/Snapshot/Snapshot.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useRef } from 'react'\nimport SnapshotContext, {\n SnapshotContextState,\n SnapshotMap,\n} from './SnapshotContext'\nimport DataContext from '../../DataContext/Context'\n\nexport type SnapshotId = string | number\nexport type SnapshotName = string\n\nexport type SnapshotProps = {\n name: SnapshotName\n children: React.ReactNode\n}\n\nfunction SnapshotProvider(props: SnapshotProps) {\n const { name, children } = props\n\n const { snapshotsRef } = useContext(DataContext) || {}\n const mountedFieldsRef: SnapshotMap = useRef()\n if (!mountedFieldsRef.current) {\n mountedFieldsRef.current = new Map()\n }\n\n const setMountedField: SnapshotContextState['setMountedField'] =\n useCallback((path, state) => {\n mountedFieldsRef.current.set(path, state)\n }, [])\n\n useEffect(() => {\n if (snapshotsRef) {\n snapshotsRef.current.set(name, mountedFieldsRef.current)\n }\n }, [snapshotsRef, name])\n\n const contextValue = { name, setMountedField }\n\n return (\n <SnapshotContext.Provider value={contextValue}>\n {children}\n </SnapshotContext.Provider>\n )\n}\n\nSnapshotProvider._supportsSpacingProps = undefined\n\nexport default SnapshotProvider\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACzE,OAAOC,eAAe,MAGf,mBAAmB;AAC1B,OAAOC,WAAW,MAAM,2BAA2B;AAUnD,SAASC,gBAAgBA,CAACC,KAAoB,EAAE;EAC9C,MAAM;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAGF,KAAK;EAEhC,MAAM;IAAEG;EAAa,CAAC,GAAGT,UAAU,CAACI,WAAW,CAAC,IAAI,CAAC,CAAC;EACtD,MAAMM,gBAA6B,GAAGR,MAAM,CAAC,CAAC;EAC9C,IAAI,CAACQ,gBAAgB,CAACC,OAAO,EAAE;IAC7BD,gBAAgB,CAACC,OAAO,GAAG,IAAIC,GAAG,CAAC,CAAC;EACtC;EAEA,MAAMC,eAAwD,GAC5Dd,WAAW,CAAC,CAACe,IAAI,EAAEC,KAAK,KAAK;IAC3BL,gBAAgB,CAACC,OAAO,CAACK,GAAG,CAACF,IAAI,EAAEC,KAAK,CAAC;EAC3C,CAAC,EAAE,EAAE,CAAC;EAERd,SAAS,CAAC,MAAM;IACd,IAAIQ,YAAY,EAAE;MAChBA,YAAY,CAACE,OAAO,CAACK,GAAG,CAACT,IAAI,EAAEG,gBAAgB,CAACC,OAAO,CAAC;IAC1D;EACF,CAAC,EAAE,CAACF,YAAY,EAAEF,IAAI,CAAC,CAAC;EAExB,MAAMU,YAAY,GAAG;IAAEV,IAAI;IAAEM;EAAgB,CAAC;EAE9C,OACEf,KAAA,CAAAoB,aAAA,CAACf,eAAe,CAACgB,QAAQ;IAACC,KAAK,EAAEH;EAAa,GAC3CT,QACuB,CAAC;AAE/B;AAEAH,gBAAgB,CAACgB,qBAAqB,GAAGC,SAAS;AAElD,eAAejB,gBAAgB","ignoreList":[]}
1
+ {"version":3,"file":"Snapshot.js","names":["React","useCallback","useContext","useEffect","useRef","SnapshotContext","DataContext","SnapshotProvider","props","name","children","snapshotsRef","mountedFieldsRef","current","Map","setMountedField","path","state","set","contextValue","createElement","Provider","value","_supportsSpacingProps","undefined"],"sources":["../../../../../../src/extensions/forms/Form/Snapshot/Snapshot.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useRef } from 'react'\nimport SnapshotContext, {\n SnapshotContextState,\n SnapshotMap,\n} from './SnapshotContext'\nimport DataContext from '../../DataContext/Context'\nimport { SharedStateId } from '../../../../shared/helpers/useSharedState'\n\nexport type SnapshotId = SharedStateId | number\nexport type SnapshotName = string\n\nexport type SnapshotProps = {\n name: SnapshotName\n children: React.ReactNode\n}\n\nfunction SnapshotProvider(props: SnapshotProps) {\n const { name, children } = props\n\n const { snapshotsRef } = useContext(DataContext) || {}\n const mountedFieldsRef: SnapshotMap = useRef()\n if (!mountedFieldsRef.current) {\n mountedFieldsRef.current = new Map()\n }\n\n const setMountedField: SnapshotContextState['setMountedField'] =\n useCallback((path, state) => {\n mountedFieldsRef.current.set(path, state)\n }, [])\n\n useEffect(() => {\n if (snapshotsRef) {\n snapshotsRef.current.set(name, mountedFieldsRef.current)\n }\n }, [snapshotsRef, name])\n\n const contextValue = { name, setMountedField }\n\n return (\n <SnapshotContext.Provider value={contextValue}>\n {children}\n </SnapshotContext.Provider>\n )\n}\n\nSnapshotProvider._supportsSpacingProps = undefined\n\nexport default SnapshotProvider\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACzE,OAAOC,eAAe,MAGf,mBAAmB;AAC1B,OAAOC,WAAW,MAAM,2BAA2B;AAWnD,SAASC,gBAAgBA,CAACC,KAAoB,EAAE;EAC9C,MAAM;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAGF,KAAK;EAEhC,MAAM;IAAEG;EAAa,CAAC,GAAGT,UAAU,CAACI,WAAW,CAAC,IAAI,CAAC,CAAC;EACtD,MAAMM,gBAA6B,GAAGR,MAAM,CAAC,CAAC;EAC9C,IAAI,CAACQ,gBAAgB,CAACC,OAAO,EAAE;IAC7BD,gBAAgB,CAACC,OAAO,GAAG,IAAIC,GAAG,CAAC,CAAC;EACtC;EAEA,MAAMC,eAAwD,GAC5Dd,WAAW,CAAC,CAACe,IAAI,EAAEC,KAAK,KAAK;IAC3BL,gBAAgB,CAACC,OAAO,CAACK,GAAG,CAACF,IAAI,EAAEC,KAAK,CAAC;EAC3C,CAAC,EAAE,EAAE,CAAC;EAERd,SAAS,CAAC,MAAM;IACd,IAAIQ,YAAY,EAAE;MAChBA,YAAY,CAACE,OAAO,CAACK,GAAG,CAACT,IAAI,EAAEG,gBAAgB,CAACC,OAAO,CAAC;IAC1D;EACF,CAAC,EAAE,CAACF,YAAY,EAAEF,IAAI,CAAC,CAAC;EAExB,MAAMU,YAAY,GAAG;IAAEV,IAAI;IAAEM;EAAgB,CAAC;EAE9C,OACEf,KAAA,CAAAoB,aAAA,CAACf,eAAe,CAACgB,QAAQ;IAACC,KAAK,EAAEH;EAAa,GAC3CT,QACuB,CAAC;AAE/B;AAEAH,gBAAgB,CAACgB,qBAAqB,GAAGC,SAAS;AAElD,eAAejB,gBAAgB","ignoreList":[]}
@@ -14,7 +14,7 @@ import IterateItemContext from '../IterateItemContext';
14
14
  import ToolbarContext from '../Toolbar/ToolbarContext';
15
15
  import FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext';
16
16
  import { reset } from '../../../../icons';
17
- import useHasContentChanged from './useHasContentChanged';
17
+ import useHasContentChanged from '../../Form/Isolation/useHasContentChanged';
18
18
  import { omitDataValueReadWriteProps } from '../../types';
19
19
  export default function ResetButton(props) {
20
20
  const {
@@ -1 +1 @@
1
- {"version":3,"file":"ResetButton.js","names":["React","useCallback","useContext","classnames","Button","Dialog","useTranslation","IterateItemContext","ToolbarContext","FieldBoundaryContext","reset","useHasContentChanged","omitDataValueReadWriteProps","ResetButton","props","text","children","onClick","className","hidden","showConfirmDialog","restProps","_objectWithoutProperties","_excluded","restoreOriginalValue","setShowBoundaryErrors","setShowError","hasContentChanged","buttonProps","resetButton","IterateEditContainer","confirmResetText","textContent","buttonWrapperRef","useRef","handleClick","_ref","_buttonWrapperRef$cur","close","event","current","focus","triggerAttributes","_objectSpread","variant","icon","icon_position","disabled","createElement","tabIndex","ref","title","onConfirm","_extends","on_click"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/ResetButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button, Dialog } from '../../../../components'\nimport useTranslation from '../../hooks/useTranslation'\nimport IterateItemContext from '../IterateItemContext'\nimport ToolbarContext from '../Toolbar/ToolbarContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { reset } from '../../../../icons'\nimport { ButtonProps } from '../../../../components/Button'\nimport useHasContentChanged from './useHasContentChanged'\nimport { omitDataValueReadWriteProps } from '../../types'\n\ntype Props = ButtonProps & {\n showConfirmDialog?: boolean\n}\n\nexport default function ResetButton(props: Props) {\n const {\n text,\n children,\n onClick,\n className,\n hidden,\n showConfirmDialog = true,\n ...restProps\n } = props\n const { restoreOriginalValue } = useContext(IterateItemContext) || {}\n const { setShowBoundaryErrors } = useContext(FieldBoundaryContext) || {}\n const { setShowError } = useContext(ToolbarContext) || {}\n const { hasContentChanged } = useHasContentChanged()\n\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { resetButton } = useTranslation().IterateEditContainer\n const { confirmResetText } = useTranslation().IterateEditContainer\n const textContent = text || children || resetButton\n\n const buttonWrapperRef = React.useRef<HTMLButtonElement>(null)\n const handleClick = useCallback(\n ({ close, event }) => {\n close?.()\n onClick?.(event)\n restoreOriginalValue?.()\n setShowError(false)\n setShowBoundaryErrors?.(false)\n buttonWrapperRef.current?.focus()\n },\n [onClick, restoreOriginalValue, setShowBoundaryErrors, setShowError]\n )\n\n if (hidden) {\n return null\n }\n\n const triggerAttributes: ButtonProps = {\n className: classnames('dnb-forms-iterate__reset-button', className),\n text: textContent,\n variant: textContent ? 'tertiary' : 'secondary',\n icon: reset,\n icon_position: 'left',\n disabled:\n typeof hasContentChanged === 'boolean' ? !hasContentChanged : false,\n ...buttonProps,\n }\n\n return (\n <span tabIndex={-1} ref={buttonWrapperRef} className=\"dnb-no-focus\">\n {showConfirmDialog ? (\n <Dialog\n variant=\"confirmation\"\n title={confirmResetText}\n triggerAttributes={triggerAttributes}\n onConfirm={handleClick}\n />\n ) : (\n <Button\n {...triggerAttributes}\n on_click={handleClick}\n {...buttonProps}\n >\n {resetButton}\n </Button>\n )}\n </span>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ResetButton.js","names":["React","useCallback","useContext","classnames","Button","Dialog","useTranslation","IterateItemContext","ToolbarContext","FieldBoundaryContext","reset","useHasContentChanged","omitDataValueReadWriteProps","ResetButton","props","text","children","onClick","className","hidden","showConfirmDialog","restProps","_objectWithoutProperties","_excluded","restoreOriginalValue","setShowBoundaryErrors","setShowError","hasContentChanged","buttonProps","resetButton","IterateEditContainer","confirmResetText","textContent","buttonWrapperRef","useRef","handleClick","_ref","_buttonWrapperRef$cur","close","event","current","focus","triggerAttributes","_objectSpread","variant","icon","icon_position","disabled","createElement","tabIndex","ref","title","onConfirm","_extends","on_click"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/ResetButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button, Dialog } from '../../../../components'\nimport useTranslation from '../../hooks/useTranslation'\nimport IterateItemContext from '../IterateItemContext'\nimport ToolbarContext from '../Toolbar/ToolbarContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { reset } from '../../../../icons'\nimport { ButtonProps } from '../../../../components/Button'\nimport useHasContentChanged from '../../Form/Isolation/useHasContentChanged'\nimport { omitDataValueReadWriteProps } from '../../types'\n\ntype Props = ButtonProps & {\n showConfirmDialog?: boolean\n}\n\nexport default function ResetButton(props: Props) {\n const {\n text,\n children,\n onClick,\n className,\n hidden,\n showConfirmDialog = true,\n ...restProps\n } = props\n const { restoreOriginalValue } = useContext(IterateItemContext) || {}\n const { setShowBoundaryErrors } = useContext(FieldBoundaryContext) || {}\n const { setShowError } = useContext(ToolbarContext) || {}\n const { hasContentChanged } = useHasContentChanged()\n\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { resetButton } = useTranslation().IterateEditContainer\n const { confirmResetText } = useTranslation().IterateEditContainer\n const textContent = text || children || resetButton\n\n const buttonWrapperRef = React.useRef<HTMLButtonElement>(null)\n const handleClick = useCallback(\n ({ close, event }) => {\n close?.()\n onClick?.(event)\n restoreOriginalValue?.()\n setShowError(false)\n setShowBoundaryErrors?.(false)\n buttonWrapperRef.current?.focus()\n },\n [onClick, restoreOriginalValue, setShowBoundaryErrors, setShowError]\n )\n\n if (hidden) {\n return null\n }\n\n const triggerAttributes: ButtonProps = {\n className: classnames('dnb-forms-iterate__reset-button', className),\n text: textContent,\n variant: textContent ? 'tertiary' : 'secondary',\n icon: reset,\n icon_position: 'left',\n disabled:\n typeof hasContentChanged === 'boolean' ? !hasContentChanged : false,\n ...buttonProps,\n }\n\n return (\n <span tabIndex={-1} ref={buttonWrapperRef} className=\"dnb-no-focus\">\n {showConfirmDialog ? (\n <Dialog\n variant=\"confirmation\"\n title={confirmResetText}\n triggerAttributes={triggerAttributes}\n onConfirm={handleClick}\n />\n ) : (\n <Button\n {...triggerAttributes}\n on_click={handleClick}\n {...buttonProps}\n >\n {resetButton}\n </Button>\n )}\n </span>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,4 +3,4 @@ export * from './EditContainer';
3
3
  export { default as DoneButton } from './DoneButton';
4
4
  export { default as CancelButton } from './CancelButton';
5
5
  export { default as ResetButton } from './ResetButton';
6
- export { default as useHasContentChanged } from './useHasContentChanged';
6
+ export { default as useHasContentChanged } from '../../Form/Isolation/useHasContentChanged';
@@ -3,5 +3,5 @@ export * from './EditContainer';
3
3
  export { default as DoneButton } from './DoneButton';
4
4
  export { default as CancelButton } from './CancelButton';
5
5
  export { default as ResetButton } from './ResetButton';
6
- export { default as useHasContentChanged } from './useHasContentChanged';
6
+ export { default as useHasContentChanged } from '../../Form/Isolation/useHasContentChanged';
7
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","DoneButton","CancelButton","ResetButton","useHasContentChanged"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/index.ts"],"sourcesContent":["export { default } from './EditContainer'\nexport * from './EditContainer'\nexport { default as DoneButton } from './DoneButton'\nexport { default as CancelButton } from './CancelButton'\nexport { default as ResetButton } from './ResetButton'\nexport { default as useHasContentChanged } from './useHasContentChanged'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,iBAAiB;AACzC,cAAc,iBAAiB;AAC/B,SAASA,OAAO,IAAIC,UAAU,QAAQ,cAAc;AACpD,SAASD,OAAO,IAAIE,YAAY,QAAQ,gBAAgB;AACxD,SAASF,OAAO,IAAIG,WAAW,QAAQ,eAAe;AACtD,SAASH,OAAO,IAAII,oBAAoB,QAAQ,wBAAwB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["default","DoneButton","CancelButton","ResetButton","useHasContentChanged"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/index.ts"],"sourcesContent":["export { default } from './EditContainer'\nexport * from './EditContainer'\nexport { default as DoneButton } from './DoneButton'\nexport { default as CancelButton } from './CancelButton'\nexport { default as ResetButton } from './ResetButton'\nexport { default as useHasContentChanged } from '../../Form/Isolation/useHasContentChanged'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,iBAAiB;AACzC,cAAc,iBAAiB;AAC/B,SAASA,OAAO,IAAIC,UAAU,QAAQ,cAAc;AACpD,SAASD,OAAO,IAAIE,YAAY,QAAQ,gBAAgB;AACxD,SAASF,OAAO,IAAIG,WAAW,QAAQ,eAAe;AACtD,SAASH,OAAO,IAAII,oBAAoB,QAAQ,2CAA2C","ignoreList":[]}
@@ -59,7 +59,14 @@ export type Props = (OnlyPathRequired | OnlyItemPathRequired) & {
59
59
  /**
60
60
  * If the container should be committed before the form is submitted.
61
61
  */
62
+ /**
63
+ * @deprecated – Replaced with preventUncommittedChanges, requireCommit will be removed in v11.
64
+ */
62
65
  requireCommit?: boolean;
66
+ /**
67
+ * Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.
68
+ */
69
+ preventUncommittedChanges?: boolean;
63
70
  /**
64
71
  * Show a button to clear the PushContainer data.
65
72
  */
@@ -3,21 +3,21 @@
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
5
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
6
- const _excluded = ["data", "defaultData", "isolatedData", "bubbleValidation", "requireCommit", "showResetButton", "path", "itemPath", "insertAt", "title", "required", "children", "openButton", "showOpenButtonWhen", "onCommit"],
7
- _excluded2 = ["title", "openButton", "showOpenButton", "showResetButton", "switchContainerModeRef", "cancelHandler", "containerModeRef", "rerenderPushContainer", "requireCommit", "outerContext", "children"];
6
+ const _excluded = ["data", "defaultData", "isolatedData", "bubbleValidation", "preventUncommittedChanges", "requireCommit", "showResetButton", "path", "itemPath", "insertAt", "title", "required", "children", "openButton", "showOpenButtonWhen", "onCommit"],
7
+ _excluded2 = ["title", "openButton", "showOpenButton", "showResetButton", "switchContainerModeRef", "cancelHandler", "containerModeRef", "rerenderPushContainer", "preventUncommittedChanges", "outerContext", "children"];
8
8
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
9
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
10
  import "core-js/modules/web.dom-collections.iterator.js";
11
- import React, { useCallback, useContext, useEffect, useMemo, useReducer, useRef, useState } from 'react';
11
+ import React, { useCallback, useContext, useEffect, useMemo, useReducer, useRef } from 'react';
12
12
  import classnames from 'classnames';
13
13
  import Isolation from '../../Form/Isolation';
14
- import useReportError from '../../Form/Isolation/useReportError';
14
+ import useHandleStatus from '../../Form/Isolation/useHandleStatus';
15
15
  import PushContainerContext from './PushContainerContext';
16
16
  import IterateItemContext from '../IterateItemContext';
17
17
  import DataContext from '../../DataContext/Context';
18
18
  import VisibilityContext from '../../Form/Visibility/VisibilityContext';
19
19
  import useDataValue from '../../hooks/useDataValue';
20
- import EditContainer, { DoneButton, CancelButton, ResetButton, useHasContentChanged } from '../EditContainer';
20
+ import EditContainer, { DoneButton, CancelButton, ResetButton } from '../EditContainer';
21
21
  import IterateArray from '../Array';
22
22
  import OpenButton from './OpenButton';
23
23
  import { Flex, FormStatus, HeightAnimation } from '../../../../components';
@@ -38,6 +38,7 @@ function PushContainer(props) {
38
38
  defaultData: defaultDataProp,
39
39
  isolatedData,
40
40
  bubbleValidation,
41
+ preventUncommittedChanges = props === null || props === void 0 ? void 0 : props.requireCommit,
41
42
  requireCommit,
42
43
  showResetButton,
43
44
  path,
@@ -156,7 +157,7 @@ function PushContainer(props) {
156
157
  cancelHandler: cancelHandler,
157
158
  containerModeRef: containerModeRef,
158
159
  rerenderPushContainer: forceUpdate,
159
- requireCommit: requireCommit,
160
+ preventUncommittedChanges: preventUncommittedChanges,
160
161
  showResetButton: showResetButton,
161
162
  outerContext: outerContext
162
163
  }, rest), children))));
@@ -172,7 +173,7 @@ function NewContainer(_ref3) {
172
173
  cancelHandler,
173
174
  containerModeRef,
174
175
  rerenderPushContainer,
175
- requireCommit,
176
+ preventUncommittedChanges,
176
177
  outerContext,
177
178
  children
178
179
  } = _ref3,
@@ -187,16 +188,17 @@ function NewContainer(_ref3) {
187
188
  showStatus: showCommitStatus
188
189
  } = useHandleStatus({
189
190
  outerContext,
190
- requireCommit
191
+ preventUncommittedChanges,
192
+ error: pushContainerError
191
193
  });
192
- const {
193
- requireCommitText
194
- } = useTranslation().IteratePushContainer;
195
194
  useEffect(() => {
196
195
  rerenderPushContainer();
197
196
  }, [containerMode, rerenderPushContainer]);
198
197
  switchContainerModeRef.current = switchContainerMode;
199
198
  const isVisible = Boolean(!showOpenButton || containerMode === 'edit');
199
+ const {
200
+ preventUncommittedChangesText
201
+ } = useTranslation().Isolation;
200
202
  const {
201
203
  createButton
202
204
  } = useTranslation().IteratePushContainer;
@@ -218,12 +220,12 @@ function NewContainer(_ref3) {
218
220
  text: createButton
219
221
  })), showOpenButton && (_CancelButton || (_CancelButton = React.createElement(CancelButton, {
220
222
  onClick: cancelHandler
221
- }))), (requireCommit || showResetButton) && React.createElement(ResetButton, {
223
+ }))), (preventUncommittedChanges || showResetButton) && React.createElement(ResetButton, {
222
224
  hidden: !(showResetButton || showCommitStatus)
223
- })), requireCommit && showCommitStatus && (_FormStatus || (_FormStatus = React.createElement(FormStatus, {
225
+ })), preventUncommittedChanges && showCommitStatus && (_FormStatus || (_FormStatus = React.createElement(FormStatus, {
224
226
  no_animation: false,
225
227
  show: hasContentChanged
226
- }, requireCommitText))));
228
+ }, preventUncommittedChangesText))));
227
229
  }));
228
230
  return React.createElement(VisibilityContext.Provider, {
229
231
  value: {
@@ -240,49 +242,6 @@ function NewContainer(_ref3) {
240
242
  open: showOpenButton && containerMode === 'view'
241
243
  }, openButton));
242
244
  }
243
- function useHandleStatus(_ref4) {
244
- let {
245
- outerContext,
246
- requireCommit
247
- } = _ref4;
248
- const {
249
- hasContentChanged
250
- } = useHasContentChanged();
251
- useReportError(requireCommit && hasContentChanged ? pushContainerError : undefined, outerContext);
252
- const showStatus = useShowStatus({
253
- outerContext,
254
- hasContentChanged,
255
- requireCommit
256
- });
257
- return {
258
- hasContentChanged,
259
- showStatus
260
- };
261
- }
262
- function useShowStatus(_ref5) {
263
- let {
264
- outerContext,
265
- hasContentChanged,
266
- requireCommit
267
- } = _ref5;
268
- const showAllErrors = outerContext === null || outerContext === void 0 ? void 0 : outerContext.showAllErrors;
269
- const [showStatus, setShowStatus] = useState(showAllErrors);
270
- const showRef = useRef(showAllErrors);
271
- useEffect(() => {
272
- if (!requireCommit) {
273
- return;
274
- }
275
- if (!hasContentChanged) {
276
- setShowStatus(false);
277
- } else {
278
- if (showRef.current !== showAllErrors) {
279
- setShowStatus(showAllErrors);
280
- }
281
- }
282
- showRef.current = showAllErrors;
283
- }, [hasContentChanged, requireCommit, showAllErrors]);
284
- return showStatus;
285
- }
286
245
  const pushContainerError = new Error('Iterate.PushContainer');
287
246
  PushContainer.OpenButton = OpenButton;
288
247
  PushContainer._supportsSpacingProps = true;
@@ -1 +1 @@
1
- {"version":3,"file":"PushContainer.js","names":["React","useCallback","useContext","useEffect","useMemo","useReducer","useRef","useState","classnames","Isolation","useReportError","PushContainerContext","IterateItemContext","DataContext","VisibilityContext","useDataValue","EditContainer","DoneButton","CancelButton","ResetButton","useHasContentChanged","IterateArray","OpenButton","Flex","FormStatus","HeightAnimation","useArrayLimit","useItemPath","useSwitchContainerMode","Toolbar","useTranslation","clearedData","structuredClone","PushContainer","props","forceUpdate","outerContext","data","outerData","required","requiredInherited","dataProp","defaultData","defaultDataProp","isolatedData","bubbleValidation","requireCommit","showResetButton","path","itemPath","insertAt","title","children","openButton","showOpenButtonWhen","onCommit","rest","_objectWithoutProperties","_excluded","absolutePath","commitHandleRef","switchContainerModeRef","containerModeRef","value","entries","moveValueToPath","getValueByPath","setNextContainerMode","hasReachedLimit","setShowStatus","cancelHandler","showOpenButton","newItemContextProps","switchContainerMode","current","_Object$freeze","_objectSpread","pushContainerItems","Object","freeze","isFrozen","assign","emptyData","_data$pushContainerIt","_ref","firstItem","createElement","transformOnCommit","_ref2","slice","options","clearData","preventCommit","_switchContainerModeR","call","Provider","containerMode","withoutFlex","NewContainer","_extends","rerenderPushContainer","_ref3","_DoneButton","_CancelButton","_FormStatus","_excluded2","hasContentChanged","showStatus","showCommitStatus","useHandleStatus","requireCommitText","IteratePushContainer","isVisible","Boolean","createButton","restoreOriginalValue","toolbar","Consumer","context","Horizontal","gap","text","onClick","hidden","no_animation","show","keepInDOM","open","className","_ref4","pushContainerError","undefined","useShowStatus","_ref5","showAllErrors","showRef","Error","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainer.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n} from 'react'\nimport classnames from 'classnames'\nimport Isolation from '../../Form/Isolation'\nimport useReportError from '../../Form/Isolation/useReportError'\nimport PushContainerContext from './PushContainerContext'\nimport IterateItemContext from '../IterateItemContext'\nimport DataContext, { ContextState } from '../../DataContext/Context'\nimport VisibilityContext from '../../Form/Visibility/VisibilityContext'\nimport useDataValue from '../../hooks/useDataValue'\nimport EditContainer, {\n DoneButton,\n CancelButton,\n ResetButton,\n AllProps as EditContainerProps,\n useHasContentChanged,\n} from '../EditContainer'\nimport IterateArray, { ContainerMode } from '../Array'\nimport OpenButton from './OpenButton'\nimport { Flex, FormStatus, HeightAnimation } from '../../../../components'\nimport { OnCommit, Path } from '../../types'\nimport { SpacingProps } from '../../../../shared/types'\nimport {\n useArrayLimit,\n useItemPath,\n useSwitchContainerMode,\n} from '../hooks'\nimport Toolbar from '../Toolbar'\nimport { useTranslation } from '../../hooks'\nimport { clearedData } from '../../DataContext/Provider'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So it's a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\ntype OnlyPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath?: Path\n}\n\ntype OnlyItemPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path?: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath: Path\n}\n\nexport type Props = (OnlyPathRequired | OnlyItemPathRequired) & {\n /**\n * The title of the container.\n */\n title?: React.ReactNode\n\n /**\n * If the fields inside the container are required.\n */\n required?: boolean\n\n /**\n * The index to insert the new item at.\n */\n insertAt?: number\n\n /**\n * The button to open container.\n */\n openButton?: React.ReactNode\n\n /**\n * Define when the \"open button\" should be shown.\n * Should be a function that returns a boolean.\n */\n showOpenButtonWhen?: (list: unknown[]) => boolean\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n data?: unknown | Record<string, unknown>\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n defaultData?: unknown | Record<string, unknown>\n\n /**\n * Provide additional data that will be put into the root of the isolated data context (parallel to \"/pushContainerItems/0\").\n */\n isolatedData?: Record<string, unknown>\n\n /**\n * Prevent the form from being submitted when there are fields with errors inside the PushContainer.\n */\n bubbleValidation?: boolean\n\n /**\n * If the container should be committed before the form is submitted.\n */\n requireCommit?: boolean\n\n /**\n * Show a button to clear the PushContainer data.\n */\n showResetButton?: boolean\n\n /**\n * A custom toolbar to be shown below the container.\n */\n toolbar?: React.ReactNode\n\n /**\n * Will be called when the user clicks on the \"Done\" button.\n */\n onCommit?: OnCommit\n\n /**\n * The container contents.\n */\n children: React.ReactNode\n}\n\nexport type AllProps = Props &\n SpacingProps &\n Omit<EditContainerProps, 'data'>\n\nfunction PushContainer(props: AllProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const outerContext = useContext(DataContext)\n const { data: outerData, required: requiredInherited } = outerContext\n\n const {\n data: dataProp,\n defaultData: defaultDataProp,\n isolatedData,\n bubbleValidation,\n requireCommit,\n showResetButton,\n path,\n itemPath,\n insertAt,\n title,\n required = requiredInherited,\n children,\n openButton,\n showOpenButtonWhen,\n onCommit,\n ...rest\n } = props\n\n const { absolutePath } = useItemPath(itemPath)\n const commitHandleRef = useRef<() => void>()\n const switchContainerModeRef = useRef<(mode: ContainerMode) => void>()\n const containerModeRef = useRef<ContainerMode>()\n const {\n value: entries = [],\n moveValueToPath,\n getValueByPath,\n } = useDataValue<Array<unknown>>(path || itemPath)\n\n const { setNextContainerMode } = useSwitchContainerMode(\n path || absolutePath\n )\n const { hasReachedLimit, setShowStatus } = useArrayLimit(\n path || absolutePath\n )\n const cancelHandler = useCallback(() => {\n if (hasReachedLimit) {\n setShowStatus(false)\n }\n }, [hasReachedLimit, setShowStatus])\n\n const showOpenButton = showOpenButtonWhen?.(entries)\n const newItemContextProps: PushContainerContext = {\n path,\n itemPath,\n entries,\n commitHandleRef,\n switchContainerMode: switchContainerModeRef.current,\n }\n\n const data = useMemo(() => {\n if (defaultDataProp) {\n return // don't return a fallback, because we want to use the defaultData\n }\n return {\n ...isolatedData,\n pushContainerItems: [Object.freeze(dataProp) ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n if (outerData) {\n // Use assign to avoid mutating the original data object.\n // Because changes from outside should only silently be applied to the\n // data object, without triggering a rerender.\n // This way \"pushContainerItems\" will not clear/unset changed data.\n if (!Object.isFrozen(data)) {\n Object.assign(data || {}, outerData)\n }\n }\n\n const defaultData = useMemo(() => {\n return {\n ...(!dataProp ? isolatedData : null),\n pushContainerItems: [Object.freeze(defaultDataProp ?? clearedData)],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const emptyData = useCallback(\n (data: { pushContainerItems: unknown[] }) => {\n const firstItem = data.pushContainerItems?.[0]\n if (firstItem === null || typeof firstItem !== 'object') {\n return {\n ...isolatedData,\n pushContainerItems: [null],\n }\n }\n\n return {\n ...isolatedData,\n pushContainerItems: [dataProp ?? defaultDataProp ?? clearedData],\n }\n },\n [dataProp, defaultDataProp, isolatedData]\n )\n\n return (\n <Isolation\n data={data}\n defaultData={defaultData}\n required={required}\n emptyData={emptyData}\n bubbleValidation={\n containerModeRef.current === 'view' ? false : bubbleValidation\n }\n commitHandleRef={commitHandleRef}\n transformOnCommit={({ pushContainerItems }) => {\n return moveValueToPath(\n path || absolutePath,\n typeof insertAt === 'number'\n ? [\n ...entries.slice(0, insertAt),\n ...pushContainerItems,\n ...entries.slice(insertAt),\n ]\n : [...entries, ...pushContainerItems],\n absolutePath ? structuredClone(getValueByPath('/')) : {}\n )\n }}\n onCommit={(data, options) => {\n const { clearData, preventCommit } = options\n if (hasReachedLimit) {\n preventCommit()\n setShowStatus(true)\n } else {\n setNextContainerMode('view')\n switchContainerModeRef.current?.('view')\n clearData()\n }\n onCommit?.(data, options)\n }}\n >\n <PushContainerContext.Provider value={newItemContextProps}>\n <IterateArray\n path=\"/pushContainerItems\"\n containerMode={showOpenButton ? 'view' : 'edit'}\n withoutFlex\n >\n <NewContainer\n title={title}\n openButton={openButton}\n switchContainerModeRef={switchContainerModeRef}\n showOpenButton={showOpenButton}\n cancelHandler={cancelHandler}\n containerModeRef={containerModeRef}\n rerenderPushContainer={forceUpdate}\n requireCommit={requireCommit}\n showResetButton={showResetButton}\n outerContext={outerContext}\n {...rest}\n >\n {children}\n </NewContainer>\n </IterateArray>\n </PushContainerContext.Provider>\n </Isolation>\n )\n}\n\nfunction NewContainer({\n title,\n openButton,\n showOpenButton,\n showResetButton,\n switchContainerModeRef,\n cancelHandler,\n containerModeRef,\n rerenderPushContainer,\n requireCommit,\n outerContext,\n children,\n ...rest\n}) {\n const { containerMode, switchContainerMode } =\n useContext(IterateItemContext) || {}\n containerModeRef.current = containerMode\n\n const { hasContentChanged, showStatus: showCommitStatus } =\n useHandleStatus({\n outerContext,\n requireCommit,\n })\n const { requireCommitText } = useTranslation().IteratePushContainer\n\n useEffect(() => {\n rerenderPushContainer()\n }, [containerMode, rerenderPushContainer])\n\n switchContainerModeRef.current = switchContainerMode\n const isVisible = Boolean(!showOpenButton || containerMode === 'edit')\n const { createButton } = useTranslation().IteratePushContainer\n const { clearData } = useContext(DataContext) || {}\n const restoreOriginalValue = useCallback(() => {\n clearData?.()\n }, [clearData])\n\n const toolbar = (\n <Toolbar>\n <IterateItemContext.Consumer>\n {(context) => {\n const newItemContextProps = {\n ...context,\n restoreOriginalValue,\n }\n return (\n <IterateItemContext.Provider value={newItemContextProps}>\n <Flex.Horizontal gap=\"large\">\n <DoneButton text={createButton} />\n {showOpenButton && (\n <CancelButton onClick={cancelHandler} />\n )}\n {(requireCommit || showResetButton) && (\n <ResetButton\n // Use hidden in order to render the useHasContentChanged hook\n hidden={!(showResetButton || showCommitStatus)}\n />\n )}\n </Flex.Horizontal>\n\n {requireCommit && showCommitStatus && (\n <FormStatus no_animation={false} show={hasContentChanged}>\n {requireCommitText}\n </FormStatus>\n )}\n </IterateItemContext.Provider>\n )\n }}\n </IterateItemContext.Consumer>\n </Toolbar>\n )\n\n return (\n <VisibilityContext.Provider value={{ isVisible, keepInDOM: false }}>\n <EditContainer\n open={isVisible}\n title={title}\n toolbar={toolbar}\n {...rest}\n // Add the class by default, because we don't get a \"hasSubmitError\" trigger\n className={classnames(\n 'dnb-forms-section-block--error',\n rest.className\n )}\n >\n {children}\n </EditContainer>\n\n {openButton && typeof showOpenButton === 'boolean' && (\n <HeightAnimation open={showOpenButton && containerMode === 'view'}>\n {openButton}\n </HeightAnimation>\n )}\n </VisibilityContext.Provider>\n )\n}\n\nfunction useHandleStatus({\n outerContext,\n requireCommit,\n}: {\n outerContext: ContextState\n requireCommit: boolean\n}) {\n const { hasContentChanged } = useHasContentChanged()\n\n useReportError(\n requireCommit && hasContentChanged ? pushContainerError : undefined,\n outerContext\n )\n\n const showStatus = useShowStatus({\n outerContext,\n hasContentChanged,\n requireCommit,\n })\n\n return { hasContentChanged, showStatus }\n}\n\n// This hook/state is used to not show the status right away, after the user has cleared the PushContainer data.\nfunction useShowStatus({\n outerContext,\n hasContentChanged,\n requireCommit,\n}) {\n const showAllErrors = outerContext?.showAllErrors\n const [showStatus, setShowStatus] = useState(showAllErrors)\n const showRef = useRef(showAllErrors)\n useEffect(() => {\n if (!requireCommit) {\n return // stop here\n }\n\n if (!hasContentChanged) {\n setShowStatus(false)\n } else {\n if (showRef.current !== showAllErrors) {\n setShowStatus(showAllErrors)\n }\n }\n showRef.current = showAllErrors\n }, [hasContentChanged, requireCommit, showAllErrors])\n\n return showStatus\n}\n\nconst pushContainerError = new Error('Iterate.PushContainer')\n\nPushContainer.OpenButton = OpenButton\nPushContainer._supportsSpacingProps = true\n\nexport default PushContainer\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PushContainer.js","names":["React","useCallback","useContext","useEffect","useMemo","useReducer","useRef","classnames","Isolation","useHandleStatus","PushContainerContext","IterateItemContext","DataContext","VisibilityContext","useDataValue","EditContainer","DoneButton","CancelButton","ResetButton","IterateArray","OpenButton","Flex","FormStatus","HeightAnimation","useArrayLimit","useItemPath","useSwitchContainerMode","Toolbar","useTranslation","clearedData","structuredClone","PushContainer","props","forceUpdate","outerContext","data","outerData","required","requiredInherited","dataProp","defaultData","defaultDataProp","isolatedData","bubbleValidation","preventUncommittedChanges","requireCommit","showResetButton","path","itemPath","insertAt","title","children","openButton","showOpenButtonWhen","onCommit","rest","_objectWithoutProperties","_excluded","absolutePath","commitHandleRef","switchContainerModeRef","containerModeRef","value","entries","moveValueToPath","getValueByPath","setNextContainerMode","hasReachedLimit","setShowStatus","cancelHandler","showOpenButton","newItemContextProps","switchContainerMode","current","_Object$freeze","_objectSpread","pushContainerItems","Object","freeze","isFrozen","assign","emptyData","_data$pushContainerIt","_ref","firstItem","createElement","transformOnCommit","_ref2","slice","options","clearData","preventCommit","_switchContainerModeR","call","Provider","containerMode","withoutFlex","NewContainer","_extends","rerenderPushContainer","_ref3","_DoneButton","_CancelButton","_FormStatus","_excluded2","hasContentChanged","showStatus","showCommitStatus","error","pushContainerError","isVisible","Boolean","preventUncommittedChangesText","createButton","IteratePushContainer","restoreOriginalValue","toolbar","Consumer","context","Horizontal","gap","text","onClick","hidden","no_animation","show","keepInDOM","open","className","Error","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainer.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\nimport Isolation from '../../Form/Isolation'\nimport useHandleStatus from '../../Form/Isolation/useHandleStatus'\nimport PushContainerContext from './PushContainerContext'\nimport IterateItemContext from '../IterateItemContext'\nimport DataContext from '../../DataContext/Context'\nimport VisibilityContext from '../../Form/Visibility/VisibilityContext'\nimport useDataValue from '../../hooks/useDataValue'\nimport EditContainer, {\n DoneButton,\n CancelButton,\n ResetButton,\n AllProps as EditContainerProps,\n} from '../EditContainer'\nimport IterateArray, { ContainerMode } from '../Array'\nimport OpenButton from './OpenButton'\nimport { Flex, FormStatus, HeightAnimation } from '../../../../components'\nimport { OnCommit, Path } from '../../types'\nimport { SpacingProps } from '../../../../shared/types'\nimport {\n useArrayLimit,\n useItemPath,\n useSwitchContainerMode,\n} from '../hooks'\nimport Toolbar from '../Toolbar'\nimport { useTranslation } from '../../hooks'\nimport { clearedData } from '../../DataContext/Provider'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So it's a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\ntype OnlyPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath?: Path\n}\n\ntype OnlyItemPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path?: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath: Path\n}\n\nexport type Props = (OnlyPathRequired | OnlyItemPathRequired) & {\n /**\n * The title of the container.\n */\n title?: React.ReactNode\n\n /**\n * If the fields inside the container are required.\n */\n required?: boolean\n\n /**\n * The index to insert the new item at.\n */\n insertAt?: number\n\n /**\n * The button to open container.\n */\n openButton?: React.ReactNode\n\n /**\n * Define when the \"open button\" should be shown.\n * Should be a function that returns a boolean.\n */\n showOpenButtonWhen?: (list: unknown[]) => boolean\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n data?: unknown | Record<string, unknown>\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n defaultData?: unknown | Record<string, unknown>\n\n /**\n * Provide additional data that will be put into the root of the isolated data context (parallel to \"/pushContainerItems/0\").\n */\n isolatedData?: Record<string, unknown>\n\n /**\n * Prevent the form from being submitted when there are fields with errors inside the PushContainer.\n */\n bubbleValidation?: boolean\n\n /**\n * If the container should be committed before the form is submitted.\n */\n /**\n * @deprecated – Replaced with preventUncommittedChanges, requireCommit will be removed in v11.\n */\n requireCommit?: boolean\n\n /**\n * Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.\n */\n preventUncommittedChanges?: boolean\n\n /**\n * Show a button to clear the PushContainer data.\n */\n showResetButton?: boolean\n\n /**\n * A custom toolbar to be shown below the container.\n */\n toolbar?: React.ReactNode\n\n /**\n * Will be called when the user clicks on the \"Done\" button.\n */\n onCommit?: OnCommit\n\n /**\n * The container contents.\n */\n children: React.ReactNode\n}\n\nexport type AllProps = Props &\n SpacingProps &\n Omit<EditContainerProps, 'data'>\n\nfunction PushContainer(props: AllProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const outerContext = useContext(DataContext)\n const { data: outerData, required: requiredInherited } = outerContext\n\n const {\n data: dataProp,\n defaultData: defaultDataProp,\n isolatedData,\n bubbleValidation,\n preventUncommittedChanges = props?.requireCommit,\n requireCommit, // eslint-disable-line @typescript-eslint/no-unused-vars\n showResetButton,\n path,\n itemPath,\n insertAt,\n title,\n required = requiredInherited,\n children,\n openButton,\n showOpenButtonWhen,\n onCommit,\n ...rest\n } = props\n\n const { absolutePath } = useItemPath(itemPath)\n const commitHandleRef = useRef<() => void>()\n const switchContainerModeRef = useRef<(mode: ContainerMode) => void>()\n const containerModeRef = useRef<ContainerMode>()\n const {\n value: entries = [],\n moveValueToPath,\n getValueByPath,\n } = useDataValue<Array<unknown>>(path || itemPath)\n\n const { setNextContainerMode } = useSwitchContainerMode(\n path || absolutePath\n )\n const { hasReachedLimit, setShowStatus } = useArrayLimit(\n path || absolutePath\n )\n const cancelHandler = useCallback(() => {\n if (hasReachedLimit) {\n setShowStatus(false)\n }\n }, [hasReachedLimit, setShowStatus])\n\n const showOpenButton = showOpenButtonWhen?.(entries)\n const newItemContextProps: PushContainerContext = {\n path,\n itemPath,\n entries,\n commitHandleRef,\n switchContainerMode: switchContainerModeRef.current,\n }\n\n const data = useMemo(() => {\n if (defaultDataProp) {\n return // don't return a fallback, because we want to use the defaultData\n }\n return {\n ...isolatedData,\n pushContainerItems: [Object.freeze(dataProp) ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n if (outerData) {\n // Use assign to avoid mutating the original data object.\n // Because changes from outside should only silently be applied to the\n // data object, without triggering a rerender.\n // This way \"pushContainerItems\" will not clear/unset changed data.\n if (!Object.isFrozen(data)) {\n Object.assign(data || {}, outerData)\n }\n }\n\n const defaultData = useMemo(() => {\n return {\n ...(!dataProp ? isolatedData : null),\n pushContainerItems: [Object.freeze(defaultDataProp ?? clearedData)],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const emptyData = useCallback(\n (data: { pushContainerItems: unknown[] }) => {\n const firstItem = data.pushContainerItems?.[0]\n if (firstItem === null || typeof firstItem !== 'object') {\n return {\n ...isolatedData,\n pushContainerItems: [null],\n }\n }\n\n return {\n ...isolatedData,\n pushContainerItems: [dataProp ?? defaultDataProp ?? clearedData],\n }\n },\n [dataProp, defaultDataProp, isolatedData]\n )\n\n return (\n <Isolation\n data={data}\n defaultData={defaultData}\n required={required}\n emptyData={emptyData}\n bubbleValidation={\n containerModeRef.current === 'view' ? false : bubbleValidation\n }\n commitHandleRef={commitHandleRef}\n transformOnCommit={({ pushContainerItems }) => {\n return moveValueToPath(\n path || absolutePath,\n typeof insertAt === 'number'\n ? [\n ...entries.slice(0, insertAt),\n ...pushContainerItems,\n ...entries.slice(insertAt),\n ]\n : [...entries, ...pushContainerItems],\n absolutePath ? structuredClone(getValueByPath('/')) : {}\n )\n }}\n onCommit={(data, options) => {\n const { clearData, preventCommit } = options\n if (hasReachedLimit) {\n preventCommit()\n setShowStatus(true)\n } else {\n setNextContainerMode('view')\n switchContainerModeRef.current?.('view')\n clearData()\n }\n onCommit?.(data, options)\n }}\n >\n <PushContainerContext.Provider value={newItemContextProps}>\n <IterateArray\n path=\"/pushContainerItems\"\n containerMode={showOpenButton ? 'view' : 'edit'}\n withoutFlex\n >\n <NewContainer\n title={title}\n openButton={openButton}\n switchContainerModeRef={switchContainerModeRef}\n showOpenButton={showOpenButton}\n cancelHandler={cancelHandler}\n containerModeRef={containerModeRef}\n rerenderPushContainer={forceUpdate}\n preventUncommittedChanges={preventUncommittedChanges}\n showResetButton={showResetButton}\n outerContext={outerContext}\n {...rest}\n >\n {children}\n </NewContainer>\n </IterateArray>\n </PushContainerContext.Provider>\n </Isolation>\n )\n}\n\nfunction NewContainer({\n title,\n openButton,\n showOpenButton,\n showResetButton,\n switchContainerModeRef,\n cancelHandler,\n containerModeRef,\n rerenderPushContainer,\n preventUncommittedChanges,\n outerContext,\n children,\n ...rest\n}) {\n const { containerMode, switchContainerMode } =\n useContext(IterateItemContext) || {}\n containerModeRef.current = containerMode\n\n const { hasContentChanged, showStatus: showCommitStatus } =\n useHandleStatus({\n outerContext,\n preventUncommittedChanges,\n error: pushContainerError,\n })\n\n useEffect(() => {\n rerenderPushContainer()\n }, [containerMode, rerenderPushContainer])\n\n switchContainerModeRef.current = switchContainerMode\n const isVisible = Boolean(!showOpenButton || containerMode === 'edit')\n const { preventUncommittedChangesText } = useTranslation().Isolation\n const { createButton } = useTranslation().IteratePushContainer\n const { clearData } = useContext(DataContext) || {}\n const restoreOriginalValue = useCallback(() => {\n clearData?.()\n }, [clearData])\n\n const toolbar = (\n <Toolbar>\n <IterateItemContext.Consumer>\n {(context) => {\n const newItemContextProps = {\n ...context,\n restoreOriginalValue,\n }\n return (\n <IterateItemContext.Provider value={newItemContextProps}>\n <Flex.Horizontal gap=\"large\">\n <DoneButton text={createButton} />\n {showOpenButton && (\n <CancelButton onClick={cancelHandler} />\n )}\n {(preventUncommittedChanges || showResetButton) && (\n <ResetButton\n // Use hidden in order to render the useHasContentChanged hook\n hidden={!(showResetButton || showCommitStatus)}\n />\n )}\n </Flex.Horizontal>\n\n {preventUncommittedChanges && showCommitStatus && (\n <FormStatus no_animation={false} show={hasContentChanged}>\n {preventUncommittedChangesText}\n </FormStatus>\n )}\n </IterateItemContext.Provider>\n )\n }}\n </IterateItemContext.Consumer>\n </Toolbar>\n )\n\n return (\n <VisibilityContext.Provider value={{ isVisible, keepInDOM: false }}>\n <EditContainer\n open={isVisible}\n title={title}\n toolbar={toolbar}\n {...rest}\n // Add the class by default, because we don't get a \"hasSubmitError\" trigger\n className={classnames(\n 'dnb-forms-section-block--error',\n rest.className\n )}\n >\n {children}\n </EditContainer>\n\n {openButton && typeof showOpenButton === 'boolean' && (\n <HeightAnimation open={showOpenButton && containerMode === 'view'}>\n {openButton}\n </HeightAnimation>\n )}\n </VisibilityContext.Provider>\n )\n}\n\nconst pushContainerError = new Error('Iterate.PushContainer')\n\nPushContainer.OpenButton = OpenButton\nPushContainer._supportsSpacingProps = true\n\nexport default PushContainer\n"],"mappings":";;;;;;;;;;AAAA,OAAOA,KAAK,IACVC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,OAAO,EACPC,UAAU,EACVC,MAAM,QACD,OAAO;AACd,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,SAAS,MAAM,sBAAsB;AAC5C,OAAOC,eAAe,MAAM,sCAAsC;AAClE,OAAOC,oBAAoB,MAAM,wBAAwB;AACzD,OAAOC,kBAAkB,MAAM,uBAAuB;AACtD,OAAOC,WAAW,MAAM,2BAA2B;AACnD,OAAOC,iBAAiB,MAAM,yCAAyC;AACvE,OAAOC,YAAY,MAAM,0BAA0B;AACnD,OAAOC,aAAa,IAClBC,UAAU,EACVC,YAAY,EACZC,WAAW,QAEN,kBAAkB;AACzB,OAAOC,YAAY,MAAyB,UAAU;AACtD,OAAOC,UAAU,MAAM,cAAc;AACrC,SAASC,IAAI,EAAEC,UAAU,EAAEC,eAAe,QAAQ,wBAAwB;AAG1E,SACEC,aAAa,EACbC,WAAW,EACXC,sBAAsB,QACjB,UAAU;AACjB,OAAOC,OAAO,MAAM,YAAY;AAChC,SAASC,cAAc,QAAQ,aAAa;AAC5C,SAASC,WAAW,QAAQ,4BAA4B;AAMxD,OAAOC,eAAe,MAAM,yBAAyB;AA2GrD,SAASC,aAAaA,CAACC,KAAe,EAAE;EACtC,MAAM,GAAGC,WAAW,CAAC,GAAG5B,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;EAClD,MAAM6B,YAAY,GAAGhC,UAAU,CAACU,WAAW,CAAC;EAC5C,MAAM;IAAEuB,IAAI,EAAEC,SAAS;IAAEC,QAAQ,EAAEC;EAAkB,CAAC,GAAGJ,YAAY;EAErE,MAAM;MACJC,IAAI,EAAEI,QAAQ;MACdC,WAAW,EAAEC,eAAe;MAC5BC,YAAY;MACZC,gBAAgB;MAChBC,yBAAyB,GAAGZ,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEa,aAAa;MAChDA,aAAa;MACbC,eAAe;MACfC,IAAI;MACJC,QAAQ;MACRC,QAAQ;MACRC,KAAK;MACLb,QAAQ,GAAGC,iBAAiB;MAC5Ba,QAAQ;MACRC,UAAU;MACVC,kBAAkB;MAClBC;IAEF,CAAC,GAAGtB,KAAK;IADJuB,IAAI,GAAAC,wBAAA,CACLxB,KAAK,EAAAyB,SAAA;EAET,MAAM;IAAEC;EAAa,CAAC,GAAGjC,WAAW,CAACuB,QAAQ,CAAC;EAC9C,MAAMW,eAAe,GAAGrD,MAAM,CAAa,CAAC;EAC5C,MAAMsD,sBAAsB,GAAGtD,MAAM,CAAgC,CAAC;EACtE,MAAMuD,gBAAgB,GAAGvD,MAAM,CAAgB,CAAC;EAChD,MAAM;IACJwD,KAAK,EAAEC,OAAO,GAAG,EAAE;IACnBC,eAAe;IACfC;EACF,CAAC,GAAGnD,YAAY,CAAiBiC,IAAI,IAAIC,QAAQ,CAAC;EAElD,MAAM;IAAEkB;EAAqB,CAAC,GAAGxC,sBAAsB,CACrDqB,IAAI,IAAIW,YACV,CAAC;EACD,MAAM;IAAES,eAAe;IAAEC;EAAc,CAAC,GAAG5C,aAAa,CACtDuB,IAAI,IAAIW,YACV,CAAC;EACD,MAAMW,aAAa,GAAGpE,WAAW,CAAC,MAAM;IACtC,IAAIkE,eAAe,EAAE;MACnBC,aAAa,CAAC,KAAK,CAAC;IACtB;EACF,CAAC,EAAE,CAACD,eAAe,EAAEC,aAAa,CAAC,CAAC;EAEpC,MAAME,cAAc,GAAGjB,kBAAkB,aAAlBA,kBAAkB,uBAAlBA,kBAAkB,CAAGU,OAAO,CAAC;EACpD,MAAMQ,mBAAyC,GAAG;IAChDxB,IAAI;IACJC,QAAQ;IACRe,OAAO;IACPJ,eAAe;IACfa,mBAAmB,EAAEZ,sBAAsB,CAACa;EAC9C,CAAC;EAED,MAAMtC,IAAI,GAAG/B,OAAO,CAAC,MAAM;IAAA,IAAAsE,cAAA;IACzB,IAAIjC,eAAe,EAAE;MACnB;IACF;IACA,OAAAkC,aAAA,CAAAA,aAAA,KACKjC,YAAY;MACfkC,kBAAkB,EAAE,EAAAF,cAAA,GAACG,MAAM,CAACC,MAAM,CAACvC,QAAQ,CAAC,cAAAmC,cAAA,cAAAA,cAAA,GAAI7C,WAAW;IAAC;EAEhE,CAAC,EAAE,CAACU,QAAQ,EAAEE,eAAe,EAAEC,YAAY,CAAC,CAAC;EAE7C,IAAIN,SAAS,EAAE;IAKb,IAAI,CAACyC,MAAM,CAACE,QAAQ,CAAC5C,IAAI,CAAC,EAAE;MAC1B0C,MAAM,CAACG,MAAM,CAAC7C,IAAI,IAAI,CAAC,CAAC,EAAEC,SAAS,CAAC;IACtC;EACF;EAEA,MAAMI,WAAW,GAAGpC,OAAO,CAAC,MAAM;IAChC,OAAAuE,aAAA,CAAAA,aAAA,KACM,CAACpC,QAAQ,GAAGG,YAAY,GAAG,IAAI;MACnCkC,kBAAkB,EAAE,CAACC,MAAM,CAACC,MAAM,CAACrC,eAAe,aAAfA,eAAe,cAAfA,eAAe,GAAIZ,WAAW,CAAC;IAAC;EAEvE,CAAC,EAAE,CAACU,QAAQ,EAAEE,eAAe,EAAEC,YAAY,CAAC,CAAC;EAE7C,MAAMuC,SAAS,GAAGhF,WAAW,CAC1BkC,IAAuC,IAAK;IAAA,IAAA+C,qBAAA,EAAAC,IAAA;IAC3C,MAAMC,SAAS,IAAAF,qBAAA,GAAG/C,IAAI,CAACyC,kBAAkB,cAAAM,qBAAA,uBAAvBA,qBAAA,CAA0B,CAAC,CAAC;IAC9C,IAAIE,SAAS,KAAK,IAAI,IAAI,OAAOA,SAAS,KAAK,QAAQ,EAAE;MACvD,OAAAT,aAAA,CAAAA,aAAA,KACKjC,YAAY;QACfkC,kBAAkB,EAAE,CAAC,IAAI;MAAC;IAE9B;IAEA,OAAAD,aAAA,CAAAA,aAAA,KACKjC,YAAY;MACfkC,kBAAkB,EAAE,EAAAO,IAAA,GAAC5C,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAIE,eAAe,cAAA0C,IAAA,cAAAA,IAAA,GAAItD,WAAW;IAAC;EAEpE,CAAC,EACD,CAACU,QAAQ,EAAEE,eAAe,EAAEC,YAAY,CAC1C,CAAC;EAED,OACE1C,KAAA,CAAAqF,aAAA,CAAC7E,SAAS;IACR2B,IAAI,EAAEA,IAAK;IACXK,WAAW,EAAEA,WAAY;IACzBH,QAAQ,EAAEA,QAAS;IACnB4C,SAAS,EAAEA,SAAU;IACrBtC,gBAAgB,EACdkB,gBAAgB,CAACY,OAAO,KAAK,MAAM,GAAG,KAAK,GAAG9B,gBAC/C;IACDgB,eAAe,EAAEA,eAAgB;IACjC2B,iBAAiB,EAAEC,KAAA,IAA4B;MAAA,IAA3B;QAAEX;MAAmB,CAAC,GAAAW,KAAA;MACxC,OAAOvB,eAAe,CACpBjB,IAAI,IAAIW,YAAY,EACpB,OAAOT,QAAQ,KAAK,QAAQ,GACxB,CACE,GAAGc,OAAO,CAACyB,KAAK,CAAC,CAAC,EAAEvC,QAAQ,CAAC,EAC7B,GAAG2B,kBAAkB,EACrB,GAAGb,OAAO,CAACyB,KAAK,CAACvC,QAAQ,CAAC,CAC3B,GACD,CAAC,GAAGc,OAAO,EAAE,GAAGa,kBAAkB,CAAC,EACvClB,YAAY,GAAG5B,eAAe,CAACmC,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CACzD,CAAC;IACH,CAAE;IACFX,QAAQ,EAAEA,CAACnB,IAAI,EAAEsD,OAAO,KAAK;MAC3B,MAAM;QAAEC,SAAS;QAAEC;MAAc,CAAC,GAAGF,OAAO;MAC5C,IAAItB,eAAe,EAAE;QACnBwB,aAAa,CAAC,CAAC;QACfvB,aAAa,CAAC,IAAI,CAAC;MACrB,CAAC,MAAM;QAAA,IAAAwB,qBAAA;QACL1B,oBAAoB,CAAC,MAAM,CAAC;QAC5B,CAAA0B,qBAAA,GAAAhC,sBAAsB,CAACa,OAAO,cAAAmB,qBAAA,uBAA9BA,qBAAA,CAAAC,IAAA,CAAAjC,sBAAsB,EAAW,MAAM,CAAC;QACxC8B,SAAS,CAAC,CAAC;MACb;MACApC,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAGnB,IAAI,EAAEsD,OAAO,CAAC;IAC3B;EAAE,GAEFzF,KAAA,CAAAqF,aAAA,CAAC3E,oBAAoB,CAACoF,QAAQ;IAAChC,KAAK,EAAES;EAAoB,GACxDvE,KAAA,CAAAqF,aAAA,CAAClE,YAAY;IACX4B,IAAI,EAAC,qBAAqB;IAC1BgD,aAAa,EAAEzB,cAAc,GAAG,MAAM,GAAG,MAAO;IAChD0B,WAAW;EAAA,GAEXhG,KAAA,CAAAqF,aAAA,CAACY,YAAY,EAAAC,QAAA;IACXhD,KAAK,EAAEA,KAAM;IACbE,UAAU,EAAEA,UAAW;IACvBQ,sBAAsB,EAAEA,sBAAuB;IAC/CU,cAAc,EAAEA,cAAe;IAC/BD,aAAa,EAAEA,aAAc;IAC7BR,gBAAgB,EAAEA,gBAAiB;IACnCsC,qBAAqB,EAAElE,WAAY;IACnCW,yBAAyB,EAAEA,yBAA0B;IACrDE,eAAe,EAAEA,eAAgB;IACjCZ,YAAY,EAAEA;EAAa,GACvBqB,IAAI,GAEPJ,QACW,CACF,CACe,CACtB,CAAC;AAEhB;AAEA,SAAS8C,YAAYA,CAAAG,KAAA,EAalB;EAAA,IAAAC,WAAA,EAAAC,aAAA,EAAAC,WAAA;EAAA,IAbmB;MACpBrD,KAAK;MACLE,UAAU;MACVkB,cAAc;MACdxB,eAAe;MACfc,sBAAsB;MACtBS,aAAa;MACbR,gBAAgB;MAChBsC,qBAAqB;MACrBvD,yBAAyB;MACzBV,YAAY;MACZiB;IAEF,CAAC,GAAAiD,KAAA;IADI7C,IAAI,GAAAC,wBAAA,CAAA4C,KAAA,EAAAI,UAAA;EAEP,MAAM;IAAET,aAAa;IAAEvB;EAAoB,CAAC,GAC1CtE,UAAU,CAACS,kBAAkB,CAAC,IAAI,CAAC,CAAC;EACtCkD,gBAAgB,CAACY,OAAO,GAAGsB,aAAa;EAExC,MAAM;IAAEU,iBAAiB;IAAEC,UAAU,EAAEC;EAAiB,CAAC,GACvDlG,eAAe,CAAC;IACdyB,YAAY;IACZU,yBAAyB;IACzBgE,KAAK,EAAEC;EACT,CAAC,CAAC;EAEJ1G,SAAS,CAAC,MAAM;IACdgG,qBAAqB,CAAC,CAAC;EACzB,CAAC,EAAE,CAACJ,aAAa,EAAEI,qBAAqB,CAAC,CAAC;EAE1CvC,sBAAsB,CAACa,OAAO,GAAGD,mBAAmB;EACpD,MAAMsC,SAAS,GAAGC,OAAO,CAAC,CAACzC,cAAc,IAAIyB,aAAa,KAAK,MAAM,CAAC;EACtE,MAAM;IAAEiB;EAA8B,CAAC,GAAGpF,cAAc,CAAC,CAAC,CAACpB,SAAS;EACpE,MAAM;IAAEyG;EAAa,CAAC,GAAGrF,cAAc,CAAC,CAAC,CAACsF,oBAAoB;EAC9D,MAAM;IAAExB;EAAU,CAAC,GAAGxF,UAAU,CAACU,WAAW,CAAC,IAAI,CAAC,CAAC;EACnD,MAAMuG,oBAAoB,GAAGlH,WAAW,CAAC,MAAM;IAC7CyF,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAG,CAAC;EACf,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,MAAM0B,OAAO,GACXpH,KAAA,CAAAqF,aAAA,CAAC1D,OAAO,QACN3B,KAAA,CAAAqF,aAAA,CAAC1E,kBAAkB,CAAC0G,QAAQ,QACxBC,OAAO,IAAK;IACZ,MAAM/C,mBAAmB,GAAAI,aAAA,CAAAA,aAAA,KACpB2C,OAAO;MACVH;IAAoB,EACrB;IACD,OACEnH,KAAA,CAAAqF,aAAA,CAAC1E,kBAAkB,CAACmF,QAAQ;MAAChC,KAAK,EAAES;IAAoB,GACtDvE,KAAA,CAAAqF,aAAA,CAAChE,IAAI,CAACkG,UAAU;MAACC,GAAG,EAAC;IAAO,GAAAnB,WAAA,KAAAA,WAAA,GAC1BrG,KAAA,CAAAqF,aAAA,CAACrE,UAAU;MAACyG,IAAI,EAAER;IAAa,CAAE,CAAC,GACjC3C,cAAc,KAAAgC,aAAA,KAAAA,aAAA,GACbtG,KAAA,CAAAqF,aAAA,CAACpE,YAAY;MAACyG,OAAO,EAAErD;IAAc,CAAE,CAAC,EACzC,EACA,CAACzB,yBAAyB,IAAIE,eAAe,KAC5C9C,KAAA,CAAAqF,aAAA,CAACnE,WAAW;MAEVyG,MAAM,EAAE,EAAE7E,eAAe,IAAI6D,gBAAgB;IAAE,CAChD,CAEY,CAAC,EAEjB/D,yBAAyB,IAAI+D,gBAAgB,KAAAJ,WAAA,KAAAA,WAAA,GAC5CvG,KAAA,CAAAqF,aAAA,CAAC/D,UAAU;MAACsG,YAAY,EAAE,KAAM;MAACC,IAAI,EAAEpB;IAAkB,GACtDO,6BACS,CAAC,EAEY,CAAC;EAElC,CAC2B,CACtB,CACV;EAED,OACEhH,KAAA,CAAAqF,aAAA,CAACxE,iBAAiB,CAACiF,QAAQ;IAAChC,KAAK,EAAE;MAAEgD,SAAS;MAAEgB,SAAS,EAAE;IAAM;EAAE,GACjE9H,KAAA,CAAAqF,aAAA,CAACtE,aAAa,EAAAmF,QAAA;IACZ6B,IAAI,EAAEjB,SAAU;IAChB5D,KAAK,EAAEA,KAAM;IACbkE,OAAO,EAAEA;EAAQ,GACb7D,IAAI;IAERyE,SAAS,EAAEzH,UAAU,CACnB,gCAAgC,EAChCgD,IAAI,CAACyE,SACP;EAAE,IAED7E,QACY,CAAC,EAEfC,UAAU,IAAI,OAAOkB,cAAc,KAAK,SAAS,IAChDtE,KAAA,CAAAqF,aAAA,CAAC9D,eAAe;IAACwG,IAAI,EAAEzD,cAAc,IAAIyB,aAAa,KAAK;EAAO,GAC/D3C,UACc,CAEO,CAAC;AAEjC;AAEA,MAAMyD,kBAAkB,GAAG,IAAIoB,KAAK,CAAC,uBAAuB,CAAC;AAE7DlG,aAAa,CAACX,UAAU,GAAGA,UAAU;AACrCW,aAAa,CAACmG,qBAAqB,GAAG,IAAI;AAE1C,eAAenG,aAAa","ignoreList":[]}
@@ -45,8 +45,8 @@ export const PushContainerProperties = {
45
45
  type: 'boolean',
46
46
  status: 'optional'
47
47
  },
48
- requireCommit: {
49
- doc: 'If the container should be committed before the form is submitted.',
48
+ preventUncommittedChanges: {
49
+ doc: 'Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.',
50
50
  type: 'boolean',
51
51
  status: 'optional'
52
52
  },
@@ -1 +1 @@
1
- {"version":3,"file":"PushContainerDocs.js","names":["IsolationEvents","PushContainerProperties","path","doc","type","status","itemPath","insertAt","title","data","defaultData","isolatedData","required","bubbleValidation","requireCommit","showResetButton","openButton","showOpenButtonWhen","variant","toolbar","children","PushContainerEvents","onCommit"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainerDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport { IsolationEvents } from '../../Form/Isolation/IsolationDocs'\n\nexport const PushContainerProperties: PropertiesTableProps = {\n path: {\n doc: 'The path to the array to add the new item to.',\n type: 'string',\n status: 'required',\n },\n itemPath: {\n doc: 'The path to the item in a nested array, to add the new item to.',\n type: 'string',\n status: 'optional',\n },\n insertAt: {\n doc: 'The index to insert the new item at.',\n type: 'number',\n status: 'optional',\n },\n title: {\n doc: 'The title of the container.',\n type: 'React.Node',\n status: 'optional',\n },\n data: {\n doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`. Use `defaultData` when possible.',\n type: ['object', 'array'],\n status: 'optional',\n },\n defaultData: {\n doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`',\n type: ['object', 'array'],\n status: 'optional',\n },\n isolatedData: {\n doc: 'Provide additional data that will be put into the root of the isolated data context (parallel to `/pushContainerItems/0`).',\n type: 'object',\n status: 'optional',\n },\n required: {\n doc: 'If the fields inside the container are required.',\n type: 'boolean',\n status: 'optional',\n },\n bubbleValidation: {\n doc: 'Prevent the form from being submitted when there are fields with errors inside the PushContainer.',\n type: 'boolean',\n status: 'optional',\n },\n requireCommit: {\n doc: 'If the container should be committed before the form is submitted.',\n type: 'boolean',\n status: 'optional',\n },\n showResetButton: {\n doc: 'Show a button to clear the PushContainer data.',\n type: 'boolean',\n status: 'optional',\n },\n openButton: {\n doc: 'The button to open container.',\n type: 'React.Node',\n status: 'optional',\n },\n showOpenButtonWhen: {\n doc: 'Define when the \"open button\" should be shown. Should be a function that returns a boolean.',\n type: 'function',\n status: 'optional',\n },\n variant: {\n doc: 'Defines the variant of the container. Can be `outline`, `filled` or `basic`. Defaults to `outline`.',\n type: 'string',\n status: 'optional',\n },\n toolbar: {\n doc: 'A custom toolbar to be shown below the container.',\n type: 'React.Node',\n status: 'optional',\n },\n children: {\n doc: 'The container contents.',\n type: 'React.Node',\n status: 'required',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n\nexport const PushContainerEvents: PropertiesTableProps = {\n onCommit: IsolationEvents.onCommit,\n}\n"],"mappings":"AACA,SAASA,eAAe,QAAQ,oCAAoC;AAEpE,OAAO,MAAMC,uBAA6C,GAAG;EAC3DC,IAAI,EAAE;IACJC,GAAG,EAAE,+CAA+C;IACpDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,QAAQ,EAAE;IACRH,GAAG,EAAE,iEAAiE;IACtEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,QAAQ,EAAE;IACRJ,GAAG,EAAE,sCAAsC;IAC3CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,KAAK,EAAE;IACLL,GAAG,EAAE,6BAA6B;IAClCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDI,IAAI,EAAE;IACJN,GAAG,EAAE,qIAAqI;IAC1IC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDK,WAAW,EAAE;IACXP,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDM,YAAY,EAAE;IACZR,GAAG,EAAE,4HAA4H;IACjIC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDO,QAAQ,EAAE;IACRT,GAAG,EAAE,kDAAkD;IACvDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDQ,gBAAgB,EAAE;IAChBV,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDS,aAAa,EAAE;IACbX,GAAG,EAAE,oEAAoE;IACzEC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDU,eAAe,EAAE;IACfZ,GAAG,EAAE,gDAAgD;IACrDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDW,UAAU,EAAE;IACVb,GAAG,EAAE,+BAA+B;IACpCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDY,kBAAkB,EAAE;IAClBd,GAAG,EAAE,6FAA6F;IAClGC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDa,OAAO,EAAE;IACPf,GAAG,EAAE,qGAAqG;IAC1GC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDc,OAAO,EAAE;IACPhB,GAAG,EAAE,mDAAmD;IACxDC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDe,QAAQ,EAAE;IACRjB,GAAG,EAAE,yBAAyB;IAC9BC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV;AACF,CAAC;AAED,OAAO,MAAMgB,mBAAyC,GAAG;EACvDC,QAAQ,EAAEtB,eAAe,CAACsB;AAC5B,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"PushContainerDocs.js","names":["IsolationEvents","PushContainerProperties","path","doc","type","status","itemPath","insertAt","title","data","defaultData","isolatedData","required","bubbleValidation","preventUncommittedChanges","showResetButton","openButton","showOpenButtonWhen","variant","toolbar","children","PushContainerEvents","onCommit"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainerDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport { IsolationEvents } from '../../Form/Isolation/IsolationDocs'\n\nexport const PushContainerProperties: PropertiesTableProps = {\n path: {\n doc: 'The path to the array to add the new item to.',\n type: 'string',\n status: 'required',\n },\n itemPath: {\n doc: 'The path to the item in a nested array, to add the new item to.',\n type: 'string',\n status: 'optional',\n },\n insertAt: {\n doc: 'The index to insert the new item at.',\n type: 'number',\n status: 'optional',\n },\n title: {\n doc: 'The title of the container.',\n type: 'React.Node',\n status: 'optional',\n },\n data: {\n doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`. Use `defaultData` when possible.',\n type: ['object', 'array'],\n status: 'optional',\n },\n defaultData: {\n doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`',\n type: ['object', 'array'],\n status: 'optional',\n },\n isolatedData: {\n doc: 'Provide additional data that will be put into the root of the isolated data context (parallel to `/pushContainerItems/0`).',\n type: 'object',\n status: 'optional',\n },\n required: {\n doc: 'If the fields inside the container are required.',\n type: 'boolean',\n status: 'optional',\n },\n bubbleValidation: {\n doc: 'Prevent the form from being submitted when there are fields with errors inside the PushContainer.',\n type: 'boolean',\n status: 'optional',\n },\n preventUncommittedChanges: {\n doc: 'Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.',\n type: 'boolean',\n status: 'optional',\n },\n showResetButton: {\n doc: 'Show a button to clear the PushContainer data.',\n type: 'boolean',\n status: 'optional',\n },\n openButton: {\n doc: 'The button to open container.',\n type: 'React.Node',\n status: 'optional',\n },\n showOpenButtonWhen: {\n doc: 'Define when the \"open button\" should be shown. Should be a function that returns a boolean.',\n type: 'function',\n status: 'optional',\n },\n variant: {\n doc: 'Defines the variant of the container. Can be `outline`, `filled` or `basic`. Defaults to `outline`.',\n type: 'string',\n status: 'optional',\n },\n toolbar: {\n doc: 'A custom toolbar to be shown below the container.',\n type: 'React.Node',\n status: 'optional',\n },\n children: {\n doc: 'The container contents.',\n type: 'React.Node',\n status: 'required',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n\nexport const PushContainerEvents: PropertiesTableProps = {\n onCommit: IsolationEvents.onCommit,\n}\n"],"mappings":"AACA,SAASA,eAAe,QAAQ,oCAAoC;AAEpE,OAAO,MAAMC,uBAA6C,GAAG;EAC3DC,IAAI,EAAE;IACJC,GAAG,EAAE,+CAA+C;IACpDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,QAAQ,EAAE;IACRH,GAAG,EAAE,iEAAiE;IACtEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,QAAQ,EAAE;IACRJ,GAAG,EAAE,sCAAsC;IAC3CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,KAAK,EAAE;IACLL,GAAG,EAAE,6BAA6B;IAClCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDI,IAAI,EAAE;IACJN,GAAG,EAAE,qIAAqI;IAC1IC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDK,WAAW,EAAE;IACXP,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDM,YAAY,EAAE;IACZR,GAAG,EAAE,4HAA4H;IACjIC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDO,QAAQ,EAAE;IACRT,GAAG,EAAE,kDAAkD;IACvDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDQ,gBAAgB,EAAE;IAChBV,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDS,yBAAyB,EAAE;IACzBX,GAAG,EAAE,oJAAoJ;IACzJC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDU,eAAe,EAAE;IACfZ,GAAG,EAAE,gDAAgD;IACrDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDW,UAAU,EAAE;IACVb,GAAG,EAAE,+BAA+B;IACpCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDY,kBAAkB,EAAE;IAClBd,GAAG,EAAE,6FAA6F;IAClGC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDa,OAAO,EAAE;IACPf,GAAG,EAAE,qGAAqG;IAC1GC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDc,OAAO,EAAE;IACPhB,GAAG,EAAE,mDAAmD;IACxDC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDe,QAAQ,EAAE;IACRjB,GAAG,EAAE,yBAAyB;IAC9BC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV;AACF,CAAC;AAED,OAAO,MAAMgB,mBAAyC,GAAG;EACvDC,QAAQ,EAAEtB,eAAe,CAACsB;AAC5B,CAAC","ignoreList":[]}
@@ -20,6 +20,7 @@ declare const _default: {
20
20
  };
21
21
  Isolation: {
22
22
  commitButtonText: string;
23
+ preventUncommittedChangesText: string;
23
24
  };
24
25
  Step: {
25
26
  summaryTitle: string;
@@ -73,7 +74,6 @@ declare const _default: {
73
74
  IteratePushContainer: {
74
75
  createButton: string;
75
76
  itemsLimitReached: string;
76
- requireCommitText: string;
77
77
  };
78
78
  /**
79
79
  * Base fields
@@ -16,7 +16,8 @@ export default {
16
16
  label: 'Please wait'
17
17
  },
18
18
  Isolation: {
19
- commitButtonText: 'Add'
19
+ commitButtonText: 'Add',
20
+ preventUncommittedChangesText: 'You have changes that either need to be added or cleared.'
20
21
  },
21
22
  Step: {
22
23
  summaryTitle: 'Summary',
@@ -69,8 +70,7 @@ export default {
69
70
  },
70
71
  IteratePushContainer: {
71
72
  createButton: 'Add',
72
- itemsLimitReached: 'You have reached the limit of: {limit}',
73
- requireCommitText: 'You have changes that either need to be added or cleared.'
73
+ itemsLimitReached: 'You have reached the limit of: {limit}'
74
74
  },
75
75
  StringField: {
76
76
  errorMinLength: 'The value cannot be shorter than {minLength} characters.',
@@ -1 +1 @@
1
- {"version":3,"file":"en-GB.js","names":["Field","errorSummaryTitle","stateSummary","errorSummary","errorRequired","errorPattern","optionalLabelSuffix","SubmitButton","text","sendText","SubmitIndicator","label","Isolation","commitButtonText","Step","summaryTitle","stepHasError","WizardEditButton","WizardPreviousButton","WizardNextButton","RemoveButton","confirmRemoveText","InfoOverlaySuccess","title","description","buttonText","InfoOverlayError","cancelButton","retryButton","retryingText","SectionViewContainer","editButton","SectionEditContainer","doneButton","errorInSection","IterateViewContainer","removeButton","IterateEditContainer","resetButton","errorInContainer","confirmResetText","IteratePushContainer","createButton","itemsLimitReached","requireCommitText","StringField","errorMinLength","errorMaxLength","NumberField","errorMinimum","errorMaximum","errorExclusiveMinimum","errorExclusiveMaximum","errorMultipleOf","BooleanField","yes","no","ToggleField","PostalAddress","StreetAddress","Date","errorMinDate","errorMaxDate","errorStartDateMinDate","errorStartDateMaxDate","errorEndDateMinDate","errorEndDateMaxDate","errorInvalidDate","errorInvalidStartDate","errorInvalidEndDate","Expiry","errorMonth","errorYear","Email","FirstName","LastName","CompanyName","NationalIdentityNumber","errorFnr","errorFnrLength","errorDnr","errorDnrLength","errorMinimumAgeValidator","errorMinimumAgeValidatorLength","OrganizationNumber","errorOrgNo","errorOrgNoLength","BankAccountNumber","errorBankAccountNumber","errorBankAccountNumberLength","PhoneNumber","countryCodeLabel","warningRequired","PostalCodeAndCity","invalidCode","PostalCode","City","SelectCountry","placeholder","SelectCurrency","Password","ariaLabelShow","ariaLabelHide","Upload","errorInvalidFiles"],"sources":["../../../../../../src/extensions/forms/constants/locales/en-GB.ts"],"sourcesContent":["import nb from './nb-NO'\nexport default {\n 'en-GB': {\n /**\n * General\n */\n Field: {\n errorSummaryTitle: 'Please correct the following errors',\n stateSummary: 'Summary:',\n errorSummary: 'Please correct the following errors:',\n errorRequired: 'This field is required.',\n errorPattern: 'The value is invalid.',\n optionalLabelSuffix: '(optional)',\n },\n SubmitButton: {\n text: 'Send',\n sendText: 'Send',\n },\n SubmitIndicator: {\n label: 'Please wait',\n },\n Isolation: {\n commitButtonText: 'Add',\n },\n Step: {\n summaryTitle: 'Summary',\n stepHasError: 'The form contains errors.',\n },\n WizardEditButton: {\n text: 'Edit',\n },\n WizardPreviousButton: {\n text: 'Back',\n },\n WizardNextButton: {\n text: 'Next',\n },\n RemoveButton: {\n text: 'Remove',\n confirmRemoveText: 'Are you sure you want to delete this?',\n },\n InfoOverlaySuccess: {\n title: 'Thank you',\n description: 'We have received your information.',\n buttonText: 'Back to homepage',\n },\n InfoOverlayError: {\n title: 'Sorry, something went wrong',\n description: 'Please try again or contact us.',\n cancelButton: 'Back',\n retryButton: 'Try again',\n retryingText: 'Retrying...',\n },\n SectionViewContainer: {\n editButton: 'Edit',\n },\n SectionEditContainer: {\n doneButton: 'Done',\n cancelButton: 'Cancel',\n errorInSection: 'Please correct the errors above.',\n },\n IterateViewContainer: {\n removeButton: 'Remove',\n editButton: 'Edit',\n },\n IterateEditContainer: {\n removeButton: 'Remove',\n doneButton: 'Done',\n cancelButton: 'Cancel',\n resetButton: 'Reset',\n errorInContainer: 'Please correct the errors above.',\n confirmResetText: 'Are you sure you want to clear the changes?',\n },\n IteratePushContainer: {\n createButton: 'Add',\n itemsLimitReached: 'You have reached the limit of: {limit}',\n requireCommitText:\n 'You have changes that either need to be added or cleared.',\n },\n\n /**\n * Base fields\n */\n StringField: {\n errorMinLength:\n 'The value cannot be shorter than {minLength} characters.',\n errorMaxLength:\n 'The value cannot be longer than {maxLength} characters.',\n },\n NumberField: {\n errorMinimum: 'The value must be at least {minimum}.',\n errorMaximum: 'The value must be a maximum of {maximum}.',\n errorExclusiveMinimum:\n 'The value must be greater than {exclusiveMinimum}.',\n errorExclusiveMaximum:\n 'The value must be less than {exclusiveMaximum}.',\n errorMultipleOf: 'The value must be a multiple of {multipleOf}.',\n },\n BooleanField: {\n yes: 'Yes',\n no: 'No',\n },\n ToggleField: {\n yes: 'Yes',\n no: 'No',\n },\n\n /**\n * Feature fields\n */\n PostalAddress: {\n label: 'Postal address',\n errorRequired: 'You must enter a postal address.',\n errorPattern:\n 'Invalid postal address. Enter a valid postal address.',\n },\n StreetAddress: {\n label: 'Street address',\n errorRequired: 'You must enter a street address.',\n errorPattern:\n 'Invalid street address. Enter a valid street address.',\n },\n Date: {\n label: 'Date',\n errorRequired: 'You must provide a valid date.',\n errorMinDate: 'Chosen date cannot be before {date}.',\n errorMaxDate: 'Chosen date cannot be after {date}.',\n errorStartDateMinDate: 'Start date cannot be before {date}.',\n errorStartDateMaxDate: 'Start date cannot be after {date}.',\n errorEndDateMinDate: 'End date cannot be before {date}.',\n errorEndDateMaxDate: 'End date cannot be after {date}.',\n errorInvalidDate: 'Invalid date.',\n errorInvalidStartDate: 'Invalid start date.',\n errorInvalidEndDate: 'Invalid end date.',\n },\n Expiry: {\n label: 'Expiry date',\n errorMonth: '{month} is not a valid month.',\n errorYear: '{year} is not a valid year.',\n },\n Email: {\n label: 'Email address',\n errorRequired: 'You must enter a Email address.',\n errorPattern: 'Invalid Email address. Enter a valid Email address.',\n },\n FirstName: {\n label: 'Given name',\n errorRequired: 'You must enter a given name (first name).',\n errorPattern:\n 'Enter a given name (first name) using only letters and characters such as hyphens and spaces.',\n },\n LastName: {\n label: 'Surname',\n errorRequired: 'You must enter a surname (last name).',\n errorPattern:\n 'Enter a surname (last name) using only letters and characters such as hyphens and spaces.',\n },\n CompanyName: {\n label: 'Company name',\n errorRequired: 'You must enter a company name.',\n },\n NationalIdentityNumber: {\n label: 'National identity number (11 digits)',\n errorRequired: 'You must enter a national identity number.',\n errorFnr: 'Invalid national identity number.',\n errorFnrLength:\n 'Invalid national identity number. Enter a valid national identity number with 11 digits.',\n errorDnr: 'Invalid D number.',\n errorDnrLength:\n 'Invalid D number. Enter a valid d-number with 11 digits.',\n errorMinimumAgeValidator: 'Must be at least {age} years of age.',\n errorMinimumAgeValidatorLength:\n 'Invalid birth of date. Enter a valid birth of date (incl. century digit) with 7 digits.',\n },\n OrganizationNumber: {\n label: 'Organisation number',\n errorRequired: 'You must enter an organisation number.',\n errorOrgNo: 'Invalid organisation number.',\n errorOrgNoLength:\n 'Invalid organisation number. Enter a valid organisation number with 9 digits.',\n },\n BankAccountNumber: {\n label: 'Bank account',\n errorRequired: 'You must enter an account number.',\n errorBankAccountNumber: 'Invalid account number.',\n errorBankAccountNumberLength:\n 'Invalid account number. Enter a valid organisation number with 11 digits.',\n },\n PhoneNumber: {\n label: 'Mobile number',\n countryCodeLabel: 'Country code',\n errorRequired:\n 'Mobile number must be filled in. If you don’t have a mobile number, you can enter another phone number.',\n warningRequired:\n 'You have not entered a mobile number. You can still use this number if it is correct.',\n },\n PostalCodeAndCity: {\n label: 'Postcode and city', // Use British English\n invalidCode: 'Invalid postal code.',\n },\n PostalCode: {\n label: 'Postc.',\n errorRequired: 'You must enter a postal code.',\n errorPattern: 'This is not a valid postal code (four-digits).',\n },\n City: {\n label: 'City',\n errorRequired: 'You must enter a city name.',\n errorPattern:\n 'City names can only contain letters and valid characters such as hyphens and spaces.',\n },\n SelectCountry: {\n label: 'Country',\n placeholder: 'Select country',\n errorRequired: 'You must select a country from the list.',\n },\n SelectCurrency: {\n label: 'Currency',\n placeholder: 'Select currency',\n errorRequired: 'You must select a currency from the list.',\n },\n Password: {\n label: 'Password',\n ariaLabelShow: 'Show password',\n ariaLabelHide: 'Hide password',\n },\n Upload: {\n errorRequired: 'You must upload a file.',\n errorInvalidFiles: 'Remove all files that have errors.',\n },\n } satisfies (typeof nb)['nb-NO'],\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"en-GB.js","names":["Field","errorSummaryTitle","stateSummary","errorSummary","errorRequired","errorPattern","optionalLabelSuffix","SubmitButton","text","sendText","SubmitIndicator","label","Isolation","commitButtonText","preventUncommittedChangesText","Step","summaryTitle","stepHasError","WizardEditButton","WizardPreviousButton","WizardNextButton","RemoveButton","confirmRemoveText","InfoOverlaySuccess","title","description","buttonText","InfoOverlayError","cancelButton","retryButton","retryingText","SectionViewContainer","editButton","SectionEditContainer","doneButton","errorInSection","IterateViewContainer","removeButton","IterateEditContainer","resetButton","errorInContainer","confirmResetText","IteratePushContainer","createButton","itemsLimitReached","StringField","errorMinLength","errorMaxLength","NumberField","errorMinimum","errorMaximum","errorExclusiveMinimum","errorExclusiveMaximum","errorMultipleOf","BooleanField","yes","no","ToggleField","PostalAddress","StreetAddress","Date","errorMinDate","errorMaxDate","errorStartDateMinDate","errorStartDateMaxDate","errorEndDateMinDate","errorEndDateMaxDate","errorInvalidDate","errorInvalidStartDate","errorInvalidEndDate","Expiry","errorMonth","errorYear","Email","FirstName","LastName","CompanyName","NationalIdentityNumber","errorFnr","errorFnrLength","errorDnr","errorDnrLength","errorMinimumAgeValidator","errorMinimumAgeValidatorLength","OrganizationNumber","errorOrgNo","errorOrgNoLength","BankAccountNumber","errorBankAccountNumber","errorBankAccountNumberLength","PhoneNumber","countryCodeLabel","warningRequired","PostalCodeAndCity","invalidCode","PostalCode","City","SelectCountry","placeholder","SelectCurrency","Password","ariaLabelShow","ariaLabelHide","Upload","errorInvalidFiles"],"sources":["../../../../../../src/extensions/forms/constants/locales/en-GB.ts"],"sourcesContent":["import nb from './nb-NO'\nexport default {\n 'en-GB': {\n /**\n * General\n */\n Field: {\n errorSummaryTitle: 'Please correct the following errors',\n stateSummary: 'Summary:',\n errorSummary: 'Please correct the following errors:',\n errorRequired: 'This field is required.',\n errorPattern: 'The value is invalid.',\n optionalLabelSuffix: '(optional)',\n },\n SubmitButton: {\n text: 'Send',\n sendText: 'Send',\n },\n SubmitIndicator: {\n label: 'Please wait',\n },\n Isolation: {\n commitButtonText: 'Add',\n preventUncommittedChangesText:\n 'You have changes that either need to be added or cleared.',\n },\n Step: {\n summaryTitle: 'Summary',\n stepHasError: 'The form contains errors.',\n },\n WizardEditButton: {\n text: 'Edit',\n },\n WizardPreviousButton: {\n text: 'Back',\n },\n WizardNextButton: {\n text: 'Next',\n },\n RemoveButton: {\n text: 'Remove',\n confirmRemoveText: 'Are you sure you want to delete this?',\n },\n InfoOverlaySuccess: {\n title: 'Thank you',\n description: 'We have received your information.',\n buttonText: 'Back to homepage',\n },\n InfoOverlayError: {\n title: 'Sorry, something went wrong',\n description: 'Please try again or contact us.',\n cancelButton: 'Back',\n retryButton: 'Try again',\n retryingText: 'Retrying...',\n },\n SectionViewContainer: {\n editButton: 'Edit',\n },\n SectionEditContainer: {\n doneButton: 'Done',\n cancelButton: 'Cancel',\n errorInSection: 'Please correct the errors above.',\n },\n IterateViewContainer: {\n removeButton: 'Remove',\n editButton: 'Edit',\n },\n IterateEditContainer: {\n removeButton: 'Remove',\n doneButton: 'Done',\n cancelButton: 'Cancel',\n resetButton: 'Reset',\n errorInContainer: 'Please correct the errors above.',\n confirmResetText: 'Are you sure you want to clear the changes?',\n },\n IteratePushContainer: {\n createButton: 'Add',\n itemsLimitReached: 'You have reached the limit of: {limit}',\n },\n\n /**\n * Base fields\n */\n StringField: {\n errorMinLength:\n 'The value cannot be shorter than {minLength} characters.',\n errorMaxLength:\n 'The value cannot be longer than {maxLength} characters.',\n },\n NumberField: {\n errorMinimum: 'The value must be at least {minimum}.',\n errorMaximum: 'The value must be a maximum of {maximum}.',\n errorExclusiveMinimum:\n 'The value must be greater than {exclusiveMinimum}.',\n errorExclusiveMaximum:\n 'The value must be less than {exclusiveMaximum}.',\n errorMultipleOf: 'The value must be a multiple of {multipleOf}.',\n },\n BooleanField: {\n yes: 'Yes',\n no: 'No',\n },\n ToggleField: {\n yes: 'Yes',\n no: 'No',\n },\n\n /**\n * Feature fields\n */\n PostalAddress: {\n label: 'Postal address',\n errorRequired: 'You must enter a postal address.',\n errorPattern:\n 'Invalid postal address. Enter a valid postal address.',\n },\n StreetAddress: {\n label: 'Street address',\n errorRequired: 'You must enter a street address.',\n errorPattern:\n 'Invalid street address. Enter a valid street address.',\n },\n Date: {\n label: 'Date',\n errorRequired: 'You must provide a valid date.',\n errorMinDate: 'Chosen date cannot be before {date}.',\n errorMaxDate: 'Chosen date cannot be after {date}.',\n errorStartDateMinDate: 'Start date cannot be before {date}.',\n errorStartDateMaxDate: 'Start date cannot be after {date}.',\n errorEndDateMinDate: 'End date cannot be before {date}.',\n errorEndDateMaxDate: 'End date cannot be after {date}.',\n errorInvalidDate: 'Invalid date.',\n errorInvalidStartDate: 'Invalid start date.',\n errorInvalidEndDate: 'Invalid end date.',\n },\n Expiry: {\n label: 'Expiry date',\n errorMonth: '{month} is not a valid month.',\n errorYear: '{year} is not a valid year.',\n },\n Email: {\n label: 'Email address',\n errorRequired: 'You must enter a Email address.',\n errorPattern: 'Invalid Email address. Enter a valid Email address.',\n },\n FirstName: {\n label: 'Given name',\n errorRequired: 'You must enter a given name (first name).',\n errorPattern:\n 'Enter a given name (first name) using only letters and characters such as hyphens and spaces.',\n },\n LastName: {\n label: 'Surname',\n errorRequired: 'You must enter a surname (last name).',\n errorPattern:\n 'Enter a surname (last name) using only letters and characters such as hyphens and spaces.',\n },\n CompanyName: {\n label: 'Company name',\n errorRequired: 'You must enter a company name.',\n },\n NationalIdentityNumber: {\n label: 'National identity number (11 digits)',\n errorRequired: 'You must enter a national identity number.',\n errorFnr: 'Invalid national identity number.',\n errorFnrLength:\n 'Invalid national identity number. Enter a valid national identity number with 11 digits.',\n errorDnr: 'Invalid D number.',\n errorDnrLength:\n 'Invalid D number. Enter a valid d-number with 11 digits.',\n errorMinimumAgeValidator: 'Must be at least {age} years of age.',\n errorMinimumAgeValidatorLength:\n 'Invalid birth of date. Enter a valid birth of date (incl. century digit) with 7 digits.',\n },\n OrganizationNumber: {\n label: 'Organisation number',\n errorRequired: 'You must enter an organisation number.',\n errorOrgNo: 'Invalid organisation number.',\n errorOrgNoLength:\n 'Invalid organisation number. Enter a valid organisation number with 9 digits.',\n },\n BankAccountNumber: {\n label: 'Bank account',\n errorRequired: 'You must enter an account number.',\n errorBankAccountNumber: 'Invalid account number.',\n errorBankAccountNumberLength:\n 'Invalid account number. Enter a valid organisation number with 11 digits.',\n },\n PhoneNumber: {\n label: 'Mobile number',\n countryCodeLabel: 'Country code',\n errorRequired:\n 'Mobile number must be filled in. If you don’t have a mobile number, you can enter another phone number.',\n warningRequired:\n 'You have not entered a mobile number. You can still use this number if it is correct.',\n },\n PostalCodeAndCity: {\n label: 'Postcode and city', // Use British English\n invalidCode: 'Invalid postal code.',\n },\n PostalCode: {\n label: 'Postc.',\n errorRequired: 'You must enter a postal code.',\n errorPattern: 'This is not a valid postal code (four-digits).',\n },\n City: {\n label: 'City',\n errorRequired: 'You must enter a city name.',\n errorPattern:\n 'City names can only contain letters and valid characters such as hyphens and spaces.',\n },\n SelectCountry: {\n label: 'Country',\n placeholder: 'Select country',\n errorRequired: 'You must select a country from the list.',\n },\n SelectCurrency: {\n label: 'Currency',\n placeholder: 'Select currency',\n errorRequired: 'You must select a currency from the list.',\n },\n Password: {\n label: 'Password',\n ariaLabelShow: 'Show password',\n ariaLabelHide: 'Hide password',\n },\n Upload: {\n errorRequired: 'You must upload a file.',\n errorInvalidFiles: 'Remove all files that have errors.',\n },\n } satisfies (typeof nb)['nb-NO'],\n}\n"],"mappings":"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","ignoreList":[]}
@@ -23,6 +23,7 @@ declare const _default: {
23
23
  };
24
24
  Isolation: {
25
25
  commitButtonText: string;
26
+ preventUncommittedChangesText: string;
26
27
  };
27
28
  Step: {
28
29
  summaryTitle: string;
@@ -76,7 +77,6 @@ declare const _default: {
76
77
  IteratePushContainer: {
77
78
  createButton: string;
78
79
  itemsLimitReached: string;
79
- requireCommitText: string;
80
80
  };
81
81
  StringField: {
82
82
  errorMinLength: string;