@dnb/eufemia 10.57.1 → 10.58.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 (528) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/cjs/components/date-picker/DatePickerContext.d.ts +1 -1
  3. package/cjs/components/date-picker/DatePickerContext.js.map +1 -1
  4. package/cjs/components/date-picker/DatePickerFooter.js +5 -5
  5. package/cjs/components/date-picker/DatePickerFooter.js.map +1 -1
  6. package/cjs/components/date-picker/DatePickerProvider.js +2 -2
  7. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  8. package/cjs/components/date-picker/hooks/useDates.d.ts +1 -1
  9. package/cjs/components/date-picker/hooks/useDates.js +94 -23
  10. package/cjs/components/date-picker/hooks/useDates.js.map +1 -1
  11. package/cjs/components/dialog/parts/DialogAction.js +18 -16
  12. package/cjs/components/dialog/parts/DialogAction.js.map +1 -1
  13. package/cjs/components/number-format/NumberUtils.js +15 -15
  14. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  15. package/cjs/extensions/forms/DataContext/Context.d.ts +8 -5
  16. package/cjs/extensions/forms/DataContext/Context.js +0 -1
  17. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  18. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +4 -3
  19. package/cjs/extensions/forms/DataContext/Provider/Provider.js +2 -2
  20. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  21. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +1 -1
  22. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  23. package/cjs/extensions/forms/Field/Date/Date.js +2 -2
  24. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  25. package/cjs/extensions/forms/Field/Provider/FieldProvider.d.ts +3 -2
  26. package/cjs/extensions/forms/Field/Provider/FieldProvider.js.map +1 -1
  27. package/cjs/extensions/forms/Field/Upload/Upload.js +11 -3
  28. package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
  29. package/cjs/extensions/forms/Form/Element/Element.d.ts +2 -2
  30. package/cjs/extensions/forms/Form/Element/Element.js +50 -11
  31. package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
  32. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +7 -3
  33. package/cjs/extensions/forms/Form/Handler/Handler.js +23 -97
  34. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  35. package/cjs/extensions/forms/Form/Isolation/Isolation.d.ts +3 -3
  36. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  37. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +1 -1
  38. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
  39. package/cjs/extensions/forms/Form/Section/Section.d.ts +4 -4
  40. package/cjs/extensions/forms/Form/Section/Section.js +2 -1
  41. package/cjs/extensions/forms/Form/Section/Section.js.map +1 -1
  42. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +1 -1
  43. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
  44. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.d.ts +1 -1
  45. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.js +1 -0
  46. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
  47. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.css +10 -6
  48. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  49. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.scss +13 -7
  50. package/cjs/extensions/forms/Form/Section/style/themes/dnb-section-theme-sbanken.css +3 -0
  51. package/cjs/extensions/forms/Form/Section/style/themes/dnb-section-theme-sbanken.min.css +1 -0
  52. package/cjs/extensions/forms/Form/Section/style/themes/dnb-section-theme-sbanken.scss +7 -0
  53. package/cjs/extensions/forms/Form/Section/style/themes/dnb-section-theme-ui.css +4 -0
  54. package/cjs/extensions/forms/Form/Section/style/themes/dnb-section-theme-ui.min.css +1 -0
  55. package/cjs/extensions/forms/Form/Section/style/themes/dnb-section-theme-ui.scss +8 -0
  56. package/cjs/extensions/forms/Form/Section/style/themes/ui.d.ts +1 -0
  57. package/cjs/extensions/forms/Form/Section/style/themes/ui.js +4 -0
  58. package/cjs/extensions/forms/Form/Section/style/themes/ui.js.map +1 -0
  59. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  60. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  61. package/cjs/extensions/forms/Form/data-context/clearData.d.ts +2 -1
  62. package/cjs/extensions/forms/Form/data-context/clearData.js +1 -1
  63. package/cjs/extensions/forms/Form/data-context/clearData.js.map +1 -1
  64. package/cjs/extensions/forms/Form/data-context/getData.js +1 -1
  65. package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -1
  66. package/cjs/extensions/forms/Form/data-context/useData.js +1 -1
  67. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  68. package/cjs/extensions/forms/Form/data-context/useValidation.js +2 -2
  69. package/cjs/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  70. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.d.ts +3 -2
  71. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js +9 -5
  72. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  73. package/cjs/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +3 -0
  74. package/cjs/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -1
  75. package/cjs/extensions/forms/Iterate/Count/Count.d.ts +4 -3
  76. package/cjs/extensions/forms/Iterate/Count/Count.js.map +1 -1
  77. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +1 -1
  78. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +7 -4
  79. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  80. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +2 -2
  81. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  82. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +1 -1
  83. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  84. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.d.ts +3 -1
  85. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +27 -6
  86. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  87. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButtonDocs.js +5 -0
  88. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButtonDocs.js.map +1 -1
  89. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js +8 -4
  90. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  91. package/cjs/extensions/forms/Iterate/ViewContainer/RemoveButton.d.ts +2 -1
  92. package/cjs/extensions/forms/Iterate/ViewContainer/RemoveButton.js +4 -3
  93. package/cjs/extensions/forms/Iterate/ViewContainer/RemoveButton.js.map +1 -1
  94. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +1 -1
  95. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +3 -2
  96. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  97. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +2 -2
  98. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  99. package/cjs/extensions/forms/Iterate/hooks/useItem.d.ts +5 -1
  100. package/cjs/extensions/forms/Iterate/hooks/useItem.js.map +1 -1
  101. package/cjs/extensions/forms/Tools/ListAllProps.d.ts +7 -7
  102. package/cjs/extensions/forms/Tools/ListAllProps.js.map +1 -1
  103. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js +1 -1
  104. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  105. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +1 -1
  106. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  107. package/cjs/extensions/forms/Wizard/hooks/useStep.d.ts +2 -2
  108. package/cjs/extensions/forms/Wizard/hooks/useStep.js +1 -1
  109. package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  110. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.scss +2 -0
  111. package/cjs/extensions/forms/constants/countries.js +1 -1
  112. package/cjs/extensions/forms/constants/countries.js.map +1 -1
  113. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  114. package/cjs/extensions/forms/constants/locales/en-GB.js +2 -1
  115. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  116. package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -0
  117. package/cjs/extensions/forms/constants/locales/index.d.ts +2 -0
  118. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  119. package/cjs/extensions/forms/constants/locales/nb-NO.js +2 -1
  120. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  121. package/cjs/extensions/forms/hooks/useDataContext.js +1 -1
  122. package/cjs/extensions/forms/hooks/useDataContext.js.map +1 -1
  123. package/cjs/extensions/forms/hooks/useSnapshot.d.ts +3 -2
  124. package/cjs/extensions/forms/hooks/useSnapshot.js.map +1 -1
  125. package/cjs/extensions/forms/style/dnb-forms.css +10 -6
  126. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  127. package/cjs/extensions/forms/types.d.ts +4 -4
  128. package/cjs/extensions/forms/types.js.map +1 -1
  129. package/cjs/extensions/forms/utils/json-pointer/json-pointer.d.ts +2 -2
  130. package/cjs/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -1
  131. package/cjs/shared/Eufemia.d.ts +1 -1
  132. package/cjs/shared/Eufemia.js +2 -2
  133. package/cjs/shared/Eufemia.js.map +1 -1
  134. package/cjs/shared/helpers/useSharedState.d.ts +19 -13
  135. package/cjs/shared/helpers/useSharedState.js +23 -11
  136. package/cjs/shared/helpers/useSharedState.js.map +1 -1
  137. package/cjs/style/core/scopes.scss +1 -1
  138. package/cjs/style/dnb-ui-basis.css +1 -1
  139. package/cjs/style/dnb-ui-basis.min.css +1 -1
  140. package/cjs/style/dnb-ui-body.css +1 -1
  141. package/cjs/style/dnb-ui-body.min.css +1 -1
  142. package/cjs/style/dnb-ui-components.css +10 -6
  143. package/cjs/style/dnb-ui-components.min.css +1 -1
  144. package/cjs/style/dnb-ui-core.css +1 -1
  145. package/cjs/style/dnb-ui-core.min.css +1 -1
  146. package/cjs/style/dnb-ui-extensions.css +10 -6
  147. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  148. package/cjs/style/dnb-ui-forms.css +10 -6
  149. package/cjs/style/dnb-ui-forms.min.css +1 -1
  150. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +25 -12
  151. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  152. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +15 -6
  153. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  154. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  155. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +15 -6
  156. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  157. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  158. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +24 -12
  159. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  160. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +14 -6
  161. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
  162. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  163. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +14 -6
  164. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
  165. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  166. package/cjs/style/themes/theme-ui/ui-theme-components.css +25 -12
  167. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  168. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +15 -6
  169. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  170. package/cjs/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  171. package/cjs/style/themes/theme-ui/ui-theme-forms.css +15 -6
  172. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  173. package/cjs/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  174. package/components/date-picker/DatePickerContext.d.ts +1 -1
  175. package/components/date-picker/DatePickerContext.js.map +1 -1
  176. package/components/date-picker/DatePickerFooter.js +5 -5
  177. package/components/date-picker/DatePickerFooter.js.map +1 -1
  178. package/components/date-picker/DatePickerProvider.js +2 -2
  179. package/components/date-picker/DatePickerProvider.js.map +1 -1
  180. package/components/date-picker/hooks/useDates.d.ts +1 -1
  181. package/components/date-picker/hooks/useDates.js +95 -24
  182. package/components/date-picker/hooks/useDates.js.map +1 -1
  183. package/components/dialog/parts/DialogAction.js +19 -17
  184. package/components/dialog/parts/DialogAction.js.map +1 -1
  185. package/components/number-format/NumberUtils.js +15 -15
  186. package/components/number-format/NumberUtils.js.map +1 -1
  187. package/es/components/date-picker/DatePickerContext.d.ts +1 -1
  188. package/es/components/date-picker/DatePickerContext.js.map +1 -1
  189. package/es/components/date-picker/DatePickerFooter.js +5 -5
  190. package/es/components/date-picker/DatePickerFooter.js.map +1 -1
  191. package/es/components/date-picker/DatePickerProvider.js +2 -2
  192. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  193. package/es/components/date-picker/hooks/useDates.d.ts +1 -1
  194. package/es/components/date-picker/hooks/useDates.js +87 -17
  195. package/es/components/date-picker/hooks/useDates.js.map +1 -1
  196. package/es/components/dialog/parts/DialogAction.js +19 -17
  197. package/es/components/dialog/parts/DialogAction.js.map +1 -1
  198. package/es/components/number-format/NumberUtils.js +15 -15
  199. package/es/components/number-format/NumberUtils.js.map +1 -1
  200. package/es/extensions/forms/DataContext/Context.d.ts +8 -5
  201. package/es/extensions/forms/DataContext/Context.js +0 -1
  202. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  203. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +4 -3
  204. package/es/extensions/forms/DataContext/Provider/Provider.js +3 -3
  205. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  206. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +1 -1
  207. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  208. package/es/extensions/forms/Field/Date/Date.js +2 -2
  209. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  210. package/es/extensions/forms/Field/Provider/FieldProvider.d.ts +3 -2
  211. package/es/extensions/forms/Field/Provider/FieldProvider.js.map +1 -1
  212. package/es/extensions/forms/Field/Upload/Upload.js +6 -1
  213. package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
  214. package/es/extensions/forms/Form/Element/Element.d.ts +2 -2
  215. package/es/extensions/forms/Form/Element/Element.js +45 -12
  216. package/es/extensions/forms/Form/Element/Element.js.map +1 -1
  217. package/es/extensions/forms/Form/Handler/Handler.d.ts +7 -3
  218. package/es/extensions/forms/Form/Handler/Handler.js +24 -93
  219. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  220. package/es/extensions/forms/Form/Isolation/Isolation.d.ts +3 -3
  221. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  222. package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +1 -1
  223. package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
  224. package/es/extensions/forms/Form/Section/Section.d.ts +4 -4
  225. package/es/extensions/forms/Form/Section/Section.js +2 -1
  226. package/es/extensions/forms/Form/Section/Section.js.map +1 -1
  227. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +1 -1
  228. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
  229. package/es/extensions/forms/Form/Section/containers/SectionContainer.d.ts +1 -1
  230. package/es/extensions/forms/Form/Section/containers/SectionContainer.js +1 -0
  231. package/es/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
  232. package/es/extensions/forms/Form/Section/style/dnb-form-section.css +10 -6
  233. package/es/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  234. package/es/extensions/forms/Form/Section/style/dnb-form-section.scss +13 -7
  235. package/es/extensions/forms/Form/Section/style/themes/dnb-section-theme-sbanken.css +3 -0
  236. package/es/extensions/forms/Form/Section/style/themes/dnb-section-theme-sbanken.min.css +1 -0
  237. package/es/extensions/forms/Form/Section/style/themes/dnb-section-theme-sbanken.scss +7 -0
  238. package/es/extensions/forms/Form/Section/style/themes/dnb-section-theme-ui.css +4 -0
  239. package/es/extensions/forms/Form/Section/style/themes/dnb-section-theme-ui.min.css +1 -0
  240. package/es/extensions/forms/Form/Section/style/themes/dnb-section-theme-ui.scss +8 -0
  241. package/es/extensions/forms/Form/Section/style/themes/ui.d.ts +1 -0
  242. package/es/extensions/forms/Form/Section/style/themes/ui.js +1 -0
  243. package/es/extensions/forms/Form/Section/style/themes/ui.js.map +1 -0
  244. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  245. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  246. package/es/extensions/forms/Form/data-context/clearData.d.ts +2 -1
  247. package/es/extensions/forms/Form/data-context/clearData.js +2 -2
  248. package/es/extensions/forms/Form/data-context/clearData.js.map +1 -1
  249. package/es/extensions/forms/Form/data-context/getData.js +2 -2
  250. package/es/extensions/forms/Form/data-context/getData.js.map +1 -1
  251. package/es/extensions/forms/Form/data-context/useData.js +2 -2
  252. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  253. package/es/extensions/forms/Form/data-context/useValidation.js +3 -3
  254. package/es/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  255. package/es/extensions/forms/Iterate/Array/ArrayItemArea.d.ts +3 -2
  256. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js +9 -5
  257. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  258. package/es/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +3 -0
  259. package/es/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -1
  260. package/es/extensions/forms/Iterate/Count/Count.d.ts +4 -3
  261. package/es/extensions/forms/Iterate/Count/Count.js.map +1 -1
  262. package/es/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +1 -1
  263. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js +7 -4
  264. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  265. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +2 -2
  266. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  267. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +1 -1
  268. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  269. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.d.ts +3 -1
  270. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +25 -7
  271. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  272. package/es/extensions/forms/Iterate/RemoveButton/RemoveButtonDocs.js +5 -0
  273. package/es/extensions/forms/Iterate/RemoveButton/RemoveButtonDocs.js.map +1 -1
  274. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js +8 -4
  275. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  276. package/es/extensions/forms/Iterate/ViewContainer/RemoveButton.d.ts +2 -1
  277. package/es/extensions/forms/Iterate/ViewContainer/RemoveButton.js +4 -3
  278. package/es/extensions/forms/Iterate/ViewContainer/RemoveButton.js.map +1 -1
  279. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +1 -1
  280. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +3 -2
  281. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  282. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +2 -2
  283. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  284. package/es/extensions/forms/Iterate/hooks/useItem.d.ts +5 -1
  285. package/es/extensions/forms/Iterate/hooks/useItem.js.map +1 -1
  286. package/es/extensions/forms/Tools/ListAllProps.d.ts +7 -7
  287. package/es/extensions/forms/Tools/ListAllProps.js.map +1 -1
  288. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js +2 -2
  289. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  290. package/es/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
  291. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  292. package/es/extensions/forms/Wizard/hooks/useStep.d.ts +2 -2
  293. package/es/extensions/forms/Wizard/hooks/useStep.js +2 -2
  294. package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  295. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.scss +2 -0
  296. package/es/extensions/forms/constants/countries.js +1 -1
  297. package/es/extensions/forms/constants/countries.js.map +1 -1
  298. package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  299. package/es/extensions/forms/constants/locales/en-GB.js +2 -1
  300. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  301. package/es/extensions/forms/constants/locales/en-US.d.ts +1 -0
  302. package/es/extensions/forms/constants/locales/index.d.ts +2 -0
  303. package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  304. package/es/extensions/forms/constants/locales/nb-NO.js +2 -1
  305. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  306. package/es/extensions/forms/hooks/useDataContext.js +2 -2
  307. package/es/extensions/forms/hooks/useDataContext.js.map +1 -1
  308. package/es/extensions/forms/hooks/useSnapshot.d.ts +3 -2
  309. package/es/extensions/forms/hooks/useSnapshot.js.map +1 -1
  310. package/es/extensions/forms/style/dnb-forms.css +10 -6
  311. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  312. package/es/extensions/forms/types.d.ts +4 -4
  313. package/es/extensions/forms/types.js.map +1 -1
  314. package/es/extensions/forms/utils/json-pointer/json-pointer.d.ts +2 -2
  315. package/es/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -1
  316. package/es/shared/Eufemia.d.ts +1 -1
  317. package/es/shared/Eufemia.js +2 -2
  318. package/es/shared/Eufemia.js.map +1 -1
  319. package/es/shared/helpers/useSharedState.d.ts +19 -13
  320. package/es/shared/helpers/useSharedState.js +22 -11
  321. package/es/shared/helpers/useSharedState.js.map +1 -1
  322. package/es/style/core/scopes.scss +1 -1
  323. package/es/style/dnb-ui-basis.css +1 -1
  324. package/es/style/dnb-ui-basis.min.css +1 -1
  325. package/es/style/dnb-ui-body.css +1 -1
  326. package/es/style/dnb-ui-body.min.css +1 -1
  327. package/es/style/dnb-ui-components.css +10 -6
  328. package/es/style/dnb-ui-components.min.css +1 -1
  329. package/es/style/dnb-ui-core.css +1 -1
  330. package/es/style/dnb-ui-core.min.css +1 -1
  331. package/es/style/dnb-ui-extensions.css +10 -6
  332. package/es/style/dnb-ui-extensions.min.css +1 -1
  333. package/es/style/dnb-ui-forms.css +10 -6
  334. package/es/style/dnb-ui-forms.min.css +1 -1
  335. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +25 -12
  336. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  337. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +15 -6
  338. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  339. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  340. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +15 -6
  341. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  342. package/es/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  343. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +24 -12
  344. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  345. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +14 -6
  346. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
  347. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  348. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +14 -6
  349. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
  350. package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  351. package/es/style/themes/theme-ui/ui-theme-components.css +25 -12
  352. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  353. package/es/style/themes/theme-ui/ui-theme-extensions.css +15 -6
  354. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  355. package/es/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  356. package/es/style/themes/theme-ui/ui-theme-forms.css +15 -6
  357. package/es/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  358. package/es/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  359. package/esm/dnb-ui-basis.min.mjs +1 -1
  360. package/esm/dnb-ui-components.min.mjs +1 -1
  361. package/esm/dnb-ui-elements.min.mjs +1 -1
  362. package/esm/dnb-ui-extensions.min.mjs +1 -1
  363. package/esm/dnb-ui-lib.min.mjs +1 -1
  364. package/extensions/forms/DataContext/Context.d.ts +8 -5
  365. package/extensions/forms/DataContext/Context.js +0 -1
  366. package/extensions/forms/DataContext/Context.js.map +1 -1
  367. package/extensions/forms/DataContext/Provider/Provider.d.ts +4 -3
  368. package/extensions/forms/DataContext/Provider/Provider.js +3 -3
  369. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  370. package/extensions/forms/DataContext/Provider/ProviderDocs.js +1 -1
  371. package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  372. package/extensions/forms/Field/Date/Date.js +2 -2
  373. package/extensions/forms/Field/Date/Date.js.map +1 -1
  374. package/extensions/forms/Field/Provider/FieldProvider.d.ts +3 -2
  375. package/extensions/forms/Field/Provider/FieldProvider.js.map +1 -1
  376. package/extensions/forms/Field/Upload/Upload.js +11 -3
  377. package/extensions/forms/Field/Upload/Upload.js.map +1 -1
  378. package/extensions/forms/Form/Element/Element.d.ts +2 -2
  379. package/extensions/forms/Form/Element/Element.js +50 -13
  380. package/extensions/forms/Form/Element/Element.js.map +1 -1
  381. package/extensions/forms/Form/Handler/Handler.d.ts +7 -3
  382. package/extensions/forms/Form/Handler/Handler.js +24 -97
  383. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  384. package/extensions/forms/Form/Isolation/Isolation.d.ts +3 -3
  385. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  386. package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +1 -1
  387. package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
  388. package/extensions/forms/Form/Section/Section.d.ts +4 -4
  389. package/extensions/forms/Form/Section/Section.js +2 -1
  390. package/extensions/forms/Form/Section/Section.js.map +1 -1
  391. package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +1 -1
  392. package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
  393. package/extensions/forms/Form/Section/containers/SectionContainer.d.ts +1 -1
  394. package/extensions/forms/Form/Section/containers/SectionContainer.js +1 -0
  395. package/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
  396. package/extensions/forms/Form/Section/style/dnb-form-section.css +10 -6
  397. package/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  398. package/extensions/forms/Form/Section/style/dnb-form-section.scss +13 -7
  399. package/extensions/forms/Form/Section/style/themes/dnb-section-theme-sbanken.css +3 -0
  400. package/extensions/forms/Form/Section/style/themes/dnb-section-theme-sbanken.min.css +1 -0
  401. package/extensions/forms/Form/Section/style/themes/dnb-section-theme-sbanken.scss +7 -0
  402. package/extensions/forms/Form/Section/style/themes/dnb-section-theme-ui.css +4 -0
  403. package/extensions/forms/Form/Section/style/themes/dnb-section-theme-ui.min.css +1 -0
  404. package/extensions/forms/Form/Section/style/themes/dnb-section-theme-ui.scss +8 -0
  405. package/extensions/forms/Form/Section/style/themes/ui.d.ts +1 -0
  406. package/extensions/forms/Form/Section/style/themes/ui.js +1 -0
  407. package/extensions/forms/Form/Section/style/themes/ui.js.map +1 -0
  408. package/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  409. package/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  410. package/extensions/forms/Form/data-context/clearData.d.ts +2 -1
  411. package/extensions/forms/Form/data-context/clearData.js +2 -2
  412. package/extensions/forms/Form/data-context/clearData.js.map +1 -1
  413. package/extensions/forms/Form/data-context/getData.js +2 -2
  414. package/extensions/forms/Form/data-context/getData.js.map +1 -1
  415. package/extensions/forms/Form/data-context/useData.js +2 -2
  416. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  417. package/extensions/forms/Form/data-context/useValidation.js +3 -3
  418. package/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  419. package/extensions/forms/Iterate/Array/ArrayItemArea.d.ts +3 -2
  420. package/extensions/forms/Iterate/Array/ArrayItemArea.js +9 -5
  421. package/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  422. package/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +3 -0
  423. package/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -1
  424. package/extensions/forms/Iterate/Count/Count.d.ts +4 -3
  425. package/extensions/forms/Iterate/Count/Count.js.map +1 -1
  426. package/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +1 -1
  427. package/extensions/forms/Iterate/EditContainer/EditContainer.js +7 -4
  428. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  429. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +2 -2
  430. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  431. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +1 -1
  432. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  433. package/extensions/forms/Iterate/RemoveButton/RemoveButton.d.ts +3 -1
  434. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +26 -7
  435. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  436. package/extensions/forms/Iterate/RemoveButton/RemoveButtonDocs.js +5 -0
  437. package/extensions/forms/Iterate/RemoveButton/RemoveButtonDocs.js.map +1 -1
  438. package/extensions/forms/Iterate/Toolbar/Toolbar.js +8 -4
  439. package/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  440. package/extensions/forms/Iterate/ViewContainer/RemoveButton.d.ts +2 -1
  441. package/extensions/forms/Iterate/ViewContainer/RemoveButton.js +4 -3
  442. package/extensions/forms/Iterate/ViewContainer/RemoveButton.js.map +1 -1
  443. package/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +1 -1
  444. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +3 -2
  445. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  446. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +2 -2
  447. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  448. package/extensions/forms/Iterate/hooks/useItem.d.ts +5 -1
  449. package/extensions/forms/Iterate/hooks/useItem.js.map +1 -1
  450. package/extensions/forms/Tools/ListAllProps.d.ts +7 -7
  451. package/extensions/forms/Tools/ListAllProps.js.map +1 -1
  452. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js +2 -2
  453. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  454. package/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
  455. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  456. package/extensions/forms/Wizard/hooks/useStep.d.ts +2 -2
  457. package/extensions/forms/Wizard/hooks/useStep.js +2 -2
  458. package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  459. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.scss +2 -0
  460. package/extensions/forms/constants/countries.js +1 -1
  461. package/extensions/forms/constants/countries.js.map +1 -1
  462. package/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  463. package/extensions/forms/constants/locales/en-GB.js +2 -1
  464. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  465. package/extensions/forms/constants/locales/en-US.d.ts +1 -0
  466. package/extensions/forms/constants/locales/index.d.ts +2 -0
  467. package/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  468. package/extensions/forms/constants/locales/nb-NO.js +2 -1
  469. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  470. package/extensions/forms/hooks/useDataContext.js +2 -2
  471. package/extensions/forms/hooks/useDataContext.js.map +1 -1
  472. package/extensions/forms/hooks/useSnapshot.d.ts +3 -2
  473. package/extensions/forms/hooks/useSnapshot.js.map +1 -1
  474. package/extensions/forms/style/dnb-forms.css +10 -6
  475. package/extensions/forms/style/dnb-forms.min.css +1 -1
  476. package/extensions/forms/types.d.ts +4 -4
  477. package/extensions/forms/types.js.map +1 -1
  478. package/extensions/forms/utils/json-pointer/json-pointer.d.ts +2 -2
  479. package/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -1
  480. package/package.json +1 -1
  481. package/shared/Eufemia.d.ts +1 -1
  482. package/shared/Eufemia.js +2 -2
  483. package/shared/Eufemia.js.map +1 -1
  484. package/shared/helpers/useSharedState.d.ts +19 -13
  485. package/shared/helpers/useSharedState.js +22 -11
  486. package/shared/helpers/useSharedState.js.map +1 -1
  487. package/style/core/scopes.scss +1 -1
  488. package/style/dnb-ui-basis.css +1 -1
  489. package/style/dnb-ui-basis.min.css +1 -1
  490. package/style/dnb-ui-body.css +1 -1
  491. package/style/dnb-ui-body.min.css +1 -1
  492. package/style/dnb-ui-components.css +10 -6
  493. package/style/dnb-ui-components.min.css +1 -1
  494. package/style/dnb-ui-core.css +1 -1
  495. package/style/dnb-ui-core.min.css +1 -1
  496. package/style/dnb-ui-extensions.css +10 -6
  497. package/style/dnb-ui-extensions.min.css +1 -1
  498. package/style/dnb-ui-forms.css +10 -6
  499. package/style/dnb-ui-forms.min.css +1 -1
  500. package/style/themes/theme-eiendom/eiendom-theme-components.css +25 -12
  501. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  502. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +15 -6
  503. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  504. package/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  505. package/style/themes/theme-eiendom/eiendom-theme-forms.css +15 -6
  506. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  507. package/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  508. package/style/themes/theme-sbanken/sbanken-theme-components.css +24 -12
  509. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  510. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +14 -6
  511. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
  512. package/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  513. package/style/themes/theme-sbanken/sbanken-theme-forms.css +14 -6
  514. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
  515. package/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  516. package/style/themes/theme-ui/ui-theme-components.css +25 -12
  517. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  518. package/style/themes/theme-ui/ui-theme-extensions.css +15 -6
  519. package/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  520. package/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  521. package/style/themes/theme-ui/ui-theme-forms.css +15 -6
  522. package/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  523. package/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  524. package/umd/dnb-ui-basis.min.js +1 -1
  525. package/umd/dnb-ui-components.min.js +1 -1
  526. package/umd/dnb-ui-elements.min.js +1 -1
  527. package/umd/dnb-ui-extensions.min.js +1 -1
  528. package/umd/dnb-ui-lib.min.js +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,25 @@
3
3
  All notable changes to @dnb/eufemia will be documented in this file. See
4
4
  [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [10.58.0](https://github.com/dnbexperience/eufemia/compare/v10.57.1...v10.58.0) (2024-11-29)
7
+
8
+
9
+ ### :sparkles: Features
10
+
11
+ * **Forms:** add `showConfirmDialog` to Iterate.RemoveButton ([#4330](https://github.com/dnbexperience/eufemia/issues/4330)) ([76bddf0](https://github.com/dnbexperience/eufemia/commit/76bddf0adb7e673c608526de2e6f70195a98a8fd))
12
+ * **Forms:** add `variant="filled"` and `toolbarVariant="custom"` to Iterate.EditContainer and Iterate.ViewContainer ([#4329](https://github.com/dnbexperience/eufemia/issues/4329)) ([b2b9eef](https://github.com/dnbexperience/eufemia/commit/b2b9eef82084185fdc693dba9320f95383aba7e2))
13
+ * **Forms:** add support for using a function references instead of a string based id ([#4331](https://github.com/dnbexperience/eufemia/issues/4331)) ([a6e3bc3](https://github.com/dnbexperience/eufemia/commit/a6e3bc31009dd3f3af944b2fd6657b036fe5cbf0))
14
+ * **Forms:** enhance typing and add docs on how to deal with TypeScript types ([#4343](https://github.com/dnbexperience/eufemia/issues/4343)) ([10b199b](https://github.com/dnbexperience/eufemia/commit/10b199bfab4a040bd39e12a06df74385286d7c66))
15
+ * **Forms:** introduce `decoupleForm` prop to Form.Handler ([#4332](https://github.com/dnbexperience/eufemia/issues/4332)) ([0b02b6e](https://github.com/dnbexperience/eufemia/commit/0b02b6e84687c8e44f44a935c009e1c8e5c42519))
16
+
17
+
18
+ ### :bug: Bug Fixes
19
+
20
+ * **DatePicker:** make sure the picker and input only reacts to the props that have changed ([#4342](https://github.com/dnbexperience/eufemia/issues/4342)) ([4cd52a3](https://github.com/dnbexperience/eufemia/commit/4cd52a3ac3e4c1e53332de7d920e104a68d87d7f))
21
+ * **Forms.Card:** remove outline when variant="basic" on Section containers when used in Wizard ([#4336](https://github.com/dnbexperience/eufemia/issues/4336)) ([ebad212](https://github.com/dnbexperience/eufemia/commit/ebad212df87cf2cd207fc18d885ff5b7b6e3d0fc))
22
+ * **forms:** add `sessionStorageId` support to Field.Upload with empty file list rendering ([#4339](https://github.com/dnbexperience/eufemia/issues/4339)) ([d02a0af](https://github.com/dnbexperience/eufemia/commit/d02a0afa838e3eb0816d0d8a9d026f707c692c1a))
23
+ * **NumberFormat:** improve regex for parsing phone numbers with country codes ([#4340](https://github.com/dnbexperience/eufemia/issues/4340)) ([96613ed](https://github.com/dnbexperience/eufemia/commit/96613ed769d80bcd0d51fed6e739ef0c405a3cd6)), closes [#4337](https://github.com/dnbexperience/eufemia/issues/4337)
24
+
6
25
  ## [10.57.1](https://github.com/dnbexperience/eufemia/compare/v10.57.0...v10.57.1) (2024-11-22)
7
26
 
8
27
 
@@ -14,7 +14,7 @@ export type DatePickerContextValues = ContextProps & DatePickerDates & {
14
14
  translation: ContextProps['translation'];
15
15
  views: Array<CalendarView>;
16
16
  hasHadValidDate: boolean;
17
- previousDates: DatePickerDateProps;
17
+ previousDateProps: DatePickerDateProps;
18
18
  updateDates: (dates: DatePickerDates, callback?: (dates: DatePickerDates) => void) => void;
19
19
  setState?: (state: DatePickerProviderState) => void;
20
20
  setViews: (views: Array<CalendarView>, callback?: () => void) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerContext.js","names":["_react","_interopRequireDefault","require","obj","__esModule","default","DatePickerContext","React","createContext","_default","exports"],"sources":["../../../../src/components/date-picker/DatePickerContext.ts"],"sourcesContent":["/**\n * Web DatePicker Context\n *\n */\n\nimport React from 'react'\nimport { DatePickerAllProps, DisplayPickerEvent } from './DatePicker'\nimport { ContextProps } from '../../shared/Context'\nimport {\n DatePickerChangeEvent,\n DatePickerProviderState,\n GetReturnObjectParams,\n ReturnObject,\n} from './DatePickerProvider'\nimport { DatePickerDateProps, DatePickerDates } from './hooks/useDates'\nimport { CalendarView } from './hooks/useViews'\n\nexport type DateType = Date | string\n\nexport type DatePickerContextValues = ContextProps &\n DatePickerDates & {\n props: DatePickerAllProps\n translation: ContextProps['translation']\n views: Array<CalendarView>\n hasHadValidDate: boolean\n previousDates: DatePickerDateProps\n updateDates: (\n dates: DatePickerDates,\n callback?: (dates: DatePickerDates) => void\n ) => void\n setState?: (state: DatePickerProviderState) => void\n setViews: (views: Array<CalendarView>, callback?: () => void) => void\n forceViewMonthChange: () => void\n callOnChangeHandler: <E>(event: DatePickerChangeEvent<E>) => void\n hidePicker: (event: DisplayPickerEvent) => void\n getReturnObject: <E>(\n params: GetReturnObjectParams<E>\n ) => ReturnObject<E>\n }\n\nconst DatePickerContext = React.createContext<DatePickerContextValues>(\n {} as DatePickerContextValues\n)\n\nexport default DatePickerContext\n"],"mappings":";;;;;;AAKA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAmCzB,MAAMG,iBAAiB,GAAGC,cAAK,CAACC,aAAa,CAC3C,CAAC,CACH,CAAC;AAAA,IAAAC,QAAA,GAEcH,iBAAiB;AAAAI,OAAA,CAAAL,OAAA,GAAAI,QAAA"}
1
+ {"version":3,"file":"DatePickerContext.js","names":["_react","_interopRequireDefault","require","obj","__esModule","default","DatePickerContext","React","createContext","_default","exports"],"sources":["../../../../src/components/date-picker/DatePickerContext.ts"],"sourcesContent":["/**\n * Web DatePicker Context\n *\n */\n\nimport React from 'react'\nimport { DatePickerAllProps, DisplayPickerEvent } from './DatePicker'\nimport { ContextProps } from '../../shared/Context'\nimport {\n DatePickerChangeEvent,\n DatePickerProviderState,\n GetReturnObjectParams,\n ReturnObject,\n} from './DatePickerProvider'\nimport { DatePickerDateProps, DatePickerDates } from './hooks/useDates'\nimport { CalendarView } from './hooks/useViews'\n\nexport type DateType = Date | string\n\nexport type DatePickerContextValues = ContextProps &\n DatePickerDates & {\n props: DatePickerAllProps\n translation: ContextProps['translation']\n views: Array<CalendarView>\n hasHadValidDate: boolean\n previousDateProps: DatePickerDateProps\n updateDates: (\n dates: DatePickerDates,\n callback?: (dates: DatePickerDates) => void\n ) => void\n setState?: (state: DatePickerProviderState) => void\n setViews: (views: Array<CalendarView>, callback?: () => void) => void\n forceViewMonthChange: () => void\n callOnChangeHandler: <E>(event: DatePickerChangeEvent<E>) => void\n hidePicker: (event: DisplayPickerEvent) => void\n getReturnObject: <E>(\n params: GetReturnObjectParams<E>\n ) => ReturnObject<E>\n }\n\nconst DatePickerContext = React.createContext<DatePickerContextValues>(\n {} as DatePickerContextValues\n)\n\nexport default DatePickerContext\n"],"mappings":";;;;;;AAKA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAmCzB,MAAMG,iBAAiB,GAAGC,cAAK,CAACC,aAAa,CAC3C,CAAC,CACH,CAAC;AAAA,IAAAC,QAAA,GAEcH,iBAAiB;AAAAI,OAAA,CAAAL,OAAA,GAAAI,QAAA"}
@@ -31,7 +31,7 @@ function DatePickerFooter(_ref) {
31
31
  } = _ref;
32
32
  const {
33
33
  updateDates,
34
- previousDates,
34
+ previousDateProps,
35
35
  props: contextProps
36
36
  } = (0, _react.useContext)(_DatePickerContext.default);
37
37
  const {
@@ -52,12 +52,12 @@ function DatePickerFooter(_ref) {
52
52
  if (args && args.event) {
53
53
  args.event.persist();
54
54
  }
55
- const startDate = previousDates.startDate ? (0, _DatePickerCalc.convertStringToDate)(previousDates.startDate, {
55
+ const startDate = previousDateProps.startDate ? (0, _DatePickerCalc.convertStringToDate)(previousDateProps.startDate, {
56
56
  dateFormat
57
- }) : previousDates.date ? (0, _DatePickerCalc.convertStringToDate)(previousDates.date, {
57
+ }) : previousDateProps.date ? (0, _DatePickerCalc.convertStringToDate)(previousDateProps.date, {
58
58
  dateFormat
59
59
  }) : null;
60
- const endDate = previousDates.endDate ? (0, _DatePickerCalc.convertStringToDate)(previousDates.endDate, {
60
+ const endDate = previousDateProps.endDate ? (0, _DatePickerCalc.convertStringToDate)(previousDateProps.endDate, {
61
61
  dateFormat
62
62
  }) : startDate;
63
63
  updateDates({
@@ -66,7 +66,7 @@ function DatePickerFooter(_ref) {
66
66
  }, dates => {
67
67
  onCancel === null || onCancel === void 0 ? void 0 : onCancel(_objectSpread(_objectSpread({}, args), dates));
68
68
  });
69
- }, [dateFormat, updateDates, previousDates, onCancel]);
69
+ }, [dateFormat, updateDates, previousDateProps, onCancel]);
70
70
  const onResetHandler = (0, _react.useCallback)(args => {
71
71
  if (args && args.event) {
72
72
  args.event.persist();
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerFooter.js","names":["_react","_interopRequireWildcard","require","_Button","_interopRequireDefault","_DatePickerContext","_DatePickerCalc","_shared","_span","_span2","_span3","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","DatePickerFooter","_ref","isRange","submitButtonText","cancelButtonText","resetButtonText","onSubmit","onCancel","onReset","updateDates","previousDates","props","contextProps","useContext","DatePickerContext","showResetButton","showCancelButton","showSubmitButton","dateFormat","submitButtonTextTranslation","cancelButtonTextTranslation","resetButtonTextTranslation","useTranslation","DatePicker","onSubmitHandler","useCallback","args","onCancelHandler","event","persist","startDate","convertStringToDate","date","endDate","dates","onResetHandler","createElement","Fragment","className","text","onClick","icon","icon_position","variant","right","_default","exports"],"sources":["../../../../src/components/date-picker/DatePickerFooter.tsx"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React, { useContext, useCallback } from 'react'\nimport Button from '../button/Button'\nimport DatePickerContext from './DatePickerContext'\nimport { convertStringToDate } from './DatePickerCalc'\nimport { useTranslation } from '../../shared'\nimport { DatePickerInputDates } from './hooks/useDates'\n\ntype DatePickerFooterEvent = React.MouseEvent<HTMLButtonElement> &\n DatePickerInputDates & {\n event: React.MouseEvent<HTMLButtonElement>\n }\n\nexport type DatePickerFooterProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onSubmit' | 'onCancel' | 'onReset'\n> & {\n isRange: boolean\n onSubmit?: (event: DatePickerFooterEvent) => void\n onCancel?: (event: DatePickerFooterEvent) => void\n onReset?: (event: DatePickerFooterEvent) => void\n submitButtonText?: string\n cancelButtonText?: string\n resetButtonText?: string\n}\n\nfunction DatePickerFooter({\n isRange,\n submitButtonText,\n cancelButtonText,\n resetButtonText,\n onSubmit,\n onCancel,\n onReset,\n}: DatePickerFooterProps) {\n const {\n updateDates,\n previousDates,\n props: contextProps,\n } = useContext(DatePickerContext)\n\n const {\n showResetButton,\n showCancelButton,\n showSubmitButton,\n dateFormat,\n } = contextProps\n\n const {\n submitButtonText: submitButtonTextTranslation,\n cancelButtonText: cancelButtonTextTranslation,\n resetButtonText: resetButtonTextTranslation,\n } = useTranslation().DatePicker\n\n const onSubmitHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n onSubmit?.(args)\n },\n [onSubmit]\n )\n\n const onCancelHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n if (args && args.event) {\n args.event.persist()\n }\n\n const startDate = previousDates.startDate\n ? convertStringToDate(previousDates.startDate, {\n dateFormat,\n })\n : previousDates.date\n ? convertStringToDate(previousDates.date, {\n dateFormat,\n })\n : null\n\n const endDate = previousDates.endDate\n ? convertStringToDate(previousDates.endDate, {\n dateFormat,\n })\n : startDate\n\n updateDates(\n {\n startDate,\n endDate,\n },\n (dates) => {\n onCancel?.({ ...args, ...dates })\n }\n )\n },\n [dateFormat, updateDates, previousDates, onCancel]\n )\n\n const onResetHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n if (args && args.event) {\n args.event.persist()\n }\n\n updateDates(\n {\n date: undefined,\n startDate: undefined,\n endDate: undefined,\n },\n (dates) => {\n onReset?.({ ...args, ...dates })\n }\n )\n },\n [updateDates, onReset]\n )\n\n if (\n !isRange &&\n !showSubmitButton &&\n !showCancelButton &&\n !showResetButton\n ) {\n return <></>\n }\n\n return (\n <div className=\"dnb-date-picker__footer\">\n {((isRange || showSubmitButton) && (\n <Button\n text={submitButtonText || submitButtonTextTranslation}\n onClick={onSubmitHandler}\n data-testid=\"submit\"\n />\n )) || <span />}\n\n <span>\n {(showResetButton && (\n <Button\n text={resetButtonText || resetButtonTextTranslation}\n icon=\"reset\"\n icon_position=\"left\"\n variant=\"tertiary\"\n onClick={onResetHandler}\n data-testid=\"reset\"\n right=\"0.5rem\"\n />\n )) || <span />}\n\n {((isRange || showCancelButton) && (\n <Button\n text={cancelButtonText || cancelButtonTextTranslation}\n icon=\"close\"\n icon_position=\"left\"\n variant=\"tertiary\"\n onClick={onCancelHandler}\n data-testid=\"cancel\"\n right=\"0.5rem\"\n />\n )) || <span />}\n </span>\n </div>\n )\n}\n\nexport default DatePickerFooter\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerFooter.js","names":["_react","_interopRequireWildcard","require","_Button","_interopRequireDefault","_DatePickerContext","_DatePickerCalc","_shared","_span","_span2","_span3","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","DatePickerFooter","_ref","isRange","submitButtonText","cancelButtonText","resetButtonText","onSubmit","onCancel","onReset","updateDates","previousDateProps","props","contextProps","useContext","DatePickerContext","showResetButton","showCancelButton","showSubmitButton","dateFormat","submitButtonTextTranslation","cancelButtonTextTranslation","resetButtonTextTranslation","useTranslation","DatePicker","onSubmitHandler","useCallback","args","onCancelHandler","event","persist","startDate","convertStringToDate","date","endDate","dates","onResetHandler","createElement","Fragment","className","text","onClick","icon","icon_position","variant","right","_default","exports"],"sources":["../../../../src/components/date-picker/DatePickerFooter.tsx"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React, { useContext, useCallback } from 'react'\nimport Button from '../button/Button'\nimport DatePickerContext from './DatePickerContext'\nimport { convertStringToDate } from './DatePickerCalc'\nimport { useTranslation } from '../../shared'\nimport { DatePickerInputDates } from './hooks/useDates'\n\ntype DatePickerFooterEvent = React.MouseEvent<HTMLButtonElement> &\n DatePickerInputDates & {\n event: React.MouseEvent<HTMLButtonElement>\n }\n\nexport type DatePickerFooterProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onSubmit' | 'onCancel' | 'onReset'\n> & {\n isRange: boolean\n onSubmit?: (event: DatePickerFooterEvent) => void\n onCancel?: (event: DatePickerFooterEvent) => void\n onReset?: (event: DatePickerFooterEvent) => void\n submitButtonText?: string\n cancelButtonText?: string\n resetButtonText?: string\n}\n\nfunction DatePickerFooter({\n isRange,\n submitButtonText,\n cancelButtonText,\n resetButtonText,\n onSubmit,\n onCancel,\n onReset,\n}: DatePickerFooterProps) {\n const {\n updateDates,\n previousDateProps,\n props: contextProps,\n } = useContext(DatePickerContext)\n\n const {\n showResetButton,\n showCancelButton,\n showSubmitButton,\n dateFormat,\n } = contextProps\n\n const {\n submitButtonText: submitButtonTextTranslation,\n cancelButtonText: cancelButtonTextTranslation,\n resetButtonText: resetButtonTextTranslation,\n } = useTranslation().DatePicker\n\n const onSubmitHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n onSubmit?.(args)\n },\n [onSubmit]\n )\n\n const onCancelHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n if (args && args.event) {\n args.event.persist()\n }\n\n const startDate = previousDateProps.startDate\n ? convertStringToDate(previousDateProps.startDate, {\n dateFormat,\n })\n : previousDateProps.date\n ? convertStringToDate(previousDateProps.date, {\n dateFormat,\n })\n : null\n\n const endDate = previousDateProps.endDate\n ? convertStringToDate(previousDateProps.endDate, {\n dateFormat,\n })\n : startDate\n\n updateDates(\n {\n startDate,\n endDate,\n },\n (dates) => {\n onCancel?.({ ...args, ...dates })\n }\n )\n },\n [dateFormat, updateDates, previousDateProps, onCancel]\n )\n\n const onResetHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n if (args && args.event) {\n args.event.persist()\n }\n\n updateDates(\n {\n date: undefined,\n startDate: undefined,\n endDate: undefined,\n },\n (dates) => {\n onReset?.({ ...args, ...dates })\n }\n )\n },\n [updateDates, onReset]\n )\n\n if (\n !isRange &&\n !showSubmitButton &&\n !showCancelButton &&\n !showResetButton\n ) {\n return <></>\n }\n\n return (\n <div className=\"dnb-date-picker__footer\">\n {((isRange || showSubmitButton) && (\n <Button\n text={submitButtonText || submitButtonTextTranslation}\n onClick={onSubmitHandler}\n data-testid=\"submit\"\n />\n )) || <span />}\n\n <span>\n {(showResetButton && (\n <Button\n text={resetButtonText || resetButtonTextTranslation}\n icon=\"reset\"\n icon_position=\"left\"\n variant=\"tertiary\"\n onClick={onResetHandler}\n data-testid=\"reset\"\n right=\"0.5rem\"\n />\n )) || <span />}\n\n {((isRange || showCancelButton) && (\n <Button\n text={cancelButtonText || cancelButtonTextTranslation}\n icon=\"close\"\n icon_position=\"left\"\n variant=\"tertiary\"\n onClick={onCancelHandler}\n data-testid=\"cancel\"\n right=\"0.5rem\"\n />\n )) || <span />}\n </span>\n </div>\n )\n}\n\nexport default DatePickerFooter\n"],"mappings":"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"}
@@ -54,7 +54,7 @@ function DatePickerProvider(externalProps) {
54
54
  dates,
55
55
  updateDates,
56
56
  hasHadValidDate,
57
- previousDates
57
+ previousDateProps
58
58
  } = (0, _useDates.default)({
59
59
  date,
60
60
  startDate,
@@ -139,7 +139,7 @@ function DatePickerProvider(externalProps) {
139
139
  hidePicker: hidePicker,
140
140
  props
141
141
  }, dates), {}, {
142
- previousDates,
142
+ previousDateProps,
143
143
  hasHadValidDate,
144
144
  views,
145
145
  setViews,
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerProvider.js","names":["_react","_interopRequireWildcard","require","_isValid","_interopRequireDefault","_format","_differenceInCalendarDays","_Context","_DatePickerCalc","_DatePickerContext","_useViews","_useDates","_useLastEventCallCache","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","defaultProps","returnFormat","DatePickerProvider","externalProps","props","date","startDate","endDate","startMonth","endMonth","minDate","maxDate","dateFormat","range","correctInvalidDate","attributes","returnFormatProp","children","onChange","setReturnObject","hidePicker","sharedContext","useContext","SharedContext","dates","updateDates","hasHadValidDate","previousDates","useDates","isRange","shouldCorrectDate","views","setViews","forceViewMonthChange","useViews","lastEventCallCache","setLastEventCallCache","useLastEventCallCache","getReturnObject","useCallback","_ref","event","rest","partialStartDate","partialEndDate","correctV1Format","startDateIsValid","Boolean","isValid","endDateIsValid","hasMinOrMaxDates","returnObject","days_between","differenceInCalendarDays","start_date","format","end_date","is_valid_start_date","isDisabled","is_valid_end_date","is_valid","callOnChangeHandler","createElement","Provider","translation","_default","exports"],"sources":["../../../../src/components/date-picker/DatePickerProvider.tsx"],"sourcesContent":["/**\n * Web DatePicker Provider\n *\n */\n\nimport React, { useCallback, useContext } from 'react'\nimport type {\n DatePickerEventAttributes,\n DatePickerAllProps,\n DatePickerProps,\n} from './DatePicker'\n\nimport isValid from 'date-fns/isValid'\nimport format from 'date-fns/format'\nimport differenceInCalendarDays from 'date-fns/differenceInCalendarDays'\n\nimport SharedContext from '../../shared/Context'\nimport { correctV1Format, isDisabled } from './DatePickerCalc'\nimport DatePickerContext, {\n DatePickerContextValues,\n} from './DatePickerContext'\nimport useViews, { CalendarView } from './hooks/useViews'\nimport useDates, { DatePickerDates } from './hooks/useDates'\nimport useLastEventCallCache, {\n LastEventCallCache,\n} from './hooks/useLastEventCallCache'\n\ntype DatePickerProviderProps = DatePickerAllProps & {\n setReturnObject: (\n func: DatePickerContextValues['getReturnObject']\n ) => DatePickerContextValues['getReturnObject']\n hidePicker?: DatePickerContextValues['hidePicker']\n attributes?: DatePickerEventAttributes\n children: React.ReactNode\n}\n\nexport type DatePickerChangeEvent<E> = DatePickerDates & {\n nr?: number\n hidePicker?: boolean\n event?: E\n}\n\nexport type GetReturnObjectParams<E> = DatePickerDates & {\n event?: E\n}\n\n// TODO: convert properties on event handler return objects to camelCase, constitutes a breaking change\nexport type ReturnObject<E> = {\n event?: E\n attributes?: Record<string, unknown>\n days_between?: number\n date?: string\n start_date?: string\n end_date?: string\n is_valid?: boolean\n is_valid_start_date?: boolean\n is_valid_end_date?: boolean\n partialStartDate?: string\n partialEndDate?: string\n}\n\nexport type DatePickerProviderState = DatePickerDates &\n Array<CalendarView> &\n LastEventCallCache\n\nconst defaultProps: Partial<DatePickerProps> = {\n returnFormat: 'yyyy-MM-dd', // used in date-fns v1: YYYY-MM-DD\n}\n\nfunction DatePickerProvider(externalProps: DatePickerProviderProps) {\n const props = { ...defaultProps, ...externalProps }\n\n const {\n date,\n startDate,\n endDate,\n startMonth,\n endMonth,\n minDate,\n maxDate,\n dateFormat,\n range,\n correctInvalidDate,\n attributes,\n returnFormat: returnFormatProp,\n children,\n onChange,\n setReturnObject,\n hidePicker,\n } = props\n\n const sharedContext = useContext(SharedContext)\n\n const { dates, updateDates, hasHadValidDate, previousDates } = useDates(\n {\n date,\n startDate,\n endDate,\n startMonth,\n endMonth,\n minDate,\n maxDate,\n },\n {\n dateFormat: dateFormat,\n isRange: range,\n shouldCorrectDate: correctInvalidDate,\n }\n )\n\n const { views, setViews, forceViewMonthChange } = useViews({\n startMonth: dates.startMonth,\n endMonth: dates.endMonth,\n isRange: range,\n })\n\n const [lastEventCallCache, setLastEventCallCache] =\n useLastEventCallCache({\n startDate: dates.startDate,\n endDate: dates.endDate,\n })\n\n const getReturnObject = useCallback(\n <E,>({ event = null, ...rest }: GetReturnObjectParams<E> = {}) => {\n const { startDate, endDate, partialStartDate, partialEndDate } = {\n ...views,\n ...dates,\n ...rest,\n }\n\n const returnFormat = correctV1Format(returnFormatProp)\n const startDateIsValid = Boolean(startDate && isValid(startDate))\n const endDateIsValid = Boolean(endDate && isValid(endDate))\n const hasMinOrMaxDates = minDate || maxDate\n\n const returnObject: ReturnObject<E> = {\n event,\n attributes: attributes || {},\n partialStartDate,\n }\n\n // Handle range props\n if (range) {\n return {\n ...returnObject,\n days_between:\n startDateIsValid && endDateIsValid\n ? differenceInCalendarDays(endDate, startDate)\n : null,\n start_date: startDateIsValid\n ? format(startDate, returnFormat)\n : null,\n end_date: endDateIsValid ? format(endDate, returnFormat) : null,\n is_valid_start_date:\n hasMinOrMaxDates &&\n startDateIsValid &&\n isDisabled(startDate, dates.minDate, dates.maxDate)\n ? false\n : startDateIsValid,\n is_valid_end_date:\n hasMinOrMaxDates &&\n endDateIsValid &&\n isDisabled(endDate, dates.minDate, dates.maxDate)\n ? false\n : endDateIsValid,\n partialEndDate,\n }\n }\n\n return {\n ...returnObject,\n date: startDateIsValid ? format(startDate, returnFormat) : null,\n is_valid:\n hasMinOrMaxDates &&\n startDateIsValid &&\n isDisabled(startDate, dates.minDate, dates.maxDate)\n ? false\n : startDateIsValid,\n }\n },\n [dates, views, attributes, maxDate, minDate, range, returnFormatProp]\n )\n\n const callOnChangeHandler = useCallback(\n <E,>(event: E & DatePickerDates) => {\n /**\n * Prevent on_change to be fired twice if date not has actually changed\n */\n if (\n lastEventCallCache &&\n lastEventCallCache.startDate === event.startDate &&\n lastEventCallCache.endDate === event.endDate\n ) {\n return // stop here\n }\n\n onChange?.(getReturnObject({ ...dates, ...event }))\n\n setLastEventCallCache({\n startDate: event.startDate,\n endDate: event.endDate,\n })\n },\n [\n getReturnObject,\n dates,\n onChange,\n lastEventCallCache,\n setLastEventCallCache,\n ]\n )\n\n // Is this at any point something other than a function?\n if (typeof setReturnObject === 'function') {\n setReturnObject(getReturnObject)\n }\n\n return (\n <DatePickerContext.Provider\n value={{\n translation: sharedContext.translation,\n updateDates,\n getReturnObject,\n callOnChangeHandler,\n hidePicker: hidePicker,\n props,\n ...dates,\n previousDates,\n hasHadValidDate,\n views,\n setViews,\n forceViewMonthChange,\n }}\n >\n {children}\n </DatePickerContext.Provider>\n )\n}\n\nexport default DatePickerProvider\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerProvider.js","names":["_react","_interopRequireWildcard","require","_isValid","_interopRequireDefault","_format","_differenceInCalendarDays","_Context","_DatePickerCalc","_DatePickerContext","_useViews","_useDates","_useLastEventCallCache","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","defaultProps","returnFormat","DatePickerProvider","externalProps","props","date","startDate","endDate","startMonth","endMonth","minDate","maxDate","dateFormat","range","correctInvalidDate","attributes","returnFormatProp","children","onChange","setReturnObject","hidePicker","sharedContext","useContext","SharedContext","dates","updateDates","hasHadValidDate","previousDateProps","useDates","isRange","shouldCorrectDate","views","setViews","forceViewMonthChange","useViews","lastEventCallCache","setLastEventCallCache","useLastEventCallCache","getReturnObject","useCallback","_ref","event","rest","partialStartDate","partialEndDate","correctV1Format","startDateIsValid","Boolean","isValid","endDateIsValid","hasMinOrMaxDates","returnObject","days_between","differenceInCalendarDays","start_date","format","end_date","is_valid_start_date","isDisabled","is_valid_end_date","is_valid","callOnChangeHandler","createElement","Provider","translation","_default","exports"],"sources":["../../../../src/components/date-picker/DatePickerProvider.tsx"],"sourcesContent":["/**\n * Web DatePicker Provider\n *\n */\n\nimport React, { useCallback, useContext } from 'react'\nimport type {\n DatePickerEventAttributes,\n DatePickerAllProps,\n DatePickerProps,\n} from './DatePicker'\n\nimport isValid from 'date-fns/isValid'\nimport format from 'date-fns/format'\nimport differenceInCalendarDays from 'date-fns/differenceInCalendarDays'\n\nimport SharedContext from '../../shared/Context'\nimport { correctV1Format, isDisabled } from './DatePickerCalc'\nimport DatePickerContext, {\n DatePickerContextValues,\n} from './DatePickerContext'\nimport useViews, { CalendarView } from './hooks/useViews'\nimport useDates, { DatePickerDates } from './hooks/useDates'\nimport useLastEventCallCache, {\n LastEventCallCache,\n} from './hooks/useLastEventCallCache'\n\ntype DatePickerProviderProps = DatePickerAllProps & {\n setReturnObject: (\n func: DatePickerContextValues['getReturnObject']\n ) => DatePickerContextValues['getReturnObject']\n hidePicker?: DatePickerContextValues['hidePicker']\n attributes?: DatePickerEventAttributes\n children: React.ReactNode\n}\n\nexport type DatePickerChangeEvent<E> = DatePickerDates & {\n nr?: number\n hidePicker?: boolean\n event?: E\n}\n\nexport type GetReturnObjectParams<E> = DatePickerDates & {\n event?: E\n}\n\n// TODO: convert properties on event handler return objects to camelCase, constitutes a breaking change\nexport type ReturnObject<E> = {\n event?: E\n attributes?: Record<string, unknown>\n days_between?: number\n date?: string\n start_date?: string\n end_date?: string\n is_valid?: boolean\n is_valid_start_date?: boolean\n is_valid_end_date?: boolean\n partialStartDate?: string\n partialEndDate?: string\n}\n\nexport type DatePickerProviderState = DatePickerDates &\n Array<CalendarView> &\n LastEventCallCache\n\nconst defaultProps: Partial<DatePickerProps> = {\n returnFormat: 'yyyy-MM-dd', // used in date-fns v1: YYYY-MM-DD\n}\n\nfunction DatePickerProvider(externalProps: DatePickerProviderProps) {\n const props = { ...defaultProps, ...externalProps }\n\n const {\n date,\n startDate,\n endDate,\n startMonth,\n endMonth,\n minDate,\n maxDate,\n dateFormat,\n range,\n correctInvalidDate,\n attributes,\n returnFormat: returnFormatProp,\n children,\n onChange,\n setReturnObject,\n hidePicker,\n } = props\n\n const sharedContext = useContext(SharedContext)\n\n const { dates, updateDates, hasHadValidDate, previousDateProps } =\n useDates(\n {\n date,\n startDate,\n endDate,\n startMonth,\n endMonth,\n minDate,\n maxDate,\n },\n {\n dateFormat: dateFormat,\n isRange: range,\n shouldCorrectDate: correctInvalidDate,\n }\n )\n\n const { views, setViews, forceViewMonthChange } = useViews({\n startMonth: dates.startMonth,\n endMonth: dates.endMonth,\n isRange: range,\n })\n\n const [lastEventCallCache, setLastEventCallCache] =\n useLastEventCallCache({\n startDate: dates.startDate,\n endDate: dates.endDate,\n })\n\n const getReturnObject = useCallback(\n <E,>({ event = null, ...rest }: GetReturnObjectParams<E> = {}) => {\n const { startDate, endDate, partialStartDate, partialEndDate } = {\n ...views,\n ...dates,\n ...rest,\n }\n\n const returnFormat = correctV1Format(returnFormatProp)\n const startDateIsValid = Boolean(startDate && isValid(startDate))\n const endDateIsValid = Boolean(endDate && isValid(endDate))\n const hasMinOrMaxDates = minDate || maxDate\n\n const returnObject: ReturnObject<E> = {\n event,\n attributes: attributes || {},\n partialStartDate,\n }\n\n // Handle range props\n if (range) {\n return {\n ...returnObject,\n days_between:\n startDateIsValid && endDateIsValid\n ? differenceInCalendarDays(endDate, startDate)\n : null,\n start_date: startDateIsValid\n ? format(startDate, returnFormat)\n : null,\n end_date: endDateIsValid ? format(endDate, returnFormat) : null,\n is_valid_start_date:\n hasMinOrMaxDates &&\n startDateIsValid &&\n isDisabled(startDate, dates.minDate, dates.maxDate)\n ? false\n : startDateIsValid,\n is_valid_end_date:\n hasMinOrMaxDates &&\n endDateIsValid &&\n isDisabled(endDate, dates.minDate, dates.maxDate)\n ? false\n : endDateIsValid,\n partialEndDate,\n }\n }\n\n return {\n ...returnObject,\n date: startDateIsValid ? format(startDate, returnFormat) : null,\n is_valid:\n hasMinOrMaxDates &&\n startDateIsValid &&\n isDisabled(startDate, dates.minDate, dates.maxDate)\n ? false\n : startDateIsValid,\n }\n },\n [dates, views, attributes, maxDate, minDate, range, returnFormatProp]\n )\n\n const callOnChangeHandler = useCallback(\n <E,>(event: E & DatePickerDates) => {\n /**\n * Prevent on_change to be fired twice if date not has actually changed\n */\n if (\n lastEventCallCache &&\n lastEventCallCache.startDate === event.startDate &&\n lastEventCallCache.endDate === event.endDate\n ) {\n return // stop here\n }\n\n onChange?.(getReturnObject({ ...dates, ...event }))\n\n setLastEventCallCache({\n startDate: event.startDate,\n endDate: event.endDate,\n })\n },\n [\n getReturnObject,\n dates,\n onChange,\n lastEventCallCache,\n setLastEventCallCache,\n ]\n )\n\n // Is this at any point something other than a function?\n if (typeof setReturnObject === 'function') {\n setReturnObject(getReturnObject)\n }\n\n return (\n <DatePickerContext.Provider\n value={{\n translation: sharedContext.translation,\n updateDates,\n getReturnObject,\n callOnChangeHandler,\n hidePicker: hidePicker,\n props,\n ...dates,\n previousDateProps,\n hasHadValidDate,\n views,\n setViews,\n forceViewMonthChange,\n }}\n >\n {children}\n </DatePickerContext.Provider>\n )\n}\n\nexport default DatePickerProvider\n"],"mappings":";;;;;;;AAKA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAOA,IAAAC,QAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,yBAAA,GAAAF,sBAAA,CAAAF,OAAA;AAEA,IAAAK,QAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,eAAA,GAAAN,OAAA;AACA,IAAAO,kBAAA,GAAAL,sBAAA,CAAAF,OAAA;AAGA,IAAAQ,SAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,SAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,sBAAA,GAAAR,sBAAA,CAAAF,OAAA;AAEsC,MAAAW,SAAA;AAAA,SAAAT,uBAAAU,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAjB,wBAAAa,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,yBAAAC,MAAA,EAAAC,QAAA,QAAAD,MAAA,yBAAAE,MAAA,GAAAC,6BAAA,CAAAH,MAAA,EAAAC,QAAA,OAAAR,GAAA,EAAAW,CAAA,MAAAd,MAAA,CAAAe,qBAAA,QAAAC,gBAAA,GAAAhB,MAAA,CAAAe,qBAAA,CAAAL,MAAA,QAAAI,CAAA,MAAAA,CAAA,GAAAE,gBAAA,CAAAC,MAAA,EAAAH,CAAA,MAAAX,GAAA,GAAAa,gBAAA,CAAAF,CAAA,OAAAH,QAAA,CAAAO,OAAA,CAAAf,GAAA,uBAAAH,MAAA,CAAAI,SAAA,CAAAe,oBAAA,CAAAb,IAAA,CAAAI,MAAA,EAAAP,GAAA,aAAAS,MAAA,CAAAT,GAAA,IAAAO,MAAA,CAAAP,GAAA,cAAAS,MAAA;AAAA,SAAAC,8BAAAH,MAAA,EAAAC,QAAA,QAAAD,MAAA,yBAAAE,MAAA,WAAAQ,UAAA,GAAApB,MAAA,CAAAqB,IAAA,CAAAX,MAAA,OAAAP,GAAA,EAAAW,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAM,UAAA,CAAAH,MAAA,EAAAH,CAAA,MAAAX,GAAA,GAAAiB,UAAA,CAAAN,CAAA,OAAAH,QAAA,CAAAO,OAAA,CAAAf,GAAA,kBAAAS,MAAA,CAAAT,GAAA,IAAAO,MAAA,CAAAP,GAAA,YAAAS,MAAA;AAAA,SAAAU,QAAAC,MAAA,EAAAC,cAAA,QAAAH,IAAA,GAAArB,MAAA,CAAAqB,IAAA,CAAAE,MAAA,OAAAvB,MAAA,CAAAe,qBAAA,QAAAU,OAAA,GAAAzB,MAAA,CAAAe,qBAAA,CAAAQ,MAAA,GAAAC,cAAA,KAAAC,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAA3B,MAAA,CAAAE,wBAAA,CAAAqB,MAAA,EAAAI,GAAA,EAAAC,UAAA,OAAAP,IAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,IAAA,EAAAI,OAAA,YAAAJ,IAAA;AAAA,SAAAU,cAAAnB,MAAA,aAAAE,CAAA,MAAAA,CAAA,GAAAkB,SAAA,CAAAf,MAAA,EAAAH,CAAA,UAAAJ,MAAA,WAAAsB,SAAA,CAAAlB,CAAA,IAAAkB,SAAA,CAAAlB,CAAA,QAAAA,CAAA,OAAAQ,OAAA,CAAAtB,MAAA,CAAAU,MAAA,OAAAuB,OAAA,WAAA9B,GAAA,IAAA+B,eAAA,CAAAtB,MAAA,EAAAT,GAAA,EAAAO,MAAA,CAAAP,GAAA,SAAAH,MAAA,CAAAmC,yBAAA,GAAAnC,MAAA,CAAAoC,gBAAA,CAAAxB,MAAA,EAAAZ,MAAA,CAAAmC,yBAAA,CAAAzB,MAAA,KAAAY,OAAA,CAAAtB,MAAA,CAAAU,MAAA,GAAAuB,OAAA,WAAA9B,GAAA,IAAAH,MAAA,CAAAC,cAAA,CAAAW,MAAA,EAAAT,GAAA,EAAAH,MAAA,CAAAE,wBAAA,CAAAQ,MAAA,EAAAP,GAAA,iBAAAS,MAAA;AAAA,SAAAsB,gBAAA/C,GAAA,EAAAgB,GAAA,EAAAkC,KAAA,IAAAlC,GAAA,GAAAmC,cAAA,CAAAnC,GAAA,OAAAA,GAAA,IAAAhB,GAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAgB,GAAA,IAAAkC,KAAA,EAAAA,KAAA,EAAAT,UAAA,QAAAW,YAAA,QAAAC,QAAA,oBAAArD,GAAA,CAAAgB,GAAA,IAAAkC,KAAA,WAAAlD,GAAA;AAAA,SAAAmD,eAAAG,GAAA,QAAAtC,GAAA,GAAAuC,YAAA,CAAAD,GAAA,2BAAAtC,GAAA,gBAAAA,GAAA,GAAAwC,MAAA,CAAAxC,GAAA;AAAA,SAAAuC,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAxC,IAAA,CAAAsC,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAwCtC,MAAMS,YAAsC,GAAG;EAC7CC,YAAY,EAAE;AAChB,CAAC;AAED,SAASC,kBAAkBA,CAACC,aAAsC,EAAE;EAClE,MAAMC,KAAK,GAAA1B,aAAA,CAAAA,aAAA,KAAQsB,YAAY,GAAKG,aAAa,CAAE;EAEnD,MAAM;IACJE,IAAI;IACJC,SAAS;IACTC,OAAO;IACPC,UAAU;IACVC,QAAQ;IACRC,OAAO;IACPC,OAAO;IACPC,UAAU;IACVC,KAAK;IACLC,kBAAkB;IAClBC,UAAU;IACVd,YAAY,EAAEe,gBAAgB;IAC9BC,QAAQ;IACRC,QAAQ;IACRC,eAAe;IACfC;EACF,CAAC,GAAGhB,KAAK;EAET,MAAMiB,aAAa,GAAG,IAAAC,iBAAU,EAACC,gBAAa,CAAC;EAE/C,MAAM;IAAEC,KAAK;IAAEC,WAAW;IAAEC,eAAe;IAAEC;EAAkB,CAAC,GAC9D,IAAAC,iBAAQ,EACN;IACEvB,IAAI;IACJC,SAAS;IACTC,OAAO;IACPC,UAAU;IACVC,QAAQ;IACRC,OAAO;IACPC;EACF,CAAC,EACD;IACEC,UAAU,EAAEA,UAAU;IACtBiB,OAAO,EAAEhB,KAAK;IACdiB,iBAAiB,EAAEhB;EACrB,CACF,CAAC;EAEH,MAAM;IAAEiB,KAAK;IAAEC,QAAQ;IAAEC;EAAqB,CAAC,GAAG,IAAAC,iBAAQ,EAAC;IACzD1B,UAAU,EAAEgB,KAAK,CAAChB,UAAU;IAC5BC,QAAQ,EAAEe,KAAK,CAACf,QAAQ;IACxBoB,OAAO,EAAEhB;EACX,CAAC,CAAC;EAEF,MAAM,CAACsB,kBAAkB,EAAEC,qBAAqB,CAAC,GAC/C,IAAAC,8BAAqB,EAAC;IACpB/B,SAAS,EAAEkB,KAAK,CAAClB,SAAS;IAC1BC,OAAO,EAAEiB,KAAK,CAACjB;EACjB,CAAC,CAAC;EAEJ,MAAM+B,eAAe,GAAG,IAAAC,kBAAW,EACjC,YAAkE;IAAA,IAAAC,IAAA,GAAA7D,SAAA,CAAAf,MAAA,QAAAe,SAAA,QAAAiB,SAAA,GAAAjB,SAAA,MAAP,CAAC,CAAC;IAAA,IAAxD;QAAE8D,KAAK,GAAG;MAAwC,CAAC,GAAAD,IAAA;MAAhCE,IAAI,GAAAtF,wBAAA,CAAAoF,IAAA,EAAA3G,SAAA;IAC1B,MAAM;MAAEyE,SAAS;MAAEC,OAAO;MAAEoC,gBAAgB;MAAEC;IAAe,CAAC,GAAAlE,aAAA,CAAAA,aAAA,CAAAA,aAAA,KACzDqD,KAAK,GACLP,KAAK,GACLkB,IAAI,CACR;IAED,MAAMzC,YAAY,GAAG,IAAA4C,+BAAe,EAAC7B,gBAAgB,CAAC;IACtD,MAAM8B,gBAAgB,GAAGC,OAAO,CAACzC,SAAS,IAAI,IAAA0C,gBAAO,EAAC1C,SAAS,CAAC,CAAC;IACjE,MAAM2C,cAAc,GAAGF,OAAO,CAACxC,OAAO,IAAI,IAAAyC,gBAAO,EAACzC,OAAO,CAAC,CAAC;IAC3D,MAAM2C,gBAAgB,GAAGxC,OAAO,IAAIC,OAAO;IAE3C,MAAMwC,YAA6B,GAAG;MACpCV,KAAK;MACL1B,UAAU,EAAEA,UAAU,IAAI,CAAC,CAAC;MAC5B4B;IACF,CAAC;IAGD,IAAI9B,KAAK,EAAE;MACT,OAAAnC,aAAA,CAAAA,aAAA,KACKyE,YAAY;QACfC,YAAY,EACVN,gBAAgB,IAAIG,cAAc,GAC9B,IAAAI,iCAAwB,EAAC9C,OAAO,EAAED,SAAS,CAAC,GAC5C,IAAI;QACVgD,UAAU,EAAER,gBAAgB,GACxB,IAAAS,eAAM,EAACjD,SAAS,EAAEL,YAAY,CAAC,GAC/B,IAAI;QACRuD,QAAQ,EAAEP,cAAc,GAAG,IAAAM,eAAM,EAAChD,OAAO,EAAEN,YAAY,CAAC,GAAG,IAAI;QAC/DwD,mBAAmB,EACjBP,gBAAgB,IAChBJ,gBAAgB,IAChB,IAAAY,0BAAU,EAACpD,SAAS,EAAEkB,KAAK,CAACd,OAAO,EAAEc,KAAK,CAACb,OAAO,CAAC,GAC/C,KAAK,GACLmC,gBAAgB;QACtBa,iBAAiB,EACfT,gBAAgB,IAChBD,cAAc,IACd,IAAAS,0BAAU,EAACnD,OAAO,EAAEiB,KAAK,CAACd,OAAO,EAAEc,KAAK,CAACb,OAAO,CAAC,GAC7C,KAAK,GACLsC,cAAc;QACpBL;MAAc;IAElB;IAEA,OAAAlE,aAAA,CAAAA,aAAA,KACKyE,YAAY;MACf9C,IAAI,EAAEyC,gBAAgB,GAAG,IAAAS,eAAM,EAACjD,SAAS,EAAEL,YAAY,CAAC,GAAG,IAAI;MAC/D2D,QAAQ,EACNV,gBAAgB,IAChBJ,gBAAgB,IAChB,IAAAY,0BAAU,EAACpD,SAAS,EAAEkB,KAAK,CAACd,OAAO,EAAEc,KAAK,CAACb,OAAO,CAAC,GAC/C,KAAK,GACLmC;IAAgB;EAE1B,CAAC,EACD,CAACtB,KAAK,EAAEO,KAAK,EAAEhB,UAAU,EAAEJ,OAAO,EAAED,OAAO,EAAEG,KAAK,EAAEG,gBAAgB,CACtE,CAAC;EAED,MAAM6C,mBAAmB,GAAG,IAAAtB,kBAAW,EAChCE,KAA0B,IAAK;IAIlC,IACEN,kBAAkB,IAClBA,kBAAkB,CAAC7B,SAAS,KAAKmC,KAAK,CAACnC,SAAS,IAChD6B,kBAAkB,CAAC5B,OAAO,KAAKkC,KAAK,CAAClC,OAAO,EAC5C;MACA;IACF;IAEAW,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAGoB,eAAe,CAAA5D,aAAA,CAAAA,aAAA,KAAM8C,KAAK,GAAKiB,KAAK,CAAE,CAAC,CAAC;IAEnDL,qBAAqB,CAAC;MACpB9B,SAAS,EAAEmC,KAAK,CAACnC,SAAS;MAC1BC,OAAO,EAAEkC,KAAK,CAAClC;IACjB,CAAC,CAAC;EACJ,CAAC,EACD,CACE+B,eAAe,EACfd,KAAK,EACLN,QAAQ,EACRiB,kBAAkB,EAClBC,qBAAqB,CAEzB,CAAC;EAGD,IAAI,OAAOjB,eAAe,KAAK,UAAU,EAAE;IACzCA,eAAe,CAACmB,eAAe,CAAC;EAClC;EAEA,OACEtH,MAAA,CAAAgB,OAAA,CAAA8H,aAAA,CAACrI,kBAAA,CAAAO,OAAiB,CAAC+H,QAAQ;IACzB/E,KAAK,EAAAN,aAAA,CAAAA,aAAA;MACHsF,WAAW,EAAE3C,aAAa,CAAC2C,WAAW;MACtCvC,WAAW;MACXa,eAAe;MACfuB,mBAAmB;MACnBzC,UAAU,EAAEA,UAAU;MACtBhB;IAAK,GACFoB,KAAK;MACRG,iBAAiB;MACjBD,eAAe;MACfK,KAAK;MACLC,QAAQ;MACRC;IAAoB;EACpB,GAEDhB,QACyB,CAAC;AAEjC;AAAC,IAAAgD,QAAA,GAEc/D,kBAAkB;AAAAgE,OAAA,CAAAlI,OAAA,GAAAiI,QAAA"}
@@ -39,7 +39,7 @@ export default function useDates(dateProps: DatePickerDateProps, { dateFormat, i
39
39
  readonly dates: DatePickerDates;
40
40
  readonly updateDates: (newDates: DatePickerDates, callback?: (dates: DatePickerDates) => void) => void;
41
41
  readonly hasHadValidDate: boolean;
42
- readonly previousDates: DatePickerDateProps;
42
+ readonly previousDateProps: DatePickerDateProps;
43
43
  };
44
44
  export declare function pad(date: string, size: number): string;
45
45
  export {};
@@ -23,22 +23,36 @@ function useDates(dateProps, _ref) {
23
23
  isRange = false,
24
24
  shouldCorrectDate = false
25
25
  } = _ref;
26
- const [previousDates, setPreviousDates] = (0, _react.useState)(dateProps);
27
- const [dates, setDates] = (0, _react.useState)(_objectSpread({}, mapDates(dateProps, previousDates, {
26
+ const [previousDateProps, setPreviousDateProps] = (0, _react.useState)(dateProps);
27
+ const [dates, setDates] = (0, _react.useState)(_objectSpread({}, mapDates(dateProps, {
28
28
  dateFormat,
29
29
  isRange,
30
30
  shouldCorrectDate
31
31
  })));
32
32
  const hasDatePropChanges = (0, _react.useMemo)(() => Object.keys(dateProps).some(date => {
33
- return dateProps[date] !== previousDates[date];
34
- }), [dateProps, previousDates]);
33
+ const dateProp = dateProps[date];
34
+ const previousDate = previousDateProps[date];
35
+ const convertedDateProp = (0, _DatePickerCalc.convertStringToDate)(dateProp, {
36
+ dateFormat
37
+ });
38
+ const convertedPreviousDate = (0, _DatePickerCalc.convertStringToDate)(previousDate, {
39
+ dateFormat
40
+ });
41
+ if (convertedDateProp instanceof Date && convertedPreviousDate instanceof Date) {
42
+ return !(0, _dateFns.isSameDay)(convertedDateProp, convertedPreviousDate);
43
+ }
44
+ return dateProp !== previousDate;
45
+ }), [dateProps, previousDateProps, dateFormat]);
35
46
  if (hasDatePropChanges) {
36
- setDates(_objectSpread({}, mapDates(_objectSpread(_objectSpread({}, dates), dateProps), previousDates, {
47
+ const derivedDates = deriveDatesFromProps({
48
+ dates,
49
+ dateProps,
50
+ previousDateProps,
37
51
  dateFormat,
38
- isRange,
39
- shouldCorrectDate
40
- })));
41
- setPreviousDates(dateProps);
52
+ isRange
53
+ });
54
+ setDates(currentDates => _objectSpread(_objectSpread({}, currentDates), derivedDates));
55
+ setPreviousDateProps(dateProps);
42
56
  }
43
57
  const hasHadValidDate = (0, _react.useRef)(false);
44
58
  const updateDates = (0, _react.useCallback)((newDates, callback) => {
@@ -60,8 +74,8 @@ function useDates(dateProps, _ref) {
60
74
  callback === null || callback === void 0 ? void 0 : callback(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, dates), newDates), months), correctedDates));
61
75
  }, [dates, shouldCorrectDate, isRange]);
62
76
  (0, _react.useEffect)(() => {
63
- const startDates = updateInputDates('start', dates);
64
- const endDates = updateInputDates('end', dates);
77
+ const startDates = updateInputDates('start', dates.startDate);
78
+ const endDates = updateInputDates('end', dates.endDate);
65
79
  hasHadValidDate.current = (0, _isValid.default)(dates.startDate) || (0, _isValid.default)(dates.endDate);
66
80
  setDates(currentDates => _objectSpread(_objectSpread(_objectSpread({}, currentDates), startDates), endDates));
67
81
  }, [dates.startDate, dates.endDate]);
@@ -69,12 +83,11 @@ function useDates(dateProps, _ref) {
69
83
  dates,
70
84
  updateDates,
71
85
  hasHadValidDate: hasHadValidDate.current,
72
- previousDates
86
+ previousDateProps
73
87
  };
74
88
  }
75
- function updateInputDates(type, dates) {
89
+ function updateInputDates(type, date) {
76
90
  const updatedDates = {};
77
- const date = dates[`${type}Date`];
78
91
  if ((0, _isValid.default)(date)) {
79
92
  updatedDates[`__${type}Day`] = pad((0, _format.default)(date, 'dd'), 2);
80
93
  updatedDates[`__${type}Month`] = pad((0, _format.default)(date, 'MM'), 2);
@@ -86,14 +99,14 @@ function updateInputDates(type, dates) {
86
99
  }
87
100
  return updatedDates;
88
101
  }
89
- function mapDates(dateProps, previousDates, _ref2) {
102
+ function mapDates(dateProps, _ref2) {
90
103
  var _ref3, _convertStringToDate, _convertStringToDate2;
91
104
  let {
92
105
  dateFormat,
93
106
  isRange,
94
107
  shouldCorrectDate
95
108
  } = _ref2;
96
- const date = previousDates.date !== dateProps.date ? dateProps.date : previousDates.date;
109
+ const date = dateProps.date;
97
110
  const startDate = typeof (dateProps === null || dateProps === void 0 ? void 0 : dateProps.startDate) !== 'undefined' ? getDate(dateProps.startDate, dateFormat) : typeof date !== 'undefined' ? getDate(date, dateFormat) : undefined;
98
111
  const endDate = !isRange ? startDate : (0, _DatePickerCalc.convertStringToDate)(dateProps === null || dateProps === void 0 ? void 0 : dateProps.endDate, {
99
112
  dateFormat
@@ -120,6 +133,7 @@ function mapDates(dateProps, previousDates, _ref2) {
120
133
  isRange
121
134
  }) : {};
122
135
  const dates = _objectSpread({
136
+ date,
123
137
  startDate,
124
138
  endDate,
125
139
  startMonth,
@@ -136,14 +150,62 @@ function mapDates(dateProps, previousDates, _ref2) {
136
150
  __endYear: hasValidEndDate ? (0, _format.default)(dates.endDate, 'yyyy') : null
137
151
  });
138
152
  }
139
- function correctDates(_ref4) {
153
+ function deriveDatesFromProps(_ref4) {
154
+ let {
155
+ dates,
156
+ dateProps,
157
+ previousDateProps,
158
+ dateFormat,
159
+ isRange
160
+ } = _ref4;
161
+ const derivedDates = {};
162
+ const startDate = getStartDate(dateProps, previousDateProps);
163
+ if (typeof startDate !== 'undefined' && startDate !== dates.startDate) {
164
+ derivedDates.startDate = (0, _DatePickerCalc.convertStringToDate)(startDate, {
165
+ dateFormat
166
+ }) || undefined;
167
+ if (!isRange) {
168
+ derivedDates.startMonth = (0, _DatePickerCalc.convertStringToDate)(startDate, {
169
+ dateFormat
170
+ }) || undefined;
171
+ derivedDates.endDate = derivedDates.startDate;
172
+ }
173
+ }
174
+ if (isRange && typeof dateProps.endDate !== 'undefined' && dateProps.endDate !== dates.endDate) {
175
+ derivedDates.endDate = (0, _DatePickerCalc.convertStringToDate)(dateProps.endDate, {
176
+ dateFormat
177
+ }) || undefined;
178
+ }
179
+ if (typeof dateProps.startMonth !== 'undefined' && dateProps.startMonth !== previousDateProps.startMonth) {
180
+ derivedDates.startMonth = (0, _DatePickerCalc.convertStringToDate)(dateProps.startMonth, {
181
+ dateFormat
182
+ });
183
+ }
184
+ if (typeof dateProps.endMonth !== 'undefined' && dateProps.endMonth !== previousDateProps.endMonth) {
185
+ derivedDates.endMonth = (0, _DatePickerCalc.convertStringToDate)(dateProps.endMonth, {
186
+ dateFormat
187
+ });
188
+ }
189
+ if (typeof dateProps.minDate !== 'undefined' && dateProps.minDate !== previousDateProps.minDate) {
190
+ derivedDates.minDate = (0, _DatePickerCalc.convertStringToDate)(dateProps.minDate, {
191
+ dateFormat
192
+ });
193
+ }
194
+ if (typeof dateProps.maxDate !== 'undefined' && dateProps.maxDate !== previousDateProps.maxDate) {
195
+ derivedDates.maxDate = (0, _DatePickerCalc.convertStringToDate)(dateProps.maxDate, {
196
+ dateFormat
197
+ });
198
+ }
199
+ return derivedDates;
200
+ }
201
+ function correctDates(_ref5) {
140
202
  let {
141
203
  startDate,
142
204
  endDate,
143
205
  minDate,
144
206
  maxDate,
145
207
  isRange
146
- } = _ref4;
208
+ } = _ref5;
147
209
  const correctedDates = {};
148
210
  if ((0, _DatePickerCalc.isDisabled)(startDate, minDate, maxDate)) {
149
211
  correctedDates['startDate'] = minDate;
@@ -157,14 +219,14 @@ function correctDates(_ref4) {
157
219
  }
158
220
  return correctedDates;
159
221
  }
160
- function updateMonths(_ref5) {
161
- var _ref6, _newDates$startMonth, _ref7, _newDates$endMonth;
222
+ function updateMonths(_ref6) {
223
+ var _ref7, _newDates$startMonth, _ref8, _newDates$endMonth;
162
224
  let {
163
225
  newDates,
164
226
  currentDates
165
- } = _ref5;
166
- const startMonth = (_ref6 = (_newDates$startMonth = newDates.startMonth) !== null && _newDates$startMonth !== void 0 ? _newDates$startMonth : newDates.startDate) !== null && _ref6 !== void 0 ? _ref6 : currentDates.startMonth;
167
- const endMonth = (_ref7 = (_newDates$endMonth = newDates.endMonth) !== null && _newDates$endMonth !== void 0 ? _newDates$endMonth : newDates.endDate) !== null && _ref7 !== void 0 ? _ref7 : currentDates.endMonth;
227
+ } = _ref6;
228
+ const startMonth = (_ref7 = (_newDates$startMonth = newDates.startMonth) !== null && _newDates$startMonth !== void 0 ? _newDates$startMonth : newDates.startDate) !== null && _ref7 !== void 0 ? _ref7 : currentDates.startMonth;
229
+ const endMonth = (_ref8 = (_newDates$endMonth = newDates.endMonth) !== null && _newDates$endMonth !== void 0 ? _newDates$endMonth : newDates.endDate) !== null && _ref8 !== void 0 ? _ref8 : currentDates.endMonth;
168
230
  return {
169
231
  startMonth,
170
232
  endMonth
@@ -175,6 +237,15 @@ function getDate(date, dateFormat) {
175
237
  dateFormat
176
238
  });
177
239
  }
240
+ function getStartDate(dateProps, previousDateProps) {
241
+ if (typeof dateProps.startDate !== 'undefined' && dateProps.startDate !== previousDateProps.startDate) {
242
+ return dateProps.startDate;
243
+ }
244
+ if (typeof dateProps.date !== 'undefined' && dateProps.date !== previousDateProps.date) {
245
+ return dateProps.date;
246
+ }
247
+ return undefined;
248
+ }
178
249
  function pad(date, size) {
179
250
  const dateWithPadding = '000000000' + date;
180
251
  return dateWithPadding.substring(dateWithPadding.length - size);
@@ -1 +1 @@
1
- {"version":3,"file":"useDates.js","names":["_react","require","_DatePickerCalc","_isValid","_interopRequireDefault","_format","_dateFns","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","useDates","dateProps","_ref","dateFormat","isRange","shouldCorrectDate","previousDates","setPreviousDates","useState","dates","setDates","mapDates","hasDatePropChanges","useMemo","some","date","hasHadValidDate","useRef","updateDates","useCallback","newDates","callback","_newDates$startDate","_newDates$endDate","correctedDates","correctDates","startDate","endDate","minDate","maxDate","months","updateMonths","currentDates","useEffect","startDates","updateInputDates","endDates","current","isValid","type","updatedDates","pad","format","_ref2","_ref3","_convertStringToDate","_convertStringToDate2","getDate","convertStringToDate","startMonth","Date","endMonth","addMonths","hasValidStartDate","hasValidEndDate","__startDay","__startMonth","__startYear","__endDay","__endMonth","__endYear","_ref4","isDisabled","_ref5","_ref6","_newDates$startMonth","_ref7","_newDates$endMonth","size","dateWithPadding","substring"],"sources":["../../../../../src/components/date-picker/hooks/useDates.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from 'react'\nimport { convertStringToDate, isDisabled } from '../DatePickerCalc'\nimport isValid from 'date-fns/isValid'\nimport format from 'date-fns/format'\nimport { addMonths } from 'date-fns'\nimport { DateType } from '../DatePickerContext'\n\nexport type DatePickerDateProps = {\n date?: DateType\n startDate?: DateType\n endDate?: DateType\n startMonth?: DateType\n endMonth?: DateType\n minDate?: DateType\n maxDate?: DateType\n hoverDate?: DateType | null\n}\n\ntype UseDatesOptions = {\n dateFormat: string\n isRange: boolean\n shouldCorrectDate: boolean\n}\n// TODO: Move to DatePickerInput\nexport type DatePickerInputDates = {\n __startDay?: string\n __startMonth?: string\n __startYear?: string\n __endDay?: string\n __endMonth?: string\n __endYear?: string\n}\n\nexport type DatePickerDates = {\n date?: DateType\n startDate?: Date\n endDate?: Date\n minDate?: Date\n maxDate?: Date\n startMonth?: Date\n endMonth?: Date\n partialStartDate?: string\n partialEndDate?: string\n hasHadValidDate?: boolean\n hoverDate?: Date\n} & DatePickerInputDates\n\nexport default function useDates(\n dateProps: DatePickerDateProps,\n {\n dateFormat,\n isRange = false,\n shouldCorrectDate = false,\n }: UseDatesOptions\n) {\n const [previousDates, setPreviousDates] = useState(dateProps)\n const [dates, setDates] = useState<DatePickerDates>({\n ...mapDates(dateProps, previousDates, {\n dateFormat,\n isRange,\n shouldCorrectDate,\n }),\n })\n\n const hasDatePropChanges = useMemo(\n () =>\n Object.keys(dateProps).some((date) => {\n return dateProps[date] !== previousDates[date]\n }),\n [dateProps, previousDates]\n )\n\n // Update dates on prop change\n if (hasDatePropChanges) {\n setDates({\n ...mapDates({ ...dates, ...dateProps }, previousDates, {\n dateFormat,\n isRange,\n shouldCorrectDate,\n }),\n })\n setPreviousDates(dateProps)\n }\n\n const hasHadValidDate = useRef<boolean>(false)\n\n const updateDates = useCallback(\n (\n newDates: DatePickerDates,\n callback?: (dates: DatePickerDates) => void\n ) => {\n // Correct dates based on min and max date\n const correctedDates = shouldCorrectDate\n ? correctDates({\n startDate: newDates.startDate ?? dates.startDate,\n endDate: newDates.endDate ?? dates.endDate,\n minDate: dates.minDate,\n maxDate: dates.maxDate,\n isRange,\n })\n : {}\n\n // Update months based on month or start/end date changes\n const months = updateMonths({\n newDates,\n currentDates: dates,\n })\n\n setDates((currentDates) => {\n return {\n ...currentDates,\n ...newDates,\n ...months,\n ...correctedDates,\n }\n })\n\n callback?.({\n ...dates,\n ...newDates,\n ...months,\n ...correctedDates,\n })\n },\n [dates, shouldCorrectDate, isRange]\n )\n\n // Updated input dates based on start and end dates, move to DatePickerInput\n // TODO: Move to DatePickerInput\n useEffect(() => {\n const startDates = updateInputDates('start', dates)\n const endDates = updateInputDates('end', dates)\n\n hasHadValidDate.current =\n isValid(dates.startDate) || isValid(dates.endDate)\n\n setDates((currentDates) => ({\n ...currentDates,\n ...startDates,\n ...endDates,\n }))\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dates.startDate, dates.endDate])\n\n return {\n dates,\n updateDates,\n hasHadValidDate: hasHadValidDate.current,\n previousDates,\n } as const\n}\n\n// TODO: Move to DatePickerInput\nfunction updateInputDates(type: 'start' | 'end', dates: DatePickerDates) {\n const updatedDates = {}\n const date = dates[`${type}Date`]\n\n if (isValid(date)) {\n updatedDates[`__${type}Day`] = pad(format(date, 'dd'), 2)\n updatedDates[`__${type}Month`] = pad(format(date, 'MM'), 2)\n updatedDates[`__${type}Year`] = format(date, 'yyyy')\n } else if (date === undefined) {\n updatedDates[`__${type}Day`] = null\n updatedDates[`__${type}Month`] = null\n updatedDates[`__${type}Year`] = null\n }\n\n return updatedDates\n}\n\nfunction mapDates(\n dateProps: DatePickerDateProps,\n previousDates: DatePickerDateProps,\n {\n dateFormat,\n isRange,\n shouldCorrectDate,\n }: Omit<UseDatesOptions, 'isLinked'>\n) {\n const date =\n previousDates.date !== dateProps.date\n ? dateProps.date\n : previousDates.date\n\n const startDate =\n typeof dateProps?.startDate !== 'undefined'\n ? getDate(dateProps.startDate, dateFormat)\n : typeof date !== 'undefined'\n ? getDate(date, dateFormat)\n : undefined\n\n const endDate = !isRange\n ? startDate\n : convertStringToDate(dateProps?.endDate, {\n dateFormat,\n }) || undefined\n\n // Ensure that the calendar view displays the correct start and end months, and to prevent date flickering bug\n const startMonth =\n convertStringToDate(dateProps.startMonth, {\n dateFormat,\n }) ??\n startDate ??\n new Date()\n\n const endMonth =\n convertStringToDate(dateProps.endMonth, {\n dateFormat: dateFormat,\n }) ?? (isRange ? endDate ?? addMonths(startMonth, 1) : startMonth)\n\n const minDate = convertStringToDate(dateProps.minDate, {\n dateFormat,\n })\n\n const maxDate = convertStringToDate(dateProps.maxDate, {\n dateFormat,\n })\n\n const hasValidStartDate = isValid(startDate)\n const hasValidEndDate = isValid(endDate)\n\n const correctedDates = shouldCorrectDate\n ? correctDates({ startDate, endDate, minDate, maxDate, isRange })\n : {}\n\n const dates = {\n startDate,\n endDate,\n startMonth,\n endMonth,\n minDate,\n maxDate,\n ...correctedDates,\n }\n\n return {\n ...dates,\n __startDay: hasValidStartDate\n ? pad(format(dates.startDate, 'dd'), 2)\n : null,\n __startMonth: hasValidStartDate\n ? pad(format(dates.startDate, 'MM'), 2)\n : null,\n __startYear: hasValidStartDate\n ? format(dates.startDate, 'yyyy')\n : null,\n __endDay: hasValidEndDate ? pad(format(dates.endDate, 'dd'), 2) : null,\n __endMonth: hasValidEndDate\n ? pad(format(dates.endDate, 'MM'), 2)\n : null,\n __endYear: hasValidEndDate ? format(dates.endDate, 'yyyy') : null,\n }\n}\n\nfunction correctDates({\n startDate,\n endDate,\n minDate,\n maxDate,\n isRange,\n}: {\n startDate: Date\n endDate: Date\n minDate: Date\n maxDate: Date\n isRange: boolean\n}) {\n const correctedDates = {}\n\n if (isDisabled(startDate, minDate, maxDate)) {\n correctedDates['startDate'] = minDate\n }\n if (isDisabled(endDate, minDate, maxDate)) {\n // state.endDate is only used by the input if range is set to true.\n // this is done to make maxDate correction work if the input is not a range and only maxDate is defined.\n if (!isRange && !minDate) {\n correctedDates['startDate'] = maxDate\n } else {\n correctedDates['endDate'] = maxDate\n }\n }\n\n return correctedDates\n}\n\nfunction updateMonths({\n newDates,\n currentDates,\n}: {\n newDates: DatePickerDates\n currentDates: DatePickerDates\n}) {\n const startMonth =\n newDates.startMonth ?? newDates.startDate ?? currentDates.startMonth\n const endMonth =\n newDates.endMonth ?? newDates.endDate ?? currentDates.endMonth\n\n return {\n startMonth,\n endMonth,\n }\n}\n\nfunction getDate(date: DateType, dateFormat: string) {\n return date instanceof Date\n ? date\n : convertStringToDate(date ?? '', {\n dateFormat,\n })\n}\n\nexport function pad(date: string, size: number) {\n const dateWithPadding = '000000000' + date\n\n return dateWithPadding.substring(dateWithPadding.length - size)\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useDates.js","names":["_react","require","_DatePickerCalc","_isValid","_interopRequireDefault","_format","_dateFns","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","useDates","dateProps","_ref","dateFormat","isRange","shouldCorrectDate","previousDateProps","setPreviousDateProps","useState","dates","setDates","mapDates","hasDatePropChanges","useMemo","some","date","dateProp","previousDate","convertedDateProp","convertStringToDate","convertedPreviousDate","Date","isSameDay","derivedDates","deriveDatesFromProps","currentDates","hasHadValidDate","useRef","updateDates","useCallback","newDates","callback","_newDates$startDate","_newDates$endDate","correctedDates","correctDates","startDate","endDate","minDate","maxDate","months","updateMonths","useEffect","startDates","updateInputDates","endDates","current","isValid","type","updatedDates","pad","format","_ref2","_ref3","_convertStringToDate","_convertStringToDate2","getDate","startMonth","endMonth","addMonths","hasValidStartDate","hasValidEndDate","__startDay","__startMonth","__startYear","__endDay","__endMonth","__endYear","_ref4","getStartDate","_ref5","isDisabled","_ref6","_ref7","_newDates$startMonth","_ref8","_newDates$endMonth","size","dateWithPadding","substring"],"sources":["../../../../../src/components/date-picker/hooks/useDates.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from 'react'\nimport { convertStringToDate, isDisabled } from '../DatePickerCalc'\nimport isValid from 'date-fns/isValid'\nimport format from 'date-fns/format'\nimport { addMonths, isSameDay } from 'date-fns'\nimport { DateType } from '../DatePickerContext'\n\nexport type DatePickerDateProps = {\n date?: DateType\n startDate?: DateType\n endDate?: DateType\n startMonth?: DateType\n endMonth?: DateType\n minDate?: DateType\n maxDate?: DateType\n hoverDate?: DateType | null\n}\n\ntype UseDatesOptions = {\n dateFormat: string\n isRange: boolean\n shouldCorrectDate: boolean\n}\n// TODO: Move to DatePickerInput\nexport type DatePickerInputDates = {\n __startDay?: string\n __startMonth?: string\n __startYear?: string\n __endDay?: string\n __endMonth?: string\n __endYear?: string\n}\n\nexport type DatePickerDates = {\n date?: DateType\n startDate?: Date\n endDate?: Date\n minDate?: Date\n maxDate?: Date\n startMonth?: Date\n endMonth?: Date\n partialStartDate?: string\n partialEndDate?: string\n hasHadValidDate?: boolean\n hoverDate?: Date\n} & DatePickerInputDates\n\nexport default function useDates(\n dateProps: DatePickerDateProps,\n {\n dateFormat,\n isRange = false,\n shouldCorrectDate = false,\n }: UseDatesOptions\n) {\n const [previousDateProps, setPreviousDateProps] = useState(dateProps)\n const [dates, setDates] = useState<DatePickerDates>({\n ...mapDates(dateProps, {\n dateFormat,\n isRange,\n shouldCorrectDate,\n }),\n })\n\n const hasDatePropChanges = useMemo(\n () =>\n Object.keys(dateProps).some((date) => {\n const dateProp = dateProps[date]\n const previousDate = previousDateProps[date]\n\n const convertedDateProp = convertStringToDate(dateProp, {\n dateFormat,\n })\n const convertedPreviousDate = convertStringToDate(previousDate, {\n dateFormat,\n })\n // Make sure that same dates does not trigger a change\n // i.e. 2021-01-01 and new Date('2021-01-01')\n if (\n convertedDateProp instanceof Date &&\n convertedPreviousDate instanceof Date\n ) {\n return !isSameDay(convertedDateProp, convertedPreviousDate)\n }\n\n return dateProp !== previousDate\n }),\n [dateProps, previousDateProps, dateFormat]\n )\n\n // Update dates on prop change\n if (hasDatePropChanges) {\n const derivedDates = deriveDatesFromProps({\n dates,\n dateProps,\n previousDateProps,\n dateFormat,\n isRange,\n })\n\n setDates((currentDates) => ({ ...currentDates, ...derivedDates }))\n setPreviousDateProps(dateProps)\n }\n\n const hasHadValidDate = useRef<boolean>(false)\n\n const updateDates = useCallback(\n (\n newDates: DatePickerDates,\n callback?: (dates: DatePickerDates) => void\n ) => {\n // Correct dates based on min and max date\n const correctedDates = shouldCorrectDate\n ? correctDates({\n startDate: newDates.startDate ?? dates.startDate,\n endDate: newDates.endDate ?? dates.endDate,\n minDate: dates.minDate,\n maxDate: dates.maxDate,\n isRange,\n })\n : {}\n\n // Update months based on month or start/end date changes\n const months = updateMonths({\n newDates,\n currentDates: dates,\n })\n\n setDates((currentDates) => {\n return {\n ...currentDates,\n ...newDates,\n ...months,\n ...correctedDates,\n }\n })\n\n callback?.({\n ...dates,\n ...newDates,\n ...months,\n ...correctedDates,\n })\n },\n [dates, shouldCorrectDate, isRange]\n )\n\n // Updated input dates based on start and end dates, move to DatePickerInput\n // TODO: Move to DatePickerInput\n useEffect(() => {\n const startDates = updateInputDates('start', dates.startDate)\n const endDates = updateInputDates('end', dates.endDate)\n\n hasHadValidDate.current =\n isValid(dates.startDate) || isValid(dates.endDate)\n\n setDates((currentDates) => ({\n ...currentDates,\n ...startDates,\n ...endDates,\n }))\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dates.startDate, dates.endDate])\n\n return {\n dates,\n updateDates,\n hasHadValidDate: hasHadValidDate.current,\n previousDateProps,\n } as const\n}\n\n// TODO: Move to DatePickerInput\nfunction updateInputDates(type: 'start' | 'end', date: Date | undefined) {\n const updatedDates = {}\n\n if (isValid(date)) {\n updatedDates[`__${type}Day`] = pad(format(date, 'dd'), 2)\n updatedDates[`__${type}Month`] = pad(format(date, 'MM'), 2)\n updatedDates[`__${type}Year`] = format(date, 'yyyy')\n } else if (date === undefined) {\n updatedDates[`__${type}Day`] = null\n updatedDates[`__${type}Month`] = null\n updatedDates[`__${type}Year`] = null\n }\n\n return updatedDates\n}\n\nfunction mapDates(\n dateProps: DatePickerDateProps,\n {\n dateFormat,\n isRange,\n shouldCorrectDate,\n }: Omit<UseDatesOptions, 'isLinked'>\n) {\n const date = dateProps.date\n\n const startDate =\n typeof dateProps?.startDate !== 'undefined'\n ? getDate(dateProps.startDate, dateFormat)\n : typeof date !== 'undefined'\n ? getDate(date, dateFormat)\n : undefined\n\n const endDate = !isRange\n ? startDate\n : convertStringToDate(dateProps?.endDate, {\n dateFormat,\n }) || undefined\n\n // Ensure that the calendar view displays the correct start and end months, and to prevent date flickering bug\n const startMonth =\n convertStringToDate(dateProps.startMonth, {\n dateFormat,\n }) ??\n startDate ??\n new Date()\n\n const endMonth =\n convertStringToDate(dateProps.endMonth, {\n dateFormat: dateFormat,\n }) ?? (isRange ? endDate ?? addMonths(startMonth, 1) : startMonth)\n\n const minDate = convertStringToDate(dateProps.minDate, {\n dateFormat,\n })\n\n const maxDate = convertStringToDate(dateProps.maxDate, {\n dateFormat,\n })\n\n const hasValidStartDate = isValid(startDate)\n const hasValidEndDate = isValid(endDate)\n\n const correctedDates = shouldCorrectDate\n ? correctDates({ startDate, endDate, minDate, maxDate, isRange })\n : {}\n\n const dates = {\n date,\n startDate,\n endDate,\n startMonth,\n endMonth,\n minDate,\n maxDate,\n ...correctedDates,\n }\n\n return {\n ...dates,\n __startDay: hasValidStartDate\n ? pad(format(dates.startDate, 'dd'), 2)\n : null,\n __startMonth: hasValidStartDate\n ? pad(format(dates.startDate, 'MM'), 2)\n : null,\n __startYear: hasValidStartDate\n ? format(dates.startDate, 'yyyy')\n : null,\n __endDay: hasValidEndDate ? pad(format(dates.endDate, 'dd'), 2) : null,\n __endMonth: hasValidEndDate\n ? pad(format(dates.endDate, 'MM'), 2)\n : null,\n __endYear: hasValidEndDate ? format(dates.endDate, 'yyyy') : null,\n }\n}\n\nfunction deriveDatesFromProps({\n dates,\n dateProps,\n previousDateProps,\n dateFormat,\n isRange,\n}: {\n dates: DatePickerDates\n dateProps: DatePickerDateProps\n previousDateProps: DatePickerDateProps\n dateFormat: UseDatesOptions['dateFormat']\n isRange: UseDatesOptions['isRange']\n}) {\n const derivedDates: DatePickerDates = {}\n\n const startDate = getStartDate(dateProps, previousDateProps)\n\n // Handle updates related to date and startDate changes when not in range mode\n if (typeof startDate !== 'undefined' && startDate !== dates.startDate) {\n derivedDates.startDate =\n convertStringToDate(startDate, {\n dateFormat,\n }) || undefined\n\n // Set endDate and startMonth to startDate if not in range mode\n if (!isRange) {\n derivedDates.startMonth =\n convertStringToDate(startDate, {\n dateFormat,\n }) || undefined\n\n derivedDates.endDate = derivedDates.startDate\n }\n }\n\n // update endDate based on endDate prop if in range mode\n if (\n isRange &&\n typeof dateProps.endDate !== 'undefined' &&\n dateProps.endDate !== dates.endDate\n ) {\n derivedDates.endDate =\n convertStringToDate(dateProps.endDate, {\n dateFormat,\n }) || undefined\n }\n\n // Handle startMonth/endMonth\n if (\n typeof dateProps.startMonth !== 'undefined' &&\n dateProps.startMonth !== previousDateProps.startMonth\n ) {\n derivedDates.startMonth = convertStringToDate(dateProps.startMonth, {\n dateFormat,\n })\n }\n if (\n typeof dateProps.endMonth !== 'undefined' &&\n dateProps.endMonth !== previousDateProps.endMonth\n ) {\n derivedDates.endMonth = convertStringToDate(dateProps.endMonth, {\n dateFormat,\n })\n }\n\n // Handle minDate/maxDate\n if (\n typeof dateProps.minDate !== 'undefined' &&\n dateProps.minDate !== previousDateProps.minDate\n ) {\n derivedDates.minDate = convertStringToDate(dateProps.minDate, {\n dateFormat,\n })\n }\n if (\n typeof dateProps.maxDate !== 'undefined' &&\n dateProps.maxDate !== previousDateProps.maxDate\n ) {\n derivedDates.maxDate = convertStringToDate(dateProps.maxDate, {\n dateFormat,\n })\n }\n\n return derivedDates\n}\n\nfunction correctDates({\n startDate,\n endDate,\n minDate,\n maxDate,\n isRange,\n}: {\n startDate: Date\n endDate: Date\n minDate: Date\n maxDate: Date\n isRange: boolean\n}) {\n const correctedDates = {}\n\n if (isDisabled(startDate, minDate, maxDate)) {\n correctedDates['startDate'] = minDate\n }\n if (isDisabled(endDate, minDate, maxDate)) {\n // state.endDate is only used by the input if range is set to true.\n // this is done to make maxDate correction work if the input is not a range and only maxDate is defined.\n if (!isRange && !minDate) {\n correctedDates['startDate'] = maxDate\n } else {\n correctedDates['endDate'] = maxDate\n }\n }\n\n return correctedDates\n}\n\nfunction updateMonths({\n newDates,\n currentDates,\n}: {\n newDates: DatePickerDates\n currentDates: DatePickerDates\n}) {\n const startMonth =\n newDates.startMonth ?? newDates.startDate ?? currentDates.startMonth\n const endMonth =\n newDates.endMonth ?? newDates.endDate ?? currentDates.endMonth\n\n return {\n startMonth,\n endMonth,\n }\n}\n\nfunction getDate(date: DateType, dateFormat: string) {\n return date instanceof Date\n ? date\n : convertStringToDate(date ?? '', {\n dateFormat,\n })\n}\n\nfunction getStartDate(\n dateProps: DatePickerDateProps,\n previousDateProps: DatePickerDateProps\n) {\n // priortize startDate over date if provided\n if (\n typeof dateProps.startDate !== 'undefined' &&\n dateProps.startDate !== previousDateProps.startDate\n ) {\n return dateProps.startDate\n }\n\n if (\n typeof dateProps.date !== 'undefined' &&\n dateProps.date !== previousDateProps.date\n ) {\n return dateProps.date\n }\n\n return undefined\n}\n\nexport function pad(date: string, size: number) {\n const dateWithPadding = '000000000' + date\n\n return dateWithPadding.substring(dateWithPadding.length - size)\n}\n"],"mappings":"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"}
@@ -51,6 +51,22 @@ const DialogAction = _ref2 => {
51
51
  close
52
52
  } = (0, _react.useContext)(_ModalContext.default);
53
53
  let childrenWithCloseFunc;
54
+ const onConfirmHandler = (0, _react.useCallback)(event => {
55
+ (0, _componentHelper.dispatchCustomElementEvent)({
56
+ onConfirm
57
+ }, 'onConfirm', {
58
+ event,
59
+ close
60
+ });
61
+ }, [close, onConfirm]);
62
+ const onDeclineHandler = (0, _react.useCallback)(event => {
63
+ (0, _componentHelper.dispatchCustomElementEvent)({
64
+ onDecline
65
+ }, 'onDecline', {
66
+ event,
67
+ close
68
+ });
69
+ }, [close, onDecline]);
54
70
  if (children) {
55
71
  childrenWithCloseFunc = _react.default.Children.map(children, child => {
56
72
  if (child.type === _Button.default) {
@@ -73,26 +89,12 @@ const DialogAction = _ref2 => {
73
89
  }, props), childrenWithCloseFunc, !children && !hideDecline && _react.default.createElement(_Button.default, {
74
90
  text: declineText || (translation === null || translation === void 0 ? void 0 : (_translation$Dialog = translation.Dialog) === null || _translation$Dialog === void 0 ? void 0 : _translation$Dialog.declineText),
75
91
  variant: "secondary",
76
- onClick: event => {
77
- (0, _componentHelper.dispatchCustomElementEvent)({
78
- onDecline
79
- }, 'onDecline', {
80
- event,
81
- close
82
- });
83
- },
92
+ onClick: onDeclineHandler,
84
93
  size: (ButtonContext === null || ButtonContext === void 0 ? void 0 : ButtonContext.size) || 'large'
85
94
  }), !children && !hideConfirm && _react.default.createElement(_Button.default, {
86
95
  text: confirmText || (translation === null || translation === void 0 ? void 0 : (_translation$Dialog2 = translation.Dialog) === null || _translation$Dialog2 === void 0 ? void 0 : _translation$Dialog2.confirmText),
87
96
  variant: "primary",
88
- onClick: event => {
89
- (0, _componentHelper.dispatchCustomElementEvent)({
90
- onConfirm
91
- }, 'onConfirm', {
92
- event,
93
- close
94
- });
95
- },
97
+ onClick: onConfirmHandler,
96
98
  size: (ButtonContext === null || ButtonContext === void 0 ? void 0 : ButtonContext.size) || 'large'
97
99
  }));
98
100
  };