@dnb/eufemia 10.64.0 → 10.65.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 (408) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/cjs/components/date-picker/DatePicker.js +2 -6
  3. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  4. package/cjs/components/date-picker/DatePickerInput.js +2 -2
  5. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  6. package/cjs/components/input-masked/MultiInputMask.d.ts +2 -1
  7. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  8. package/cjs/components/logo/style/themes/dnb-logo-theme-sbanken.css +1 -1
  9. package/cjs/components/logo/style/themes/dnb-logo-theme-sbanken.min.css +1 -1
  10. package/cjs/components/logo/style/themes/dnb-logo-theme-sbanken.scss +1 -1
  11. package/cjs/components/radio/RadioGroup.d.ts +1 -1
  12. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +4 -7
  13. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +1 -0
  14. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +5 -7
  15. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +4 -7
  16. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +1 -0
  17. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +5 -7
  18. package/cjs/components/toggle-button/ToggleButtonGroup.d.ts +2 -0
  19. package/cjs/components/toggle-button/ToggleButtonGroup.js +5 -1
  20. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  21. package/cjs/extensions/forms/Field/Address/AddressDocs.js +7 -7
  22. package/cjs/extensions/forms/Field/Address/AddressDocs.js.map +1 -1
  23. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +8 -1
  24. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +9 -2
  25. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  26. package/cjs/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js +5 -0
  27. package/cjs/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js.map +1 -1
  28. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +2 -2
  29. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  30. package/cjs/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
  31. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  32. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js +3 -1
  33. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  34. package/cjs/extensions/forms/Field/Date/Date.d.ts +5 -4
  35. package/cjs/extensions/forms/Field/Date/Date.js +123 -11
  36. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  37. package/cjs/extensions/forms/Field/Date/DateDocs.js +13 -4
  38. package/cjs/extensions/forms/Field/Date/DateDocs.js.map +1 -1
  39. package/cjs/extensions/forms/Field/Email/EmailDocs.js +7 -7
  40. package/cjs/extensions/forms/Field/Email/EmailDocs.js.map +1 -1
  41. package/cjs/extensions/forms/Field/Expiry/Expiry.d.ts +7 -1
  42. package/cjs/extensions/forms/Field/Expiry/Expiry.js +2 -0
  43. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  44. package/cjs/extensions/forms/Field/Expiry/ExpiryDocs.d.ts +2 -0
  45. package/cjs/extensions/forms/Field/Expiry/ExpiryDocs.js +19 -0
  46. package/cjs/extensions/forms/Field/Expiry/ExpiryDocs.js.map +1 -0
  47. package/cjs/extensions/forms/Field/Name/NameDocs.js +7 -1
  48. package/cjs/extensions/forms/Field/Name/NameDocs.js.map +1 -1
  49. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -2
  50. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  51. package/cjs/extensions/forms/Field/Number/NumberDocs.js +8 -1
  52. package/cjs/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  53. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +2 -2
  54. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  55. package/cjs/extensions/forms/Field/Password/PasswordDocs.js +2 -2
  56. package/cjs/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
  57. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  58. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +5 -2
  59. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  60. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +2 -0
  61. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  62. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -1
  63. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +6 -2
  64. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  65. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +3 -1
  66. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  67. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +5 -0
  68. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +2 -0
  69. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  70. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +10 -1
  71. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  72. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +9 -0
  73. package/cjs/extensions/forms/Field/Selection/Selection.js +20 -13
  74. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  75. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js +5 -0
  76. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  77. package/cjs/extensions/forms/Field/String/StringDocs.js +8 -1
  78. package/cjs/extensions/forms/Field/String/StringDocs.js.map +1 -1
  79. package/cjs/extensions/forms/Field/Toggle/Toggle.d.ts +3 -0
  80. package/cjs/extensions/forms/Field/Toggle/Toggle.js +6 -1
  81. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  82. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js +5 -0
  83. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  84. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +1 -1
  85. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  86. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  87. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  88. package/cjs/extensions/forms/Value/Date/Date.d.ts +3 -2
  89. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  90. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +20 -8
  91. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  92. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +1 -0
  93. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  94. package/cjs/extensions/forms/Wizard/Step/Step.d.ts +16 -1
  95. package/cjs/extensions/forms/Wizard/Step/Step.js +32 -10
  96. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  97. package/cjs/extensions/forms/Wizard/Step/StepDocs.js +18 -3
  98. package/cjs/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  99. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +6 -0
  100. package/cjs/extensions/forms/constants/locales/en-GB.js +7 -1
  101. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  102. package/cjs/extensions/forms/constants/locales/en-US.d.ts +6 -0
  103. package/cjs/extensions/forms/constants/locales/index.d.ts +12 -0
  104. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +6 -0
  105. package/cjs/extensions/forms/constants/locales/nb-NO.js +7 -1
  106. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  107. package/cjs/extensions/forms/types.d.ts +1 -0
  108. package/cjs/extensions/forms/types.js.map +1 -1
  109. package/cjs/fragments/drawer-list/DrawerList.d.ts +6 -1
  110. package/cjs/shared/Eufemia.d.ts +1 -1
  111. package/cjs/shared/Eufemia.js +2 -2
  112. package/cjs/shared/Eufemia.js.map +1 -1
  113. package/cjs/style/core/scopes.scss +1 -1
  114. package/cjs/style/dnb-ui-basis.css +1 -1
  115. package/cjs/style/dnb-ui-basis.min.css +1 -1
  116. package/cjs/style/dnb-ui-body.css +1 -1
  117. package/cjs/style/dnb-ui-body.min.css +1 -1
  118. package/cjs/style/dnb-ui-core.css +1 -1
  119. package/cjs/style/dnb-ui-core.min.css +1 -1
  120. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +0 -2
  121. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  122. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +5 -7
  123. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  124. package/cjs/style/themes/theme-sbanken/globals.scss +0 -4
  125. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +0 -2
  126. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  127. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +6 -8
  128. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  129. package/cjs/style/themes/theme-ui/globals.scss +0 -4
  130. package/cjs/style/themes/theme-ui/ui-theme-basis.css +0 -2
  131. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  132. package/cjs/style/themes/theme-ui/ui-theme-components.css +5 -7
  133. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  134. package/components/date-picker/DatePicker.js +2 -6
  135. package/components/date-picker/DatePicker.js.map +1 -1
  136. package/components/date-picker/DatePickerInput.js +2 -2
  137. package/components/date-picker/DatePickerInput.js.map +1 -1
  138. package/components/input-masked/MultiInputMask.d.ts +2 -1
  139. package/components/input-masked/MultiInputMask.js.map +1 -1
  140. package/components/logo/style/themes/dnb-logo-theme-sbanken.css +1 -1
  141. package/components/logo/style/themes/dnb-logo-theme-sbanken.min.css +1 -1
  142. package/components/logo/style/themes/dnb-logo-theme-sbanken.scss +1 -1
  143. package/components/radio/RadioGroup.d.ts +1 -1
  144. package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +4 -7
  145. package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +1 -0
  146. package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +5 -7
  147. package/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +4 -7
  148. package/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +1 -0
  149. package/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +5 -7
  150. package/components/toggle-button/ToggleButtonGroup.d.ts +2 -0
  151. package/components/toggle-button/ToggleButtonGroup.js +5 -1
  152. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  153. package/es/components/date-picker/DatePicker.js +2 -6
  154. package/es/components/date-picker/DatePicker.js.map +1 -1
  155. package/es/components/date-picker/DatePickerInput.js +2 -2
  156. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  157. package/es/components/input-masked/MultiInputMask.d.ts +2 -1
  158. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  159. package/es/components/logo/style/themes/dnb-logo-theme-sbanken.css +1 -1
  160. package/es/components/logo/style/themes/dnb-logo-theme-sbanken.min.css +1 -1
  161. package/es/components/logo/style/themes/dnb-logo-theme-sbanken.scss +1 -1
  162. package/es/components/radio/RadioGroup.d.ts +1 -1
  163. package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +4 -7
  164. package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +1 -0
  165. package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +5 -7
  166. package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +4 -7
  167. package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +1 -0
  168. package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +5 -7
  169. package/es/components/toggle-button/ToggleButtonGroup.d.ts +2 -0
  170. package/es/components/toggle-button/ToggleButtonGroup.js +5 -1
  171. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  172. package/es/extensions/forms/Field/Address/AddressDocs.js +5 -7
  173. package/es/extensions/forms/Field/Address/AddressDocs.js.map +1 -1
  174. package/es/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +8 -1
  175. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +9 -2
  176. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  177. package/es/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js +5 -0
  178. package/es/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js.map +1 -1
  179. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +2 -2
  180. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  181. package/es/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
  182. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  183. package/es/extensions/forms/Field/Boolean/BooleanDocs.js +3 -1
  184. package/es/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  185. package/es/extensions/forms/Field/Date/Date.d.ts +5 -4
  186. package/es/extensions/forms/Field/Date/Date.js +124 -12
  187. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  188. package/es/extensions/forms/Field/Date/DateDocs.js +13 -4
  189. package/es/extensions/forms/Field/Date/DateDocs.js.map +1 -1
  190. package/es/extensions/forms/Field/Email/EmailDocs.js +5 -7
  191. package/es/extensions/forms/Field/Email/EmailDocs.js.map +1 -1
  192. package/es/extensions/forms/Field/Expiry/Expiry.d.ts +7 -1
  193. package/es/extensions/forms/Field/Expiry/Expiry.js +2 -0
  194. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  195. package/es/extensions/forms/Field/Expiry/ExpiryDocs.d.ts +2 -0
  196. package/es/extensions/forms/Field/Expiry/ExpiryDocs.js +10 -0
  197. package/es/extensions/forms/Field/Expiry/ExpiryDocs.js.map +1 -0
  198. package/es/extensions/forms/Field/Name/NameDocs.js +6 -1
  199. package/es/extensions/forms/Field/Name/NameDocs.js.map +1 -1
  200. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -2
  201. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  202. package/es/extensions/forms/Field/Number/NumberDocs.js +6 -1
  203. package/es/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  204. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +2 -2
  205. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  206. package/es/extensions/forms/Field/Password/PasswordDocs.js +2 -2
  207. package/es/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
  208. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  209. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +5 -2
  210. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  211. package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +2 -0
  212. package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  213. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -1
  214. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +6 -2
  215. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  216. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +3 -1
  217. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  218. package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +5 -0
  219. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +2 -0
  220. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  221. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +8 -1
  222. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  223. package/es/extensions/forms/Field/Selection/Selection.d.ts +9 -0
  224. package/es/extensions/forms/Field/Selection/Selection.js +18 -11
  225. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  226. package/es/extensions/forms/Field/Selection/SelectionDocs.js +5 -0
  227. package/es/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  228. package/es/extensions/forms/Field/String/StringDocs.js +6 -1
  229. package/es/extensions/forms/Field/String/StringDocs.js.map +1 -1
  230. package/es/extensions/forms/Field/Toggle/Toggle.d.ts +3 -0
  231. package/es/extensions/forms/Field/Toggle/Toggle.js +6 -1
  232. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  233. package/es/extensions/forms/Field/Toggle/ToggleDocs.js +5 -0
  234. package/es/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  235. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +1 -1
  236. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  237. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  238. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  239. package/es/extensions/forms/Value/Date/Date.d.ts +3 -2
  240. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  241. package/es/extensions/forms/Wizard/Container/WizardContainer.js +20 -8
  242. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  243. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +1 -0
  244. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  245. package/es/extensions/forms/Wizard/Step/Step.d.ts +16 -1
  246. package/es/extensions/forms/Wizard/Step/Step.js +29 -10
  247. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  248. package/es/extensions/forms/Wizard/Step/StepDocs.js +18 -3
  249. package/es/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  250. package/es/extensions/forms/constants/locales/en-GB.d.ts +6 -0
  251. package/es/extensions/forms/constants/locales/en-GB.js +7 -1
  252. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  253. package/es/extensions/forms/constants/locales/en-US.d.ts +6 -0
  254. package/es/extensions/forms/constants/locales/index.d.ts +12 -0
  255. package/es/extensions/forms/constants/locales/nb-NO.d.ts +6 -0
  256. package/es/extensions/forms/constants/locales/nb-NO.js +7 -1
  257. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  258. package/es/extensions/forms/types.d.ts +1 -0
  259. package/es/extensions/forms/types.js.map +1 -1
  260. package/es/fragments/drawer-list/DrawerList.d.ts +6 -1
  261. package/es/shared/Eufemia.d.ts +1 -1
  262. package/es/shared/Eufemia.js +2 -2
  263. package/es/shared/Eufemia.js.map +1 -1
  264. package/es/style/core/scopes.scss +1 -1
  265. package/es/style/dnb-ui-basis.css +1 -1
  266. package/es/style/dnb-ui-basis.min.css +1 -1
  267. package/es/style/dnb-ui-body.css +1 -1
  268. package/es/style/dnb-ui-body.min.css +1 -1
  269. package/es/style/dnb-ui-core.css +1 -1
  270. package/es/style/dnb-ui-core.min.css +1 -1
  271. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +0 -2
  272. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  273. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +5 -7
  274. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  275. package/es/style/themes/theme-sbanken/globals.scss +0 -4
  276. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +0 -2
  277. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  278. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +6 -8
  279. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  280. package/es/style/themes/theme-ui/globals.scss +0 -4
  281. package/es/style/themes/theme-ui/ui-theme-basis.css +0 -2
  282. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  283. package/es/style/themes/theme-ui/ui-theme-components.css +5 -7
  284. package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  285. package/esm/dnb-ui-basis.min.mjs +1 -1
  286. package/esm/dnb-ui-components.min.mjs +1 -1
  287. package/esm/dnb-ui-elements.min.mjs +1 -1
  288. package/esm/dnb-ui-extensions.min.mjs +3 -3
  289. package/esm/dnb-ui-lib.min.mjs +1 -1
  290. package/extensions/forms/Field/Address/AddressDocs.js +5 -7
  291. package/extensions/forms/Field/Address/AddressDocs.js.map +1 -1
  292. package/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +8 -1
  293. package/extensions/forms/Field/ArraySelection/ArraySelection.js +9 -2
  294. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  295. package/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js +5 -0
  296. package/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js.map +1 -1
  297. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +2 -2
  298. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  299. package/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
  300. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  301. package/extensions/forms/Field/Boolean/BooleanDocs.js +3 -1
  302. package/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  303. package/extensions/forms/Field/Date/Date.d.ts +5 -4
  304. package/extensions/forms/Field/Date/Date.js +124 -12
  305. package/extensions/forms/Field/Date/Date.js.map +1 -1
  306. package/extensions/forms/Field/Date/DateDocs.js +13 -4
  307. package/extensions/forms/Field/Date/DateDocs.js.map +1 -1
  308. package/extensions/forms/Field/Email/EmailDocs.js +5 -7
  309. package/extensions/forms/Field/Email/EmailDocs.js.map +1 -1
  310. package/extensions/forms/Field/Expiry/Expiry.d.ts +7 -1
  311. package/extensions/forms/Field/Expiry/Expiry.js +2 -0
  312. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  313. package/extensions/forms/Field/Expiry/ExpiryDocs.d.ts +2 -0
  314. package/extensions/forms/Field/Expiry/ExpiryDocs.js +10 -0
  315. package/extensions/forms/Field/Expiry/ExpiryDocs.js.map +1 -0
  316. package/extensions/forms/Field/Name/NameDocs.js +6 -1
  317. package/extensions/forms/Field/Name/NameDocs.js.map +1 -1
  318. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -2
  319. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  320. package/extensions/forms/Field/Number/NumberDocs.js +6 -1
  321. package/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  322. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +2 -2
  323. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  324. package/extensions/forms/Field/Password/PasswordDocs.js +2 -2
  325. package/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
  326. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  327. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +5 -2
  328. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  329. package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +2 -0
  330. package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  331. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -1
  332. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +6 -2
  333. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  334. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +3 -1
  335. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  336. package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +5 -0
  337. package/extensions/forms/Field/SelectCountry/SelectCountry.js +2 -0
  338. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  339. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +8 -1
  340. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  341. package/extensions/forms/Field/Selection/Selection.d.ts +9 -0
  342. package/extensions/forms/Field/Selection/Selection.js +20 -13
  343. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  344. package/extensions/forms/Field/Selection/SelectionDocs.js +5 -0
  345. package/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  346. package/extensions/forms/Field/String/StringDocs.js +6 -1
  347. package/extensions/forms/Field/String/StringDocs.js.map +1 -1
  348. package/extensions/forms/Field/Toggle/Toggle.d.ts +3 -0
  349. package/extensions/forms/Field/Toggle/Toggle.js +6 -1
  350. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  351. package/extensions/forms/Field/Toggle/ToggleDocs.js +5 -0
  352. package/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  353. package/extensions/forms/Form/Visibility/Visibility.d.ts +1 -1
  354. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  355. package/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  356. package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  357. package/extensions/forms/Value/Date/Date.d.ts +3 -2
  358. package/extensions/forms/Value/Date/Date.js.map +1 -1
  359. package/extensions/forms/Wizard/Container/WizardContainer.js +20 -8
  360. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  361. package/extensions/forms/Wizard/Context/WizardContext.d.ts +1 -0
  362. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  363. package/extensions/forms/Wizard/Step/Step.d.ts +16 -1
  364. package/extensions/forms/Wizard/Step/Step.js +29 -10
  365. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  366. package/extensions/forms/Wizard/Step/StepDocs.js +18 -3
  367. package/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  368. package/extensions/forms/constants/locales/en-GB.d.ts +6 -0
  369. package/extensions/forms/constants/locales/en-GB.js +7 -1
  370. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  371. package/extensions/forms/constants/locales/en-US.d.ts +6 -0
  372. package/extensions/forms/constants/locales/index.d.ts +12 -0
  373. package/extensions/forms/constants/locales/nb-NO.d.ts +6 -0
  374. package/extensions/forms/constants/locales/nb-NO.js +7 -1
  375. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  376. package/extensions/forms/types.d.ts +1 -0
  377. package/extensions/forms/types.js.map +1 -1
  378. package/fragments/drawer-list/DrawerList.d.ts +6 -1
  379. package/package.json +1 -1
  380. package/shared/Eufemia.d.ts +1 -1
  381. package/shared/Eufemia.js +2 -2
  382. package/shared/Eufemia.js.map +1 -1
  383. package/style/core/scopes.scss +1 -1
  384. package/style/dnb-ui-basis.css +1 -1
  385. package/style/dnb-ui-basis.min.css +1 -1
  386. package/style/dnb-ui-body.css +1 -1
  387. package/style/dnb-ui-body.min.css +1 -1
  388. package/style/dnb-ui-core.css +1 -1
  389. package/style/dnb-ui-core.min.css +1 -1
  390. package/style/themes/theme-eiendom/eiendom-theme-basis.css +0 -2
  391. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  392. package/style/themes/theme-eiendom/eiendom-theme-components.css +5 -7
  393. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  394. package/style/themes/theme-sbanken/globals.scss +0 -4
  395. package/style/themes/theme-sbanken/sbanken-theme-basis.css +0 -2
  396. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  397. package/style/themes/theme-sbanken/sbanken-theme-components.css +6 -8
  398. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  399. package/style/themes/theme-ui/globals.scss +0 -4
  400. package/style/themes/theme-ui/ui-theme-basis.css +0 -2
  401. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  402. package/style/themes/theme-ui/ui-theme-components.css +5 -7
  403. package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  404. package/umd/dnb-ui-basis.min.js +1 -1
  405. package/umd/dnb-ui-components.min.js +1 -1
  406. package/umd/dnb-ui-elements.min.js +1 -1
  407. package/umd/dnb-ui-extensions.min.js +3 -3
  408. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PostalCodeAndCity.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_String","_Composition","_useTranslation","_useDataValue","_defaults","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","PostalCodeAndCity","props","translations","useTranslation","getSourceValue","useDataValue","postalCode","city","help","width","country","countryCode","defaultCountry","fieldBlockProps","countryCodeValue","handleCityDefaults","useCallback","pattern","cityPattern","className","cityClassName","label","cityLabel","cityWidth","errorMessages","cityErrorMessages","handlePostalCodeDefaults","mask","placeholder","postalCodeMask","postalCodePattern","postalCodePlaceHolder","postalCodeClassName","postalCodeLabel","postalCodeWidth","postalCodeErrorMessages","createElement","classnames","PostalCode","useMemo","errorRequired","errorPattern","inputClassName","inputMode","autoComplete","City","trim","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react'\nimport classnames from 'classnames'\nimport { Props as FieldBlockProps } from '../../FieldBlock'\nimport StringField, { Props as StringFieldProps } from '../String'\nimport CompositionField from '../Composition'\nimport { Path } from '../../types'\nimport useTranslation from '../../hooks/useTranslation'\nimport useDataValue from '../../hooks/useDataValue'\nimport { COUNTRY as defaultCountry } from '../../../../shared/defaults'\nimport { HelpProps } from '../../../../components/help-button/HelpButtonInline'\n\nexport type Props = Pick<\n FieldBlockProps,\n 'error' | 'warning' | 'info' | 'width' | 'className'\n> &\n Partial<Record<'postalCode' | 'city', StringFieldProps>> & {\n /**\n * Defines which country the postal code and city is for.\n * Setting it to anything other than `no` will remove the default norwegian postal code pattern.\n * You can also use the value of another field to define the country, by using a path value i.e. `/myCountryPath`.\n * Default: `NO`\n */\n /**\n * @deprecated – use countryCode instead. Will be removed in v11.\n */\n country?: Path | string\n\n /**\n * Defines which country the postal code and city is for.\n * Setting it to anything other than `no` will remove the default norwegian postal code pattern.\n * You can also use the value of another field to define the countryCode, by using a path value i.e. `/myCountryCodePath`.\n * Default: `NO`\n */\n countryCode?: Path | string\n help?: HelpProps\n }\n\nfunction PostalCodeAndCity(props: Props) {\n const translations = useTranslation()\n const { getSourceValue } = useDataValue()\n\n const {\n postalCode = {},\n city = {},\n help,\n width = 'large',\n country,\n countryCode = defaultCountry,\n ...fieldBlockProps\n } = props\n\n const countryCodeValue = getSourceValue(country || countryCode)\n\n const handleCityDefaults = useCallback(\n (city: StringFieldProps) => {\n const props: StringFieldProps = {}\n\n switch (countryCodeValue) {\n case defaultCountry: {\n props.pattern = '^[A-Za-zÆØÅæøå -]+$'\n break\n }\n }\n\n return { ...props, ...city }\n },\n [countryCodeValue]\n )\n\n const {\n pattern: cityPattern,\n className: cityClassName,\n label: cityLabel,\n width: cityWidth,\n errorMessages: cityErrorMessages,\n } = handleCityDefaults(city)\n\n const handlePostalCodeDefaults = useCallback(\n (postalCode: StringFieldProps) => {\n const props: StringFieldProps = {}\n\n switch (countryCodeValue) {\n case defaultCountry:\n case 'DK':\n case 'CH': {\n props.mask = [/\\d/, /\\d/, /\\d/, /\\d/]\n props.pattern = '^[0-9]{4}$'\n props.placeholder = '0000'\n break\n }\n default:\n props.width = '8rem'\n break\n }\n\n return { ...props, ...postalCode }\n },\n [countryCodeValue]\n )\n\n const {\n mask: postalCodeMask,\n pattern: postalCodePattern,\n placeholder: postalCodePlaceHolder,\n className: postalCodeClassName,\n label: postalCodeLabel,\n width: postalCodeWidth,\n errorMessages: postalCodeErrorMessages,\n } = handlePostalCodeDefaults(postalCode)\n\n return (\n <CompositionField\n className={classnames(\n 'dnb-forms-field-postal-code-and-city',\n props.className\n )}\n {...fieldBlockProps}\n width={width}\n >\n <StringField\n {...postalCode}\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__postal-code',\n postalCodeClassName\n )}\n label={postalCodeLabel ?? translations.PostalCode.label}\n mask={postalCodeMask}\n pattern={postalCodePattern}\n placeholder={postalCodePlaceHolder}\n errorMessages={useMemo(\n () => ({\n 'Field.errorRequired': translations.PostalCode.errorRequired,\n 'Field.errorPattern': translations.PostalCode.errorPattern,\n ...postalCodeErrorMessages,\n }),\n [\n postalCodeErrorMessages,\n translations.PostalCode.errorPattern,\n translations.PostalCode.errorRequired,\n ]\n )}\n width={postalCodeWidth ?? false}\n inputClassName=\"dnb-forms-field-postal-code-and-city__postal-code-input\"\n inputMode=\"numeric\"\n autoComplete=\"postal-code\"\n data-country-code={country || countryCode}\n />\n\n <StringField\n help={help}\n {...city}\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__city',\n cityClassName\n )}\n label={cityLabel ?? translations.City.label}\n errorMessages={useMemo(\n () => ({\n 'Field.errorRequired': translations.City.errorRequired,\n 'Field.errorPattern': translations.City.errorPattern,\n ...cityErrorMessages,\n }),\n [\n cityErrorMessages,\n translations.City.errorPattern,\n translations.City.errorRequired,\n ]\n )}\n pattern={cityPattern}\n trim\n width={cityWidth ?? 'stretch'}\n autoComplete=\"address-level2\"\n />\n </CompositionField>\n )\n}\n\nPostalCodeAndCity._supportsSpacingProps = true\nexport default PostalCodeAndCity\n"],"mappings":"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"}
1
+ {"version":3,"file":"PostalCodeAndCity.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_String","_Composition","_useTranslation","_useDataValue","_defaults","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","PostalCodeAndCity","props","translations","useTranslation","getSourceValue","useDataValue","postalCode","city","help","width","country","countryCode","defaultCountry","size","fieldBlockProps","countryCodeValue","handleCityDefaults","useCallback","pattern","cityPattern","className","cityClassName","label","cityLabel","cityWidth","errorMessages","cityErrorMessages","handlePostalCodeDefaults","mask","placeholder","postalCodeMask","postalCodePattern","postalCodePlaceHolder","postalCodeClassName","postalCodeLabel","postalCodeWidth","postalCodeErrorMessages","createElement","classnames","PostalCode","useMemo","errorRequired","errorPattern","inputClassName","inputMode","autoComplete","City","trim","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react'\nimport classnames from 'classnames'\nimport { Props as FieldBlockProps } from '../../FieldBlock'\nimport StringField, { Props as StringFieldProps } from '../String'\nimport CompositionField from '../Composition'\nimport { Path } from '../../types'\nimport useTranslation from '../../hooks/useTranslation'\nimport useDataValue from '../../hooks/useDataValue'\nimport { COUNTRY as defaultCountry } from '../../../../shared/defaults'\nimport { HelpProps } from '../../../../components/help-button/HelpButtonInline'\n\nexport type Props = Pick<\n FieldBlockProps,\n 'error' | 'warning' | 'info' | 'width' | 'className'\n> &\n Partial<Record<'postalCode' | 'city', StringFieldProps>> & {\n /**\n * Defines which country the postal code and city is for.\n * Setting it to anything other than `no` will remove the default norwegian postal code pattern.\n * You can also use the value of another field to define the country, by using a path value i.e. `/myCountryPath`.\n * Default: `NO`\n */\n /**\n * @deprecated – use countryCode instead. Will be removed in v11.\n */\n country?: Path | string\n\n /**\n * Defines which country the postal code and city is for.\n * Setting it to anything other than `no` will remove the default norwegian postal code pattern.\n * You can also use the value of another field to define the countryCode, by using a path value i.e. `/myCountryCodePath`.\n * Default: `NO`\n */\n countryCode?: Path | string\n help?: HelpProps\n } & Pick<StringFieldProps, 'size'>\n\nfunction PostalCodeAndCity(props: Props) {\n const translations = useTranslation()\n const { getSourceValue } = useDataValue()\n\n const {\n postalCode = {},\n city = {},\n help,\n width = 'large',\n country,\n countryCode = defaultCountry,\n size,\n ...fieldBlockProps\n } = props\n\n const countryCodeValue = getSourceValue(country || countryCode)\n\n const handleCityDefaults = useCallback(\n (city: StringFieldProps) => {\n const props: StringFieldProps = {}\n\n switch (countryCodeValue) {\n case defaultCountry: {\n props.pattern = '^[A-Za-zÆØÅæøå -]+$'\n break\n }\n }\n\n return { ...props, ...city }\n },\n [countryCodeValue]\n )\n\n const {\n pattern: cityPattern,\n className: cityClassName,\n label: cityLabel,\n width: cityWidth,\n errorMessages: cityErrorMessages,\n } = handleCityDefaults(city)\n\n const handlePostalCodeDefaults = useCallback(\n (postalCode: StringFieldProps) => {\n const props: StringFieldProps = {}\n\n switch (countryCodeValue) {\n case defaultCountry:\n case 'DK':\n case 'CH': {\n props.mask = [/\\d/, /\\d/, /\\d/, /\\d/]\n props.pattern = '^[0-9]{4}$'\n props.placeholder = '0000'\n break\n }\n default:\n props.width = '8rem'\n break\n }\n\n return { ...props, ...postalCode }\n },\n [countryCodeValue]\n )\n\n const {\n mask: postalCodeMask,\n pattern: postalCodePattern,\n placeholder: postalCodePlaceHolder,\n className: postalCodeClassName,\n label: postalCodeLabel,\n width: postalCodeWidth,\n errorMessages: postalCodeErrorMessages,\n } = handlePostalCodeDefaults(postalCode)\n\n return (\n <CompositionField\n className={classnames(\n 'dnb-forms-field-postal-code-and-city',\n props.className\n )}\n {...fieldBlockProps}\n width={width}\n >\n <StringField\n {...postalCode}\n size={size}\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__postal-code',\n postalCodeClassName\n )}\n label={postalCodeLabel ?? translations.PostalCode.label}\n mask={postalCodeMask}\n pattern={postalCodePattern}\n placeholder={postalCodePlaceHolder}\n errorMessages={useMemo(\n () => ({\n 'Field.errorRequired': translations.PostalCode.errorRequired,\n 'Field.errorPattern': translations.PostalCode.errorPattern,\n ...postalCodeErrorMessages,\n }),\n [\n postalCodeErrorMessages,\n translations.PostalCode.errorPattern,\n translations.PostalCode.errorRequired,\n ]\n )}\n width={postalCodeWidth ?? false}\n inputClassName=\"dnb-forms-field-postal-code-and-city__postal-code-input\"\n inputMode=\"numeric\"\n autoComplete=\"postal-code\"\n data-country-code={country || countryCode}\n />\n\n <StringField\n help={help}\n {...city}\n size={size}\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__city',\n cityClassName\n )}\n label={cityLabel ?? translations.City.label}\n errorMessages={useMemo(\n () => ({\n 'Field.errorRequired': translations.City.errorRequired,\n 'Field.errorPattern': translations.City.errorPattern,\n ...cityErrorMessages,\n }),\n [\n cityErrorMessages,\n translations.City.errorPattern,\n translations.City.errorRequired,\n ]\n )}\n pattern={cityPattern}\n trim\n width={cityWidth ?? 'stretch'}\n inputClassName=\"dnb-forms-field-postal-code-and-city__city-input\"\n autoComplete=\"address-level2\"\n />\n </CompositionField>\n )\n}\n\nPostalCodeAndCity._supportsSpacingProps = true\nexport default PostalCodeAndCity\n"],"mappings":"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"}
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.PostalCodeAndCityProperties = void 0;
7
7
  var _FieldDocs = require("../FieldDocs");
8
+ var _StringDocs = require("../String/StringDocs");
8
9
  const PostalCodeAndCityProperties = {
9
10
  countryCode: {
10
11
  doc: 'Defines which country the postal code and city is for, based on the ISO 3166-1 alpha-2 format i.e. `NO`, `DE` etc. ' + 'Setting it to anything other than `NO` will remove the default norwegian postal code pattern. ' + 'You can also use the value of another field to define the countryCode, by using a path value i.e. `/myCountryCodePath`. ' + 'Defaults to `NO`',
@@ -21,7 +22,8 @@ const PostalCodeAndCityProperties = {
21
22
  type: 'object',
22
23
  status: 'required'
23
24
  },
24
- help: _FieldDocs.FieldProperties.help
25
+ help: _FieldDocs.FieldProperties.help,
26
+ size: _StringDocs.stringProperties.size
25
27
  };
26
28
  exports.PostalCodeAndCityProperties = PostalCodeAndCityProperties;
27
29
  //# sourceMappingURL=PostalCodeAndCityDocs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PostalCodeAndCityDocs.js","names":["_FieldDocs","require","PostalCodeAndCityProperties","countryCode","doc","type","status","postalCode","city","help","FieldProperties","exports"],"sources":["../../../../../../src/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport { FieldProperties } from '../FieldDocs'\n\nexport const PostalCodeAndCityProperties: PropertiesTableProps = {\n countryCode: {\n doc:\n 'Defines which country the postal code and city is for, based on the ISO 3166-1 alpha-2 format i.e. `NO`, `DE` etc. ' +\n 'Setting it to anything other than `NO` will remove the default norwegian postal code pattern. ' +\n 'You can also use the value of another field to define the countryCode, by using a path value i.e. `/myCountryCodePath`. ' +\n 'Defaults to `NO`',\n type: ['Path', 'string'],\n status: 'optional',\n },\n postalCode: {\n doc: 'Properties for the [Field.String](/uilib/extensions/forms/base-fields/String/) component for postal code.',\n type: 'object',\n status: 'required',\n },\n city: {\n doc: 'Properties for the [Field.String](/uilib/extensions/forms/base-fields/String/) component for city.',\n type: 'object',\n status: 'required',\n },\n help: FieldProperties.help,\n}\n"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AAEO,MAAMC,2BAAiD,GAAG;EAC/DC,WAAW,EAAE;IACXC,GAAG,EACD,qHAAqH,GACrH,gGAAgG,GAChG,0HAA0H,GAC1H,kBAAkB;IACpBC,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IACxBC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVH,GAAG,EAAE,2GAA2G;IAChHC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,IAAI,EAAE;IACJJ,GAAG,EAAE,oGAAoG;IACzGC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,IAAI,EAAEC,0BAAe,CAACD;AACxB,CAAC;AAAAE,OAAA,CAAAT,2BAAA,GAAAA,2BAAA"}
1
+ {"version":3,"file":"PostalCodeAndCityDocs.js","names":["_FieldDocs","require","_StringDocs","PostalCodeAndCityProperties","countryCode","doc","type","status","postalCode","city","help","FieldProperties","size","stringProperties","exports"],"sources":["../../../../../../src/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport { FieldProperties } from '../FieldDocs'\nimport { stringProperties } from '../String/StringDocs'\n\nexport const PostalCodeAndCityProperties: PropertiesTableProps = {\n countryCode: {\n doc:\n 'Defines which country the postal code and city is for, based on the ISO 3166-1 alpha-2 format i.e. `NO`, `DE` etc. ' +\n 'Setting it to anything other than `NO` will remove the default norwegian postal code pattern. ' +\n 'You can also use the value of another field to define the countryCode, by using a path value i.e. `/myCountryCodePath`. ' +\n 'Defaults to `NO`',\n type: ['Path', 'string'],\n status: 'optional',\n },\n postalCode: {\n doc: 'Properties for the [Field.String](/uilib/extensions/forms/base-fields/String/) component for postal code.',\n type: 'object',\n status: 'required',\n },\n city: {\n doc: 'Properties for the [Field.String](/uilib/extensions/forms/base-fields/String/) component for city.',\n type: 'object',\n status: 'required',\n },\n help: FieldProperties.help,\n size: stringProperties.size,\n}\n"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAEO,MAAME,2BAAiD,GAAG;EAC/DC,WAAW,EAAE;IACXC,GAAG,EACD,qHAAqH,GACrH,gGAAgG,GAChG,0HAA0H,GAC1H,kBAAkB;IACpBC,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IACxBC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVH,GAAG,EAAE,2GAA2G;IAChHC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,IAAI,EAAE;IACJJ,GAAG,EAAE,oGAAoG;IACzGC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,IAAI,EAAEC,0BAAe,CAACD,IAAI;EAC1BE,IAAI,EAAEC,4BAAgB,CAACD;AACzB,CAAC;AAAAE,OAAA,CAAAX,2BAAA,GAAAA,2BAAA"}
@@ -1,6 +1,7 @@
1
1
  import { type CountryType, type CountryLang } from '../../constants/countries';
2
2
  import { FieldPropsWithExtraValue } from '../../types';
3
3
  import { FieldBlockWidth } from '../../FieldBlock';
4
+ import { AutocompleteAllProps } from '../../../../components/autocomplete/Autocomplete';
4
5
  export type CountryFilterSet = 'Scandinavia' | 'Nordic' | 'Europe' | 'Prioritized';
5
6
  export type { CountryType };
6
7
  export type Props = FieldPropsWithExtraValue<string, CountryType, undefined | string> & {
@@ -21,6 +22,10 @@ export type Props = FieldPropsWithExtraValue<string, CountryType, undefined | st
21
22
  * The width of the component.
22
23
  */
23
24
  width?: FieldBlockWidth;
25
+ /**
26
+ * The size of the component.
27
+ */
28
+ size?: AutocompleteAllProps['size'];
24
29
  };
25
30
  declare function SelectCountry(props: Props): import("react/jsx-runtime").JSX.Element;
26
31
  declare namespace SelectCountry {
@@ -75,6 +75,7 @@ function SelectCountry(props) {
75
75
  countries: ccFilter = 'Prioritized',
76
76
  hasError,
77
77
  disabled,
78
+ size,
78
79
  value,
79
80
  width,
80
81
  htmlAttributes,
@@ -179,6 +180,7 @@ function SelectCountry(props) {
179
180
  data: dataRef.current,
180
181
  value: typeof value === 'string' ? value : null,
181
182
  disabled: disabled,
183
+ size: size,
182
184
  on_show: fillData,
183
185
  on_focus: onFocusHandler,
184
186
  on_blur: handleBlur,
@@ -1 +1 @@
1
- {"version":3,"file":"SelectCountry.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","_FieldBlockContext","_defaults","_components","_utils","_countries","_hooks","_FieldBlock","_useTranslation","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SelectCountry","props","_props$width","sharedContext","useContext","SharedContext","fieldBlockContext","FieldBlockContext","label","defaultLabel","placeholder","defaultPlaceholder","errorRequired","useTranslation","lang","locale","LOCALE","split","getCountryObjectByIso","useCallback","country","countries","find","_ref","iso","i18n","provideAdditionalArgs","errorMessages","useMemo","required","preparedProps","width","composition","id","path","itemPath","className","ccFilter","hasError","disabled","htmlAttributes","handleFocus","handleBlur","handleChange","updateValue","setDisplayValue","forceUpdate","filterCountries","useFieldProps","dataRef","useRef","langRef","wasFilled","countryFilter","isLangChange","current","getCountryData","sort","window","requestAnimationFrame","handleCountryChange","_ref2","data","newValue","selectedKey","fillData","onFocusHandler","_ref3","updateData","onTypeHandler","_ref4","_event$nativeEvent","currentValue","setHidden","event","nativeEvent","search","toLowerCase","_ref5","values","some","s","includes","_getCountryObjectByIs","_getCountryObjectByIs2","fieldBlockProps","forId","classnames","contentWidth","pickSpacingProps","createElement","Autocomplete","input_icon","on_show","on_focus","on_blur","on_change","on_type","stretch","status","show_submit_button","keep_selection","autoComplete","no_animation","noAnimation","makeObject","_country$i18n$lang","content","en","sortedCountries","_ref6","_ref7","_String","_String$localeCompare","a","b","indexA","prioritizedCountries","indexOf","indexB","priorityA","priorityB","localeCompare","map","result","_country$regions","regions","continent","makeCountryFilterSet","_country$regions2","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/SelectCountry/SelectCountry.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo, useRef } from 'react'\nimport classnames from 'classnames'\nimport SharedContext from '../../../../shared/Context'\nimport FieldBlockContext from '../../FieldBlock/FieldBlockContext'\nimport { LOCALE } from '../../../../shared/defaults'\nimport { Autocomplete } from '../../../../components'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport countries, {\n prioritizedCountries,\n type CountryType,\n type CountryLang,\n} from '../../constants/countries'\nimport { useFieldProps } from '../../hooks'\nimport { FieldPropsWithExtraValue } from '../../types'\nimport FieldBlock, {\n Props as FieldBlockProps,\n FieldBlockWidth,\n} from '../../FieldBlock'\nimport useTranslation from '../../hooks/useTranslation'\n\nexport type CountryFilterSet =\n | 'Scandinavia'\n | 'Nordic'\n | 'Europe'\n | 'Prioritized'\nexport type { CountryType }\n\nexport type Props = FieldPropsWithExtraValue<\n string,\n CountryType,\n undefined | string\n> & {\n /**\n * Lists only the countries you want to show. Can be `Scandinavia`, `Nordic`, `Europe` or `Prioritized`.\n * Defaults to `Prioritized`.\n */\n countries?: CountryFilterSet\n\n /**\n * Use this prop to filter out certain countries. The function receives the country object and should return a boolean. Returning `false` will omit the country.\n */\n filterCountries?: (country: CountryType) => boolean\n\n /**\n * For internal testing purposes\n */\n noAnimation?: boolean\n\n /**\n * The width of the component.\n */\n width?: FieldBlockWidth\n}\n\nfunction SelectCountry(props: Props) {\n const sharedContext = useContext(SharedContext)\n const fieldBlockContext = useContext(FieldBlockContext)\n const {\n label: defaultLabel,\n placeholder: defaultPlaceholder,\n errorRequired,\n } = useTranslation().SelectCountry\n const lang = (sharedContext.locale || LOCALE).split(\n '-'\n )[0] as CountryLang\n\n const getCountryObjectByIso = useCallback(\n (value: CountryType['iso']) => {\n const country = countries.find(({ iso }) => value === iso)\n if (country?.i18n) {\n country['name'] = country.i18n[lang]\n }\n return country\n },\n [lang]\n )\n\n const provideAdditionalArgs = useCallback(\n (value: CountryType['iso']) => {\n const country = getCountryObjectByIso(value)\n\n if (country?.iso) {\n return country\n }\n },\n [getCountryObjectByIso]\n )\n\n const errorMessages = useMemo(\n () => ({\n required: errorRequired,\n }),\n [errorRequired]\n )\n\n const preparedProps: Props = {\n errorMessages,\n ...props,\n width:\n props.width ??\n (fieldBlockContext?.composition ? 'stretch' : 'large'),\n provideAdditionalArgs,\n }\n\n const {\n id,\n path,\n itemPath,\n className,\n placeholder = defaultPlaceholder,\n label = defaultLabel,\n countries: ccFilter = 'Prioritized',\n hasError,\n disabled,\n value,\n width,\n htmlAttributes,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n setDisplayValue,\n forceUpdate,\n filterCountries,\n } = useFieldProps(preparedProps)\n\n const dataRef = useRef(null)\n const langRef = useRef(lang)\n const wasFilled = useRef(false)\n\n const filter = useCallback(\n (country: CountryType) => {\n return countryFilter(country, filterCountries, ccFilter)\n },\n [ccFilter, filterCountries]\n )\n\n /**\n * We do not process the whole country list at the first render.\n * Only when the Autocomplete opens (focus).\n * To achieve this, we use memo instead of effect to update refs in sync.\n *\n * We set or update the data list depending on if the countrycode changes or lang changes.\n * We then update data set when value changes.\n */\n useMemo(() => {\n const isLangChange = lang !== langRef.current\n\n if (isLangChange || !wasFilled.current) {\n langRef.current = lang\n dataRef.current = getCountryData({\n lang,\n filter: !wasFilled.current\n ? (country) => country.iso === value\n : filter,\n sort: ccFilter as Extract<CountryFilterSet, 'Prioritized'>,\n })\n\n // To force Autocomplete to re-evaluate the internal data\n if (isLangChange && value && typeof window !== 'undefined') {\n updateValue(null)\n window.requestAnimationFrame(() => {\n updateValue(value)\n })\n }\n }\n }, [lang, filter, ccFilter, updateValue, value])\n\n const handleCountryChange = useCallback(\n ({ data }: { data: { selectedKey: string } }) => {\n const newValue = data?.selectedKey\n const country = getCountryObjectByIso(newValue)\n if (country?.iso) {\n handleChange(country.iso, country)\n }\n },\n [getCountryObjectByIso, handleChange]\n )\n\n const fillData = useCallback(() => {\n if (!wasFilled.current) {\n wasFilled.current = true\n dataRef.current = getCountryData({\n lang: langRef.current,\n filter,\n sort: ccFilter as Extract<CountryFilterSet, 'Prioritized'>,\n })\n forceUpdate()\n }\n }, [ccFilter, filter, forceUpdate])\n\n const onFocusHandler = useCallback(\n ({ updateData }) => {\n fillData()\n updateData(dataRef.current)\n handleFocus()\n },\n [fillData, handleFocus]\n )\n\n const onTypeHandler = useCallback(\n ({ value: currentValue, setHidden, event }) => {\n // Handle browser autofill/autocomplete\n if (typeof event?.nativeEvent?.data === 'undefined') {\n const search = currentValue.toLowerCase()\n const country = countries.find(({ i18n }) =>\n Object.values(i18n).some((s) => s.toLowerCase().includes(search))\n )\n if (country?.iso) {\n setHidden()\n handleChange(country.iso)\n }\n }\n },\n [handleChange]\n )\n\n useMemo(() => {\n if (path || itemPath) {\n setDisplayValue(\n getCountryObjectByIso(value)?.i18n?.[langRef.current]\n )\n }\n }, [getCountryObjectByIso, itemPath, path, setDisplayValue, value])\n\n const fieldBlockProps: FieldBlockProps = {\n forId: id,\n className: classnames('dnb-forms-field-select-country', className),\n label,\n width:\n width === 'stretch' || fieldBlockContext?.composition\n ? width\n : undefined,\n contentWidth: width !== false ? width : undefined,\n ...pickSpacingProps(props),\n }\n\n return (\n <FieldBlock {...fieldBlockProps}>\n <Autocomplete\n id={id}\n placeholder={placeholder}\n input_icon={false}\n data={dataRef.current}\n value={typeof value === 'string' ? value : null}\n disabled={disabled}\n on_show={fillData}\n on_focus={onFocusHandler}\n on_blur={handleBlur}\n on_change={handleCountryChange}\n on_type={onTypeHandler}\n stretch\n status={hasError ? 'error' : undefined}\n show_submit_button\n keep_selection\n autoComplete=\"country-name\"\n no_animation={props.noAnimation}\n {...htmlAttributes}\n />\n </FieldBlock>\n )\n}\n\ntype GetCountryData = {\n lang?: CountryLang\n filter?: Props['filterCountries']\n sort?: Extract<CountryFilterSet, 'Prioritized'>\n makeObject?: (\n country: CountryType,\n lang: string\n ) => {\n selectedKey: string\n selected_value?: string\n content: string\n }\n}\n\nexport function getCountryData({\n lang = 'nb',\n filter = null,\n sort = null,\n makeObject = (country: CountryType, lang: string) => {\n const content = country.i18n[lang] ?? country.i18n.en\n return {\n selectedKey: country.iso,\n content,\n }\n },\n}: GetCountryData = {}) {\n const sortedCountries = countries\n .filter((country) => {\n if (typeof filter === 'function') {\n return filter(country)\n }\n\n return !filter\n })\n .sort(({ i18n: a }, { i18n: b }) => {\n if (sort === 'Prioritized') {\n const indexA = prioritizedCountries.indexOf(a['en'])\n const indexB = prioritizedCountries.indexOf(b['en'])\n\n const priorityA = indexA !== -1\n const priorityB = indexB !== -1\n\n if (priorityA && priorityB) {\n return indexA - indexB\n } else if (priorityA) {\n return -1\n } else if (priorityB) {\n return 1\n }\n }\n\n return String(a[lang])?.localeCompare?.(b[lang], 'nb') // Always sort by nb, because åøæ (for Åland) is not in the en alphabet\n })\n .map((country) => makeObject(country, lang))\n\n if (sortedCountries.length === 0) {\n return undefined\n }\n\n return sortedCountries\n}\n\nexport function countryFilter(\n country: CountryType,\n filterCountries: (country: CountryType) => boolean,\n ccFilter: CountryFilterSet\n) {\n let result = true\n\n if (ccFilter !== 'Prioritized') {\n switch (ccFilter) {\n case 'Scandinavia':\n case 'Nordic': {\n result = country.regions?.includes(ccFilter)\n break\n }\n case 'Europe': {\n result = country.continent.includes(ccFilter)\n break\n }\n }\n }\n\n if (result && filterCountries) {\n result = filterCountries(country)\n }\n\n return result\n}\n\nexport function makeCountryFilterSet(ccFilter: CountryFilterSet) {\n return (country: CountryType) => {\n switch (ccFilter) {\n case 'Scandinavia':\n case 'Nordic':\n return country.regions?.includes(ccFilter)\n case 'Europe':\n return country.continent.includes(ccFilter)\n }\n return true\n }\n}\n\nSelectCountry._supportsSpacingProps = true\nexport default SelectCountry\n"],"mappings":"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"}
1
+ {"version":3,"file":"SelectCountry.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","_FieldBlockContext","_defaults","_components","_utils","_countries","_hooks","_FieldBlock","_useTranslation","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SelectCountry","props","_props$width","sharedContext","useContext","SharedContext","fieldBlockContext","FieldBlockContext","label","defaultLabel","placeholder","defaultPlaceholder","errorRequired","useTranslation","lang","locale","LOCALE","split","getCountryObjectByIso","useCallback","country","countries","find","_ref","iso","i18n","provideAdditionalArgs","errorMessages","useMemo","required","preparedProps","width","composition","id","path","itemPath","className","ccFilter","hasError","disabled","size","htmlAttributes","handleFocus","handleBlur","handleChange","updateValue","setDisplayValue","forceUpdate","filterCountries","useFieldProps","dataRef","useRef","langRef","wasFilled","countryFilter","isLangChange","current","getCountryData","sort","window","requestAnimationFrame","handleCountryChange","_ref2","data","newValue","selectedKey","fillData","onFocusHandler","_ref3","updateData","onTypeHandler","_ref4","_event$nativeEvent","currentValue","setHidden","event","nativeEvent","search","toLowerCase","_ref5","values","some","s","includes","_getCountryObjectByIs","_getCountryObjectByIs2","fieldBlockProps","forId","classnames","contentWidth","pickSpacingProps","createElement","Autocomplete","input_icon","on_show","on_focus","on_blur","on_change","on_type","stretch","status","show_submit_button","keep_selection","autoComplete","no_animation","noAnimation","makeObject","_country$i18n$lang","content","en","sortedCountries","_ref6","_ref7","_String","_String$localeCompare","a","b","indexA","prioritizedCountries","indexOf","indexB","priorityA","priorityB","localeCompare","map","result","_country$regions","regions","continent","makeCountryFilterSet","_country$regions2","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/SelectCountry/SelectCountry.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo, useRef } from 'react'\nimport classnames from 'classnames'\nimport SharedContext from '../../../../shared/Context'\nimport FieldBlockContext from '../../FieldBlock/FieldBlockContext'\nimport { LOCALE } from '../../../../shared/defaults'\nimport { Autocomplete } from '../../../../components'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport countries, {\n prioritizedCountries,\n type CountryType,\n type CountryLang,\n} from '../../constants/countries'\nimport { useFieldProps } from '../../hooks'\nimport { FieldPropsWithExtraValue } from '../../types'\nimport FieldBlock, {\n Props as FieldBlockProps,\n FieldBlockWidth,\n} from '../../FieldBlock'\nimport useTranslation from '../../hooks/useTranslation'\nimport { AutocompleteAllProps } from '../../../../components/autocomplete/Autocomplete'\n\nexport type CountryFilterSet =\n | 'Scandinavia'\n | 'Nordic'\n | 'Europe'\n | 'Prioritized'\nexport type { CountryType }\n\nexport type Props = FieldPropsWithExtraValue<\n string,\n CountryType,\n undefined | string\n> & {\n /**\n * Lists only the countries you want to show. Can be `Scandinavia`, `Nordic`, `Europe` or `Prioritized`.\n * Defaults to `Prioritized`.\n */\n countries?: CountryFilterSet\n\n /**\n * Use this prop to filter out certain countries. The function receives the country object and should return a boolean. Returning `false` will omit the country.\n */\n filterCountries?: (country: CountryType) => boolean\n\n /**\n * For internal testing purposes\n */\n noAnimation?: boolean\n\n /**\n * The width of the component.\n */\n width?: FieldBlockWidth\n\n /**\n * The size of the component.\n */\n size?: AutocompleteAllProps['size']\n}\n\nfunction SelectCountry(props: Props) {\n const sharedContext = useContext(SharedContext)\n const fieldBlockContext = useContext(FieldBlockContext)\n const {\n label: defaultLabel,\n placeholder: defaultPlaceholder,\n errorRequired,\n } = useTranslation().SelectCountry\n const lang = (sharedContext.locale || LOCALE).split(\n '-'\n )[0] as CountryLang\n\n const getCountryObjectByIso = useCallback(\n (value: CountryType['iso']) => {\n const country = countries.find(({ iso }) => value === iso)\n if (country?.i18n) {\n country['name'] = country.i18n[lang]\n }\n return country\n },\n [lang]\n )\n\n const provideAdditionalArgs = useCallback(\n (value: CountryType['iso']) => {\n const country = getCountryObjectByIso(value)\n\n if (country?.iso) {\n return country\n }\n },\n [getCountryObjectByIso]\n )\n\n const errorMessages = useMemo(\n () => ({\n required: errorRequired,\n }),\n [errorRequired]\n )\n\n const preparedProps: Props = {\n errorMessages,\n ...props,\n width:\n props.width ??\n (fieldBlockContext?.composition ? 'stretch' : 'large'),\n provideAdditionalArgs,\n }\n\n const {\n id,\n path,\n itemPath,\n className,\n placeholder = defaultPlaceholder,\n label = defaultLabel,\n countries: ccFilter = 'Prioritized',\n hasError,\n disabled,\n size,\n value,\n width,\n htmlAttributes,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n setDisplayValue,\n forceUpdate,\n filterCountries,\n } = useFieldProps(preparedProps)\n\n const dataRef = useRef(null)\n const langRef = useRef(lang)\n const wasFilled = useRef(false)\n\n const filter = useCallback(\n (country: CountryType) => {\n return countryFilter(country, filterCountries, ccFilter)\n },\n [ccFilter, filterCountries]\n )\n\n /**\n * We do not process the whole country list at the first render.\n * Only when the Autocomplete opens (focus).\n * To achieve this, we use memo instead of effect to update refs in sync.\n *\n * We set or update the data list depending on if the countrycode changes or lang changes.\n * We then update data set when value changes.\n */\n useMemo(() => {\n const isLangChange = lang !== langRef.current\n\n if (isLangChange || !wasFilled.current) {\n langRef.current = lang\n dataRef.current = getCountryData({\n lang,\n filter: !wasFilled.current\n ? (country) => country.iso === value\n : filter,\n sort: ccFilter as Extract<CountryFilterSet, 'Prioritized'>,\n })\n\n // To force Autocomplete to re-evaluate the internal data\n if (isLangChange && value && typeof window !== 'undefined') {\n updateValue(null)\n window.requestAnimationFrame(() => {\n updateValue(value)\n })\n }\n }\n }, [lang, filter, ccFilter, updateValue, value])\n\n const handleCountryChange = useCallback(\n ({ data }: { data: { selectedKey: string } }) => {\n const newValue = data?.selectedKey\n const country = getCountryObjectByIso(newValue)\n if (country?.iso) {\n handleChange(country.iso, country)\n }\n },\n [getCountryObjectByIso, handleChange]\n )\n\n const fillData = useCallback(() => {\n if (!wasFilled.current) {\n wasFilled.current = true\n dataRef.current = getCountryData({\n lang: langRef.current,\n filter,\n sort: ccFilter as Extract<CountryFilterSet, 'Prioritized'>,\n })\n forceUpdate()\n }\n }, [ccFilter, filter, forceUpdate])\n\n const onFocusHandler = useCallback(\n ({ updateData }) => {\n fillData()\n updateData(dataRef.current)\n handleFocus()\n },\n [fillData, handleFocus]\n )\n\n const onTypeHandler = useCallback(\n ({ value: currentValue, setHidden, event }) => {\n // Handle browser autofill/autocomplete\n if (typeof event?.nativeEvent?.data === 'undefined') {\n const search = currentValue.toLowerCase()\n const country = countries.find(({ i18n }) =>\n Object.values(i18n).some((s) => s.toLowerCase().includes(search))\n )\n if (country?.iso) {\n setHidden()\n handleChange(country.iso)\n }\n }\n },\n [handleChange]\n )\n\n useMemo(() => {\n if (path || itemPath) {\n setDisplayValue(\n getCountryObjectByIso(value)?.i18n?.[langRef.current]\n )\n }\n }, [getCountryObjectByIso, itemPath, path, setDisplayValue, value])\n\n const fieldBlockProps: FieldBlockProps = {\n forId: id,\n className: classnames('dnb-forms-field-select-country', className),\n label,\n width:\n width === 'stretch' || fieldBlockContext?.composition\n ? width\n : undefined,\n contentWidth: width !== false ? width : undefined,\n ...pickSpacingProps(props),\n }\n\n return (\n <FieldBlock {...fieldBlockProps}>\n <Autocomplete\n id={id}\n placeholder={placeholder}\n input_icon={false}\n data={dataRef.current}\n value={typeof value === 'string' ? value : null}\n disabled={disabled}\n size={size}\n on_show={fillData}\n on_focus={onFocusHandler}\n on_blur={handleBlur}\n on_change={handleCountryChange}\n on_type={onTypeHandler}\n stretch\n status={hasError ? 'error' : undefined}\n show_submit_button\n keep_selection\n autoComplete=\"country-name\"\n no_animation={props.noAnimation}\n {...htmlAttributes}\n />\n </FieldBlock>\n )\n}\n\ntype GetCountryData = {\n lang?: CountryLang\n filter?: Props['filterCountries']\n sort?: Extract<CountryFilterSet, 'Prioritized'>\n makeObject?: (\n country: CountryType,\n lang: string\n ) => {\n selectedKey: string\n selected_value?: string\n content: string\n }\n}\n\nexport function getCountryData({\n lang = 'nb',\n filter = null,\n sort = null,\n makeObject = (country: CountryType, lang: string) => {\n const content = country.i18n[lang] ?? country.i18n.en\n return {\n selectedKey: country.iso,\n content,\n }\n },\n}: GetCountryData = {}) {\n const sortedCountries = countries\n .filter((country) => {\n if (typeof filter === 'function') {\n return filter(country)\n }\n\n return !filter\n })\n .sort(({ i18n: a }, { i18n: b }) => {\n if (sort === 'Prioritized') {\n const indexA = prioritizedCountries.indexOf(a['en'])\n const indexB = prioritizedCountries.indexOf(b['en'])\n\n const priorityA = indexA !== -1\n const priorityB = indexB !== -1\n\n if (priorityA && priorityB) {\n return indexA - indexB\n } else if (priorityA) {\n return -1\n } else if (priorityB) {\n return 1\n }\n }\n\n return String(a[lang])?.localeCompare?.(b[lang], 'nb') // Always sort by nb, because åøæ (for Åland) is not in the en alphabet\n })\n .map((country) => makeObject(country, lang))\n\n if (sortedCountries.length === 0) {\n return undefined\n }\n\n return sortedCountries\n}\n\nexport function countryFilter(\n country: CountryType,\n filterCountries: (country: CountryType) => boolean,\n ccFilter: CountryFilterSet\n) {\n let result = true\n\n if (ccFilter !== 'Prioritized') {\n switch (ccFilter) {\n case 'Scandinavia':\n case 'Nordic': {\n result = country.regions?.includes(ccFilter)\n break\n }\n case 'Europe': {\n result = country.continent.includes(ccFilter)\n break\n }\n }\n }\n\n if (result && filterCountries) {\n result = filterCountries(country)\n }\n\n return result\n}\n\nexport function makeCountryFilterSet(ccFilter: CountryFilterSet) {\n return (country: CountryType) => {\n switch (ccFilter) {\n case 'Scandinavia':\n case 'Nordic':\n return country.regions?.includes(ccFilter)\n case 'Europe':\n return country.continent.includes(ccFilter)\n }\n return true\n }\n}\n\nSelectCountry._supportsSpacingProps = true\nexport default SelectCountry\n"],"mappings":"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"}
@@ -5,6 +5,12 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.SelectCountryProperties = exports.SelectCountryGeneralEvents = void 0;
7
7
  var _FieldDocs = require("../FieldDocs");
8
+ var _AutocompleteDocs = require("../../../../components/autocomplete/AutocompleteDocs");
9
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
11
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
12
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
13
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
8
14
  const SelectCountryProperties = {
9
15
  countries: {
10
16
  doc: 'List only a certain set of countries: `Scandinavia`, `Nordic`, `Europe` or `Prioritized`(all countries [sorted by priority](/uilib/extensions/forms/feature-fields/SelectCountry/#filter-or-prioritize-country-listing)). Defaults to `Prioritized`.',
@@ -15,7 +21,10 @@ const SelectCountryProperties = {
15
21
  doc: 'Use this prop to filter out certain countries. The function receives the country object and should return a boolean. Returning `false` will omit the country.',
16
22
  type: 'function',
17
23
  status: 'optional'
18
- }
24
+ },
25
+ size: _objectSpread(_objectSpread({}, _AutocompleteDocs.autocompleteProperties.size), {}, {
26
+ doc: `${_AutocompleteDocs.autocompleteProperties.size.doc} Consider rather setting field sizes with [Form.Appearance](/uilib/extensions/forms/Form/Appearance/).`
27
+ })
19
28
  };
20
29
  exports.SelectCountryProperties = SelectCountryProperties;
21
30
  const SelectCountryGeneralEvents = (0, _FieldDocs.getFieldEventsWithTypes)({
@@ -1 +1 @@
1
- {"version":3,"file":"SelectCountryDocs.js","names":["_FieldDocs","require","SelectCountryProperties","countries","doc","type","status","filterCountries","exports","SelectCountryGeneralEvents","getFieldEventsWithTypes","optional"],"sources":["../../../../../../src/extensions/forms/Field/SelectCountry/SelectCountryDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport { getFieldEventsWithTypes } from '../FieldDocs'\n\nexport const SelectCountryProperties: PropertiesTableProps = {\n countries: {\n doc: 'List only a certain set of countries: `Scandinavia`, `Nordic`, `Europe` or `Prioritized`(all countries [sorted by priority](/uilib/extensions/forms/feature-fields/SelectCountry/#filter-or-prioritize-country-listing)). Defaults to `Prioritized`.',\n type: 'string',\n status: 'optional',\n },\n filterCountries: {\n doc: 'Use this prop to filter out certain countries. The function receives the country object and should return a boolean. Returning `false` will omit the country.',\n type: 'function',\n status: 'optional',\n },\n}\n\nexport const SelectCountryGeneralEvents = getFieldEventsWithTypes(\n { type: 'string', optional: true },\n { type: 'object', optional: true }\n)\n"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AAEO,MAAMC,uBAA6C,GAAG;EAC3DC,SAAS,EAAE;IACTC,GAAG,EAAE,sPAAsP;IAC3PC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,eAAe,EAAE;IACfH,GAAG,EAAE,+JAA+J;IACpKC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV;AACF,CAAC;AAAAE,OAAA,CAAAN,uBAAA,GAAAA,uBAAA;AAEM,MAAMO,0BAA0B,GAAG,IAAAC,kCAAuB,EAC/D;EAAEL,IAAI,EAAE,QAAQ;EAAEM,QAAQ,EAAE;AAAK,CAAC,EAClC;EAAEN,IAAI,EAAE,QAAQ;EAAEM,QAAQ,EAAE;AAAK,CACnC,CAAC;AAAAH,OAAA,CAAAC,0BAAA,GAAAA,0BAAA"}
1
+ {"version":3,"file":"SelectCountryDocs.js","names":["_FieldDocs","require","_AutocompleteDocs","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","obj","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","SelectCountryProperties","countries","doc","type","status","filterCountries","size","autocompleteProperties","exports","SelectCountryGeneralEvents","getFieldEventsWithTypes","optional"],"sources":["../../../../../../src/extensions/forms/Field/SelectCountry/SelectCountryDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport { getFieldEventsWithTypes } from '../FieldDocs'\nimport { autocompleteProperties } from '../../../../components/autocomplete/AutocompleteDocs'\n\nexport const SelectCountryProperties: PropertiesTableProps = {\n countries: {\n doc: 'List only a certain set of countries: `Scandinavia`, `Nordic`, `Europe` or `Prioritized`(all countries [sorted by priority](/uilib/extensions/forms/feature-fields/SelectCountry/#filter-or-prioritize-country-listing)). Defaults to `Prioritized`.',\n type: 'string',\n status: 'optional',\n },\n filterCountries: {\n doc: 'Use this prop to filter out certain countries. The function receives the country object and should return a boolean. Returning `false` will omit the country.',\n type: 'function',\n status: 'optional',\n },\n size: {\n ...autocompleteProperties.size,\n doc: `${autocompleteProperties.size.doc} Consider rather setting field sizes with [Form.Appearance](/uilib/extensions/forms/Form/Appearance/).`,\n },\n}\n\nexport const SelectCountryGeneralEvents = getFieldEventsWithTypes(\n { type: 'string', optional: true },\n { type: 'object', optional: true }\n)\n"],"mappings":"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"}
@@ -9,6 +9,10 @@ import { HelpProps } from '../../../../components/help-button/HelpButtonInline';
9
9
  import { DrawerListProps } from '../../../../fragments/DrawerList';
10
10
  import { ToCamelCase } from '../../../../shared/helpers/withCamelCaseProps';
11
11
  import { FormError } from '../../utils';
12
+ import type { RadioProps } from '../../../../components/Radio';
13
+ import type { ToggleButtonProps } from '../../../../components/ToggleButton';
14
+ import type { RadioGroupProps } from '../../../../components/radio/RadioGroup';
15
+ import type { ToggleButtonGroupProps } from '../../../../components/toggle-button/ToggleButtonGroup';
12
16
  type IOption = {
13
17
  title: string | React.ReactNode;
14
18
  value: number | string;
@@ -59,6 +63,10 @@ export type Props = FieldProps<IOption['value']> & {
59
63
  * Dropdown specific props
60
64
  */
61
65
  dropdownProps?: ToCamelCase<DropdownAllProps>;
66
+ /**
67
+ * The size of the component.
68
+ */
69
+ size?: ToggleButtonGroupProps['size'] | RadioGroupProps['size'] | AutocompleteAllProps['size'] | DropdownAllProps['size'];
62
70
  /**
63
71
  * The content of the component.
64
72
  */
@@ -74,6 +82,7 @@ type OptionProps = React.ComponentProps<React.FC<{
74
82
  help: HelpProps;
75
83
  title: React.ReactNode;
76
84
  children: React.ReactNode;
85
+ size?: ToggleButtonProps['size'] | RadioProps['size'];
77
86
  }>>;
78
87
  export declare function mapOptions(children: React.ReactNode, { createOption, }: {
79
88
  createOption: (props: OptionProps, i: number) => React.ReactNode;
@@ -18,7 +18,7 @@ var _FieldBlock = _interopRequireDefault(require("../../FieldBlock"));
18
18
  var _withCamelCaseProps = require("../../../../shared/helpers/withCamelCaseProps");
19
19
  var _useDataValue = _interopRequireDefault(require("../../hooks/useDataValue"));
20
20
  var _em, _em2;
21
- const _excluded = ["value", "title", "children", "error", "help"];
21
+ const _excluded = ["value", "title", "children", "error", "help", "size"];
22
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
23
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
24
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -45,6 +45,7 @@ function Selection(props) {
45
45
  error,
46
46
  hasError,
47
47
  disabled,
48
+ size,
48
49
  emptyValue,
49
50
  width = 'large',
50
51
  htmlAttributes,
@@ -121,15 +122,19 @@ function Selection(props) {
121
122
  }
122
123
  }
123
124
  });
124
- return _react.default.createElement(_FieldBlock.default, _extends({}, fieldBlockProps, {
125
- labelHeight: "small",
125
+ const additionalFieldBlockProps = {
126
126
  asFieldset: _react.default.Children.count(items) > 1
127
- }), _react.default.createElement(Component.Group, {
127
+ };
128
+ if (!size) {
129
+ additionalFieldBlockProps.labelHeight = 'small';
130
+ }
131
+ return _react.default.createElement(_FieldBlock.default, _extends({}, fieldBlockProps, additionalFieldBlockProps), _react.default.createElement(Component.Group, {
132
+ size: size,
128
133
  className: cn,
129
134
  layout_direction: optionsLayout === 'horizontal' ? 'row' : 'column',
130
135
  disabled: disabled,
131
136
  on_change: onChangeHandler,
132
- value: String(value !== null && value !== void 0 ? value : '')
137
+ value: String(value !== null && value !== void 0 ? value : '') || undefined
133
138
  }, items));
134
139
  }
135
140
  case 'autocomplete':
@@ -149,6 +154,7 @@ function Selection(props) {
149
154
  disabled
150
155
  }, htmlAttributes), {}, {
151
156
  data,
157
+ size,
152
158
  on_change: handleDropdownChange,
153
159
  on_show: handleShow,
154
160
  on_hide: handleHide,
@@ -180,13 +186,13 @@ function renderRadioItems(_ref6) {
180
186
  } = _ref6;
181
187
  const optionsCount = _react.default.Children.count(children) + ((dataList === null || dataList === void 0 ? void 0 : dataList.length) || 0);
182
188
  const createOption = (props, i) => {
183
- var _ref7;
184
189
  const {
185
190
  value,
186
191
  title,
187
192
  children,
188
193
  error,
189
- help
194
+ help,
195
+ size
190
196
  } = props,
191
197
  rest = _objectWithoutProperties(props, _excluded);
192
198
  const label = title !== null && title !== void 0 ? title : children;
@@ -204,9 +210,10 @@ function renderRadioItems(_ref6) {
204
210
  key: `option-${i}-${id}`,
205
211
  label: variant === 'radio' ? label : undefined,
206
212
  text: variant === 'button' ? label : undefined,
207
- value: String((_ref7 = value !== null && value !== void 0 ? value : valueProp) !== null && _ref7 !== void 0 ? _ref7 : ''),
213
+ value: String(value !== null && value !== void 0 ? value : valueProp) || undefined,
208
214
  status: (hasError || (0, _useFieldProps.checkForError)([error, info, warning])) && 'error',
209
- suffix: suffix
215
+ suffix: suffix,
216
+ size: size
210
217
  }, htmlAttributes, rest));
211
218
  };
212
219
  return [...(dataList || []).map((props, i) => {
@@ -215,10 +222,10 @@ function renderRadioItems(_ref6) {
215
222
  createOption
216
223
  }) || [])].filter(Boolean);
217
224
  }
218
- function mapOptions(children, _ref8) {
225
+ function mapOptions(children, _ref7) {
219
226
  let {
220
227
  createOption
221
- } = _ref8;
228
+ } = _ref7;
222
229
  return _react.default.Children.map(children, (child, i) => {
223
230
  if (_react.default.isValidElement(child)) {
224
231
  if (child.type === _Option.default) {
@@ -241,9 +248,9 @@ function makeOptions(children, transformSelection) {
241
248
  child = child['props'].children;
242
249
  }
243
250
  if (_react.default.isValidElement(child) && child.type === _Option.default) {
244
- var _ref9, _props$title, _props$value;
251
+ var _ref8, _props$title, _props$value;
245
252
  const props = child.props;
246
- const title = (_ref9 = (_props$title = props.title) !== null && _props$title !== void 0 ? _props$title : props.children) !== null && _ref9 !== void 0 ? _ref9 : _em || (_em = _react.default.createElement("em", null, "Untitled"));
253
+ const title = (_ref8 = (_props$title = props.title) !== null && _props$title !== void 0 ? _props$title : props.children) !== null && _ref8 !== void 0 ? _ref8 : _em || (_em = _react.default.createElement("em", null, "Untitled"));
247
254
  const content = props.text ? [title, props.text] : title;
248
255
  const selected_value = transformSelection ? transformSelection(props) : undefined;
249
256
  const selectedKey = String((_props$value = props.value) !== null && _props$value !== void 0 ? _props$value : '');
@@ -1 +1 @@
1
- {"version":3,"file":"Selection.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_componentHelper","_components","_Option","_hooks","_useFieldProps","_utils","_FieldBlock","_withCamelCaseProps","_useDataValue","_em","_em2","_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","_extends","assign","bind","arguments","apply","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Selection","props","clearValue","useMemo","makeUniqueId","id","className","variant","layout","optionsLayout","placeholder","info","warning","error","hasError","disabled","emptyValue","width","htmlAttributes","setHasFocus","handleChange","setDisplayValue","transformSelection","data","dataPath","children","autocompleteProps","dropdownProps","useFieldProps","getValueByPath","useDataValue","dataList","handleDropdownChange","useCallback","_ref","selectedKey","onChangeHandler","_ref2","handleShow","_ref3","handleHide","_ref4","cn","classnames","fieldBlockProps","forId","disableStatusSummary","pickSpacingProps","Component","Radio","ToggleButton","items","renderRadioItems","iterateOverItems","_ref5","v","label","createElement","labelHeight","asFieldset","React","Children","count","Group","layout_direction","on_change","_data$find","renderDropdownItems","concat","makeOptions","Boolean","displayValue","find","item","content","sharedProps","list_class","portal_class","title","status","checkForError","on_show","on_hide","stretch","specificFieldBlockProps","contentWidth","Autocomplete","convertCamelCaseProps","Dropdown","_ref6","valueProp","optionsCount","createOption","_ref7","help","rest","suffix","HelpButton","size","convertJsxToString","text","map","mapOptions","_ref8","child","isValidElement","type","OptionField","nestedChildren","cloneElement","_child","_child$props","_child$props$children","_ref9","_props$title","_props$value","selected_value","style","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Selection/Selection.tsx"],"sourcesContent":["import React, { useMemo, useCallback } from 'react'\nimport classnames from 'classnames'\nimport {\n convertJsxToString,\n makeUniqueId,\n} from '../../../../shared/component-helper'\nimport {\n ToggleButton,\n Dropdown,\n Radio,\n Autocomplete,\n HelpButton,\n} from '../../../../components'\nimport OptionField, { Props as OptionFieldProps } from '../Option'\nimport { useFieldProps } from '../../hooks'\nimport { checkForError, ReturnAdditional } from '../../hooks/useFieldProps'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport FieldBlock, {\n Props as FieldBlockProps,\n FieldBlockWidth,\n} from '../../FieldBlock'\nimport { FieldProps, Path } from '../../types'\nimport type { FormStatusText } from '../../../../components/FormStatus'\nimport type { AutocompleteAllProps } from '../../../../components/Autocomplete'\nimport type { DropdownAllProps } from '../../../../components/Dropdown'\nimport { HelpProps } from '../../../../components/help-button/HelpButtonInline'\nimport { DrawerListProps } from '../../../../fragments/DrawerList'\nimport {\n convertCamelCaseProps,\n ToCamelCase,\n} from '../../../../shared/helpers/withCamelCaseProps'\nimport useDataValue from '../../hooks/useDataValue'\nimport { FormError } from '../../utils'\n\ntype IOption = {\n title: string | React.ReactNode\n value: number | string\n status: FormStatusText\n}\nexport type Data = Array<{\n value: string\n title: React.ReactNode\n text?: React.ReactNode\n disabled?: boolean\n style?: React.CSSProperties\n}>\n\nexport type Props = FieldProps<IOption['value']> & {\n /**\n * Defines the variant of the component.\n * Default: dropdown\n */\n variant?: 'dropdown' | 'autocomplete' | 'radio' | 'button'\n\n /**\n * The width of the component.\n * Default: large\n */\n width?: FieldBlockWidth\n\n /**\n * Defines the layout of the options for radio and button variants.\n */\n optionsLayout?: 'horizontal' | 'vertical'\n\n /**\n * Transform the displayed selection for Dropdown and Autocomplete variant.\n * Use it to display a different value than the one in the data set.\n */\n transformSelection?: (props: OptionFieldProps) => React.ReactNode\n\n /**\n * The path to the context data (Form.Handler).\n * The context data object needs to have a `value` and a `title` property.\n */\n dataPath?: Path\n\n /**\n * Data to be used for the component. The object needs to have a `value` and a `title` property.\n * The generated options will be placed above given JSX based children.\n */\n data?: Data\n\n /**\n * Autocomplete specific props\n */\n autocompleteProps?: ToCamelCase<AutocompleteAllProps>\n\n /**\n * Dropdown specific props\n */\n dropdownProps?: ToCamelCase<DropdownAllProps>\n\n /**\n * The content of the component.\n */\n children?: React.ReactNode\n}\n\nfunction Selection(props: Props) {\n const clearValue = useMemo(() => `clear-option-${makeUniqueId()}`, [])\n\n const {\n id,\n className,\n variant = 'dropdown',\n layout = 'vertical',\n optionsLayout = 'vertical',\n placeholder,\n value,\n info,\n warning,\n error,\n hasError,\n disabled,\n emptyValue,\n width = 'large',\n htmlAttributes,\n setHasFocus,\n handleChange,\n setDisplayValue,\n transformSelection,\n data,\n dataPath,\n children,\n\n // - Autocomplete and Dropdown specific props\n autocompleteProps,\n dropdownProps,\n } = useFieldProps(props)\n\n const { getValueByPath } = useDataValue()\n let dataList = data\n if (dataPath) {\n dataList = getValueByPath(dataPath)\n }\n\n const handleDropdownChange = useCallback(\n ({ data }) => {\n const selectedKey = data?.selectedKey\n handleChange?.(\n !selectedKey || selectedKey === clearValue\n ? emptyValue\n : selectedKey\n )\n },\n [handleChange, emptyValue, clearValue]\n )\n\n const onChangeHandler = useCallback(\n ({ value }) => {\n handleChange?.(value === undefined ? emptyValue : value)\n },\n [handleChange, emptyValue]\n )\n\n // Specific handleShow and handleHide because Dropdown preserve the initially received callbacks, so changes\n // due to `useCallback` usage will have no effect, leading to useFieldPropss handleFocus and handleBlur sending out old\n // copies of value as arguments.\n const handleShow = useCallback(\n ({ data }) => {\n setHasFocus(true, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n setHasFocus(false, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const cn = classnames(\n 'dnb-forms-field-selection',\n `dnb-forms-field-selection__variant--${variant}`,\n `dnb-forms-field-selection--layout-${layout}`,\n `dnb-forms-field-selection--options-layout--${optionsLayout}`,\n className\n )\n\n const fieldBlockProps: FieldBlockProps = {\n forId: id,\n className: cn,\n disableStatusSummary: true,\n ...pickSpacingProps(props),\n }\n\n switch (variant) {\n case 'radio':\n case 'button': {\n const Component = (\n variant === 'radio' ? Radio : ToggleButton\n ) as typeof Radio & typeof ToggleButton\n\n const items = renderRadioItems({\n id,\n value,\n variant,\n info,\n warning,\n htmlAttributes,\n children,\n dataList,\n hasError,\n iterateOverItems: ({ value: v, label }) => {\n if (v === value) {\n setDisplayValue(label)\n }\n },\n })\n\n return (\n <FieldBlock\n {...fieldBlockProps}\n labelHeight=\"small\"\n asFieldset={React.Children.count(items) > 1}\n >\n <Component.Group\n className={cn}\n layout_direction={\n optionsLayout === 'horizontal' ? 'row' : 'column'\n }\n disabled={disabled}\n on_change={onChangeHandler}\n value={String(value ?? '')}\n >\n {items}\n </Component.Group>\n </FieldBlock>\n )\n }\n\n case 'autocomplete':\n case 'dropdown': {\n const data = renderDropdownItems(dataList, transformSelection)\n .concat(makeOptions(children, transformSelection))\n .filter(Boolean)\n const displayValue = data.find((item) => item.selectedKey === value)\n ?.content\n setDisplayValue(displayValue)\n\n const sharedProps: AutocompleteAllProps & DropdownAllProps = {\n id,\n list_class: 'dnb-forms-field-selection__list',\n portal_class: 'dnb-forms-field-selection__portal',\n title: placeholder,\n value: String(value ?? ''),\n status:\n (hasError || checkForError([error, info, warning])) && 'error',\n disabled,\n ...htmlAttributes,\n data,\n on_change: handleDropdownChange,\n on_show: handleShow,\n on_hide: handleHide,\n stretch: true,\n }\n\n const specificFieldBlockProps: FieldBlockProps = {\n width,\n }\n if (layout === 'horizontal') {\n specificFieldBlockProps.width = undefined\n specificFieldBlockProps.contentWidth = width\n }\n\n return (\n <FieldBlock {...fieldBlockProps} {...specificFieldBlockProps}>\n {variant === 'autocomplete' ? (\n <Autocomplete\n {...sharedProps}\n {...(autocompleteProps\n ? (convertCamelCaseProps(\n autocompleteProps\n ) as AutocompleteAllProps)\n : null)}\n />\n ) : (\n <Dropdown\n {...sharedProps}\n {...(dropdownProps\n ? (convertCamelCaseProps(\n dropdownProps\n ) as DropdownAllProps)\n : null)}\n />\n )}\n </FieldBlock>\n )\n }\n }\n}\n\ntype OptionProps = React.ComponentProps<\n React.FC<{\n value: Props['value']\n error: Error | FormError | undefined\n help: HelpProps\n title: React.ReactNode\n children: React.ReactNode\n }>\n>\n\nfunction renderRadioItems({\n id,\n value: valueProp,\n variant,\n info,\n warning,\n htmlAttributes,\n children,\n dataList,\n hasError,\n iterateOverItems,\n}: {\n id: string\n value: Props['value']\n variant: Props['variant']\n info: Props['info']\n warning: Props['warning']\n htmlAttributes: Props['htmlAttributes']\n children: Props['children']\n dataList: Data\n hasError: ReturnAdditional<Props['value']>['hasError']\n iterateOverItems?: (item: {\n value: Props['value']\n label: Props['children']\n }) => void\n}) {\n const optionsCount =\n React.Children.count(children) + (dataList?.length || 0)\n\n const createOption = (props: OptionProps, i: number) => {\n const { value, title, children, error, help, ...rest } = props\n\n const label = title ?? children\n const suffix = help ? (\n <HelpButton size=\"small\" title={convertJsxToString(help.title)}>\n {help.content}\n </HelpButton>\n ) : undefined\n\n iterateOverItems?.({ value, label })\n\n const Component = (\n variant === 'radio' ? Radio : ToggleButton\n ) as typeof Radio & typeof ToggleButton\n\n return (\n <Component\n id={optionsCount === 1 ? id : undefined}\n key={`option-${i}-${id}`}\n label={variant === 'radio' ? label : undefined}\n text={variant === 'button' ? label : undefined}\n value={String(value ?? valueProp ?? '')}\n status={\n (hasError || checkForError([error, info, warning])) && 'error'\n }\n suffix={suffix}\n {...htmlAttributes}\n {...rest}\n />\n )\n }\n\n return [\n ...(dataList || []).map((props, i) => {\n return createOption(props as OptionProps, i)\n }),\n ...(mapOptions(children, { createOption }) || []),\n ].filter(Boolean)\n}\n\nexport function mapOptions(\n children: React.ReactNode,\n {\n createOption,\n }: { createOption: (props: OptionProps, i: number) => React.ReactNode }\n) {\n return React.Children.map(\n children,\n (child: React.ReactElement<OptionProps>, i) => {\n if (React.isValidElement(child)) {\n if (child.type === OptionField) {\n return createOption(child.props, i)\n }\n\n if (child.props.children) {\n const nestedChildren = mapOptions(child.props.children, {\n createOption,\n })\n return React.cloneElement(child, child.props, nestedChildren)\n }\n }\n\n return child\n }\n )\n}\n\nexport function makeOptions<T = DrawerListProps['data']>(\n children: React.ReactNode,\n transformSelection?: Props['transformSelection']\n): T {\n return React.Children.map(children, (child) => {\n if (child?.['props']?.children?.type === OptionField) {\n child = child['props'].children\n }\n\n if (React.isValidElement(child) && child.type === OptionField) {\n const props = child.props as OptionFieldProps\n const title = props.title ?? props.children ?? <em>Untitled</em>\n const content = props.text ? [title, props.text] : title\n const selected_value = transformSelection\n ? transformSelection(props)\n : undefined\n const selectedKey = String(props.value ?? '')\n const disabled = props.disabled\n const style = props.style\n\n return { selectedKey, selected_value, content, disabled, style }\n }\n\n // For other children, just show them as content\n if (child) {\n return {\n content: child,\n }\n }\n }) as T\n}\n\nfunction renderDropdownItems(\n data: Data,\n transformSelection?: Props['transformSelection']\n) {\n return (\n data?.map((props) => {\n const { value, title, text, disabled, style } = props\n return {\n selectedKey: value,\n content: (text ? [title, text] : title) || <em>Untitled</em>,\n selected_value: transformSelection\n ? transformSelection(props)\n : undefined,\n disabled,\n style,\n }\n }) || []\n )\n}\n\nSelection._supportsSpacingProps = true\nexport default Selection\n"],"mappings":"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"}
1
+ {"version":3,"file":"Selection.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_componentHelper","_components","_Option","_hooks","_useFieldProps","_utils","_FieldBlock","_withCamelCaseProps","_useDataValue","_em","_em2","_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","_extends","assign","bind","arguments","apply","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Selection","props","clearValue","useMemo","makeUniqueId","id","className","variant","layout","optionsLayout","placeholder","info","warning","error","hasError","disabled","size","emptyValue","width","htmlAttributes","setHasFocus","handleChange","setDisplayValue","transformSelection","data","dataPath","children","autocompleteProps","dropdownProps","useFieldProps","getValueByPath","useDataValue","dataList","handleDropdownChange","useCallback","_ref","selectedKey","onChangeHandler","_ref2","handleShow","_ref3","handleHide","_ref4","cn","classnames","fieldBlockProps","forId","disableStatusSummary","pickSpacingProps","Component","Radio","ToggleButton","items","renderRadioItems","iterateOverItems","_ref5","v","label","additionalFieldBlockProps","asFieldset","React","Children","count","labelHeight","createElement","Group","layout_direction","on_change","_data$find","renderDropdownItems","concat","makeOptions","Boolean","displayValue","find","item","content","sharedProps","list_class","portal_class","title","status","checkForError","on_show","on_hide","stretch","specificFieldBlockProps","contentWidth","Autocomplete","convertCamelCaseProps","Dropdown","_ref6","valueProp","optionsCount","createOption","help","rest","suffix","HelpButton","convertJsxToString","text","map","mapOptions","_ref7","child","isValidElement","type","OptionField","nestedChildren","cloneElement","_child","_child$props","_child$props$children","_ref8","_props$title","_props$value","selected_value","style","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Selection/Selection.tsx"],"sourcesContent":["import React, { useMemo, useCallback } from 'react'\nimport classnames from 'classnames'\nimport {\n convertJsxToString,\n makeUniqueId,\n} from '../../../../shared/component-helper'\nimport {\n ToggleButton,\n Dropdown,\n Radio,\n Autocomplete,\n HelpButton,\n} from '../../../../components'\nimport OptionField, { Props as OptionFieldProps } from '../Option'\nimport { useFieldProps } from '../../hooks'\nimport { checkForError, ReturnAdditional } from '../../hooks/useFieldProps'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport FieldBlock, {\n Props as FieldBlockProps,\n FieldBlockWidth,\n} from '../../FieldBlock'\nimport { FieldProps, Path } from '../../types'\nimport type { FormStatusText } from '../../../../components/FormStatus'\nimport type { AutocompleteAllProps } from '../../../../components/Autocomplete'\nimport type { DropdownAllProps } from '../../../../components/Dropdown'\nimport { HelpProps } from '../../../../components/help-button/HelpButtonInline'\nimport { DrawerListProps } from '../../../../fragments/DrawerList'\nimport {\n convertCamelCaseProps,\n ToCamelCase,\n} from '../../../../shared/helpers/withCamelCaseProps'\nimport useDataValue from '../../hooks/useDataValue'\nimport { FormError } from '../../utils'\nimport type { RadioProps } from '../../../../components/Radio'\nimport type { ToggleButtonProps } from '../../../../components/ToggleButton'\nimport type { RadioGroupProps } from '../../../../components/radio/RadioGroup'\nimport type { ToggleButtonGroupProps } from '../../../../components/toggle-button/ToggleButtonGroup'\n\ntype IOption = {\n title: string | React.ReactNode\n value: number | string\n status: FormStatusText\n}\nexport type Data = Array<{\n value: string\n title: React.ReactNode\n text?: React.ReactNode\n disabled?: boolean\n style?: React.CSSProperties\n}>\n\nexport type Props = FieldProps<IOption['value']> & {\n /**\n * Defines the variant of the component.\n * Default: dropdown\n */\n variant?: 'dropdown' | 'autocomplete' | 'radio' | 'button'\n\n /**\n * The width of the component.\n * Default: large\n */\n width?: FieldBlockWidth\n\n /**\n * Defines the layout of the options for radio and button variants.\n */\n optionsLayout?: 'horizontal' | 'vertical'\n\n /**\n * Transform the displayed selection for Dropdown and Autocomplete variant.\n * Use it to display a different value than the one in the data set.\n */\n transformSelection?: (props: OptionFieldProps) => React.ReactNode\n\n /**\n * The path to the context data (Form.Handler).\n * The context data object needs to have a `value` and a `title` property.\n */\n dataPath?: Path\n\n /**\n * Data to be used for the component. The object needs to have a `value` and a `title` property.\n * The generated options will be placed above given JSX based children.\n */\n data?: Data\n\n /**\n * Autocomplete specific props\n */\n autocompleteProps?: ToCamelCase<AutocompleteAllProps>\n\n /**\n * Dropdown specific props\n */\n dropdownProps?: ToCamelCase<DropdownAllProps>\n\n /**\n * The size of the component.\n */\n size?:\n | ToggleButtonGroupProps['size']\n | RadioGroupProps['size']\n | AutocompleteAllProps['size']\n | DropdownAllProps['size']\n\n /**\n * The content of the component.\n */\n children?: React.ReactNode\n}\n\nfunction Selection(props: Props) {\n const clearValue = useMemo(() => `clear-option-${makeUniqueId()}`, [])\n\n const {\n id,\n className,\n variant = 'dropdown',\n layout = 'vertical',\n optionsLayout = 'vertical',\n placeholder,\n value,\n info,\n warning,\n error,\n hasError,\n disabled,\n size,\n emptyValue,\n width = 'large',\n htmlAttributes,\n setHasFocus,\n handleChange,\n setDisplayValue,\n transformSelection,\n data,\n dataPath,\n children,\n\n // - Autocomplete and Dropdown specific props\n autocompleteProps,\n dropdownProps,\n } = useFieldProps(props)\n\n const { getValueByPath } = useDataValue()\n let dataList = data\n if (dataPath) {\n dataList = getValueByPath(dataPath)\n }\n\n const handleDropdownChange = useCallback(\n ({ data }) => {\n const selectedKey = data?.selectedKey\n handleChange?.(\n !selectedKey || selectedKey === clearValue\n ? emptyValue\n : selectedKey\n )\n },\n [handleChange, emptyValue, clearValue]\n )\n\n const onChangeHandler = useCallback(\n ({ value }) => {\n handleChange?.(value === undefined ? emptyValue : value)\n },\n [handleChange, emptyValue]\n )\n\n // Specific handleShow and handleHide because Dropdown preserve the initially received callbacks, so changes\n // due to `useCallback` usage will have no effect, leading to useFieldPropss handleFocus and handleBlur sending out old\n // copies of value as arguments.\n const handleShow = useCallback(\n ({ data }) => {\n setHasFocus(true, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n setHasFocus(false, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const cn = classnames(\n 'dnb-forms-field-selection',\n `dnb-forms-field-selection__variant--${variant}`,\n `dnb-forms-field-selection--layout-${layout}`,\n `dnb-forms-field-selection--options-layout--${optionsLayout}`,\n className\n )\n\n const fieldBlockProps: FieldBlockProps = {\n forId: id,\n className: cn,\n disableStatusSummary: true,\n ...pickSpacingProps(props),\n }\n\n switch (variant) {\n case 'radio':\n case 'button': {\n const Component = (\n variant === 'radio' ? Radio : ToggleButton\n ) as typeof Radio & typeof ToggleButton\n\n const items = renderRadioItems({\n id,\n value,\n variant,\n info,\n warning,\n htmlAttributes,\n children,\n dataList,\n hasError,\n iterateOverItems: ({ value: v, label }) => {\n if (v === value) {\n setDisplayValue(label)\n }\n },\n })\n\n const additionalFieldBlockProps: FieldBlockProps = {\n asFieldset: React.Children.count(items) > 1,\n }\n if (!size) {\n additionalFieldBlockProps.labelHeight = 'small'\n }\n\n return (\n <FieldBlock {...fieldBlockProps} {...additionalFieldBlockProps}>\n <Component.Group\n size={size}\n className={cn}\n layout_direction={\n optionsLayout === 'horizontal' ? 'row' : 'column'\n }\n disabled={disabled}\n on_change={onChangeHandler}\n value={String(value ?? '') || undefined}\n >\n {items}\n </Component.Group>\n </FieldBlock>\n )\n }\n\n case 'autocomplete':\n case 'dropdown': {\n const data = renderDropdownItems(dataList, transformSelection)\n .concat(makeOptions(children, transformSelection))\n .filter(Boolean)\n const displayValue = data.find((item) => item.selectedKey === value)\n ?.content\n setDisplayValue(displayValue)\n\n const sharedProps: AutocompleteAllProps & DropdownAllProps = {\n id,\n list_class: 'dnb-forms-field-selection__list',\n portal_class: 'dnb-forms-field-selection__portal',\n title: placeholder,\n value: String(value ?? ''),\n status:\n (hasError || checkForError([error, info, warning])) && 'error',\n disabled,\n ...htmlAttributes,\n data,\n size,\n on_change: handleDropdownChange,\n on_show: handleShow,\n on_hide: handleHide,\n stretch: true,\n }\n\n const specificFieldBlockProps: FieldBlockProps = {\n width,\n }\n if (layout === 'horizontal') {\n specificFieldBlockProps.width = undefined\n specificFieldBlockProps.contentWidth = width\n }\n\n return (\n <FieldBlock {...fieldBlockProps} {...specificFieldBlockProps}>\n {variant === 'autocomplete' ? (\n <Autocomplete\n {...sharedProps}\n {...(autocompleteProps\n ? (convertCamelCaseProps(\n autocompleteProps\n ) as AutocompleteAllProps)\n : null)}\n />\n ) : (\n <Dropdown\n {...sharedProps}\n {...(dropdownProps\n ? (convertCamelCaseProps(\n dropdownProps\n ) as DropdownAllProps)\n : null)}\n />\n )}\n </FieldBlock>\n )\n }\n }\n}\n\ntype OptionProps = React.ComponentProps<\n React.FC<{\n value: Props['value']\n error: Error | FormError | undefined\n help: HelpProps\n title: React.ReactNode\n children: React.ReactNode\n size?: ToggleButtonProps['size'] | RadioProps['size']\n }>\n>\n\nfunction renderRadioItems({\n id,\n value: valueProp,\n variant,\n info,\n warning,\n htmlAttributes,\n children,\n dataList,\n hasError,\n iterateOverItems,\n}: {\n id: string\n value: Props['value']\n variant: Props['variant']\n info: Props['info']\n warning: Props['warning']\n htmlAttributes: Props['htmlAttributes']\n children: Props['children']\n dataList: Data\n hasError: ReturnAdditional<Props['value']>['hasError']\n iterateOverItems?: (item: {\n value: Props['value']\n label: Props['children']\n }) => void\n}) {\n const optionsCount =\n React.Children.count(children) + (dataList?.length || 0)\n\n const createOption = (props: OptionProps, i: number) => {\n const { value, title, children, error, help, size, ...rest } = props\n\n const label = title ?? children\n const suffix = help ? (\n <HelpButton size=\"small\" title={convertJsxToString(help.title)}>\n {help.content}\n </HelpButton>\n ) : undefined\n\n iterateOverItems?.({ value, label })\n\n const Component = (\n variant === 'radio' ? Radio : ToggleButton\n ) as typeof Radio & typeof ToggleButton\n\n return (\n <Component\n id={optionsCount === 1 ? id : undefined}\n key={`option-${i}-${id}`}\n label={variant === 'radio' ? label : undefined}\n text={variant === 'button' ? label : undefined}\n value={String(value ?? valueProp) || undefined}\n status={\n (hasError || checkForError([error, info, warning])) && 'error'\n }\n suffix={suffix}\n size={size}\n {...htmlAttributes}\n {...rest}\n />\n )\n }\n\n return [\n ...(dataList || []).map((props, i) => {\n return createOption(props as OptionProps, i)\n }),\n ...(mapOptions(children, { createOption }) || []),\n ].filter(Boolean)\n}\n\nexport function mapOptions(\n children: React.ReactNode,\n {\n createOption,\n }: { createOption: (props: OptionProps, i: number) => React.ReactNode }\n) {\n return React.Children.map(\n children,\n (child: React.ReactElement<OptionProps>, i) => {\n if (React.isValidElement(child)) {\n if (child.type === OptionField) {\n return createOption(child.props, i)\n }\n\n if (child.props.children) {\n const nestedChildren = mapOptions(child.props.children, {\n createOption,\n })\n return React.cloneElement(child, child.props, nestedChildren)\n }\n }\n\n return child\n }\n )\n}\n\nexport function makeOptions<T = DrawerListProps['data']>(\n children: React.ReactNode,\n transformSelection?: Props['transformSelection']\n): T {\n return React.Children.map(children, (child) => {\n if (child?.['props']?.children?.type === OptionField) {\n child = child['props'].children\n }\n\n if (React.isValidElement(child) && child.type === OptionField) {\n const props = child.props as OptionFieldProps\n const title = props.title ?? props.children ?? <em>Untitled</em>\n const content = props.text ? [title, props.text] : title\n const selected_value = transformSelection\n ? transformSelection(props)\n : undefined\n const selectedKey = String(props.value ?? '')\n const disabled = props.disabled\n const style = props.style\n\n return { selectedKey, selected_value, content, disabled, style }\n }\n\n // For other children, just show them as content\n if (child) {\n return {\n content: child,\n }\n }\n }) as T\n}\n\nfunction renderDropdownItems(\n data: Data,\n transformSelection?: Props['transformSelection']\n) {\n return (\n data?.map((props) => {\n const { value, title, text, disabled, style } = props\n return {\n selectedKey: value,\n content: (text ? [title, text] : title) || <em>Untitled</em>,\n selected_value: transformSelection\n ? transformSelection(props)\n : undefined,\n disabled,\n style,\n }\n }) || []\n )\n}\n\nSelection._supportsSpacingProps = true\nexport default Selection\n"],"mappings":"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"}