@dnb/eufemia 10.34.1 → 10.35.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 (768) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/assets/images/sbanken/sbanken-compact-horizontal.svg +3 -0
  3. package/assets/images/sbanken/sbanken-compact.svg +3 -0
  4. package/assets/images/sbanken/sbanken.svg +3 -0
  5. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/autocomplete/style/themes/dnb-autocomplete-theme-sbanken.css +1 -1
  7. package/cjs/components/autocomplete/style/themes/dnb-autocomplete-theme-sbanken.scss +1 -1
  8. package/cjs/components/button/Button.js.map +1 -1
  9. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  10. package/cjs/components/form-row/FormRow.js.map +1 -1
  11. package/cjs/components/form-set/FormSet.js.map +1 -1
  12. package/cjs/components/form-status/FormStatus.js.map +1 -1
  13. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  14. package/cjs/components/global-status/GlobalStatusController.js.map +1 -1
  15. package/cjs/components/global-status/GlobalStatusProvider.js.map +1 -1
  16. package/cjs/components/help-button/HelpButton.js +3 -0
  17. package/cjs/components/help-button/HelpButton.js.map +1 -1
  18. package/cjs/components/help-button/style/dnb-help-button.css +4 -1
  19. package/cjs/components/help-button/style/dnb-help-button.min.css +1 -0
  20. package/cjs/components/help-button/style/dnb-help-button.scss +6 -0
  21. package/cjs/components/icon/Icon.js.map +1 -1
  22. package/cjs/components/icon-primary/IconPrimary.js.map +1 -1
  23. package/cjs/components/input/Input.js.map +1 -1
  24. package/cjs/components/input-masked/InputMasked.js.map +1 -1
  25. package/cjs/components/logo/Logo.d.ts +47 -43
  26. package/cjs/components/logo/Logo.js +77 -221
  27. package/cjs/components/logo/Logo.js.map +1 -1
  28. package/cjs/components/logo/LogoDocs.d.ts +2 -0
  29. package/cjs/components/logo/LogoDocs.js +50 -0
  30. package/cjs/components/logo/LogoDocs.js.map +1 -0
  31. package/cjs/components/logo/LogoSvg.d.ts +7 -0
  32. package/cjs/components/logo/LogoSvg.js +81 -0
  33. package/cjs/components/logo/LogoSvg.js.map +1 -0
  34. package/cjs/components/modal/Modal.d.ts +2 -0
  35. package/cjs/components/modal/Modal.js +25 -10
  36. package/cjs/components/modal/Modal.js.map +1 -1
  37. package/cjs/components/number-format/NumberFormat.d.ts +4 -0
  38. package/cjs/components/number-format/NumberFormat.js +5 -2
  39. package/cjs/components/number-format/NumberFormat.js.map +1 -1
  40. package/cjs/components/number-format/style/dnb-number-format.css +3 -0
  41. package/cjs/components/number-format/style/dnb-number-format.min.css +1 -1
  42. package/cjs/components/number-format/style/dnb-number-format.scss +4 -0
  43. package/cjs/components/pagination/Pagination.js.map +1 -1
  44. package/cjs/components/pagination/PaginationHelpers.js.map +1 -1
  45. package/cjs/components/pagination/PaginationInfinity.js.map +1 -1
  46. package/cjs/components/pagination/PaginationProvider.js.map +1 -1
  47. package/cjs/components/progress-indicator/ProgressIndicatorDocs.js +1 -1
  48. package/cjs/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
  49. package/cjs/components/progress-indicator/types.d.ts +1 -1
  50. package/cjs/components/progress-indicator/types.js.map +1 -1
  51. package/cjs/components/radio/Radio.js.map +1 -1
  52. package/cjs/components/radio/RadioGroup.js.map +1 -1
  53. package/cjs/components/skeleton/Skeleton.js.map +1 -1
  54. package/cjs/components/switch/Switch.js.map +1 -1
  55. package/cjs/components/table/Table.d.ts +6 -0
  56. package/cjs/components/table/Table.js +15 -3
  57. package/cjs/components/table/Table.js.map +1 -1
  58. package/cjs/components/table/TableAccordion.d.ts +7 -11
  59. package/cjs/components/table/TableAccordion.js +32 -21
  60. package/cjs/components/table/TableAccordion.js.map +1 -1
  61. package/cjs/components/table/TableTr.js +24 -25
  62. package/cjs/components/table/TableTr.js.map +1 -1
  63. package/cjs/components/tabs/Tabs.js +1 -5
  64. package/cjs/components/tabs/Tabs.js.map +1 -1
  65. package/cjs/components/tabs/TabsDocs.js +1 -1
  66. package/cjs/components/tabs/TabsDocs.js.map +1 -1
  67. package/cjs/components/textarea/Textarea.js.map +1 -1
  68. package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
  69. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  70. package/cjs/extensions/forms/DataContext/Context.d.ts +2 -0
  71. package/cjs/extensions/forms/DataContext/Context.js +1 -0
  72. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  73. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +17 -1
  74. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  75. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +5 -3
  76. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  77. package/cjs/extensions/forms/DataContext/Provider/Provider.js +50 -4
  78. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  79. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +2 -2
  80. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +7 -1
  81. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  82. package/cjs/extensions/forms/Field/Option/Option.d.ts +2 -2
  83. package/cjs/extensions/forms/Field/Option/Option.js.map +1 -1
  84. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +6 -6
  85. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  86. package/cjs/extensions/forms/Field/Selection/Selection.js +7 -2
  87. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  88. package/cjs/extensions/forms/Field/Toggle/Toggle.js +7 -3
  89. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  90. package/cjs/extensions/forms/Form/FieldProps/FieldProps.js +16 -36
  91. package/cjs/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
  92. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +12 -0
  93. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.js +44 -0
  94. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -0
  95. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.d.ts +3 -0
  96. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +27 -0
  97. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -0
  98. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +1 -0
  99. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +67 -0
  100. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -0
  101. package/cjs/extensions/forms/Form/Section/EditContainer/index.d.ts +2 -0
  102. package/cjs/extensions/forms/Form/Section/EditContainer/index.js +27 -0
  103. package/cjs/extensions/forms/Form/Section/EditContainer/index.js.map +1 -0
  104. package/cjs/extensions/forms/Form/Section/EditContainer/useContainerDataStore.d.ts +3 -0
  105. package/cjs/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js +54 -0
  106. package/cjs/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js.map +1 -0
  107. package/cjs/extensions/forms/Form/Section/EditContainer/useEditContainerToolbar.d.ts +1 -0
  108. package/cjs/extensions/forms/Form/Section/EditContainer/useEditContainerToolbar.js +25 -0
  109. package/cjs/extensions/forms/Form/Section/EditContainer/useEditContainerToolbar.js.map +1 -0
  110. package/cjs/extensions/forms/Form/Section/Section.d.ts +9 -1
  111. package/cjs/extensions/forms/Form/Section/Section.js +10 -2
  112. package/cjs/extensions/forms/Form/Section/Section.js.map +1 -1
  113. package/cjs/extensions/forms/Form/Section/SectionContext.d.ts +1 -2
  114. package/cjs/extensions/forms/Form/Section/SectionContext.js.map +1 -1
  115. package/cjs/extensions/forms/Form/Section/SectionDocs.js +6 -1
  116. package/cjs/extensions/forms/Form/Section/SectionDocs.js.map +1 -1
  117. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +12 -0
  118. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +43 -0
  119. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -0
  120. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.d.ts +3 -0
  121. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +27 -0
  122. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -0
  123. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +1 -0
  124. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js +34 -0
  125. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +1 -0
  126. package/cjs/extensions/forms/Form/Section/ViewContainer/index.d.ts +2 -0
  127. package/cjs/extensions/forms/Form/Section/ViewContainer/index.js +27 -0
  128. package/cjs/extensions/forms/Form/Section/ViewContainer/index.js.map +1 -0
  129. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.d.ts +19 -0
  130. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.js +93 -0
  131. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -0
  132. package/cjs/extensions/forms/Form/Section/containers/SectionContainerContext.d.ts +8 -0
  133. package/cjs/extensions/forms/Form/Section/containers/SectionContainerContext.js +12 -0
  134. package/cjs/extensions/forms/Form/Section/containers/SectionContainerContext.js.map +1 -0
  135. package/cjs/extensions/forms/Form/Section/containers/SectionContainerProvider.d.ts +8 -0
  136. package/cjs/extensions/forms/Form/Section/containers/SectionContainerProvider.js +33 -0
  137. package/cjs/extensions/forms/Form/Section/containers/SectionContainerProvider.js.map +1 -0
  138. package/cjs/extensions/forms/Form/Section/containers/Toolbar.d.ts +7 -0
  139. package/cjs/extensions/forms/Form/Section/containers/Toolbar.js +35 -0
  140. package/cjs/extensions/forms/Form/Section/containers/Toolbar.js.map +1 -0
  141. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.css +45 -0
  142. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -0
  143. package/{extensions/forms/Iterate/style/dnb-form-iterate.scss → cjs/extensions/forms/Form/Section/style/dnb-form-section.scss} +4 -12
  144. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +8 -8
  145. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  146. package/cjs/extensions/forms/Iterate/Array/Array.js +1 -1
  147. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  148. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -1
  149. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  150. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +17 -8
  151. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  152. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  153. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  154. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
  155. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  156. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +1 -1
  157. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  158. package/cjs/extensions/forms/Iterate/style/dnb-iterate.css +6 -0
  159. package/cjs/extensions/forms/Iterate/style/dnb-iterate.min.css +1 -0
  160. package/cjs/extensions/forms/Iterate/style/dnb-iterate.scss +12 -0
  161. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +2 -1
  162. package/cjs/extensions/forms/constants/locales/en-GB.js +3 -2
  163. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  164. package/cjs/extensions/forms/constants/locales/en-US.d.ts +2 -1
  165. package/cjs/extensions/forms/constants/locales/index.d.ts +4 -2
  166. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
  167. package/cjs/extensions/forms/constants/locales/nb-NO.js +3 -2
  168. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  169. package/cjs/extensions/forms/hooks/useDataValue.d.ts +4 -0
  170. package/cjs/extensions/forms/hooks/useDataValue.js +30 -5
  171. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  172. package/cjs/extensions/forms/hooks/useFieldProps.js +14 -9
  173. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  174. package/cjs/extensions/forms/hooks/useTranslation.js +6 -11
  175. package/cjs/extensions/forms/hooks/useTranslation.js.map +1 -1
  176. package/cjs/extensions/forms/style/dnb-forms.css +46 -44
  177. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  178. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  179. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  180. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  181. package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  182. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  183. package/cjs/fragments/drawer-list/style/dnb-drawer-list.scss +4 -0
  184. package/cjs/fragments/text-counter/TextCounter.js +3 -2
  185. package/cjs/fragments/text-counter/TextCounter.js.map +1 -1
  186. package/cjs/shared/Context.d.ts +9 -5
  187. package/cjs/shared/Context.js +40 -35
  188. package/cjs/shared/Context.js.map +1 -1
  189. package/cjs/shared/Eufemia.d.ts +1 -1
  190. package/cjs/shared/Eufemia.js +2 -2
  191. package/cjs/shared/Eufemia.js.map +1 -1
  192. package/cjs/shared/Provider.d.ts +1 -1
  193. package/cjs/shared/Provider.js +49 -42
  194. package/cjs/shared/Provider.js.map +1 -1
  195. package/cjs/shared/Translation.d.ts +5 -5
  196. package/cjs/shared/Translation.js +6 -11
  197. package/cjs/shared/Translation.js.map +1 -1
  198. package/cjs/shared/index.d.ts +1 -0
  199. package/cjs/shared/index.js +26 -1
  200. package/cjs/shared/index.js.map +1 -1
  201. package/cjs/shared/locales/en-GB.d.ts +0 -3
  202. package/cjs/shared/locales/en-GB.js +0 -3
  203. package/cjs/shared/locales/en-GB.js.map +1 -1
  204. package/cjs/shared/locales/en-US.d.ts +0 -3
  205. package/cjs/shared/locales/index.d.ts +0 -6
  206. package/cjs/shared/locales/nb-NO.d.ts +0 -3
  207. package/cjs/shared/locales/nb-NO.js +0 -3
  208. package/cjs/shared/locales/nb-NO.js.map +1 -1
  209. package/cjs/shared/useTranslation.d.ts +5 -4
  210. package/cjs/shared/useTranslation.js +14 -12
  211. package/cjs/shared/useTranslation.js.map +1 -1
  212. package/cjs/style/core/scopes.scss +1 -1
  213. package/cjs/style/dnb-ui-basis.css +1 -1
  214. package/cjs/style/dnb-ui-basis.min.css +1 -1
  215. package/cjs/style/dnb-ui-body.css +1 -1
  216. package/cjs/style/dnb-ui-body.min.css +1 -1
  217. package/cjs/style/dnb-ui-components.css +57 -44
  218. package/cjs/style/dnb-ui-components.min.css +2 -2
  219. package/cjs/style/dnb-ui-core.css +1 -1
  220. package/cjs/style/dnb-ui-core.min.css +1 -1
  221. package/cjs/style/dnb-ui-extensions.css +46 -44
  222. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  223. package/cjs/style/dnb-ui-forms.css +46 -44
  224. package/cjs/style/dnb-ui-forms.min.css +1 -1
  225. package/cjs/style/dnb-ui-forms.scss +2 -1
  226. package/cjs/style/dnb-ui-fragments.css +4 -0
  227. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  228. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -2
  229. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  230. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +103 -88
  231. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  232. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +46 -44
  233. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  234. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +46 -44
  235. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  236. package/cjs/style/themes/theme-sbanken/globals.scss +3 -2
  237. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +2 -2
  238. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  239. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +104 -89
  240. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  241. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +46 -44
  242. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  243. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +46 -44
  244. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  245. package/cjs/style/themes/theme-ui/globals.scss +3 -2
  246. package/cjs/style/themes/theme-ui/ui-theme-basis.css +2 -2
  247. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  248. package/cjs/style/themes/theme-ui/ui-theme-components.css +103 -88
  249. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  250. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +46 -44
  251. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  252. package/cjs/style/themes/theme-ui/ui-theme-forms.css +46 -44
  253. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  254. package/components/autocomplete/Autocomplete.js.map +1 -1
  255. package/components/autocomplete/style/themes/dnb-autocomplete-theme-sbanken.css +1 -1
  256. package/components/autocomplete/style/themes/dnb-autocomplete-theme-sbanken.scss +1 -1
  257. package/components/button/Button.js.map +1 -1
  258. package/components/dropdown/Dropdown.js.map +1 -1
  259. package/components/form-row/FormRow.js.map +1 -1
  260. package/components/form-set/FormSet.js.map +1 -1
  261. package/components/form-status/FormStatus.js.map +1 -1
  262. package/components/global-status/GlobalStatus.js.map +1 -1
  263. package/components/global-status/GlobalStatusController.js.map +1 -1
  264. package/components/global-status/GlobalStatusProvider.js.map +1 -1
  265. package/components/help-button/HelpButton.js +3 -0
  266. package/components/help-button/HelpButton.js.map +1 -1
  267. package/components/help-button/style/dnb-help-button.css +4 -1
  268. package/components/help-button/style/dnb-help-button.min.css +1 -0
  269. package/components/help-button/style/dnb-help-button.scss +6 -0
  270. package/components/icon/Icon.js.map +1 -1
  271. package/components/icon-primary/IconPrimary.js.map +1 -1
  272. package/components/input/Input.js.map +1 -1
  273. package/components/input-masked/InputMasked.js.map +1 -1
  274. package/components/logo/Logo.d.ts +47 -43
  275. package/components/logo/Logo.js +75 -221
  276. package/components/logo/Logo.js.map +1 -1
  277. package/components/logo/LogoDocs.d.ts +2 -0
  278. package/components/logo/LogoDocs.js +43 -0
  279. package/components/logo/LogoDocs.js.map +1 -0
  280. package/components/logo/LogoSvg.d.ts +7 -0
  281. package/components/logo/LogoSvg.js +73 -0
  282. package/components/logo/LogoSvg.js.map +1 -0
  283. package/components/modal/Modal.d.ts +2 -0
  284. package/components/modal/Modal.js +25 -10
  285. package/components/modal/Modal.js.map +1 -1
  286. package/components/number-format/NumberFormat.d.ts +4 -0
  287. package/components/number-format/NumberFormat.js +5 -2
  288. package/components/number-format/NumberFormat.js.map +1 -1
  289. package/components/number-format/style/dnb-number-format.css +3 -0
  290. package/components/number-format/style/dnb-number-format.min.css +1 -1
  291. package/components/number-format/style/dnb-number-format.scss +4 -0
  292. package/components/pagination/Pagination.js.map +1 -1
  293. package/components/pagination/PaginationHelpers.js.map +1 -1
  294. package/components/pagination/PaginationInfinity.js.map +1 -1
  295. package/components/pagination/PaginationProvider.js.map +1 -1
  296. package/components/progress-indicator/ProgressIndicatorDocs.js +1 -1
  297. package/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
  298. package/components/progress-indicator/types.d.ts +1 -1
  299. package/components/progress-indicator/types.js.map +1 -1
  300. package/components/radio/Radio.js.map +1 -1
  301. package/components/radio/RadioGroup.js.map +1 -1
  302. package/components/skeleton/Skeleton.js.map +1 -1
  303. package/components/switch/Switch.js.map +1 -1
  304. package/components/table/Table.d.ts +6 -0
  305. package/components/table/Table.js +13 -3
  306. package/components/table/Table.js.map +1 -1
  307. package/components/table/TableAccordion.d.ts +7 -11
  308. package/components/table/TableAccordion.js +29 -20
  309. package/components/table/TableAccordion.js.map +1 -1
  310. package/components/table/TableTr.js +25 -26
  311. package/components/table/TableTr.js.map +1 -1
  312. package/components/tabs/Tabs.js +1 -5
  313. package/components/tabs/Tabs.js.map +1 -1
  314. package/components/tabs/TabsDocs.js +1 -1
  315. package/components/tabs/TabsDocs.js.map +1 -1
  316. package/components/textarea/Textarea.js.map +1 -1
  317. package/components/toggle-button/ToggleButton.js.map +1 -1
  318. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  319. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  320. package/es/components/autocomplete/style/themes/dnb-autocomplete-theme-sbanken.css +1 -1
  321. package/es/components/autocomplete/style/themes/dnb-autocomplete-theme-sbanken.scss +1 -1
  322. package/es/components/button/Button.js.map +1 -1
  323. package/es/components/dropdown/Dropdown.js.map +1 -1
  324. package/es/components/form-row/FormRow.js.map +1 -1
  325. package/es/components/form-set/FormSet.js.map +1 -1
  326. package/es/components/form-status/FormStatus.js.map +1 -1
  327. package/es/components/global-status/GlobalStatus.js.map +1 -1
  328. package/es/components/global-status/GlobalStatusController.js.map +1 -1
  329. package/es/components/global-status/GlobalStatusProvider.js.map +1 -1
  330. package/es/components/help-button/HelpButton.js +3 -0
  331. package/es/components/help-button/HelpButton.js.map +1 -1
  332. package/es/components/help-button/style/dnb-help-button.css +4 -1
  333. package/es/components/help-button/style/dnb-help-button.min.css +1 -0
  334. package/es/components/help-button/style/dnb-help-button.scss +6 -0
  335. package/es/components/icon/Icon.js.map +1 -1
  336. package/es/components/icon-primary/IconPrimary.js.map +1 -1
  337. package/es/components/input/Input.js.map +1 -1
  338. package/es/components/input-masked/InputMasked.js.map +1 -1
  339. package/es/components/logo/Logo.d.ts +47 -43
  340. package/es/components/logo/Logo.js +75 -221
  341. package/es/components/logo/Logo.js.map +1 -1
  342. package/es/components/logo/LogoDocs.d.ts +2 -0
  343. package/es/components/logo/LogoDocs.js +43 -0
  344. package/es/components/logo/LogoDocs.js.map +1 -0
  345. package/es/components/logo/LogoSvg.d.ts +7 -0
  346. package/es/components/logo/LogoSvg.js +72 -0
  347. package/es/components/logo/LogoSvg.js.map +1 -0
  348. package/es/components/modal/Modal.d.ts +2 -0
  349. package/es/components/modal/Modal.js +25 -10
  350. package/es/components/modal/Modal.js.map +1 -1
  351. package/es/components/number-format/NumberFormat.d.ts +4 -0
  352. package/es/components/number-format/NumberFormat.js +5 -2
  353. package/es/components/number-format/NumberFormat.js.map +1 -1
  354. package/es/components/number-format/style/dnb-number-format.css +3 -0
  355. package/es/components/number-format/style/dnb-number-format.min.css +1 -1
  356. package/es/components/number-format/style/dnb-number-format.scss +4 -0
  357. package/es/components/pagination/Pagination.js.map +1 -1
  358. package/es/components/pagination/PaginationHelpers.js.map +1 -1
  359. package/es/components/pagination/PaginationInfinity.js.map +1 -1
  360. package/es/components/pagination/PaginationProvider.js.map +1 -1
  361. package/es/components/progress-indicator/ProgressIndicatorDocs.js +1 -1
  362. package/es/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
  363. package/es/components/progress-indicator/types.d.ts +1 -1
  364. package/es/components/progress-indicator/types.js.map +1 -1
  365. package/es/components/radio/Radio.js.map +1 -1
  366. package/es/components/radio/RadioGroup.js.map +1 -1
  367. package/es/components/skeleton/Skeleton.js.map +1 -1
  368. package/es/components/switch/Switch.js.map +1 -1
  369. package/es/components/table/Table.d.ts +6 -0
  370. package/es/components/table/Table.js +13 -3
  371. package/es/components/table/Table.js.map +1 -1
  372. package/es/components/table/TableAccordion.d.ts +7 -11
  373. package/es/components/table/TableAccordion.js +29 -19
  374. package/es/components/table/TableAccordion.js.map +1 -1
  375. package/es/components/table/TableTr.js +25 -26
  376. package/es/components/table/TableTr.js.map +1 -1
  377. package/es/components/tabs/Tabs.js +1 -5
  378. package/es/components/tabs/Tabs.js.map +1 -1
  379. package/es/components/tabs/TabsDocs.js +1 -1
  380. package/es/components/tabs/TabsDocs.js.map +1 -1
  381. package/es/components/textarea/Textarea.js.map +1 -1
  382. package/es/components/toggle-button/ToggleButton.js.map +1 -1
  383. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  384. package/es/extensions/forms/DataContext/Context.d.ts +2 -0
  385. package/es/extensions/forms/DataContext/Context.js +1 -0
  386. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  387. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +17 -1
  388. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  389. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +5 -3
  390. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  391. package/es/extensions/forms/DataContext/Provider/Provider.js +46 -1
  392. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  393. package/es/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +2 -2
  394. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +8 -2
  395. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  396. package/es/extensions/forms/Field/Option/Option.d.ts +2 -2
  397. package/es/extensions/forms/Field/Option/Option.js.map +1 -1
  398. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +6 -6
  399. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  400. package/es/extensions/forms/Field/Selection/Selection.js +7 -2
  401. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  402. package/es/extensions/forms/Field/Toggle/Toggle.js +7 -3
  403. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  404. package/es/extensions/forms/Form/FieldProps/FieldProps.js +16 -36
  405. package/es/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
  406. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +12 -0
  407. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.js +33 -0
  408. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -0
  409. package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.d.ts +3 -0
  410. package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +19 -0
  411. package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -0
  412. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +1 -0
  413. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +59 -0
  414. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -0
  415. package/es/extensions/forms/Form/Section/EditContainer/index.d.ts +2 -0
  416. package/es/extensions/forms/Form/Section/EditContainer/index.js +3 -0
  417. package/es/extensions/forms/Form/Section/EditContainer/index.js.map +1 -0
  418. package/es/extensions/forms/Form/Section/EditContainer/useContainerDataStore.d.ts +3 -0
  419. package/es/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js +46 -0
  420. package/es/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js.map +1 -0
  421. package/es/extensions/forms/Form/Section/EditContainer/useEditContainerToolbar.d.ts +1 -0
  422. package/es/extensions/forms/Form/Section/EditContainer/useEditContainerToolbar.js +19 -0
  423. package/es/extensions/forms/Form/Section/EditContainer/useEditContainerToolbar.js.map +1 -0
  424. package/es/extensions/forms/Form/Section/Section.d.ts +9 -1
  425. package/es/extensions/forms/Form/Section/Section.js +10 -2
  426. package/es/extensions/forms/Form/Section/Section.js.map +1 -1
  427. package/es/extensions/forms/Form/Section/SectionContext.d.ts +1 -2
  428. package/es/extensions/forms/Form/Section/SectionContext.js.map +1 -1
  429. package/es/extensions/forms/Form/Section/SectionDocs.js +6 -1
  430. package/es/extensions/forms/Form/Section/SectionDocs.js.map +1 -1
  431. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +12 -0
  432. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +32 -0
  433. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -0
  434. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.d.ts +3 -0
  435. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +19 -0
  436. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -0
  437. package/es/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +1 -0
  438. package/es/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js +26 -0
  439. package/es/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +1 -0
  440. package/es/extensions/forms/Form/Section/ViewContainer/index.d.ts +2 -0
  441. package/es/extensions/forms/Form/Section/ViewContainer/index.js +3 -0
  442. package/es/extensions/forms/Form/Section/ViewContainer/index.js.map +1 -0
  443. package/es/extensions/forms/Form/Section/containers/SectionContainer.d.ts +19 -0
  444. package/es/extensions/forms/Form/Section/containers/SectionContainer.js +83 -0
  445. package/es/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -0
  446. package/es/extensions/forms/Form/Section/containers/SectionContainerContext.d.ts +8 -0
  447. package/es/extensions/forms/Form/Section/containers/SectionContainerContext.js +4 -0
  448. package/es/extensions/forms/Form/Section/containers/SectionContainerContext.js.map +1 -0
  449. package/es/extensions/forms/Form/Section/containers/SectionContainerProvider.d.ts +8 -0
  450. package/es/extensions/forms/Form/Section/containers/SectionContainerProvider.js +24 -0
  451. package/es/extensions/forms/Form/Section/containers/SectionContainerProvider.js.map +1 -0
  452. package/es/extensions/forms/Form/Section/containers/Toolbar.d.ts +7 -0
  453. package/es/extensions/forms/Form/Section/containers/Toolbar.js +27 -0
  454. package/es/extensions/forms/Form/Section/containers/Toolbar.js.map +1 -0
  455. package/es/extensions/forms/Form/Section/style/dnb-form-section.css +45 -0
  456. package/es/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -0
  457. package/es/extensions/forms/{Iterate/style/dnb-form-iterate.scss → Form/Section/style/dnb-form-section.scss} +4 -12
  458. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +8 -8
  459. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  460. package/es/extensions/forms/Iterate/Array/Array.js +1 -1
  461. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  462. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -1
  463. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  464. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +19 -10
  465. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  466. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  467. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  468. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
  469. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  470. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +1 -1
  471. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  472. package/es/extensions/forms/Iterate/style/dnb-iterate.css +6 -0
  473. package/es/extensions/forms/Iterate/style/dnb-iterate.min.css +1 -0
  474. package/es/extensions/forms/Iterate/style/dnb-iterate.scss +12 -0
  475. package/es/extensions/forms/constants/locales/en-GB.d.ts +2 -1
  476. package/es/extensions/forms/constants/locales/en-GB.js +3 -2
  477. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  478. package/es/extensions/forms/constants/locales/en-US.d.ts +2 -1
  479. package/es/extensions/forms/constants/locales/index.d.ts +4 -2
  480. package/es/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
  481. package/es/extensions/forms/constants/locales/nb-NO.js +3 -2
  482. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  483. package/es/extensions/forms/hooks/useDataValue.d.ts +4 -0
  484. package/es/extensions/forms/hooks/useDataValue.js +30 -5
  485. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  486. package/es/extensions/forms/hooks/useFieldProps.js +14 -9
  487. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  488. package/es/extensions/forms/hooks/useTranslation.js +7 -12
  489. package/es/extensions/forms/hooks/useTranslation.js.map +1 -1
  490. package/es/extensions/forms/style/dnb-forms.css +46 -44
  491. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  492. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  493. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  494. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  495. package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  496. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  497. package/es/fragments/drawer-list/style/dnb-drawer-list.scss +4 -0
  498. package/es/fragments/text-counter/TextCounter.js +3 -2
  499. package/es/fragments/text-counter/TextCounter.js.map +1 -1
  500. package/es/shared/Context.d.ts +9 -5
  501. package/es/shared/Context.js +39 -35
  502. package/es/shared/Context.js.map +1 -1
  503. package/es/shared/Eufemia.d.ts +1 -1
  504. package/es/shared/Eufemia.js +2 -2
  505. package/es/shared/Eufemia.js.map +1 -1
  506. package/es/shared/Provider.d.ts +1 -1
  507. package/es/shared/Provider.js +49 -41
  508. package/es/shared/Provider.js.map +1 -1
  509. package/es/shared/Translation.d.ts +5 -5
  510. package/es/shared/Translation.js +8 -10
  511. package/es/shared/Translation.js.map +1 -1
  512. package/es/shared/index.d.ts +1 -0
  513. package/es/shared/index.js +1 -0
  514. package/es/shared/index.js.map +1 -1
  515. package/es/shared/locales/en-GB.d.ts +0 -3
  516. package/es/shared/locales/en-GB.js +0 -3
  517. package/es/shared/locales/en-GB.js.map +1 -1
  518. package/es/shared/locales/en-US.d.ts +0 -3
  519. package/es/shared/locales/index.d.ts +0 -6
  520. package/es/shared/locales/nb-NO.d.ts +0 -3
  521. package/es/shared/locales/nb-NO.js +0 -3
  522. package/es/shared/locales/nb-NO.js.map +1 -1
  523. package/es/shared/useTranslation.d.ts +5 -4
  524. package/es/shared/useTranslation.js +13 -11
  525. package/es/shared/useTranslation.js.map +1 -1
  526. package/es/style/core/scopes.scss +1 -1
  527. package/es/style/dnb-ui-basis.css +1 -1
  528. package/es/style/dnb-ui-basis.min.css +1 -1
  529. package/es/style/dnb-ui-body.css +1 -1
  530. package/es/style/dnb-ui-body.min.css +1 -1
  531. package/es/style/dnb-ui-components.css +57 -44
  532. package/es/style/dnb-ui-components.min.css +2 -2
  533. package/es/style/dnb-ui-core.css +1 -1
  534. package/es/style/dnb-ui-core.min.css +1 -1
  535. package/es/style/dnb-ui-extensions.css +46 -44
  536. package/es/style/dnb-ui-extensions.min.css +1 -1
  537. package/es/style/dnb-ui-forms.css +46 -44
  538. package/es/style/dnb-ui-forms.min.css +1 -1
  539. package/es/style/dnb-ui-forms.scss +2 -1
  540. package/es/style/dnb-ui-fragments.css +4 -0
  541. package/es/style/dnb-ui-fragments.min.css +1 -1
  542. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -2
  543. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  544. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +103 -88
  545. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  546. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +46 -44
  547. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  548. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +46 -44
  549. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  550. package/es/style/themes/theme-sbanken/globals.scss +3 -2
  551. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +2 -2
  552. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  553. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +104 -89
  554. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  555. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +46 -44
  556. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  557. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +46 -44
  558. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  559. package/es/style/themes/theme-ui/globals.scss +3 -2
  560. package/es/style/themes/theme-ui/ui-theme-basis.css +2 -2
  561. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  562. package/es/style/themes/theme-ui/ui-theme-components.css +103 -88
  563. package/es/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  564. package/es/style/themes/theme-ui/ui-theme-extensions.css +46 -44
  565. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  566. package/es/style/themes/theme-ui/ui-theme-forms.css +46 -44
  567. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  568. package/esm/dnb-ui-basis.min.mjs +1 -1
  569. package/esm/dnb-ui-components.min.mjs +1 -1
  570. package/esm/dnb-ui-elements.min.mjs +1 -1
  571. package/esm/dnb-ui-extensions.min.mjs +5 -5
  572. package/esm/dnb-ui-lib.min.mjs +1 -1
  573. package/extensions/forms/DataContext/Context.d.ts +2 -0
  574. package/extensions/forms/DataContext/Context.js +1 -0
  575. package/extensions/forms/DataContext/Context.js.map +1 -1
  576. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +17 -1
  577. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  578. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +5 -3
  579. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  580. package/extensions/forms/DataContext/Provider/Provider.js +50 -4
  581. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  582. package/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +2 -2
  583. package/extensions/forms/Field/ArraySelection/ArraySelection.js +8 -2
  584. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  585. package/extensions/forms/Field/Option/Option.d.ts +2 -2
  586. package/extensions/forms/Field/Option/Option.js.map +1 -1
  587. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +6 -6
  588. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  589. package/extensions/forms/Field/Selection/Selection.js +7 -2
  590. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  591. package/extensions/forms/Field/Toggle/Toggle.js +7 -3
  592. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  593. package/extensions/forms/Form/FieldProps/FieldProps.js +16 -36
  594. package/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
  595. package/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +12 -0
  596. package/extensions/forms/Form/Section/EditContainer/EditContainer.js +33 -0
  597. package/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -0
  598. package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.d.ts +3 -0
  599. package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +19 -0
  600. package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -0
  601. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +1 -0
  602. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +59 -0
  603. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -0
  604. package/extensions/forms/Form/Section/EditContainer/index.d.ts +2 -0
  605. package/extensions/forms/Form/Section/EditContainer/index.js +3 -0
  606. package/extensions/forms/Form/Section/EditContainer/index.js.map +1 -0
  607. package/extensions/forms/Form/Section/EditContainer/useContainerDataStore.d.ts +3 -0
  608. package/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js +46 -0
  609. package/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js.map +1 -0
  610. package/extensions/forms/Form/Section/EditContainer/useEditContainerToolbar.d.ts +1 -0
  611. package/extensions/forms/Form/Section/EditContainer/useEditContainerToolbar.js +19 -0
  612. package/extensions/forms/Form/Section/EditContainer/useEditContainerToolbar.js.map +1 -0
  613. package/extensions/forms/Form/Section/Section.d.ts +9 -1
  614. package/extensions/forms/Form/Section/Section.js +10 -2
  615. package/extensions/forms/Form/Section/Section.js.map +1 -1
  616. package/extensions/forms/Form/Section/SectionContext.d.ts +1 -2
  617. package/extensions/forms/Form/Section/SectionContext.js.map +1 -1
  618. package/extensions/forms/Form/Section/SectionDocs.js +6 -1
  619. package/extensions/forms/Form/Section/SectionDocs.js.map +1 -1
  620. package/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +12 -0
  621. package/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +32 -0
  622. package/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -0
  623. package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.d.ts +3 -0
  624. package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +19 -0
  625. package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -0
  626. package/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +1 -0
  627. package/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js +26 -0
  628. package/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +1 -0
  629. package/extensions/forms/Form/Section/ViewContainer/index.d.ts +2 -0
  630. package/extensions/forms/Form/Section/ViewContainer/index.js +3 -0
  631. package/extensions/forms/Form/Section/ViewContainer/index.js.map +1 -0
  632. package/extensions/forms/Form/Section/containers/SectionContainer.d.ts +19 -0
  633. package/extensions/forms/Form/Section/containers/SectionContainer.js +83 -0
  634. package/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -0
  635. package/extensions/forms/Form/Section/containers/SectionContainerContext.d.ts +8 -0
  636. package/extensions/forms/Form/Section/containers/SectionContainerContext.js +4 -0
  637. package/extensions/forms/Form/Section/containers/SectionContainerContext.js.map +1 -0
  638. package/extensions/forms/Form/Section/containers/SectionContainerProvider.d.ts +8 -0
  639. package/extensions/forms/Form/Section/containers/SectionContainerProvider.js +24 -0
  640. package/extensions/forms/Form/Section/containers/SectionContainerProvider.js.map +1 -0
  641. package/extensions/forms/Form/Section/containers/Toolbar.d.ts +7 -0
  642. package/extensions/forms/Form/Section/containers/Toolbar.js +27 -0
  643. package/extensions/forms/Form/Section/containers/Toolbar.js.map +1 -0
  644. package/extensions/forms/Form/Section/style/dnb-form-section.css +45 -0
  645. package/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -0
  646. package/{cjs/extensions/forms/Iterate/style/dnb-form-iterate.scss → extensions/forms/Form/Section/style/dnb-form-section.scss} +4 -12
  647. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +8 -8
  648. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  649. package/extensions/forms/Iterate/Array/Array.js +1 -1
  650. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  651. package/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -1
  652. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  653. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +19 -10
  654. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  655. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  656. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  657. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
  658. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  659. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +1 -1
  660. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  661. package/extensions/forms/Iterate/style/dnb-iterate.css +6 -0
  662. package/extensions/forms/Iterate/style/dnb-iterate.min.css +1 -0
  663. package/extensions/forms/Iterate/style/dnb-iterate.scss +12 -0
  664. package/extensions/forms/constants/locales/en-GB.d.ts +2 -1
  665. package/extensions/forms/constants/locales/en-GB.js +3 -2
  666. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  667. package/extensions/forms/constants/locales/en-US.d.ts +2 -1
  668. package/extensions/forms/constants/locales/index.d.ts +4 -2
  669. package/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
  670. package/extensions/forms/constants/locales/nb-NO.js +3 -2
  671. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  672. package/extensions/forms/hooks/useDataValue.d.ts +4 -0
  673. package/extensions/forms/hooks/useDataValue.js +30 -5
  674. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  675. package/extensions/forms/hooks/useFieldProps.js +14 -9
  676. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  677. package/extensions/forms/hooks/useTranslation.js +7 -12
  678. package/extensions/forms/hooks/useTranslation.js.map +1 -1
  679. package/extensions/forms/style/dnb-forms.css +46 -44
  680. package/extensions/forms/style/dnb-forms.min.css +1 -1
  681. package/extensions/payment-card/PaymentCard.js.map +1 -1
  682. package/fragments/drawer-list/DrawerList.js.map +1 -1
  683. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  684. package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  685. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  686. package/fragments/drawer-list/style/dnb-drawer-list.scss +4 -0
  687. package/fragments/text-counter/TextCounter.js +3 -2
  688. package/fragments/text-counter/TextCounter.js.map +1 -1
  689. package/package.json +1 -1
  690. package/shared/Context.d.ts +9 -5
  691. package/shared/Context.js +40 -35
  692. package/shared/Context.js.map +1 -1
  693. package/shared/Eufemia.d.ts +1 -1
  694. package/shared/Eufemia.js +2 -2
  695. package/shared/Eufemia.js.map +1 -1
  696. package/shared/Provider.d.ts +1 -1
  697. package/shared/Provider.js +49 -41
  698. package/shared/Provider.js.map +1 -1
  699. package/shared/Translation.d.ts +5 -5
  700. package/shared/Translation.js +8 -10
  701. package/shared/Translation.js.map +1 -1
  702. package/shared/index.d.ts +1 -0
  703. package/shared/index.js +1 -0
  704. package/shared/index.js.map +1 -1
  705. package/shared/locales/en-GB.d.ts +0 -3
  706. package/shared/locales/en-GB.js +0 -3
  707. package/shared/locales/en-GB.js.map +1 -1
  708. package/shared/locales/en-US.d.ts +0 -3
  709. package/shared/locales/index.d.ts +0 -6
  710. package/shared/locales/nb-NO.d.ts +0 -3
  711. package/shared/locales/nb-NO.js +0 -3
  712. package/shared/locales/nb-NO.js.map +1 -1
  713. package/shared/useTranslation.d.ts +5 -4
  714. package/shared/useTranslation.js +13 -11
  715. package/shared/useTranslation.js.map +1 -1
  716. package/style/core/scopes.scss +1 -1
  717. package/style/dnb-ui-basis.css +1 -1
  718. package/style/dnb-ui-basis.min.css +1 -1
  719. package/style/dnb-ui-body.css +1 -1
  720. package/style/dnb-ui-body.min.css +1 -1
  721. package/style/dnb-ui-components.css +57 -44
  722. package/style/dnb-ui-components.min.css +2 -2
  723. package/style/dnb-ui-core.css +1 -1
  724. package/style/dnb-ui-core.min.css +1 -1
  725. package/style/dnb-ui-extensions.css +46 -44
  726. package/style/dnb-ui-extensions.min.css +1 -1
  727. package/style/dnb-ui-forms.css +46 -44
  728. package/style/dnb-ui-forms.min.css +1 -1
  729. package/style/dnb-ui-forms.scss +2 -1
  730. package/style/dnb-ui-fragments.css +4 -0
  731. package/style/dnb-ui-fragments.min.css +1 -1
  732. package/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -2
  733. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  734. package/style/themes/theme-eiendom/eiendom-theme-components.css +103 -88
  735. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  736. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +46 -44
  737. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  738. package/style/themes/theme-eiendom/eiendom-theme-forms.css +46 -44
  739. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  740. package/style/themes/theme-sbanken/globals.scss +3 -2
  741. package/style/themes/theme-sbanken/sbanken-theme-basis.css +2 -2
  742. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  743. package/style/themes/theme-sbanken/sbanken-theme-components.css +104 -89
  744. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  745. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +46 -44
  746. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  747. package/style/themes/theme-sbanken/sbanken-theme-forms.css +46 -44
  748. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  749. package/style/themes/theme-ui/globals.scss +3 -2
  750. package/style/themes/theme-ui/ui-theme-basis.css +2 -2
  751. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  752. package/style/themes/theme-ui/ui-theme-components.css +103 -88
  753. package/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  754. package/style/themes/theme-ui/ui-theme-extensions.css +46 -44
  755. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  756. package/style/themes/theme-ui/ui-theme-forms.css +46 -44
  757. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  758. package/umd/dnb-ui-basis.min.js +1 -1
  759. package/umd/dnb-ui-components.min.js +1 -1
  760. package/umd/dnb-ui-elements.min.js +1 -1
  761. package/umd/dnb-ui-extensions.min.js +5 -5
  762. package/umd/dnb-ui-lib.min.js +1 -1
  763. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.css +0 -50
  764. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.min.css +0 -1
  765. package/es/extensions/forms/Iterate/style/dnb-form-iterate.css +0 -50
  766. package/es/extensions/forms/Iterate/style/dnb-form-iterate.min.css +0 -1
  767. package/extensions/forms/Iterate/style/dnb-form-iterate.css +0 -50
  768. package/extensions/forms/Iterate/style/dnb-form-iterate.min.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_FormLabel","_FormStatus","_TextCounter","_componentHelper","_filterValidProps","_AlignmentHelper2","_SpacingHelper","_SkeletonHelper","_Context","_Suffix","_AlignmentHelper","_span","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Textarea","React","PureComponent","getDerivedStateFromProps","props","state","getValue","_value","on_state_update","dispatchCustomElementEvent","textarea_state","textareaState","hasValue","processChildren","constructor","_this","this","event","_ref","current","setState","getProps","autoresize","isTrue","prepareAutosize","rows","getRows","ret","setAutosize","elem","style","height","e","warn","_heightOffset","offsetHeight","clientHeight","lineHeight","getLineHeight","newHeight","scrollHeight","maxRows","parseFloat","autoresize_max_rows","maxHeight","createRef","_id","id","makeUniqueId","navigator","resizeModifier","test","userAgent","platform","error","console","componentDidMount","inner_ref","window","resizeObserver","ResizeObserver","observe","document","body","addEventListener","componentWillUnmount","disconnect","removeEventListener","Math","floor","getComputedStyle","_this$context","_this$context2","_this$context3","extendPropsWithContextInClassComponent","defaultProps","skeleton","context","getTranslation","pickFormElementProps","FormRow","formElement","render","label","label_direction","label_sr_only","status","status_state","status_props","status_no_animation","globalStatus","suffix","disabled","stretch","placeholder","keepPlaceholder","align","size","textarea_class","readOnly","textarea_attributes","className","characterCounter","children","textarea_element","_textarea_element","attributes","showStatus","getStatusState","TextareaElement","textareaAttributes","JSON","parse","textareaParams","classnames","role","name","convertJsxToString","onChange","onChangeHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","onKeyDown","onKeyDownHandler","combineDescribedBy","mainParams","createSkeletonClass","createSpacingClasses","innerParams","shellParams","placeholderStyle","skeletonDOMAttributes","validateDOMAttributes","createElement","for_id","text","sr_only","show","text_id","no_animation","ref","top","max","lang","locale","exports","Context","cols","on_change","on_focus","on_blur","on_key_down","process","env","NODE_ENV","propTypes","PropTypes","string","oneOfType","func","node","oneOf","bool","shape","message","number","variant","spacingPropTypes","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/textarea/Textarea.js"],"sourcesContent":["/**\n * Web Textarea Component\n *\n * This is a legacy component.\n * For refferencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport TextCounter from '../../fragments/text-counter/TextCounter'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n processChildren,\n getStatusState,\n combineDescribedBy,\n warn,\n dispatchCustomElementEvent,\n convertJsxToString,\n} from '../../shared/component-helper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\n\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\n\n/**\n * The textarea component is an umbrella component for all textareas which share the same style as the classic `text` textarea field.\n */\nexport default class Textarea extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n value: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n textarea_state: PropTypes.string,\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n placeholder: PropTypes.node,\n keepPlaceholder: PropTypes.bool,\n align: PropTypes.oneOf(['left', 'right']),\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n characterCounter: PropTypes.oneOfType([\n PropTypes.shape({\n max: PropTypes.number,\n variant: PropTypes.oneOf(['down', 'up']),\n }),\n PropTypes.number,\n ]),\n autoresize: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n autoresize_max_rows: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n textarea_class: PropTypes.string,\n textarea_attributes: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n ]),\n readOnly: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n rows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n cols: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n inner_ref: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n textarea_element: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.node,\n ]),\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_focus: PropTypes.func,\n on_blur: PropTypes.func,\n on_key_down: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n value: 'initval',\n id: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n textarea_state: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n placeholder: null,\n keepPlaceholder: null,\n align: null,\n size: null,\n stretch: null,\n disabled: null,\n skeleton: null,\n autoresize: null,\n autoresize_max_rows: null,\n characterCounter: null,\n textarea_class: null,\n textarea_attributes: null,\n readOnly: false,\n rows: null,\n cols: null,\n inner_ref: null,\n\n className: null,\n textarea_element: null,\n children: null,\n\n on_change: null,\n on_focus: null,\n on_blur: null,\n on_key_down: null,\n on_state_update: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n const value = Textarea.getValue(props)\n if (\n value !== 'initval' &&\n value !== state.value &&\n value !== state._value\n ) {\n if (\n value !== state.value &&\n typeof props.on_state_update === 'function'\n ) {\n dispatchCustomElementEvent({ props }, 'on_state_update', { value })\n }\n state.value = value\n }\n if (props.textarea_state) {\n state.textareaState = props.textarea_state\n }\n state._value = props.value\n return state\n }\n\n static hasValue(value) {\n return (\n ((typeof value === 'string' || typeof value === 'number') &&\n String(value).length > 0) ||\n false\n )\n }\n\n static getValue(props) {\n const value = processChildren(props)\n if (value === '' || Textarea.hasValue(value)) {\n return value\n }\n return props.value\n }\n\n state = {\n textareaState: 'virgin',\n value: null,\n _value: null,\n }\n\n constructor(props) {\n super(props)\n\n this._ref = React.createRef()\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n\n if (props.textarea_state) {\n this.state.textareaState = props.textarea_state\n }\n\n try {\n if (typeof navigator !== 'undefined') {\n this.resizeModifier =\n /Firefox|Edg/.test(navigator.userAgent) ||\n (/Chrome/.test(navigator.userAgent) &&\n /Win/.test(navigator.platform))\n ? 'large'\n : false\n\n if (!this.resizeModifier) {\n this.resizeModifier =\n /Safari|Chrome/.test(navigator.userAgent) &&\n /Mac/.test(navigator.platform)\n ? 'medium'\n : false\n }\n }\n } catch (error) {\n console.error(error)\n }\n }\n componentDidMount() {\n const props = this.getProps()\n if (props.inner_ref) {\n typeof props.inner_ref === 'function'\n ? props.inner_ref(this._ref.current)\n : (props.inner_ref.current = this._ref.current)\n }\n\n if (isTrue(props.autoresize) && typeof window !== 'undefined') {\n this.setAutosize()\n try {\n this.resizeObserver = new ResizeObserver(this.setAutosize)\n this.resizeObserver.observe(document.body)\n } catch (e) {\n window.addEventListener('resize', this.setAutosize)\n }\n }\n }\n componentWillUnmount() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect()\n this.resizeObserver = null\n }\n if (typeof window !== 'undefined') {\n window.removeEventListener('resize', this.setAutosize)\n }\n }\n onFocusHandler = (event) => {\n const { value } = this._ref.current\n this.setState({\n value,\n textareaState: 'focus',\n })\n dispatchCustomElementEvent(this, 'on_focus', { value, event })\n }\n onBlurHandler = (event) => {\n const { value } = event.target\n this.setState({\n value,\n textareaState: Textarea.hasValue(value) ? 'dirty' : 'initial',\n })\n dispatchCustomElementEvent(this, 'on_blur', { value, event })\n }\n onChangeHandler = (event) => {\n const { value } = event.target\n\n const props = this.getProps()\n const autoresize = isTrue(props.autoresize)\n\n if (autoresize) {\n this.prepareAutosize()\n }\n\n const rows = this.getRows(value)\n\n const ret = dispatchCustomElementEvent(this, 'on_change', {\n value,\n rows,\n event,\n })\n if (ret !== false) {\n this.setState({ value })\n if (autoresize) {\n this.setAutosize(rows)\n }\n }\n }\n onKeyDownHandler = (event) => {\n const rows = this.getRows()\n const { value } = event.target\n dispatchCustomElementEvent(this, 'on_key_down', {\n value,\n rows,\n event,\n })\n }\n prepareAutosize = () => {\n const elem = this._ref.current\n if (!elem) {\n return // stop here if no element was gotten\n }\n try {\n elem.style.height = 'auto'\n } catch (e) {\n warn(e)\n }\n }\n setAutosize = (rows = null) => {\n const elem = this._ref.current\n if (!elem) {\n return // stop here if no element was gotten\n }\n try {\n if (typeof this._heightOffset === 'undefined') {\n this._heightOffset = elem.offsetHeight - elem.clientHeight\n }\n\n elem.style.height = 'auto'\n\n // get rows after we set height to auto, this way we get 100% correct rows\n const lineHeight = this.getLineHeight()\n let newHeight = elem.scrollHeight + this._heightOffset\n if (!rows) {\n rows = this.getRows()\n }\n\n if (rows === 1) {\n if (newHeight > lineHeight) {\n newHeight = lineHeight\n }\n }\n\n const props = this.getProps()\n const maxRows = parseFloat(props.autoresize_max_rows)\n if (maxRows > 0) {\n const maxHeight = maxRows * lineHeight\n\n if (rows > maxRows || newHeight > maxHeight) {\n newHeight = maxHeight\n }\n }\n\n elem.style.height = newHeight + 'px'\n } catch (e) {\n warn(e)\n }\n }\n getRows() {\n return (\n Math.floor(this._ref.current.scrollHeight / this.getLineHeight()) ||\n 1\n )\n }\n getLineHeight() {\n return parseFloat(getComputedStyle(this._ref.current).lineHeight) || 0\n }\n getProps() {\n return extendPropsWithContextInClassComponent(\n this.props,\n Textarea.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Textarea,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Textarea\n )\n }\n render() {\n // use only the props from context, who are available here anyway\n const props = this.getProps()\n\n const {\n label,\n label_direction,\n label_sr_only,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n disabled,\n skeleton,\n stretch,\n placeholder,\n keepPlaceholder,\n align,\n size,\n textarea_class,\n readOnly,\n textarea_attributes,\n className,\n autoresize,\n characterCounter,\n autoresize_max_rows, //eslint-disable-line\n id: _id, //eslint-disable-line\n children, //eslint-disable-line\n value: _value, //eslint-disable-line\n textarea_element: _textarea_element, //eslint-disable-line\n\n ...attributes\n } = props\n\n const { value, textareaState } = this.state\n\n const id = this._id\n const showStatus = getStatusState(status)\n const hasValue = Textarea.hasValue(value)\n\n // pass along all props we wish to have as params\n let { textarea_element: TextareaElement } = props\n\n const textareaAttributes = textarea_attributes\n ? typeof textarea_attributes === 'string'\n ? JSON.parse(textarea_attributes)\n : textarea_attributes\n : {}\n\n const textareaParams = {\n className: classnames('dnb-textarea__textarea', textarea_class),\n role: 'textbox',\n value: hasValue ? value : '',\n id,\n name: id,\n disabled: isTrue(disabled) || isTrue(skeleton),\n 'aria-placeholder': placeholder\n ? convertJsxToString(placeholder)\n : undefined,\n ...attributes,\n ...textareaAttributes,\n onChange: this.onChangeHandler,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n // onPaste: this.onChangeHandler,\n onKeyDown: this.onKeyDownHandler,\n }\n\n // we may consider using: aria-details\n if (showStatus || suffix) {\n textareaParams['aria-describedby'] = combineDescribedBy(\n textareaParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (readOnly) {\n textareaParams['aria-readonly'] = textareaParams.readOnly = true\n }\n\n const mainParams = {\n className: classnames(\n 'dnb-textarea',\n `dnb-textarea--${textareaState}`,\n disabled && 'dnb-textarea--disabled',\n hasValue && 'dnb-textarea--has-content',\n align && `dnb-textarea__align--${align}`,\n size && `dnb-textarea__size--${size}`,\n status && `dnb-textarea__status--${status_state}`,\n autoresize && 'dnb-textarea__autoresize',\n !autoresize &&\n this.resizeModifier &&\n `dnb-textarea__resize--${this.resizeModifier}`,\n label_direction && `dnb-textarea--${label_direction}`,\n isTrue(stretch) && `dnb-textarea--stretch`,\n isTrue(keepPlaceholder) && `dnb-textarea--keep-placeholder`,\n 'dnb-form-component',\n createSkeletonClass(null, skeleton),\n createSpacingClasses(props),\n className\n ),\n }\n\n const innerParams = {\n className: classnames(\n 'dnb-textarea__inner',\n createSkeletonClass('shape', skeleton, this.context)\n ),\n }\n\n const shellParams = {\n className: classnames('dnb-textarea__shell'),\n }\n\n if (isTrue(disabled) || isTrue(skeleton)) {\n shellParams['aria-disabled'] = true\n }\n\n // to show the ending dots on a placeholder, if the text is longer\n const placeholderStyle =\n parseFloat(props.rows) > 0\n ? {\n '--textarea-rows': parseFloat(props.rows),\n }\n : null\n\n skeletonDOMAttributes(innerParams, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, textareaParams)\n validateDOMAttributes(null, innerParams)\n validateDOMAttributes(null, shellParams)\n\n if (TextareaElement && typeof TextareaElement === 'function') {\n TextareaElement = TextareaElement(textareaParams, this._ref)\n } else if (!TextareaElement && _textarea_element) {\n TextareaElement = _textarea_element\n }\n\n return (\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n label_direction={label_direction}\n sr_only={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n />\n )}\n\n <span {...innerParams}>\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-textarea__row\">\n <span {...shellParams}>\n {TextareaElement || (\n <textarea ref={this._ref} {...textareaParams} />\n )}\n\n {!hasValue &&\n placeholder &&\n (textareaState !== 'focus' || keepPlaceholder) && (\n <span\n className={classnames(\n 'dnb-textarea__placeholder',\n align ? `dnb-textarea__align--${align}` : null\n )}\n style={placeholderStyle}\n aria-hidden\n >\n {placeholder}\n </span>\n )}\n\n <span className=\"dnb-textarea__state\" />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-textarea__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n\n {characterCounter && (\n <TextCounter\n top=\"x-small\"\n text={value}\n max={characterCounter}\n lang={props.lang}\n locale={props.locale}\n {...characterCounter}\n />\n )}\n </span>\n </span>\n )\n }\n}\n\nTextarea._formElement = true\nTextarea._supportsSpacingProps = true\n"],"mappings":";;;;;;;AAOA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,UAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,WAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,YAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,gBAAA,GAAAN,OAAA;AAYA,IAAAO,iBAAA,GAAAP,OAAA;AACA,IAAAQ,iBAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,cAAA,GAAAT,OAAA;AAIA,IAAAU,eAAA,GAAAV,OAAA;AAKA,IAAAW,QAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,OAAA,GAAAb,sBAAA,CAAAC,OAAA;AAAgD,IAAAa,gBAAA,EAAAC,KAAA;AAAA,MAAAC,SAAA;AAAA,SAAAhB,uBAAAiB,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,SAAA,IAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAAP,MAAA,CAAAS,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAJ,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAJ,QAAA,CAAAa,KAAA,OAAAP,SAAA;AAAA,SAAAQ,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAhB,MAAA,CAAAgB,IAAA,CAAAF,MAAA,OAAAd,MAAA,CAAAiB,qBAAA,QAAAC,OAAA,GAAAlB,MAAA,CAAAiB,qBAAA,CAAAH,MAAA,GAAAC,cAAA,KAAAG,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAApB,MAAA,CAAAqB,wBAAA,CAAAP,MAAA,EAAAM,GAAA,EAAAE,UAAA,OAAAN,IAAA,CAAAO,IAAA,CAAAX,KAAA,CAAAI,IAAA,EAAAE,OAAA,YAAAF,IAAA;AAAA,SAAAQ,cAAArB,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAS,OAAA,CAAAb,MAAA,CAAAO,MAAA,OAAAkB,OAAA,WAAAjB,GAAA,IAAAkB,eAAA,CAAAvB,MAAA,EAAAK,GAAA,EAAAD,MAAA,CAAAC,GAAA,SAAAR,MAAA,CAAA2B,yBAAA,GAAA3B,MAAA,CAAA4B,gBAAA,CAAAzB,MAAA,EAAAH,MAAA,CAAA2B,yBAAA,CAAApB,MAAA,KAAAM,OAAA,CAAAb,MAAA,CAAAO,MAAA,GAAAkB,OAAA,WAAAjB,GAAA,IAAAR,MAAA,CAAA6B,cAAA,CAAA1B,MAAA,EAAAK,GAAA,EAAAR,MAAA,CAAAqB,wBAAA,CAAAd,MAAA,EAAAC,GAAA,iBAAAL,MAAA;AAAA,SAAA2B,yBAAAvB,MAAA,EAAAwB,QAAA,QAAAxB,MAAA,yBAAAJ,MAAA,GAAA6B,6BAAA,CAAAzB,MAAA,EAAAwB,QAAA,OAAAvB,GAAA,EAAAJ,CAAA,MAAAJ,MAAA,CAAAiB,qBAAA,QAAAgB,gBAAA,GAAAjC,MAAA,CAAAiB,qBAAA,CAAAV,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAA6B,gBAAA,CAAA3B,MAAA,EAAAF,CAAA,MAAAI,GAAA,GAAAyB,gBAAA,CAAA7B,CAAA,OAAA2B,QAAA,CAAAG,OAAA,CAAA1B,GAAA,uBAAAR,MAAA,CAAAS,SAAA,CAAA0B,oBAAA,CAAAxB,IAAA,CAAAJ,MAAA,EAAAC,GAAA,aAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,cAAAL,MAAA;AAAA,SAAA6B,8BAAAzB,MAAA,EAAAwB,QAAA,QAAAxB,MAAA,yBAAAJ,MAAA,WAAAiC,UAAA,GAAApC,MAAA,CAAAgB,IAAA,CAAAT,MAAA,OAAAC,GAAA,EAAAJ,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAgC,UAAA,CAAA9B,MAAA,EAAAF,CAAA,MAAAI,GAAA,GAAA4B,UAAA,CAAAhC,CAAA,OAAA2B,QAAA,CAAAG,OAAA,CAAA1B,GAAA,kBAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,YAAAL,MAAA;AAAA,SAAAuB,gBAAA9B,GAAA,EAAAY,GAAA,EAAA6B,KAAA,IAAA7B,GAAA,GAAA8B,cAAA,CAAA9B,GAAA,OAAAA,GAAA,IAAAZ,GAAA,IAAAI,MAAA,CAAA6B,cAAA,CAAAjC,GAAA,EAAAY,GAAA,IAAA6B,KAAA,EAAAA,KAAA,EAAAf,UAAA,QAAAiB,YAAA,QAAAC,QAAA,oBAAA5C,GAAA,CAAAY,GAAA,IAAA6B,KAAA,WAAAzC,GAAA;AAAA,SAAA0C,eAAAG,GAAA,QAAAjC,GAAA,GAAAkC,YAAA,CAAAD,GAAA,2BAAAjC,GAAA,gBAAAA,GAAA,GAAAmC,MAAA,CAAAnC,GAAA;AAAA,SAAAkC,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAnC,IAAA,CAAAiC,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAKjC,MAAMS,QAAQ,SAASC,cAAK,CAACC,aAAa,CAAC;EAyHxD,OAAOC,wBAAwBA,CAACC,KAAK,EAAEC,KAAK,EAAE;IAC5C,MAAMrB,KAAK,GAAGgB,QAAQ,CAACM,QAAQ,CAACF,KAAK,CAAC;IACtC,IACEpB,KAAK,KAAK,SAAS,IACnBA,KAAK,KAAKqB,KAAK,CAACrB,KAAK,IACrBA,KAAK,KAAKqB,KAAK,CAACE,MAAM,EACtB;MACA,IACEvB,KAAK,KAAKqB,KAAK,CAACrB,KAAK,IACrB,OAAOoB,KAAK,CAACI,eAAe,KAAK,UAAU,EAC3C;QACA,IAAAC,2CAA0B,EAAC;UAAEL;QAAM,CAAC,EAAE,iBAAiB,EAAE;UAAEpB;QAAM,CAAC,CAAC;MACrE;MACAqB,KAAK,CAACrB,KAAK,GAAGA,KAAK;IACrB;IACA,IAAIoB,KAAK,CAACM,cAAc,EAAE;MACxBL,KAAK,CAACM,aAAa,GAAGP,KAAK,CAACM,cAAc;IAC5C;IACAL,KAAK,CAACE,MAAM,GAAGH,KAAK,CAACpB,KAAK;IAC1B,OAAOqB,KAAK;EACd;EAEA,OAAOO,QAAQA,CAAC5B,KAAK,EAAE;IACrB,OACG,CAAC,OAAOA,KAAK,KAAK,QAAQ,IAAI,OAAOA,KAAK,KAAK,QAAQ,KACtDM,MAAM,CAACN,KAAK,CAAC,CAAC/B,MAAM,GAAG,CAAC,IAC1B,KAAK;EAET;EAEA,OAAOqD,QAAQA,CAACF,KAAK,EAAE;IACrB,MAAMpB,KAAK,GAAG,IAAA6B,gCAAe,EAACT,KAAK,CAAC;IACpC,IAAIpB,KAAK,KAAK,EAAE,IAAIgB,QAAQ,CAACY,QAAQ,CAAC5B,KAAK,CAAC,EAAE;MAC5C,OAAOA,KAAK;IACd;IACA,OAAOoB,KAAK,CAACpB,KAAK;EACpB;EAQA8B,WAAWA,CAACV,MAAK,EAAE;IAAA,IAAAW,KAAA;IACjB,KAAK,CAACX,MAAK,CAAC;IAAAW,KAAA,GAAAC,IAAA;IAAA3C,eAAA,gBAPN;MACNsC,aAAa,EAAE,QAAQ;MACvB3B,KAAK,EAAE,IAAI;MACXuB,MAAM,EAAE;IACV,CAAC;IAAAlC,eAAA,yBA4DiB4C,KAAK,IAAK;MAC1B,MAAM;QAAEjC;MAAM,CAAC,GAAG,IAAI,CAACkC,IAAI,CAACC,OAAO;MACnC,IAAI,CAACC,QAAQ,CAAC;QACZpC,KAAK;QACL2B,aAAa,EAAE;MACjB,CAAC,CAAC;MACF,IAAAF,2CAA0B,EAAC,IAAI,EAAE,UAAU,EAAE;QAAEzB,KAAK;QAAEiC;MAAM,CAAC,CAAC;IAChE,CAAC;IAAA5C,eAAA,wBACgB4C,KAAK,IAAK;MACzB,MAAM;QAAEjC;MAAM,CAAC,GAAGiC,KAAK,CAACnE,MAAM;MAC9B,IAAI,CAACsE,QAAQ,CAAC;QACZpC,KAAK;QACL2B,aAAa,EAAEX,QAAQ,CAACY,QAAQ,CAAC5B,KAAK,CAAC,GAAG,OAAO,GAAG;MACtD,CAAC,CAAC;MACF,IAAAyB,2CAA0B,EAAC,IAAI,EAAE,SAAS,EAAE;QAAEzB,KAAK;QAAEiC;MAAM,CAAC,CAAC;IAC/D,CAAC;IAAA5C,eAAA,0BACkB4C,KAAK,IAAK;MAC3B,MAAM;QAAEjC;MAAM,CAAC,GAAGiC,KAAK,CAACnE,MAAM;MAE9B,MAAMsD,KAAK,GAAG,IAAI,CAACiB,QAAQ,CAAC,CAAC;MAC7B,MAAMC,UAAU,GAAG,IAAAC,uBAAM,EAACnB,KAAK,CAACkB,UAAU,CAAC;MAE3C,IAAIA,UAAU,EAAE;QACd,IAAI,CAACE,eAAe,CAAC,CAAC;MACxB;MAEA,MAAMC,IAAI,GAAG,IAAI,CAACC,OAAO,CAAC1C,KAAK,CAAC;MAEhC,MAAM2C,GAAG,GAAG,IAAAlB,2CAA0B,EAAC,IAAI,EAAE,WAAW,EAAE;QACxDzB,KAAK;QACLyC,IAAI;QACJR;MACF,CAAC,CAAC;MACF,IAAIU,GAAG,KAAK,KAAK,EAAE;QACjB,IAAI,CAACP,QAAQ,CAAC;UAAEpC;QAAM,CAAC,CAAC;QACxB,IAAIsC,UAAU,EAAE;UACd,IAAI,CAACM,WAAW,CAACH,IAAI,CAAC;QACxB;MACF;IACF,CAAC;IAAApD,eAAA,2BACmB4C,KAAK,IAAK;MAC5B,MAAMQ,IAAI,GAAG,IAAI,CAACC,OAAO,CAAC,CAAC;MAC3B,MAAM;QAAE1C;MAAM,CAAC,GAAGiC,KAAK,CAACnE,MAAM;MAC9B,IAAA2D,2CAA0B,EAAC,IAAI,EAAE,aAAa,EAAE;QAC9CzB,KAAK;QACLyC,IAAI;QACJR;MACF,CAAC,CAAC;IACJ,CAAC;IAAA5C,eAAA,0BACiB,MAAM;MACtB,MAAMwD,IAAI,GAAG,IAAI,CAACX,IAAI,CAACC,OAAO;MAC9B,IAAI,CAACU,IAAI,EAAE;QACT;MACF;MACA,IAAI;QACFA,IAAI,CAACC,KAAK,CAACC,MAAM,GAAG,MAAM;MAC5B,CAAC,CAAC,OAAOC,CAAC,EAAE;QACV,IAAAC,qBAAI,EAACD,CAAC,CAAC;MACT;IACF,CAAC;IAAA3D,eAAA,sBACa,YAAiB;MAAA,IAAhBoD,IAAI,GAAAzE,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA4C,SAAA,GAAA5C,SAAA,MAAG,IAAI;MACxB,MAAM6E,IAAI,GAAGd,KAAI,CAACG,IAAI,CAACC,OAAO;MAC9B,IAAI,CAACU,IAAI,EAAE;QACT;MACF;MACA,IAAI;QACF,IAAI,OAAOd,KAAI,CAACmB,aAAa,KAAK,WAAW,EAAE;UAC7CnB,KAAI,CAACmB,aAAa,GAAGL,IAAI,CAACM,YAAY,GAAGN,IAAI,CAACO,YAAY;QAC5D;QAEAP,IAAI,CAACC,KAAK,CAACC,MAAM,GAAG,MAAM;QAG1B,MAAMM,UAAU,GAAGtB,KAAI,CAACuB,aAAa,CAAC,CAAC;QACvC,IAAIC,SAAS,GAAGV,IAAI,CAACW,YAAY,GAAGzB,KAAI,CAACmB,aAAa;QACtD,IAAI,CAACT,IAAI,EAAE;UACTA,IAAI,GAAGV,KAAI,CAACW,OAAO,CAAC,CAAC;QACvB;QAEA,IAAID,IAAI,KAAK,CAAC,EAAE;UACd,IAAIc,SAAS,GAAGF,UAAU,EAAE;YAC1BE,SAAS,GAAGF,UAAU;UACxB;QACF;QAEA,MAAMjC,KAAK,GAAGW,KAAI,CAACM,QAAQ,CAAC,CAAC;QAC7B,MAAMoB,OAAO,GAAGC,UAAU,CAACtC,KAAK,CAACuC,mBAAmB,CAAC;QACrD,IAAIF,OAAO,GAAG,CAAC,EAAE;UACf,MAAMG,SAAS,GAAGH,OAAO,GAAGJ,UAAU;UAEtC,IAAIZ,IAAI,GAAGgB,OAAO,IAAIF,SAAS,GAAGK,SAAS,EAAE;YAC3CL,SAAS,GAAGK,SAAS;UACvB;QACF;QAEAf,IAAI,CAACC,KAAK,CAACC,MAAM,GAAGQ,SAAS,GAAG,IAAI;MACtC,CAAC,CAAC,OAAOP,CAAC,EAAE;QACV,IAAAC,qBAAI,EAACD,CAAC,CAAC;MACT;IACF,CAAC;IA1JC,IAAI,CAACd,IAAI,GAAGjB,cAAK,CAAC4C,SAAS,CAAC,CAAC;IAC7B,IAAI,CAACC,GAAG,GAAG1C,MAAK,CAAC2C,EAAE,IAAI,IAAAC,6BAAY,EAAC,CAAC;IAErC,IAAI5C,MAAK,CAACM,cAAc,EAAE;MACxB,IAAI,CAACL,KAAK,CAACM,aAAa,GAAGP,MAAK,CAACM,cAAc;IACjD;IAEA,IAAI;MACF,IAAI,OAAOuC,SAAS,KAAK,WAAW,EAAE;QACpC,IAAI,CAACC,cAAc,GACjB,aAAa,CAACC,IAAI,CAACF,SAAS,CAACG,SAAS,CAAC,IACtC,QAAQ,CAACD,IAAI,CAACF,SAAS,CAACG,SAAS,CAAC,IACjC,KAAK,CAACD,IAAI,CAACF,SAAS,CAACI,QAAQ,CAAE,GAC7B,OAAO,GACP,KAAK;QAEX,IAAI,CAAC,IAAI,CAACH,cAAc,EAAE;UACxB,IAAI,CAACA,cAAc,GACjB,eAAe,CAACC,IAAI,CAACF,SAAS,CAACG,SAAS,CAAC,IACzC,KAAK,CAACD,IAAI,CAACF,SAAS,CAACI,QAAQ,CAAC,GAC1B,QAAQ,GACR,KAAK;QACb;MACF;IACF,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAACA,KAAK,CAAC;IACtB;EACF;EACAE,iBAAiBA,CAAA,EAAG;IAClB,MAAMpD,KAAK,GAAG,IAAI,CAACiB,QAAQ,CAAC,CAAC;IAC7B,IAAIjB,KAAK,CAACqD,SAAS,EAAE;MACnB,OAAOrD,KAAK,CAACqD,SAAS,KAAK,UAAU,GACjCrD,KAAK,CAACqD,SAAS,CAAC,IAAI,CAACvC,IAAI,CAACC,OAAO,CAAC,GACjCf,KAAK,CAACqD,SAAS,CAACtC,OAAO,GAAG,IAAI,CAACD,IAAI,CAACC,OAAQ;IACnD;IAEA,IAAI,IAAAI,uBAAM,EAACnB,KAAK,CAACkB,UAAU,CAAC,IAAI,OAAOoC,MAAM,KAAK,WAAW,EAAE;MAC7D,IAAI,CAAC9B,WAAW,CAAC,CAAC;MAClB,IAAI;QACF,IAAI,CAAC+B,cAAc,GAAG,IAAIC,cAAc,CAAC,IAAI,CAAChC,WAAW,CAAC;QAC1D,IAAI,CAAC+B,cAAc,CAACE,OAAO,CAACC,QAAQ,CAACC,IAAI,CAAC;MAC5C,CAAC,CAAC,OAAO/B,CAAC,EAAE;QACV0B,MAAM,CAACM,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAACpC,WAAW,CAAC;MACrD;IACF;EACF;EACAqC,oBAAoBA,CAAA,EAAG;IACrB,IAAI,IAAI,CAACN,cAAc,EAAE;MACvB,IAAI,CAACA,cAAc,CAACO,UAAU,CAAC,CAAC;MAChC,IAAI,CAACP,cAAc,GAAG,IAAI;IAC5B;IACA,IAAI,OAAOD,MAAM,KAAK,WAAW,EAAE;MACjCA,MAAM,CAACS,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAACvC,WAAW,CAAC;IACxD;EACF;EAqGAF,OAAOA,CAAA,EAAG;IACR,OACE0C,IAAI,CAACC,KAAK,CAAC,IAAI,CAACnD,IAAI,CAACC,OAAO,CAACqB,YAAY,GAAG,IAAI,CAACF,aAAa,CAAC,CAAC,CAAC,IACjE,CAAC;EAEL;EACAA,aAAaA,CAAA,EAAG;IACd,OAAOI,UAAU,CAAC4B,gBAAgB,CAAC,IAAI,CAACpD,IAAI,CAACC,OAAO,CAAC,CAACkB,UAAU,CAAC,IAAI,CAAC;EACxE;EACAhB,QAAQA,CAAA,EAAG;IAAA,IAAAkD,aAAA,EAAAC,cAAA,EAAAC,cAAA;IACT,OAAO,IAAAC,uDAAsC,EAC3C,IAAI,CAACtE,KAAK,EACVJ,QAAQ,CAAC2E,YAAY,EACrB;MAAEC,QAAQ,GAAAL,aAAA,GAAE,IAAI,CAACM,OAAO,cAAAN,aAAA,uBAAZA,aAAA,CAAcK;IAAS,CAAC,EACpC,IAAI,CAACC,OAAO,CAACC,cAAc,CAAC,IAAI,CAAC1E,KAAK,CAAC,CAACJ,QAAQ,EAEhD,IAAA+E,sCAAoB,GAAAP,cAAA,GAAC,IAAI,CAACK,OAAO,cAAAL,cAAA,uBAAZA,cAAA,CAAcQ,OAAO,CAAC,EAC3C,IAAAD,sCAAoB,GAAAN,cAAA,GAAC,IAAI,CAACI,OAAO,cAAAJ,cAAA,uBAAZA,cAAA,CAAcQ,WAAW,CAAC,EAC/C,IAAI,CAACJ,OAAO,CAAC7E,QACf,CAAC;EACH;EACAkF,MAAMA,CAAA,EAAG;IAEP,MAAM9E,KAAK,GAAG,IAAI,CAACiB,QAAQ,CAAC,CAAC;IAE7B,MAAM;QACJ8D,KAAK;QACLC,eAAe;QACfC,aAAa;QACbC,MAAM;QACNC,YAAY;QACZC,YAAY;QACZC,mBAAmB;QACnBC,YAAY;QACZC,MAAM;QACNC,QAAQ;QACRhB,QAAQ;QACRiB,OAAO;QACPC,WAAW;QACXC,eAAe;QACfC,KAAK;QACLC,IAAI;QACJC,cAAc;QACdC,QAAQ;QACRC,mBAAmB;QACnBC,SAAS;QACT/E,UAAU;QACVgF,gBAAgB;QAChB3D,mBAAmB;QACnBI,EAAE,EAAED,GAAG;QACPyD,QAAQ;QACRvH,KAAK,EAAEuB,MAAM;QACbiG,gBAAgB,EAAEC;MAGpB,CAAC,GAAGrG,KAAK;MADJsG,UAAU,GAAAjI,wBAAA,CACX2B,KAAK,EAAA9D,SAAA;IAET,MAAM;MAAE0C,KAAK;MAAE2B;IAAc,CAAC,GAAG,IAAI,CAACN,KAAK;IAE3C,MAAM0C,EAAE,GAAG,IAAI,CAACD,GAAG;IACnB,MAAM6D,UAAU,GAAG,IAAAC,+BAAc,EAACtB,MAAM,CAAC;IACzC,MAAM1E,QAAQ,GAAGZ,QAAQ,CAACY,QAAQ,CAAC5B,KAAK,CAAC;IAGzC,IAAI;MAAEwH,gBAAgB,EAAEK;IAAgB,CAAC,GAAGzG,KAAK;IAEjD,MAAM0G,kBAAkB,GAAGV,mBAAmB,GAC1C,OAAOA,mBAAmB,KAAK,QAAQ,GACrCW,IAAI,CAACC,KAAK,CAACZ,mBAAmB,CAAC,GAC/BA,mBAAmB,GACrB,CAAC,CAAC;IAEN,MAAMa,cAAc,GAAA9I,aAAA,CAAAA,aAAA,CAAAA,aAAA;MAClBkI,SAAS,EAAE,IAAAa,mBAAU,EAAC,wBAAwB,EAAEhB,cAAc,CAAC;MAC/DiB,IAAI,EAAE,SAAS;MACfnI,KAAK,EAAE4B,QAAQ,GAAG5B,KAAK,GAAG,EAAE;MAC5B+D,EAAE;MACFqE,IAAI,EAAErE,EAAE;MACR6C,QAAQ,EAAE,IAAArE,uBAAM,EAACqE,QAAQ,CAAC,IAAI,IAAArE,uBAAM,EAACqD,QAAQ,CAAC;MAC9C,kBAAkB,EAAEkB,WAAW,GAC3B,IAAAuB,mCAAkB,EAACvB,WAAW,CAAC,GAC/BlG;IAAS,GACV8G,UAAU,GACVI,kBAAkB;MACrBQ,QAAQ,EAAE,IAAI,CAACC,eAAe;MAC9BC,OAAO,EAAE,IAAI,CAACC,cAAc;MAC5BC,MAAM,EAAE,IAAI,CAACC,aAAa;MAE1BC,SAAS,EAAE,IAAI,CAACC;IAAgB,EACjC;IAGD,IAAIlB,UAAU,IAAIhB,MAAM,EAAE;MACxBsB,cAAc,CAAC,kBAAkB,CAAC,GAAG,IAAAa,mCAAkB,EACrDb,cAAc,EACdN,UAAU,GAAG5D,EAAE,GAAG,SAAS,GAAG,IAAI,EAClC4C,MAAM,GAAG5C,EAAE,GAAG,SAAS,GAAG,IAC5B,CAAC;IACH;IACA,IAAIoD,QAAQ,EAAE;MACZc,cAAc,CAAC,eAAe,CAAC,GAAGA,cAAc,CAACd,QAAQ,GAAG,IAAI;IAClE;IAEA,MAAM4B,UAAU,GAAG;MACjB1B,SAAS,EAAE,IAAAa,mBAAU,gCAEFvG,aAAa,uBAc9B,IAAAqH,mCAAmB,EAAC,IAAI,EAAEpD,QAAQ,CAAC,EACnC,IAAAqD,mCAAoB,EAAC7H,KAAK,CAAC,EAC3BiG,SAAS,EAVT/E,UAAU,GAAI,0BAA0B,GAEtC,IAAI,CAAC4B,cAAc,IAClB,yBAAwB,IAAI,CAACA,cAAe,EAAC,EARhD0C,QAAQ,IAAI,wBAAwB,EACpChF,QAAQ,IAAI,2BAA2B,EACvCoF,KAAK,IAAK,wBAAuBA,KAAM,EAAC,EACxCC,IAAI,IAAK,uBAAsBA,IAAK,EAAC,EACrCX,MAAM,IAAK,yBAAwBC,YAAa,EAAC,EAKjDH,eAAe,IAAK,iBAAgBA,eAAgB,EAAC,EACrD,IAAA7D,uBAAM,EAACsE,OAAO,CAAC,IAAK,uBAAsB,EAC1C,IAAAtE,uBAAM,EAACwE,eAAe,CAAC,IAAK,gCAK9B;IACF,CAAC;IAED,MAAMmC,WAAW,GAAG;MAClB7B,SAAS,EAAE,IAAAa,mBAAU,EACnB,qBAAqB,EACrB,IAAAc,mCAAmB,EAAC,OAAO,EAAEpD,QAAQ,EAAE,IAAI,CAACC,OAAO,CACrD;IACF,CAAC;IAED,MAAMsD,WAAW,GAAG;MAClB9B,SAAS,EAAa;IACxB,CAAC;IAED,IAAI,IAAA9E,uBAAM,EAACqE,QAAQ,CAAC,IAAI,IAAArE,uBAAM,EAACqD,QAAQ,CAAC,EAAE;MACxCuD,WAAW,CAAC,eAAe,CAAC,GAAG,IAAI;IACrC;IAGA,MAAMC,gBAAgB,GACpB1F,UAAU,CAACtC,KAAK,CAACqB,IAAI,CAAC,GAAG,CAAC,GACtB;MACE,iBAAiB,EAAEiB,UAAU,CAACtC,KAAK,CAACqB,IAAI;IAC1C,CAAC,GACD,IAAI;IAEV,IAAA4G,qCAAqB,EAACH,WAAW,EAAEtD,QAAQ,EAAE,IAAI,CAACC,OAAO,CAAC;IAG1D,IAAAyD,sCAAqB,EAAC,IAAI,CAAClI,KAAK,EAAE6G,cAAc,CAAC;IACjD,IAAAqB,sCAAqB,EAAC,IAAI,EAAEJ,WAAW,CAAC;IACxC,IAAAI,sCAAqB,EAAC,IAAI,EAAEH,WAAW,CAAC;IAExC,IAAItB,eAAe,IAAI,OAAOA,eAAe,KAAK,UAAU,EAAE;MAC5DA,eAAe,GAAGA,eAAe,CAACI,cAAc,EAAE,IAAI,CAAC/F,IAAI,CAAC;IAC9D,CAAC,MAAM,IAAI,CAAC2F,eAAe,IAAIJ,iBAAiB,EAAE;MAChDI,eAAe,GAAGJ,iBAAiB;IACrC;IAEA,OACEpL,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,SAAUR,UAAU,EACjB5C,KAAK,IACJ9J,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,CAAC7M,UAAA,CAAAe,OAAS;MACRsG,EAAE,EAAEA,EAAE,GAAG,QAAS;MAClByF,MAAM,EAAEzF,EAAG;MACX0F,IAAI,EAAEtD,KAAM;MACZC,eAAe,EAAEA,eAAgB;MACjCsD,OAAO,EAAErD,aAAc;MACvBO,QAAQ,EAAEA,QAAS;MACnBhB,QAAQ,EAAEA;IAAS,CACpB,CACF,EAEDvJ,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,SAAUL,WAAW,EAAA9L,gBAAA,KAAAA,gBAAA,GACnBf,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,CAACxM,iBAAA,CAAAU,OAAe,MAAE,CAAC,GAEnBpB,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,CAAC5M,WAAA,CAAAc,OAAU,EAAAC,QAAA;MACTiM,IAAI,EAAEhC,UAAW;MACjB5D,EAAE,EAAEA,EAAE,GAAG,cAAe;MACxB2C,YAAY,EAAEA,YAAa;MAC3BP,KAAK,EAAEA,KAAM;MACbyD,OAAO,EAAE7F,EAAE,GAAG,SAAU;MACxB0F,IAAI,EAAEnD,MAAO;MACbjF,KAAK,EAAEkF,YAAa;MACpBsD,YAAY,EAAEpD,mBAAoB;MAClCb,QAAQ,EAAEA;IAAS,GACfY,YAAY,CACjB,CAAC,EAEFnK,MAAA,CAAAoB,OAAA,CAAA8L,aAAA;MAAMlC,SAAS,EAAC;IAAmB,GACjChL,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,SAAUJ,WAAW,EAClBtB,eAAe,IACdxL,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,aAAA7L,QAAA;MAAUoM,GAAG,EAAE,IAAI,CAAC5H;IAAK,GAAK+F,cAAc,CAAG,CAChD,EAEA,CAACrG,QAAQ,IACRkF,WAAW,KACVnF,aAAa,KAAK,OAAO,IAAIoF,eAAe,CAAC,IAC5C1K,MAAA,CAAAoB,OAAA,CAAA8L,aAAA;MACElC,SAAS,EACP,2BAA2B,IAC3BL,KAAK,4BAA2BA,KAAM,QACtC;MACFlE,KAAK,EAAEsG,gBAAiB;MACxB;IAAW,GAEVtC,WACG,CACP,EAAAzJ,KAAA,KAAAA,KAAA,GAEHhB,MAAA,CAAAoB,OAAA,CAAA8L,aAAA;MAAMlC,SAAS,EAAC;IAAqB,CAAE,CAAC,CACpC,CAAC,EAENV,MAAM,IACLtK,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,CAACpM,OAAA,CAAAM,OAAM;MACL4J,SAAS,EAAC,sBAAsB;MAChCtD,EAAE,EAAEA,EAAE,GAAG,SAAU;MACnB8B,OAAO,EAAEzE;IAAM,GAEduF,MACK,CAEN,CAAC,EAENW,gBAAgB,IACfjL,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,CAAC3M,YAAA,CAAAa,OAAW,EAAAC,QAAA;MACVqM,GAAG,EAAC,SAAS;MACbN,IAAI,EAAEzJ,KAAM;MACZgK,GAAG,EAAE1C,gBAAiB;MACtB2C,IAAI,EAAE7I,KAAK,CAAC6I,IAAK;MACjBC,MAAM,EAAE9I,KAAK,CAAC8I;IAAO,GACjB5C,gBAAgB,CACrB,CAEC,CACF,CAAC;EAEX;AACF;AAAC6C,OAAA,CAAA1M,OAAA,GAAAuD,QAAA;AAAA3B,eAAA,CApjBoB2B,QAAQ,iBACNoJ,gBAAO;AAAA/K,eAAA,CADT2B,QAAQ,kBAgFL;EACpBhB,KAAK,EAAE,SAAS;EAChB+D,EAAE,EAAE,IAAI;EACRoC,KAAK,EAAE,IAAI;EACXC,eAAe,EAAE,IAAI;EACrBC,aAAa,EAAE,IAAI;EACnBC,MAAM,EAAE,IAAI;EACZ5E,cAAc,EAAE,IAAI;EACpB6E,YAAY,EAAE,OAAO;EACrBC,YAAY,EAAE,IAAI;EAClBC,mBAAmB,EAAE,IAAI;EACzBC,YAAY,EAAE,IAAI;EAClBC,MAAM,EAAE,IAAI;EACZG,WAAW,EAAE,IAAI;EACjBC,eAAe,EAAE,IAAI;EACrBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE,IAAI;EACVJ,OAAO,EAAE,IAAI;EACbD,QAAQ,EAAE,IAAI;EACdhB,QAAQ,EAAE,IAAI;EACdtD,UAAU,EAAE,IAAI;EAChBqB,mBAAmB,EAAE,IAAI;EACzB2D,gBAAgB,EAAE,IAAI;EACtBJ,cAAc,EAAE,IAAI;EACpBE,mBAAmB,EAAE,IAAI;EACzBD,QAAQ,EAAE,KAAK;EACf1E,IAAI,EAAE,IAAI;EACV4H,IAAI,EAAE,IAAI;EACV5F,SAAS,EAAE,IAAI;EAEf4C,SAAS,EAAE,IAAI;EACfG,gBAAgB,EAAE,IAAI;EACtBD,QAAQ,EAAE,IAAI;EAEd+C,SAAS,EAAE,IAAI;EACfC,QAAQ,EAAE,IAAI;EACdC,OAAO,EAAE,IAAI;EACbC,WAAW,EAAE,IAAI;EACjBjJ,eAAe,EAAE;AACnB,CAAC;AAAAkJ,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAvHkB5J,QAAQ,CAGpB6J,SAAS,GAAA1L,aAAA,CAAAA,aAAA;EACda,KAAK,EAAE8K,kBAAS,CAACC,MAAM;EACvBhH,EAAE,EAAE+G,kBAAS,CAACC,MAAM;EACpB5E,KAAK,EAAE2E,kBAAS,CAACE,SAAS,CAAC,CACzBF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACG,IAAI,EACdH,kBAAS,CAACI,IAAI,CACf,CAAC;EACF9E,eAAe,EAAE0E,kBAAS,CAACK,KAAK,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;EAC5D9E,aAAa,EAAEyE,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EACtE9E,MAAM,EAAEwE,kBAAS,CAACE,SAAS,CAAC,CAC1BF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACM,IAAI,EACdN,kBAAS,CAACG,IAAI,EACdH,kBAAS,CAACI,IAAI,CACf,CAAC;EACFxJ,cAAc,EAAEoJ,kBAAS,CAACC,MAAM;EAChCxE,YAAY,EAAEuE,kBAAS,CAACC,MAAM;EAC9BvE,YAAY,EAAEsE,kBAAS,CAACrM,MAAM;EAC9BgI,mBAAmB,EAAEqE,kBAAS,CAACE,SAAS,CAAC,CACvCF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACM,IAAI,CACf,CAAC;EACF1E,YAAY,EAAEoE,kBAAS,CAACO,KAAK,CAAC;IAC5BtH,EAAE,EAAE+G,kBAAS,CAACC,MAAM;IACpBO,OAAO,EAAER,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACI,IAAI,CAAC;EACjE,CAAC,CAAC;EACFvE,MAAM,EAAEmE,kBAAS,CAACE,SAAS,CAAC,CAC1BF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACG,IAAI,EACdH,kBAAS,CAACI,IAAI,CACf,CAAC;EACFpE,WAAW,EAAEgE,kBAAS,CAACI,IAAI;EAC3BnE,eAAe,EAAE+D,kBAAS,CAACM,IAAI;EAC/BpE,KAAK,EAAE8D,kBAAS,CAACK,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;EACzClE,IAAI,EAAE6D,kBAAS,CAACK,KAAK,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;EACnDtE,OAAO,EAAEiE,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EAChExE,QAAQ,EAAEkE,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EACjExF,QAAQ,EAAEkF,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EACjE9D,gBAAgB,EAAEwD,kBAAS,CAACE,SAAS,CAAC,CACpCF,kBAAS,CAACO,KAAK,CAAC;IACdrB,GAAG,EAAEc,kBAAS,CAACS,MAAM;IACrBC,OAAO,EAAEV,kBAAS,CAACK,KAAK,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC;EACzC,CAAC,CAAC,EACFL,kBAAS,CAACS,MAAM,CACjB,CAAC;EACFjJ,UAAU,EAAEwI,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EACnEzH,mBAAmB,EAAEmH,kBAAS,CAACE,SAAS,CAAC,CACvCF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACS,MAAM,CACjB,CAAC;EACFrE,cAAc,EAAE4D,kBAAS,CAACC,MAAM;EAChC3D,mBAAmB,EAAE0D,kBAAS,CAACE,SAAS,CAAC,CACvCF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACrM,MAAM,CACjB,CAAC;EACF0I,QAAQ,EAAE2D,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EACjE3I,IAAI,EAAEqI,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACS,MAAM,EAAET,kBAAS,CAACC,MAAM,CAAC,CAAC;EAC/DV,IAAI,EAAES,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACS,MAAM,EAAET,kBAAS,CAACC,MAAM,CAAC,CAAC;EAC/DtG,SAAS,EAAEqG,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACG,IAAI,EAAEH,kBAAS,CAACrM,MAAM,CAAC;AAAC,GAE/DgN,+BAAgB;EAEnBpE,SAAS,EAAEyD,kBAAS,CAACC,MAAM;EAC3BvD,gBAAgB,EAAEsD,kBAAS,CAACE,SAAS,CAAC,CACpCF,kBAAS,CAACG,IAAI,EACdH,kBAAS,CAACI,IAAI,CACf,CAAC;EACF3D,QAAQ,EAAEuD,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACI,IAAI,EAAEJ,kBAAS,CAACG,IAAI,CAAC,CAAC;EAE/DX,SAAS,EAAEQ,kBAAS,CAACG,IAAI;EACzBV,QAAQ,EAAEO,kBAAS,CAACG,IAAI;EACxBT,OAAO,EAAEM,kBAAS,CAACG,IAAI;EACvBR,WAAW,EAAEK,kBAAS,CAACG,IAAI;EAC3BzJ,eAAe,EAAEsJ,kBAAS,CAACG;AAAI;AAyenCjK,QAAQ,CAAC0K,YAAY,GAAG,IAAI;AAC5B1K,QAAQ,CAAC2K,qBAAqB,GAAG,IAAI"}
1
+ {"version":3,"file":"Textarea.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_FormLabel","_FormStatus","_TextCounter","_componentHelper","_filterValidProps","_AlignmentHelper2","_SpacingHelper","_SkeletonHelper","_Context","_Suffix","_AlignmentHelper","_span","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Textarea","React","PureComponent","getDerivedStateFromProps","props","state","getValue","_value","on_state_update","dispatchCustomElementEvent","textarea_state","textareaState","hasValue","processChildren","constructor","_this","this","event","_ref","current","setState","getProps","autoresize","isTrue","prepareAutosize","rows","getRows","ret","setAutosize","elem","style","height","e","warn","_heightOffset","offsetHeight","clientHeight","lineHeight","getLineHeight","newHeight","scrollHeight","maxRows","parseFloat","autoresize_max_rows","maxHeight","createRef","_id","id","makeUniqueId","navigator","resizeModifier","test","userAgent","platform","error","console","componentDidMount","inner_ref","window","resizeObserver","ResizeObserver","observe","document","body","addEventListener","componentWillUnmount","disconnect","removeEventListener","Math","floor","getComputedStyle","_this$context","_this$context2","_this$context3","extendPropsWithContextInClassComponent","defaultProps","skeleton","context","getTranslation","pickFormElementProps","FormRow","formElement","render","label","label_direction","label_sr_only","status","status_state","status_props","status_no_animation","globalStatus","suffix","disabled","stretch","placeholder","keepPlaceholder","align","size","textarea_class","readOnly","textarea_attributes","className","characterCounter","children","textarea_element","_textarea_element","attributes","showStatus","getStatusState","TextareaElement","textareaAttributes","JSON","parse","textareaParams","classnames","role","name","convertJsxToString","onChange","onChangeHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","onKeyDown","onKeyDownHandler","combineDescribedBy","mainParams","createSkeletonClass","createSpacingClasses","innerParams","shellParams","placeholderStyle","skeletonDOMAttributes","validateDOMAttributes","createElement","for_id","text","sr_only","show","text_id","no_animation","ref","top","max","lang","locale","exports","Context","cols","on_change","on_focus","on_blur","on_key_down","process","env","NODE_ENV","propTypes","PropTypes","string","oneOfType","func","node","oneOf","bool","shape","message","number","variant","spacingPropTypes","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/textarea/Textarea.js"],"sourcesContent":["/**\n * Web Textarea Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport TextCounter from '../../fragments/text-counter/TextCounter'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n processChildren,\n getStatusState,\n combineDescribedBy,\n warn,\n dispatchCustomElementEvent,\n convertJsxToString,\n} from '../../shared/component-helper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\n\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\n\n/**\n * The textarea component is an umbrella component for all textareas which share the same style as the classic `text` textarea field.\n */\nexport default class Textarea extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n value: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n textarea_state: PropTypes.string,\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n placeholder: PropTypes.node,\n keepPlaceholder: PropTypes.bool,\n align: PropTypes.oneOf(['left', 'right']),\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n characterCounter: PropTypes.oneOfType([\n PropTypes.shape({\n max: PropTypes.number,\n variant: PropTypes.oneOf(['down', 'up']),\n }),\n PropTypes.number,\n ]),\n autoresize: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n autoresize_max_rows: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n textarea_class: PropTypes.string,\n textarea_attributes: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n ]),\n readOnly: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n rows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n cols: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n inner_ref: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n textarea_element: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.node,\n ]),\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_focus: PropTypes.func,\n on_blur: PropTypes.func,\n on_key_down: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n value: 'initval',\n id: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n textarea_state: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n placeholder: null,\n keepPlaceholder: null,\n align: null,\n size: null,\n stretch: null,\n disabled: null,\n skeleton: null,\n autoresize: null,\n autoresize_max_rows: null,\n characterCounter: null,\n textarea_class: null,\n textarea_attributes: null,\n readOnly: false,\n rows: null,\n cols: null,\n inner_ref: null,\n\n className: null,\n textarea_element: null,\n children: null,\n\n on_change: null,\n on_focus: null,\n on_blur: null,\n on_key_down: null,\n on_state_update: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n const value = Textarea.getValue(props)\n if (\n value !== 'initval' &&\n value !== state.value &&\n value !== state._value\n ) {\n if (\n value !== state.value &&\n typeof props.on_state_update === 'function'\n ) {\n dispatchCustomElementEvent({ props }, 'on_state_update', { value })\n }\n state.value = value\n }\n if (props.textarea_state) {\n state.textareaState = props.textarea_state\n }\n state._value = props.value\n return state\n }\n\n static hasValue(value) {\n return (\n ((typeof value === 'string' || typeof value === 'number') &&\n String(value).length > 0) ||\n false\n )\n }\n\n static getValue(props) {\n const value = processChildren(props)\n if (value === '' || Textarea.hasValue(value)) {\n return value\n }\n return props.value\n }\n\n state = {\n textareaState: 'virgin',\n value: null,\n _value: null,\n }\n\n constructor(props) {\n super(props)\n\n this._ref = React.createRef()\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n\n if (props.textarea_state) {\n this.state.textareaState = props.textarea_state\n }\n\n try {\n if (typeof navigator !== 'undefined') {\n this.resizeModifier =\n /Firefox|Edg/.test(navigator.userAgent) ||\n (/Chrome/.test(navigator.userAgent) &&\n /Win/.test(navigator.platform))\n ? 'large'\n : false\n\n if (!this.resizeModifier) {\n this.resizeModifier =\n /Safari|Chrome/.test(navigator.userAgent) &&\n /Mac/.test(navigator.platform)\n ? 'medium'\n : false\n }\n }\n } catch (error) {\n console.error(error)\n }\n }\n componentDidMount() {\n const props = this.getProps()\n if (props.inner_ref) {\n typeof props.inner_ref === 'function'\n ? props.inner_ref(this._ref.current)\n : (props.inner_ref.current = this._ref.current)\n }\n\n if (isTrue(props.autoresize) && typeof window !== 'undefined') {\n this.setAutosize()\n try {\n this.resizeObserver = new ResizeObserver(this.setAutosize)\n this.resizeObserver.observe(document.body)\n } catch (e) {\n window.addEventListener('resize', this.setAutosize)\n }\n }\n }\n componentWillUnmount() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect()\n this.resizeObserver = null\n }\n if (typeof window !== 'undefined') {\n window.removeEventListener('resize', this.setAutosize)\n }\n }\n onFocusHandler = (event) => {\n const { value } = this._ref.current\n this.setState({\n value,\n textareaState: 'focus',\n })\n dispatchCustomElementEvent(this, 'on_focus', { value, event })\n }\n onBlurHandler = (event) => {\n const { value } = event.target\n this.setState({\n value,\n textareaState: Textarea.hasValue(value) ? 'dirty' : 'initial',\n })\n dispatchCustomElementEvent(this, 'on_blur', { value, event })\n }\n onChangeHandler = (event) => {\n const { value } = event.target\n\n const props = this.getProps()\n const autoresize = isTrue(props.autoresize)\n\n if (autoresize) {\n this.prepareAutosize()\n }\n\n const rows = this.getRows(value)\n\n const ret = dispatchCustomElementEvent(this, 'on_change', {\n value,\n rows,\n event,\n })\n if (ret !== false) {\n this.setState({ value })\n if (autoresize) {\n this.setAutosize(rows)\n }\n }\n }\n onKeyDownHandler = (event) => {\n const rows = this.getRows()\n const { value } = event.target\n dispatchCustomElementEvent(this, 'on_key_down', {\n value,\n rows,\n event,\n })\n }\n prepareAutosize = () => {\n const elem = this._ref.current\n if (!elem) {\n return // stop here if no element was gotten\n }\n try {\n elem.style.height = 'auto'\n } catch (e) {\n warn(e)\n }\n }\n setAutosize = (rows = null) => {\n const elem = this._ref.current\n if (!elem) {\n return // stop here if no element was gotten\n }\n try {\n if (typeof this._heightOffset === 'undefined') {\n this._heightOffset = elem.offsetHeight - elem.clientHeight\n }\n\n elem.style.height = 'auto'\n\n // get rows after we set height to auto, this way we get 100% correct rows\n const lineHeight = this.getLineHeight()\n let newHeight = elem.scrollHeight + this._heightOffset\n if (!rows) {\n rows = this.getRows()\n }\n\n if (rows === 1) {\n if (newHeight > lineHeight) {\n newHeight = lineHeight\n }\n }\n\n const props = this.getProps()\n const maxRows = parseFloat(props.autoresize_max_rows)\n if (maxRows > 0) {\n const maxHeight = maxRows * lineHeight\n\n if (rows > maxRows || newHeight > maxHeight) {\n newHeight = maxHeight\n }\n }\n\n elem.style.height = newHeight + 'px'\n } catch (e) {\n warn(e)\n }\n }\n getRows() {\n return (\n Math.floor(this._ref.current.scrollHeight / this.getLineHeight()) ||\n 1\n )\n }\n getLineHeight() {\n return parseFloat(getComputedStyle(this._ref.current).lineHeight) || 0\n }\n getProps() {\n return extendPropsWithContextInClassComponent(\n this.props,\n Textarea.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Textarea,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Textarea\n )\n }\n render() {\n // use only the props from context, who are available here anyway\n const props = this.getProps()\n\n const {\n label,\n label_direction,\n label_sr_only,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n disabled,\n skeleton,\n stretch,\n placeholder,\n keepPlaceholder,\n align,\n size,\n textarea_class,\n readOnly,\n textarea_attributes,\n className,\n autoresize,\n characterCounter,\n autoresize_max_rows, //eslint-disable-line\n id: _id, //eslint-disable-line\n children, //eslint-disable-line\n value: _value, //eslint-disable-line\n textarea_element: _textarea_element, //eslint-disable-line\n\n ...attributes\n } = props\n\n const { value, textareaState } = this.state\n\n const id = this._id\n const showStatus = getStatusState(status)\n const hasValue = Textarea.hasValue(value)\n\n // pass along all props we wish to have as params\n let { textarea_element: TextareaElement } = props\n\n const textareaAttributes = textarea_attributes\n ? typeof textarea_attributes === 'string'\n ? JSON.parse(textarea_attributes)\n : textarea_attributes\n : {}\n\n const textareaParams = {\n className: classnames('dnb-textarea__textarea', textarea_class),\n role: 'textbox',\n value: hasValue ? value : '',\n id,\n name: id,\n disabled: isTrue(disabled) || isTrue(skeleton),\n 'aria-placeholder': placeholder\n ? convertJsxToString(placeholder)\n : undefined,\n ...attributes,\n ...textareaAttributes,\n onChange: this.onChangeHandler,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n // onPaste: this.onChangeHandler,\n onKeyDown: this.onKeyDownHandler,\n }\n\n // we may consider using: aria-details\n if (showStatus || suffix) {\n textareaParams['aria-describedby'] = combineDescribedBy(\n textareaParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (readOnly) {\n textareaParams['aria-readonly'] = textareaParams.readOnly = true\n }\n\n const mainParams = {\n className: classnames(\n 'dnb-textarea',\n `dnb-textarea--${textareaState}`,\n disabled && 'dnb-textarea--disabled',\n hasValue && 'dnb-textarea--has-content',\n align && `dnb-textarea__align--${align}`,\n size && `dnb-textarea__size--${size}`,\n status && `dnb-textarea__status--${status_state}`,\n autoresize && 'dnb-textarea__autoresize',\n !autoresize &&\n this.resizeModifier &&\n `dnb-textarea__resize--${this.resizeModifier}`,\n label_direction && `dnb-textarea--${label_direction}`,\n isTrue(stretch) && `dnb-textarea--stretch`,\n isTrue(keepPlaceholder) && `dnb-textarea--keep-placeholder`,\n 'dnb-form-component',\n createSkeletonClass(null, skeleton),\n createSpacingClasses(props),\n className\n ),\n }\n\n const innerParams = {\n className: classnames(\n 'dnb-textarea__inner',\n createSkeletonClass('shape', skeleton, this.context)\n ),\n }\n\n const shellParams = {\n className: classnames('dnb-textarea__shell'),\n }\n\n if (isTrue(disabled) || isTrue(skeleton)) {\n shellParams['aria-disabled'] = true\n }\n\n // to show the ending dots on a placeholder, if the text is longer\n const placeholderStyle =\n parseFloat(props.rows) > 0\n ? {\n '--textarea-rows': parseFloat(props.rows),\n }\n : null\n\n skeletonDOMAttributes(innerParams, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, textareaParams)\n validateDOMAttributes(null, innerParams)\n validateDOMAttributes(null, shellParams)\n\n if (TextareaElement && typeof TextareaElement === 'function') {\n TextareaElement = TextareaElement(textareaParams, this._ref)\n } else if (!TextareaElement && _textarea_element) {\n TextareaElement = _textarea_element\n }\n\n return (\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n label_direction={label_direction}\n sr_only={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n />\n )}\n\n <span {...innerParams}>\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-textarea__row\">\n <span {...shellParams}>\n {TextareaElement || (\n <textarea ref={this._ref} {...textareaParams} />\n )}\n\n {!hasValue &&\n placeholder &&\n (textareaState !== 'focus' || keepPlaceholder) && (\n <span\n className={classnames(\n 'dnb-textarea__placeholder',\n align ? `dnb-textarea__align--${align}` : null\n )}\n style={placeholderStyle}\n aria-hidden\n >\n {placeholder}\n </span>\n )}\n\n <span className=\"dnb-textarea__state\" />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-textarea__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n\n {characterCounter && (\n <TextCounter\n top=\"x-small\"\n text={value}\n max={characterCounter}\n lang={props.lang}\n locale={props.locale}\n {...characterCounter}\n />\n )}\n </span>\n </span>\n )\n }\n}\n\nTextarea._formElement = true\nTextarea._supportsSpacingProps = true\n"],"mappings":";;;;;;;AAOA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,UAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,WAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,YAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,gBAAA,GAAAN,OAAA;AAYA,IAAAO,iBAAA,GAAAP,OAAA;AACA,IAAAQ,iBAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,cAAA,GAAAT,OAAA;AAIA,IAAAU,eAAA,GAAAV,OAAA;AAKA,IAAAW,QAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,OAAA,GAAAb,sBAAA,CAAAC,OAAA;AAAgD,IAAAa,gBAAA,EAAAC,KAAA;AAAA,MAAAC,SAAA;AAAA,SAAAhB,uBAAAiB,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,SAAA,IAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAAP,MAAA,CAAAS,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAJ,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAJ,QAAA,CAAAa,KAAA,OAAAP,SAAA;AAAA,SAAAQ,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAhB,MAAA,CAAAgB,IAAA,CAAAF,MAAA,OAAAd,MAAA,CAAAiB,qBAAA,QAAAC,OAAA,GAAAlB,MAAA,CAAAiB,qBAAA,CAAAH,MAAA,GAAAC,cAAA,KAAAG,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAApB,MAAA,CAAAqB,wBAAA,CAAAP,MAAA,EAAAM,GAAA,EAAAE,UAAA,OAAAN,IAAA,CAAAO,IAAA,CAAAX,KAAA,CAAAI,IAAA,EAAAE,OAAA,YAAAF,IAAA;AAAA,SAAAQ,cAAArB,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAS,OAAA,CAAAb,MAAA,CAAAO,MAAA,OAAAkB,OAAA,WAAAjB,GAAA,IAAAkB,eAAA,CAAAvB,MAAA,EAAAK,GAAA,EAAAD,MAAA,CAAAC,GAAA,SAAAR,MAAA,CAAA2B,yBAAA,GAAA3B,MAAA,CAAA4B,gBAAA,CAAAzB,MAAA,EAAAH,MAAA,CAAA2B,yBAAA,CAAApB,MAAA,KAAAM,OAAA,CAAAb,MAAA,CAAAO,MAAA,GAAAkB,OAAA,WAAAjB,GAAA,IAAAR,MAAA,CAAA6B,cAAA,CAAA1B,MAAA,EAAAK,GAAA,EAAAR,MAAA,CAAAqB,wBAAA,CAAAd,MAAA,EAAAC,GAAA,iBAAAL,MAAA;AAAA,SAAA2B,yBAAAvB,MAAA,EAAAwB,QAAA,QAAAxB,MAAA,yBAAAJ,MAAA,GAAA6B,6BAAA,CAAAzB,MAAA,EAAAwB,QAAA,OAAAvB,GAAA,EAAAJ,CAAA,MAAAJ,MAAA,CAAAiB,qBAAA,QAAAgB,gBAAA,GAAAjC,MAAA,CAAAiB,qBAAA,CAAAV,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAA6B,gBAAA,CAAA3B,MAAA,EAAAF,CAAA,MAAAI,GAAA,GAAAyB,gBAAA,CAAA7B,CAAA,OAAA2B,QAAA,CAAAG,OAAA,CAAA1B,GAAA,uBAAAR,MAAA,CAAAS,SAAA,CAAA0B,oBAAA,CAAAxB,IAAA,CAAAJ,MAAA,EAAAC,GAAA,aAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,cAAAL,MAAA;AAAA,SAAA6B,8BAAAzB,MAAA,EAAAwB,QAAA,QAAAxB,MAAA,yBAAAJ,MAAA,WAAAiC,UAAA,GAAApC,MAAA,CAAAgB,IAAA,CAAAT,MAAA,OAAAC,GAAA,EAAAJ,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAgC,UAAA,CAAA9B,MAAA,EAAAF,CAAA,MAAAI,GAAA,GAAA4B,UAAA,CAAAhC,CAAA,OAAA2B,QAAA,CAAAG,OAAA,CAAA1B,GAAA,kBAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,YAAAL,MAAA;AAAA,SAAAuB,gBAAA9B,GAAA,EAAAY,GAAA,EAAA6B,KAAA,IAAA7B,GAAA,GAAA8B,cAAA,CAAA9B,GAAA,OAAAA,GAAA,IAAAZ,GAAA,IAAAI,MAAA,CAAA6B,cAAA,CAAAjC,GAAA,EAAAY,GAAA,IAAA6B,KAAA,EAAAA,KAAA,EAAAf,UAAA,QAAAiB,YAAA,QAAAC,QAAA,oBAAA5C,GAAA,CAAAY,GAAA,IAAA6B,KAAA,WAAAzC,GAAA;AAAA,SAAA0C,eAAAG,GAAA,QAAAjC,GAAA,GAAAkC,YAAA,CAAAD,GAAA,2BAAAjC,GAAA,gBAAAA,GAAA,GAAAmC,MAAA,CAAAnC,GAAA;AAAA,SAAAkC,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAnC,IAAA,CAAAiC,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAKjC,MAAMS,QAAQ,SAASC,cAAK,CAACC,aAAa,CAAC;EAyHxD,OAAOC,wBAAwBA,CAACC,KAAK,EAAEC,KAAK,EAAE;IAC5C,MAAMrB,KAAK,GAAGgB,QAAQ,CAACM,QAAQ,CAACF,KAAK,CAAC;IACtC,IACEpB,KAAK,KAAK,SAAS,IACnBA,KAAK,KAAKqB,KAAK,CAACrB,KAAK,IACrBA,KAAK,KAAKqB,KAAK,CAACE,MAAM,EACtB;MACA,IACEvB,KAAK,KAAKqB,KAAK,CAACrB,KAAK,IACrB,OAAOoB,KAAK,CAACI,eAAe,KAAK,UAAU,EAC3C;QACA,IAAAC,2CAA0B,EAAC;UAAEL;QAAM,CAAC,EAAE,iBAAiB,EAAE;UAAEpB;QAAM,CAAC,CAAC;MACrE;MACAqB,KAAK,CAACrB,KAAK,GAAGA,KAAK;IACrB;IACA,IAAIoB,KAAK,CAACM,cAAc,EAAE;MACxBL,KAAK,CAACM,aAAa,GAAGP,KAAK,CAACM,cAAc;IAC5C;IACAL,KAAK,CAACE,MAAM,GAAGH,KAAK,CAACpB,KAAK;IAC1B,OAAOqB,KAAK;EACd;EAEA,OAAOO,QAAQA,CAAC5B,KAAK,EAAE;IACrB,OACG,CAAC,OAAOA,KAAK,KAAK,QAAQ,IAAI,OAAOA,KAAK,KAAK,QAAQ,KACtDM,MAAM,CAACN,KAAK,CAAC,CAAC/B,MAAM,GAAG,CAAC,IAC1B,KAAK;EAET;EAEA,OAAOqD,QAAQA,CAACF,KAAK,EAAE;IACrB,MAAMpB,KAAK,GAAG,IAAA6B,gCAAe,EAACT,KAAK,CAAC;IACpC,IAAIpB,KAAK,KAAK,EAAE,IAAIgB,QAAQ,CAACY,QAAQ,CAAC5B,KAAK,CAAC,EAAE;MAC5C,OAAOA,KAAK;IACd;IACA,OAAOoB,KAAK,CAACpB,KAAK;EACpB;EAQA8B,WAAWA,CAACV,MAAK,EAAE;IAAA,IAAAW,KAAA;IACjB,KAAK,CAACX,MAAK,CAAC;IAAAW,KAAA,GAAAC,IAAA;IAAA3C,eAAA,gBAPN;MACNsC,aAAa,EAAE,QAAQ;MACvB3B,KAAK,EAAE,IAAI;MACXuB,MAAM,EAAE;IACV,CAAC;IAAAlC,eAAA,yBA4DiB4C,KAAK,IAAK;MAC1B,MAAM;QAAEjC;MAAM,CAAC,GAAG,IAAI,CAACkC,IAAI,CAACC,OAAO;MACnC,IAAI,CAACC,QAAQ,CAAC;QACZpC,KAAK;QACL2B,aAAa,EAAE;MACjB,CAAC,CAAC;MACF,IAAAF,2CAA0B,EAAC,IAAI,EAAE,UAAU,EAAE;QAAEzB,KAAK;QAAEiC;MAAM,CAAC,CAAC;IAChE,CAAC;IAAA5C,eAAA,wBACgB4C,KAAK,IAAK;MACzB,MAAM;QAAEjC;MAAM,CAAC,GAAGiC,KAAK,CAACnE,MAAM;MAC9B,IAAI,CAACsE,QAAQ,CAAC;QACZpC,KAAK;QACL2B,aAAa,EAAEX,QAAQ,CAACY,QAAQ,CAAC5B,KAAK,CAAC,GAAG,OAAO,GAAG;MACtD,CAAC,CAAC;MACF,IAAAyB,2CAA0B,EAAC,IAAI,EAAE,SAAS,EAAE;QAAEzB,KAAK;QAAEiC;MAAM,CAAC,CAAC;IAC/D,CAAC;IAAA5C,eAAA,0BACkB4C,KAAK,IAAK;MAC3B,MAAM;QAAEjC;MAAM,CAAC,GAAGiC,KAAK,CAACnE,MAAM;MAE9B,MAAMsD,KAAK,GAAG,IAAI,CAACiB,QAAQ,CAAC,CAAC;MAC7B,MAAMC,UAAU,GAAG,IAAAC,uBAAM,EAACnB,KAAK,CAACkB,UAAU,CAAC;MAE3C,IAAIA,UAAU,EAAE;QACd,IAAI,CAACE,eAAe,CAAC,CAAC;MACxB;MAEA,MAAMC,IAAI,GAAG,IAAI,CAACC,OAAO,CAAC1C,KAAK,CAAC;MAEhC,MAAM2C,GAAG,GAAG,IAAAlB,2CAA0B,EAAC,IAAI,EAAE,WAAW,EAAE;QACxDzB,KAAK;QACLyC,IAAI;QACJR;MACF,CAAC,CAAC;MACF,IAAIU,GAAG,KAAK,KAAK,EAAE;QACjB,IAAI,CAACP,QAAQ,CAAC;UAAEpC;QAAM,CAAC,CAAC;QACxB,IAAIsC,UAAU,EAAE;UACd,IAAI,CAACM,WAAW,CAACH,IAAI,CAAC;QACxB;MACF;IACF,CAAC;IAAApD,eAAA,2BACmB4C,KAAK,IAAK;MAC5B,MAAMQ,IAAI,GAAG,IAAI,CAACC,OAAO,CAAC,CAAC;MAC3B,MAAM;QAAE1C;MAAM,CAAC,GAAGiC,KAAK,CAACnE,MAAM;MAC9B,IAAA2D,2CAA0B,EAAC,IAAI,EAAE,aAAa,EAAE;QAC9CzB,KAAK;QACLyC,IAAI;QACJR;MACF,CAAC,CAAC;IACJ,CAAC;IAAA5C,eAAA,0BACiB,MAAM;MACtB,MAAMwD,IAAI,GAAG,IAAI,CAACX,IAAI,CAACC,OAAO;MAC9B,IAAI,CAACU,IAAI,EAAE;QACT;MACF;MACA,IAAI;QACFA,IAAI,CAACC,KAAK,CAACC,MAAM,GAAG,MAAM;MAC5B,CAAC,CAAC,OAAOC,CAAC,EAAE;QACV,IAAAC,qBAAI,EAACD,CAAC,CAAC;MACT;IACF,CAAC;IAAA3D,eAAA,sBACa,YAAiB;MAAA,IAAhBoD,IAAI,GAAAzE,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA4C,SAAA,GAAA5C,SAAA,MAAG,IAAI;MACxB,MAAM6E,IAAI,GAAGd,KAAI,CAACG,IAAI,CAACC,OAAO;MAC9B,IAAI,CAACU,IAAI,EAAE;QACT;MACF;MACA,IAAI;QACF,IAAI,OAAOd,KAAI,CAACmB,aAAa,KAAK,WAAW,EAAE;UAC7CnB,KAAI,CAACmB,aAAa,GAAGL,IAAI,CAACM,YAAY,GAAGN,IAAI,CAACO,YAAY;QAC5D;QAEAP,IAAI,CAACC,KAAK,CAACC,MAAM,GAAG,MAAM;QAG1B,MAAMM,UAAU,GAAGtB,KAAI,CAACuB,aAAa,CAAC,CAAC;QACvC,IAAIC,SAAS,GAAGV,IAAI,CAACW,YAAY,GAAGzB,KAAI,CAACmB,aAAa;QACtD,IAAI,CAACT,IAAI,EAAE;UACTA,IAAI,GAAGV,KAAI,CAACW,OAAO,CAAC,CAAC;QACvB;QAEA,IAAID,IAAI,KAAK,CAAC,EAAE;UACd,IAAIc,SAAS,GAAGF,UAAU,EAAE;YAC1BE,SAAS,GAAGF,UAAU;UACxB;QACF;QAEA,MAAMjC,KAAK,GAAGW,KAAI,CAACM,QAAQ,CAAC,CAAC;QAC7B,MAAMoB,OAAO,GAAGC,UAAU,CAACtC,KAAK,CAACuC,mBAAmB,CAAC;QACrD,IAAIF,OAAO,GAAG,CAAC,EAAE;UACf,MAAMG,SAAS,GAAGH,OAAO,GAAGJ,UAAU;UAEtC,IAAIZ,IAAI,GAAGgB,OAAO,IAAIF,SAAS,GAAGK,SAAS,EAAE;YAC3CL,SAAS,GAAGK,SAAS;UACvB;QACF;QAEAf,IAAI,CAACC,KAAK,CAACC,MAAM,GAAGQ,SAAS,GAAG,IAAI;MACtC,CAAC,CAAC,OAAOP,CAAC,EAAE;QACV,IAAAC,qBAAI,EAACD,CAAC,CAAC;MACT;IACF,CAAC;IA1JC,IAAI,CAACd,IAAI,GAAGjB,cAAK,CAAC4C,SAAS,CAAC,CAAC;IAC7B,IAAI,CAACC,GAAG,GAAG1C,MAAK,CAAC2C,EAAE,IAAI,IAAAC,6BAAY,EAAC,CAAC;IAErC,IAAI5C,MAAK,CAACM,cAAc,EAAE;MACxB,IAAI,CAACL,KAAK,CAACM,aAAa,GAAGP,MAAK,CAACM,cAAc;IACjD;IAEA,IAAI;MACF,IAAI,OAAOuC,SAAS,KAAK,WAAW,EAAE;QACpC,IAAI,CAACC,cAAc,GACjB,aAAa,CAACC,IAAI,CAACF,SAAS,CAACG,SAAS,CAAC,IACtC,QAAQ,CAACD,IAAI,CAACF,SAAS,CAACG,SAAS,CAAC,IACjC,KAAK,CAACD,IAAI,CAACF,SAAS,CAACI,QAAQ,CAAE,GAC7B,OAAO,GACP,KAAK;QAEX,IAAI,CAAC,IAAI,CAACH,cAAc,EAAE;UACxB,IAAI,CAACA,cAAc,GACjB,eAAe,CAACC,IAAI,CAACF,SAAS,CAACG,SAAS,CAAC,IACzC,KAAK,CAACD,IAAI,CAACF,SAAS,CAACI,QAAQ,CAAC,GAC1B,QAAQ,GACR,KAAK;QACb;MACF;IACF,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAACA,KAAK,CAAC;IACtB;EACF;EACAE,iBAAiBA,CAAA,EAAG;IAClB,MAAMpD,KAAK,GAAG,IAAI,CAACiB,QAAQ,CAAC,CAAC;IAC7B,IAAIjB,KAAK,CAACqD,SAAS,EAAE;MACnB,OAAOrD,KAAK,CAACqD,SAAS,KAAK,UAAU,GACjCrD,KAAK,CAACqD,SAAS,CAAC,IAAI,CAACvC,IAAI,CAACC,OAAO,CAAC,GACjCf,KAAK,CAACqD,SAAS,CAACtC,OAAO,GAAG,IAAI,CAACD,IAAI,CAACC,OAAQ;IACnD;IAEA,IAAI,IAAAI,uBAAM,EAACnB,KAAK,CAACkB,UAAU,CAAC,IAAI,OAAOoC,MAAM,KAAK,WAAW,EAAE;MAC7D,IAAI,CAAC9B,WAAW,CAAC,CAAC;MAClB,IAAI;QACF,IAAI,CAAC+B,cAAc,GAAG,IAAIC,cAAc,CAAC,IAAI,CAAChC,WAAW,CAAC;QAC1D,IAAI,CAAC+B,cAAc,CAACE,OAAO,CAACC,QAAQ,CAACC,IAAI,CAAC;MAC5C,CAAC,CAAC,OAAO/B,CAAC,EAAE;QACV0B,MAAM,CAACM,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAACpC,WAAW,CAAC;MACrD;IACF;EACF;EACAqC,oBAAoBA,CAAA,EAAG;IACrB,IAAI,IAAI,CAACN,cAAc,EAAE;MACvB,IAAI,CAACA,cAAc,CAACO,UAAU,CAAC,CAAC;MAChC,IAAI,CAACP,cAAc,GAAG,IAAI;IAC5B;IACA,IAAI,OAAOD,MAAM,KAAK,WAAW,EAAE;MACjCA,MAAM,CAACS,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAACvC,WAAW,CAAC;IACxD;EACF;EAqGAF,OAAOA,CAAA,EAAG;IACR,OACE0C,IAAI,CAACC,KAAK,CAAC,IAAI,CAACnD,IAAI,CAACC,OAAO,CAACqB,YAAY,GAAG,IAAI,CAACF,aAAa,CAAC,CAAC,CAAC,IACjE,CAAC;EAEL;EACAA,aAAaA,CAAA,EAAG;IACd,OAAOI,UAAU,CAAC4B,gBAAgB,CAAC,IAAI,CAACpD,IAAI,CAACC,OAAO,CAAC,CAACkB,UAAU,CAAC,IAAI,CAAC;EACxE;EACAhB,QAAQA,CAAA,EAAG;IAAA,IAAAkD,aAAA,EAAAC,cAAA,EAAAC,cAAA;IACT,OAAO,IAAAC,uDAAsC,EAC3C,IAAI,CAACtE,KAAK,EACVJ,QAAQ,CAAC2E,YAAY,EACrB;MAAEC,QAAQ,GAAAL,aAAA,GAAE,IAAI,CAACM,OAAO,cAAAN,aAAA,uBAAZA,aAAA,CAAcK;IAAS,CAAC,EACpC,IAAI,CAACC,OAAO,CAACC,cAAc,CAAC,IAAI,CAAC1E,KAAK,CAAC,CAACJ,QAAQ,EAEhD,IAAA+E,sCAAoB,GAAAP,cAAA,GAAC,IAAI,CAACK,OAAO,cAAAL,cAAA,uBAAZA,cAAA,CAAcQ,OAAO,CAAC,EAC3C,IAAAD,sCAAoB,GAAAN,cAAA,GAAC,IAAI,CAACI,OAAO,cAAAJ,cAAA,uBAAZA,cAAA,CAAcQ,WAAW,CAAC,EAC/C,IAAI,CAACJ,OAAO,CAAC7E,QACf,CAAC;EACH;EACAkF,MAAMA,CAAA,EAAG;IAEP,MAAM9E,KAAK,GAAG,IAAI,CAACiB,QAAQ,CAAC,CAAC;IAE7B,MAAM;QACJ8D,KAAK;QACLC,eAAe;QACfC,aAAa;QACbC,MAAM;QACNC,YAAY;QACZC,YAAY;QACZC,mBAAmB;QACnBC,YAAY;QACZC,MAAM;QACNC,QAAQ;QACRhB,QAAQ;QACRiB,OAAO;QACPC,WAAW;QACXC,eAAe;QACfC,KAAK;QACLC,IAAI;QACJC,cAAc;QACdC,QAAQ;QACRC,mBAAmB;QACnBC,SAAS;QACT/E,UAAU;QACVgF,gBAAgB;QAChB3D,mBAAmB;QACnBI,EAAE,EAAED,GAAG;QACPyD,QAAQ;QACRvH,KAAK,EAAEuB,MAAM;QACbiG,gBAAgB,EAAEC;MAGpB,CAAC,GAAGrG,KAAK;MADJsG,UAAU,GAAAjI,wBAAA,CACX2B,KAAK,EAAA9D,SAAA;IAET,MAAM;MAAE0C,KAAK;MAAE2B;IAAc,CAAC,GAAG,IAAI,CAACN,KAAK;IAE3C,MAAM0C,EAAE,GAAG,IAAI,CAACD,GAAG;IACnB,MAAM6D,UAAU,GAAG,IAAAC,+BAAc,EAACtB,MAAM,CAAC;IACzC,MAAM1E,QAAQ,GAAGZ,QAAQ,CAACY,QAAQ,CAAC5B,KAAK,CAAC;IAGzC,IAAI;MAAEwH,gBAAgB,EAAEK;IAAgB,CAAC,GAAGzG,KAAK;IAEjD,MAAM0G,kBAAkB,GAAGV,mBAAmB,GAC1C,OAAOA,mBAAmB,KAAK,QAAQ,GACrCW,IAAI,CAACC,KAAK,CAACZ,mBAAmB,CAAC,GAC/BA,mBAAmB,GACrB,CAAC,CAAC;IAEN,MAAMa,cAAc,GAAA9I,aAAA,CAAAA,aAAA,CAAAA,aAAA;MAClBkI,SAAS,EAAE,IAAAa,mBAAU,EAAC,wBAAwB,EAAEhB,cAAc,CAAC;MAC/DiB,IAAI,EAAE,SAAS;MACfnI,KAAK,EAAE4B,QAAQ,GAAG5B,KAAK,GAAG,EAAE;MAC5B+D,EAAE;MACFqE,IAAI,EAAErE,EAAE;MACR6C,QAAQ,EAAE,IAAArE,uBAAM,EAACqE,QAAQ,CAAC,IAAI,IAAArE,uBAAM,EAACqD,QAAQ,CAAC;MAC9C,kBAAkB,EAAEkB,WAAW,GAC3B,IAAAuB,mCAAkB,EAACvB,WAAW,CAAC,GAC/BlG;IAAS,GACV8G,UAAU,GACVI,kBAAkB;MACrBQ,QAAQ,EAAE,IAAI,CAACC,eAAe;MAC9BC,OAAO,EAAE,IAAI,CAACC,cAAc;MAC5BC,MAAM,EAAE,IAAI,CAACC,aAAa;MAE1BC,SAAS,EAAE,IAAI,CAACC;IAAgB,EACjC;IAGD,IAAIlB,UAAU,IAAIhB,MAAM,EAAE;MACxBsB,cAAc,CAAC,kBAAkB,CAAC,GAAG,IAAAa,mCAAkB,EACrDb,cAAc,EACdN,UAAU,GAAG5D,EAAE,GAAG,SAAS,GAAG,IAAI,EAClC4C,MAAM,GAAG5C,EAAE,GAAG,SAAS,GAAG,IAC5B,CAAC;IACH;IACA,IAAIoD,QAAQ,EAAE;MACZc,cAAc,CAAC,eAAe,CAAC,GAAGA,cAAc,CAACd,QAAQ,GAAG,IAAI;IAClE;IAEA,MAAM4B,UAAU,GAAG;MACjB1B,SAAS,EAAE,IAAAa,mBAAU,gCAEFvG,aAAa,uBAc9B,IAAAqH,mCAAmB,EAAC,IAAI,EAAEpD,QAAQ,CAAC,EACnC,IAAAqD,mCAAoB,EAAC7H,KAAK,CAAC,EAC3BiG,SAAS,EAVT/E,UAAU,GAAI,0BAA0B,GAEtC,IAAI,CAAC4B,cAAc,IAClB,yBAAwB,IAAI,CAACA,cAAe,EAAC,EARhD0C,QAAQ,IAAI,wBAAwB,EACpChF,QAAQ,IAAI,2BAA2B,EACvCoF,KAAK,IAAK,wBAAuBA,KAAM,EAAC,EACxCC,IAAI,IAAK,uBAAsBA,IAAK,EAAC,EACrCX,MAAM,IAAK,yBAAwBC,YAAa,EAAC,EAKjDH,eAAe,IAAK,iBAAgBA,eAAgB,EAAC,EACrD,IAAA7D,uBAAM,EAACsE,OAAO,CAAC,IAAK,uBAAsB,EAC1C,IAAAtE,uBAAM,EAACwE,eAAe,CAAC,IAAK,gCAK9B;IACF,CAAC;IAED,MAAMmC,WAAW,GAAG;MAClB7B,SAAS,EAAE,IAAAa,mBAAU,EACnB,qBAAqB,EACrB,IAAAc,mCAAmB,EAAC,OAAO,EAAEpD,QAAQ,EAAE,IAAI,CAACC,OAAO,CACrD;IACF,CAAC;IAED,MAAMsD,WAAW,GAAG;MAClB9B,SAAS,EAAa;IACxB,CAAC;IAED,IAAI,IAAA9E,uBAAM,EAACqE,QAAQ,CAAC,IAAI,IAAArE,uBAAM,EAACqD,QAAQ,CAAC,EAAE;MACxCuD,WAAW,CAAC,eAAe,CAAC,GAAG,IAAI;IACrC;IAGA,MAAMC,gBAAgB,GACpB1F,UAAU,CAACtC,KAAK,CAACqB,IAAI,CAAC,GAAG,CAAC,GACtB;MACE,iBAAiB,EAAEiB,UAAU,CAACtC,KAAK,CAACqB,IAAI;IAC1C,CAAC,GACD,IAAI;IAEV,IAAA4G,qCAAqB,EAACH,WAAW,EAAEtD,QAAQ,EAAE,IAAI,CAACC,OAAO,CAAC;IAG1D,IAAAyD,sCAAqB,EAAC,IAAI,CAAClI,KAAK,EAAE6G,cAAc,CAAC;IACjD,IAAAqB,sCAAqB,EAAC,IAAI,EAAEJ,WAAW,CAAC;IACxC,IAAAI,sCAAqB,EAAC,IAAI,EAAEH,WAAW,CAAC;IAExC,IAAItB,eAAe,IAAI,OAAOA,eAAe,KAAK,UAAU,EAAE;MAC5DA,eAAe,GAAGA,eAAe,CAACI,cAAc,EAAE,IAAI,CAAC/F,IAAI,CAAC;IAC9D,CAAC,MAAM,IAAI,CAAC2F,eAAe,IAAIJ,iBAAiB,EAAE;MAChDI,eAAe,GAAGJ,iBAAiB;IACrC;IAEA,OACEpL,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,SAAUR,UAAU,EACjB5C,KAAK,IACJ9J,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,CAAC7M,UAAA,CAAAe,OAAS;MACRsG,EAAE,EAAEA,EAAE,GAAG,QAAS;MAClByF,MAAM,EAAEzF,EAAG;MACX0F,IAAI,EAAEtD,KAAM;MACZC,eAAe,EAAEA,eAAgB;MACjCsD,OAAO,EAAErD,aAAc;MACvBO,QAAQ,EAAEA,QAAS;MACnBhB,QAAQ,EAAEA;IAAS,CACpB,CACF,EAEDvJ,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,SAAUL,WAAW,EAAA9L,gBAAA,KAAAA,gBAAA,GACnBf,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,CAACxM,iBAAA,CAAAU,OAAe,MAAE,CAAC,GAEnBpB,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,CAAC5M,WAAA,CAAAc,OAAU,EAAAC,QAAA;MACTiM,IAAI,EAAEhC,UAAW;MACjB5D,EAAE,EAAEA,EAAE,GAAG,cAAe;MACxB2C,YAAY,EAAEA,YAAa;MAC3BP,KAAK,EAAEA,KAAM;MACbyD,OAAO,EAAE7F,EAAE,GAAG,SAAU;MACxB0F,IAAI,EAAEnD,MAAO;MACbjF,KAAK,EAAEkF,YAAa;MACpBsD,YAAY,EAAEpD,mBAAoB;MAClCb,QAAQ,EAAEA;IAAS,GACfY,YAAY,CACjB,CAAC,EAEFnK,MAAA,CAAAoB,OAAA,CAAA8L,aAAA;MAAMlC,SAAS,EAAC;IAAmB,GACjChL,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,SAAUJ,WAAW,EAClBtB,eAAe,IACdxL,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,aAAA7L,QAAA;MAAUoM,GAAG,EAAE,IAAI,CAAC5H;IAAK,GAAK+F,cAAc,CAAG,CAChD,EAEA,CAACrG,QAAQ,IACRkF,WAAW,KACVnF,aAAa,KAAK,OAAO,IAAIoF,eAAe,CAAC,IAC5C1K,MAAA,CAAAoB,OAAA,CAAA8L,aAAA;MACElC,SAAS,EACP,2BAA2B,IAC3BL,KAAK,4BAA2BA,KAAM,QACtC;MACFlE,KAAK,EAAEsG,gBAAiB;MACxB;IAAW,GAEVtC,WACG,CACP,EAAAzJ,KAAA,KAAAA,KAAA,GAEHhB,MAAA,CAAAoB,OAAA,CAAA8L,aAAA;MAAMlC,SAAS,EAAC;IAAqB,CAAE,CAAC,CACpC,CAAC,EAENV,MAAM,IACLtK,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,CAACpM,OAAA,CAAAM,OAAM;MACL4J,SAAS,EAAC,sBAAsB;MAChCtD,EAAE,EAAEA,EAAE,GAAG,SAAU;MACnB8B,OAAO,EAAEzE;IAAM,GAEduF,MACK,CAEN,CAAC,EAENW,gBAAgB,IACfjL,MAAA,CAAAoB,OAAA,CAAA8L,aAAA,CAAC3M,YAAA,CAAAa,OAAW,EAAAC,QAAA;MACVqM,GAAG,EAAC,SAAS;MACbN,IAAI,EAAEzJ,KAAM;MACZgK,GAAG,EAAE1C,gBAAiB;MACtB2C,IAAI,EAAE7I,KAAK,CAAC6I,IAAK;MACjBC,MAAM,EAAE9I,KAAK,CAAC8I;IAAO,GACjB5C,gBAAgB,CACrB,CAEC,CACF,CAAC;EAEX;AACF;AAAC6C,OAAA,CAAA1M,OAAA,GAAAuD,QAAA;AAAA3B,eAAA,CApjBoB2B,QAAQ,iBACNoJ,gBAAO;AAAA/K,eAAA,CADT2B,QAAQ,kBAgFL;EACpBhB,KAAK,EAAE,SAAS;EAChB+D,EAAE,EAAE,IAAI;EACRoC,KAAK,EAAE,IAAI;EACXC,eAAe,EAAE,IAAI;EACrBC,aAAa,EAAE,IAAI;EACnBC,MAAM,EAAE,IAAI;EACZ5E,cAAc,EAAE,IAAI;EACpB6E,YAAY,EAAE,OAAO;EACrBC,YAAY,EAAE,IAAI;EAClBC,mBAAmB,EAAE,IAAI;EACzBC,YAAY,EAAE,IAAI;EAClBC,MAAM,EAAE,IAAI;EACZG,WAAW,EAAE,IAAI;EACjBC,eAAe,EAAE,IAAI;EACrBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE,IAAI;EACVJ,OAAO,EAAE,IAAI;EACbD,QAAQ,EAAE,IAAI;EACdhB,QAAQ,EAAE,IAAI;EACdtD,UAAU,EAAE,IAAI;EAChBqB,mBAAmB,EAAE,IAAI;EACzB2D,gBAAgB,EAAE,IAAI;EACtBJ,cAAc,EAAE,IAAI;EACpBE,mBAAmB,EAAE,IAAI;EACzBD,QAAQ,EAAE,KAAK;EACf1E,IAAI,EAAE,IAAI;EACV4H,IAAI,EAAE,IAAI;EACV5F,SAAS,EAAE,IAAI;EAEf4C,SAAS,EAAE,IAAI;EACfG,gBAAgB,EAAE,IAAI;EACtBD,QAAQ,EAAE,IAAI;EAEd+C,SAAS,EAAE,IAAI;EACfC,QAAQ,EAAE,IAAI;EACdC,OAAO,EAAE,IAAI;EACbC,WAAW,EAAE,IAAI;EACjBjJ,eAAe,EAAE;AACnB,CAAC;AAAAkJ,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAvHkB5J,QAAQ,CAGpB6J,SAAS,GAAA1L,aAAA,CAAAA,aAAA;EACda,KAAK,EAAE8K,kBAAS,CAACC,MAAM;EACvBhH,EAAE,EAAE+G,kBAAS,CAACC,MAAM;EACpB5E,KAAK,EAAE2E,kBAAS,CAACE,SAAS,CAAC,CACzBF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACG,IAAI,EACdH,kBAAS,CAACI,IAAI,CACf,CAAC;EACF9E,eAAe,EAAE0E,kBAAS,CAACK,KAAK,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;EAC5D9E,aAAa,EAAEyE,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EACtE9E,MAAM,EAAEwE,kBAAS,CAACE,SAAS,CAAC,CAC1BF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACM,IAAI,EACdN,kBAAS,CAACG,IAAI,EACdH,kBAAS,CAACI,IAAI,CACf,CAAC;EACFxJ,cAAc,EAAEoJ,kBAAS,CAACC,MAAM;EAChCxE,YAAY,EAAEuE,kBAAS,CAACC,MAAM;EAC9BvE,YAAY,EAAEsE,kBAAS,CAACrM,MAAM;EAC9BgI,mBAAmB,EAAEqE,kBAAS,CAACE,SAAS,CAAC,CACvCF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACM,IAAI,CACf,CAAC;EACF1E,YAAY,EAAEoE,kBAAS,CAACO,KAAK,CAAC;IAC5BtH,EAAE,EAAE+G,kBAAS,CAACC,MAAM;IACpBO,OAAO,EAAER,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACI,IAAI,CAAC;EACjE,CAAC,CAAC;EACFvE,MAAM,EAAEmE,kBAAS,CAACE,SAAS,CAAC,CAC1BF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACG,IAAI,EACdH,kBAAS,CAACI,IAAI,CACf,CAAC;EACFpE,WAAW,EAAEgE,kBAAS,CAACI,IAAI;EAC3BnE,eAAe,EAAE+D,kBAAS,CAACM,IAAI;EAC/BpE,KAAK,EAAE8D,kBAAS,CAACK,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;EACzClE,IAAI,EAAE6D,kBAAS,CAACK,KAAK,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;EACnDtE,OAAO,EAAEiE,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EAChExE,QAAQ,EAAEkE,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EACjExF,QAAQ,EAAEkF,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EACjE9D,gBAAgB,EAAEwD,kBAAS,CAACE,SAAS,CAAC,CACpCF,kBAAS,CAACO,KAAK,CAAC;IACdrB,GAAG,EAAEc,kBAAS,CAACS,MAAM;IACrBC,OAAO,EAAEV,kBAAS,CAACK,KAAK,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC;EACzC,CAAC,CAAC,EACFL,kBAAS,CAACS,MAAM,CACjB,CAAC;EACFjJ,UAAU,EAAEwI,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EACnEzH,mBAAmB,EAAEmH,kBAAS,CAACE,SAAS,CAAC,CACvCF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACS,MAAM,CACjB,CAAC;EACFrE,cAAc,EAAE4D,kBAAS,CAACC,MAAM;EAChC3D,mBAAmB,EAAE0D,kBAAS,CAACE,SAAS,CAAC,CACvCF,kBAAS,CAACC,MAAM,EAChBD,kBAAS,CAACrM,MAAM,CACjB,CAAC;EACF0I,QAAQ,EAAE2D,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACC,MAAM,EAAED,kBAAS,CAACM,IAAI,CAAC,CAAC;EACjE3I,IAAI,EAAEqI,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACS,MAAM,EAAET,kBAAS,CAACC,MAAM,CAAC,CAAC;EAC/DV,IAAI,EAAES,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACS,MAAM,EAAET,kBAAS,CAACC,MAAM,CAAC,CAAC;EAC/DtG,SAAS,EAAEqG,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACG,IAAI,EAAEH,kBAAS,CAACrM,MAAM,CAAC;AAAC,GAE/DgN,+BAAgB;EAEnBpE,SAAS,EAAEyD,kBAAS,CAACC,MAAM;EAC3BvD,gBAAgB,EAAEsD,kBAAS,CAACE,SAAS,CAAC,CACpCF,kBAAS,CAACG,IAAI,EACdH,kBAAS,CAACI,IAAI,CACf,CAAC;EACF3D,QAAQ,EAAEuD,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACI,IAAI,EAAEJ,kBAAS,CAACG,IAAI,CAAC,CAAC;EAE/DX,SAAS,EAAEQ,kBAAS,CAACG,IAAI;EACzBV,QAAQ,EAAEO,kBAAS,CAACG,IAAI;EACxBT,OAAO,EAAEM,kBAAS,CAACG,IAAI;EACvBR,WAAW,EAAEK,kBAAS,CAACG,IAAI;EAC3BzJ,eAAe,EAAEsJ,kBAAS,CAACG;AAAI;AAyenCjK,QAAQ,CAAC0K,YAAY,GAAG,IAAI;AAC5B1K,QAAQ,CAAC2K,qBAAqB,GAAG,IAAI"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleButton.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_keycode","_componentHelper","_AlignmentHelper2","_filterValidProps","_SpacingHelper","_Radio","_Checkbox","_Button","_FormLabel","_FormStatus","_ToggleButtonGroup","_ToggleButtonGroupContext","_Context","_Suffix","_AlignmentHelper","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","ToggleButton","React","PureComponent","getDerivedStateFromProps","props","state","_listenForPropChanges","checked","_checked","parseChecked","__checked","dispatchCustomElementEvent","constructor","context","event","keycode","onClickHandler","_ref","isTrue","readOnly","preventDefault","persist","multiselect","setState","callOnChange","_refButton","current","focus","e","warn","_ref2","onChange","_id","id","makeUniqueId","createRef","name","values","Array","isArray","includes","setContext","tmp","render","createElement","Consumer","contextProps","extendPropsWithContextInClassComponent","defaultProps","translation","pickFormElementProps","FormRow","formElement","status","status_state","status_props","status_no_animation","globalStatus","suffix","label","label_direction","label_sr_only","text","title","className","disabled","skeleton","variant","left_component","icon","icon_size","icon_position","propValue","children","on_change","on_state_update","rest","contextValue","contextValues","showStatus","getStatusState","mainParams","classnames","createSpacingClasses","validateDOMAttributes","buttonParams","componentParams","element","role","type","combineDescribedBy","leftComponent","for_id","sr_only","show","text_id","no_animation","custom_content","ref","onClick","onKeyDown","onKeyDownHandler","onKeyUp","onKeyUpHandler","exports","ToggleButtonGroup","ToggleButtonGroupContext","attributes","test","process","env","NODE_ENV","propTypes","PropTypes","string","oneOfType","func","node","oneOf","bool","shape","message","number","array","spacingPropTypes","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/toggle-button/ToggleButton.js"],"sourcesContent":["/**\n * Web ToggleButton Component\n *\n * This is a legacy component.\n * For refferencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\n\nimport Radio from '../radio/Radio'\nimport Checkbox from '../checkbox/Checkbox'\nimport Button from '../button/Button'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport ToggleButtonGroup from './ToggleButtonGroup'\nimport ToggleButtonGroupContext from './ToggleButtonGroupContext'\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\n\n/**\n * The toggle-button component is our enhancement of the classic toggle-button button.\n */\nexport default class ToggleButton extends React.PureComponent {\n static Group = ToggleButtonGroup\n\n static contextType = ToggleButtonGroupContext\n\n static propTypes = {\n text: PropTypes.string,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n title: PropTypes.string,\n checked: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n variant: PropTypes.oneOf(['default', 'checkbox', 'radio']),\n left_component: PropTypes.node,\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n id: PropTypes.string,\n // group: PropTypes.string,\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.object,\n PropTypes.array,\n ]),\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_position: PropTypes.oneOf(['left', 'right']),\n icon_size: PropTypes.string,\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n readOnly: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n text: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n title: null,\n checked: undefined,\n variant: null,\n left_component: null,\n disabled: null,\n skeleton: null,\n id: null,\n // group: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n value: '',\n icon: null,\n icon_position: 'right',\n icon_size: null,\n attributes: null,\n readOnly: false,\n\n className: null,\n children: null,\n\n on_change: null,\n on_state_update: null,\n }\n\n static parseChecked = (state) => /true|on/.test(String(state))\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n if (props.checked !== state._checked) {\n state.checked = ToggleButton.parseChecked(props.checked)\n }\n }\n state._listenForPropChanges = true\n\n if (state.checked !== state.__checked) {\n dispatchCustomElementEvent({ props }, 'on_state_update', {\n checked: state.checked,\n })\n }\n\n state._checked = props.checked\n state.__checked = state.checked\n\n return state\n }\n\n constructor(props, context) {\n super(props)\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n this._refButton = React.createRef()\n\n this.state = {\n _listenForPropChanges: true,\n }\n\n // set the startup checked values from context, if they exists\n if (context.name && typeof props.value !== 'undefined') {\n if (typeof context.value !== 'undefined') {\n this.state.checked = context.value === props.value\n this.state._listenForPropChanges = false\n } else if (context.values && Array.isArray(context.values)) {\n this.state.checked = context.values.includes(props.value)\n this.state._listenForPropChanges = false\n\n // make sure we update the context\n // with a possible custom set \"checked\" state\n } else if (ToggleButton.parseChecked(props.checked)) {\n if (context.setContext) {\n if (context.multiselect) {\n context.setContext((tmp) => {\n return {\n values:\n // in case we have set before a new context (other component)\n // we fill combine these arrays\n tmp && Array.isArray(tmp.values)\n ? [...tmp.values, props.value]\n : [props.value],\n }\n })\n } else {\n context.setContext({\n value: props.value,\n })\n }\n }\n }\n }\n }\n\n onKeyDownHandler = (event) => {\n switch (keycode(event)) {\n case 'enter':\n this.onClickHandler({ event })\n break\n }\n }\n\n onKeyUpHandler = (event) => {\n switch (keycode(event)) {\n case 'enter':\n this.onClickHandler({ event })\n break\n }\n }\n\n onClickHandler = ({ event }) => {\n if (isTrue(this.props.readOnly)) {\n return event.preventDefault()\n }\n event.persist()\n\n // only select a value once\n if (\n !isTrue(this.context.multiselect) &&\n this.props.value === this.context.value\n ) {\n return\n }\n\n // else we change the checked state\n const checked = !this.state.checked\n this.setState({\n checked,\n _listenForPropChanges: false,\n })\n this.callOnChange({ checked, event })\n\n if (this._refButton.current && checked) {\n // simulate focus for firefox and safari\n // so we can get rid of the hover ring after click\n try {\n this._refButton.current._ref.current.focus()\n } catch (e) {\n warn(e)\n }\n }\n }\n\n callOnChange = ({ checked, event }) => {\n const { value } = this.props\n if (this.context.onChange) {\n this.context.onChange({\n value,\n event,\n })\n }\n dispatchCustomElementEvent(this, 'on_change', {\n checked,\n value,\n event,\n })\n }\n\n render() {\n return (\n <Context.Consumer>\n {(context) => {\n // from internal context\n const contextProps = extendPropsWithContextInClassComponent(\n this.props,\n ToggleButton.defaultProps,\n this.context\n )\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n ToggleButton.defaultProps,\n contextProps,\n context.translation.ToggleButton,\n // Deprecated – can be removed in v11\n pickFormElementProps(context.FormRow),\n pickFormElementProps(context.formElement),\n context.ToggleButton\n )\n\n const {\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n label,\n label_direction,\n label_sr_only,\n text,\n title,\n readOnly,\n className,\n disabled,\n skeleton,\n variant,\n left_component,\n icon,\n icon_size,\n icon_position,\n value: propValue,\n\n id: _id, // eslint-disable-line\n // group: _group, // eslint-disable-line\n checked: _checked, // eslint-disable-line\n children,\n on_change, // eslint-disable-line\n on_state_update, // eslint-disable-line\n\n ...rest\n } = props\n\n let { checked } = this.state\n\n if (\n !isTrue(this.context.multiselect) &&\n typeof this.context.value !== 'undefined'\n ) {\n const contextValue = this.context.value\n if (\n typeof propValue === 'string' ||\n typeof propValue === 'number'\n ) {\n checked = propValue === contextValue\n }\n } else if (\n isTrue(this.context.multiselect) &&\n typeof this.context.values !== 'undefined'\n ) {\n const contextValues = this.context.values\n if (\n typeof propValue === 'string' ||\n typeof propValue === 'number'\n ) {\n checked = contextValues.includes(propValue)\n }\n }\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const mainParams = {\n className: classnames(\n 'dnb-toggle-button',\n status && `dnb-toggle-button__status--${status_state}`,\n checked && `dnb-toggle-button--checked`,\n label_direction && `dnb-toggle-button--${label_direction}`,\n createSpacingClasses(props),\n className\n ),\n }\n\n // to remove spacing props\n validateDOMAttributes(this.props, rest)\n\n const buttonParams = {\n id,\n disabled,\n skeleton,\n text: text || children,\n title,\n icon,\n icon_size,\n icon_position,\n 'aria-pressed': String(checked || false),\n ...rest,\n }\n\n const componentParams = {\n checked,\n disabled,\n element: 'span',\n 'data-checked': String(checked || false),\n 'aria-checked': undefined,\n role: undefined,\n type: undefined,\n name: null,\n title: null,\n }\n\n if (status) {\n // do not send along the message, but only the status states\n if (status_state === 'info') {\n componentParams.status_state = 'info'\n } else {\n componentParams.status = 'error'\n }\n }\n\n if (showStatus || suffix) {\n buttonParams['aria-describedby'] = combineDescribedBy(\n buttonParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (readOnly) {\n buttonParams['aria-readonly'] = buttonParams.readOnly = true\n }\n\n let leftComponent = null\n switch (variant) {\n case 'radio':\n leftComponent = (\n <Radio id={`${id}-radio`} {...componentParams} />\n )\n break\n\n case 'checkbox':\n leftComponent = (\n <Checkbox id={`${id}-checkbox`} {...componentParams} />\n )\n break\n\n case 'default':\n default:\n leftComponent = left_component\n break\n }\n\n return (\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n disabled={disabled}\n skeleton={skeleton}\n label_direction={label_direction}\n sr_only={label_sr_only}\n />\n )}\n <span className=\"dnb-toggle-button__inner\">\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-toggle-button__shell\">\n <AlignmentHelper />\n\n <Button\n variant=\"secondary\"\n className=\"dnb-toggle-button__button\"\n custom_content={\n leftComponent && (\n <span className=\"dnb-toggle-button__component\">\n {leftComponent}\n </span>\n )\n }\n {...buttonParams}\n ref={this._refButton}\n onClick={this.onClickHandler}\n onKeyDown={this.onKeyDownHandler}\n onKeyUp={this.onKeyUpHandler}\n />\n\n {suffix && (\n <Suffix\n className=\"dnb-toggle-button__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }}\n </Context.Consumer>\n )\n }\n}\n\nToggleButton._formElement = true\nToggleButton._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"ToggleButton.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_keycode","_componentHelper","_AlignmentHelper2","_filterValidProps","_SpacingHelper","_Radio","_Checkbox","_Button","_FormLabel","_FormStatus","_ToggleButtonGroup","_ToggleButtonGroupContext","_Context","_Suffix","_AlignmentHelper","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","ToggleButton","React","PureComponent","getDerivedStateFromProps","props","state","_listenForPropChanges","checked","_checked","parseChecked","__checked","dispatchCustomElementEvent","constructor","context","event","keycode","onClickHandler","_ref","isTrue","readOnly","preventDefault","persist","multiselect","setState","callOnChange","_refButton","current","focus","e","warn","_ref2","onChange","_id","id","makeUniqueId","createRef","name","values","Array","isArray","includes","setContext","tmp","render","createElement","Consumer","contextProps","extendPropsWithContextInClassComponent","defaultProps","translation","pickFormElementProps","FormRow","formElement","status","status_state","status_props","status_no_animation","globalStatus","suffix","label","label_direction","label_sr_only","text","title","className","disabled","skeleton","variant","left_component","icon","icon_size","icon_position","propValue","children","on_change","on_state_update","rest","contextValue","contextValues","showStatus","getStatusState","mainParams","classnames","createSpacingClasses","validateDOMAttributes","buttonParams","componentParams","element","role","type","combineDescribedBy","leftComponent","for_id","sr_only","show","text_id","no_animation","custom_content","ref","onClick","onKeyDown","onKeyDownHandler","onKeyUp","onKeyUpHandler","exports","ToggleButtonGroup","ToggleButtonGroupContext","attributes","test","process","env","NODE_ENV","propTypes","PropTypes","string","oneOfType","func","node","oneOf","bool","shape","message","number","array","spacingPropTypes","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/toggle-button/ToggleButton.js"],"sourcesContent":["/**\n * Web ToggleButton Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\n\nimport Radio from '../radio/Radio'\nimport Checkbox from '../checkbox/Checkbox'\nimport Button from '../button/Button'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport ToggleButtonGroup from './ToggleButtonGroup'\nimport ToggleButtonGroupContext from './ToggleButtonGroupContext'\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\n\n/**\n * The toggle-button component is our enhancement of the classic toggle-button button.\n */\nexport default class ToggleButton extends React.PureComponent {\n static Group = ToggleButtonGroup\n\n static contextType = ToggleButtonGroupContext\n\n static propTypes = {\n text: PropTypes.string,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n title: PropTypes.string,\n checked: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n variant: PropTypes.oneOf(['default', 'checkbox', 'radio']),\n left_component: PropTypes.node,\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n id: PropTypes.string,\n // group: PropTypes.string,\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.object,\n PropTypes.array,\n ]),\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_position: PropTypes.oneOf(['left', 'right']),\n icon_size: PropTypes.string,\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n readOnly: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n text: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n title: null,\n checked: undefined,\n variant: null,\n left_component: null,\n disabled: null,\n skeleton: null,\n id: null,\n // group: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n value: '',\n icon: null,\n icon_position: 'right',\n icon_size: null,\n attributes: null,\n readOnly: false,\n\n className: null,\n children: null,\n\n on_change: null,\n on_state_update: null,\n }\n\n static parseChecked = (state) => /true|on/.test(String(state))\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n if (props.checked !== state._checked) {\n state.checked = ToggleButton.parseChecked(props.checked)\n }\n }\n state._listenForPropChanges = true\n\n if (state.checked !== state.__checked) {\n dispatchCustomElementEvent({ props }, 'on_state_update', {\n checked: state.checked,\n })\n }\n\n state._checked = props.checked\n state.__checked = state.checked\n\n return state\n }\n\n constructor(props, context) {\n super(props)\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n this._refButton = React.createRef()\n\n this.state = {\n _listenForPropChanges: true,\n }\n\n // set the startup checked values from context, if they exists\n if (context.name && typeof props.value !== 'undefined') {\n if (typeof context.value !== 'undefined') {\n this.state.checked = context.value === props.value\n this.state._listenForPropChanges = false\n } else if (context.values && Array.isArray(context.values)) {\n this.state.checked = context.values.includes(props.value)\n this.state._listenForPropChanges = false\n\n // make sure we update the context\n // with a possible custom set \"checked\" state\n } else if (ToggleButton.parseChecked(props.checked)) {\n if (context.setContext) {\n if (context.multiselect) {\n context.setContext((tmp) => {\n return {\n values:\n // in case we have set before a new context (other component)\n // we fill combine these arrays\n tmp && Array.isArray(tmp.values)\n ? [...tmp.values, props.value]\n : [props.value],\n }\n })\n } else {\n context.setContext({\n value: props.value,\n })\n }\n }\n }\n }\n }\n\n onKeyDownHandler = (event) => {\n switch (keycode(event)) {\n case 'enter':\n this.onClickHandler({ event })\n break\n }\n }\n\n onKeyUpHandler = (event) => {\n switch (keycode(event)) {\n case 'enter':\n this.onClickHandler({ event })\n break\n }\n }\n\n onClickHandler = ({ event }) => {\n if (isTrue(this.props.readOnly)) {\n return event.preventDefault()\n }\n event.persist()\n\n // only select a value once\n if (\n !isTrue(this.context.multiselect) &&\n this.props.value === this.context.value\n ) {\n return\n }\n\n // else we change the checked state\n const checked = !this.state.checked\n this.setState({\n checked,\n _listenForPropChanges: false,\n })\n this.callOnChange({ checked, event })\n\n if (this._refButton.current && checked) {\n // simulate focus for firefox and safari\n // so we can get rid of the hover ring after click\n try {\n this._refButton.current._ref.current.focus()\n } catch (e) {\n warn(e)\n }\n }\n }\n\n callOnChange = ({ checked, event }) => {\n const { value } = this.props\n if (this.context.onChange) {\n this.context.onChange({\n value,\n event,\n })\n }\n dispatchCustomElementEvent(this, 'on_change', {\n checked,\n value,\n event,\n })\n }\n\n render() {\n return (\n <Context.Consumer>\n {(context) => {\n // from internal context\n const contextProps = extendPropsWithContextInClassComponent(\n this.props,\n ToggleButton.defaultProps,\n this.context\n )\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n ToggleButton.defaultProps,\n contextProps,\n context.translation.ToggleButton,\n // Deprecated – can be removed in v11\n pickFormElementProps(context.FormRow),\n pickFormElementProps(context.formElement),\n context.ToggleButton\n )\n\n const {\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n label,\n label_direction,\n label_sr_only,\n text,\n title,\n readOnly,\n className,\n disabled,\n skeleton,\n variant,\n left_component,\n icon,\n icon_size,\n icon_position,\n value: propValue,\n\n id: _id, // eslint-disable-line\n // group: _group, // eslint-disable-line\n checked: _checked, // eslint-disable-line\n children,\n on_change, // eslint-disable-line\n on_state_update, // eslint-disable-line\n\n ...rest\n } = props\n\n let { checked } = this.state\n\n if (\n !isTrue(this.context.multiselect) &&\n typeof this.context.value !== 'undefined'\n ) {\n const contextValue = this.context.value\n if (\n typeof propValue === 'string' ||\n typeof propValue === 'number'\n ) {\n checked = propValue === contextValue\n }\n } else if (\n isTrue(this.context.multiselect) &&\n typeof this.context.values !== 'undefined'\n ) {\n const contextValues = this.context.values\n if (\n typeof propValue === 'string' ||\n typeof propValue === 'number'\n ) {\n checked = contextValues.includes(propValue)\n }\n }\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const mainParams = {\n className: classnames(\n 'dnb-toggle-button',\n status && `dnb-toggle-button__status--${status_state}`,\n checked && `dnb-toggle-button--checked`,\n label_direction && `dnb-toggle-button--${label_direction}`,\n createSpacingClasses(props),\n className\n ),\n }\n\n // to remove spacing props\n validateDOMAttributes(this.props, rest)\n\n const buttonParams = {\n id,\n disabled,\n skeleton,\n text: text || children,\n title,\n icon,\n icon_size,\n icon_position,\n 'aria-pressed': String(checked || false),\n ...rest,\n }\n\n const componentParams = {\n checked,\n disabled,\n element: 'span',\n 'data-checked': String(checked || false),\n 'aria-checked': undefined,\n role: undefined,\n type: undefined,\n name: null,\n title: null,\n }\n\n if (status) {\n // do not send along the message, but only the status states\n if (status_state === 'info') {\n componentParams.status_state = 'info'\n } else {\n componentParams.status = 'error'\n }\n }\n\n if (showStatus || suffix) {\n buttonParams['aria-describedby'] = combineDescribedBy(\n buttonParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (readOnly) {\n buttonParams['aria-readonly'] = buttonParams.readOnly = true\n }\n\n let leftComponent = null\n switch (variant) {\n case 'radio':\n leftComponent = (\n <Radio id={`${id}-radio`} {...componentParams} />\n )\n break\n\n case 'checkbox':\n leftComponent = (\n <Checkbox id={`${id}-checkbox`} {...componentParams} />\n )\n break\n\n case 'default':\n default:\n leftComponent = left_component\n break\n }\n\n return (\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n disabled={disabled}\n skeleton={skeleton}\n label_direction={label_direction}\n sr_only={label_sr_only}\n />\n )}\n <span className=\"dnb-toggle-button__inner\">\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-toggle-button__shell\">\n <AlignmentHelper />\n\n <Button\n variant=\"secondary\"\n className=\"dnb-toggle-button__button\"\n custom_content={\n leftComponent && (\n <span className=\"dnb-toggle-button__component\">\n {leftComponent}\n </span>\n )\n }\n {...buttonParams}\n ref={this._refButton}\n onClick={this.onClickHandler}\n onKeyDown={this.onKeyDownHandler}\n onKeyUp={this.onKeyUpHandler}\n />\n\n {suffix && (\n <Suffix\n className=\"dnb-toggle-button__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }}\n </Context.Consumer>\n )\n }\n}\n\nToggleButton._formElement = true\nToggleButton._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleButtonGroup.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_componentHelper","_SpacingHelper","_AlignmentHelper2","_FormLabel","_FormStatus","_Flex","_Context","_Suffix","_ToggleButtonGroupContext","_filterValidProps","_AlignmentHelper","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","ToggleButtonGroup","React","PureComponent","getDerivedStateFromProps","props","state","_listenForPropChanges","values","getValues","JSON","parse","constructor","_ref","event","multiselect","isTrue","includes","splice","setState","dispatchCustomElementEvent","_refInput","createRef","_id","id","makeUniqueId","_name","name","render","_this$context","_this$context2","extendPropsWithContextInClassComponent","defaultProps","context","getTranslation","ToggleButton","pickFormElementProps","FormRow","formElement","status","status_state","status_props","status_no_animation","globalStatus","suffix","label_direction","label_sr_only","vertical","layout_direction","label","variant","left_component","disabled","skeleton","className","_value","_values","children","on_change","rest","showStatus","getStatusState","classes","classnames","createSpacingClasses","params","combineDescribedBy","combineLabelledBy","validateDOMAttributes","setContext","_tmp","onChange","onChangeHandler","Fieldset","createElement","Provider","Container","align","direction","spacing","element","srOnly","role","show","text_id","text","no_animation","exports","Context","title","attributes","process","env","NODE_ENV","propTypes","PropTypes","oneOfType","string","func","node","oneOf","bool","shape","message","number","array","spacingPropTypes","_supportsSpacingProps"],"sources":["../../../../src/components/toggle-button/ToggleButtonGroup.js"],"sourcesContent":["/**\n * Web ToggleButtonGroup Component\n *\n * This is a legacy component.\n * For refferencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n combineLabelledBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport FormLabel from '../FormLabel'\nimport FormStatus from '../FormStatus'\nimport Flex from '../Flex'\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\nimport ToggleButtonGroupContext from './ToggleButtonGroupContext'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nexport default class ToggleButtonGroup extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n title: PropTypes.string,\n multiselect: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n variant: PropTypes.oneOf(['default', 'checkbox', 'radio']),\n left_component: PropTypes.node,\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n id: PropTypes.string,\n name: PropTypes.string,\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n vertical: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n layout_direction: PropTypes.oneOf(['column', 'row']),\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.object,\n PropTypes.array,\n ]),\n values: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n\n on_change: PropTypes.func,\n }\n\n static defaultProps = {\n label: null,\n label_direction: null,\n label_sr_only: null,\n title: null,\n multiselect: null,\n variant: null,\n left_component: null,\n disabled: null,\n skeleton: null,\n id: null,\n name: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n vertical: null,\n layout_direction: 'row',\n value: undefined,\n values: undefined,\n attributes: null,\n\n className: null,\n children: null,\n\n on_change: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n if (\n typeof props.value !== 'undefined' &&\n props.value !== state.value\n ) {\n state.value = props.value\n }\n if (\n typeof props.values !== 'undefined' &&\n props.values !== state.values\n ) {\n state.values = ToggleButtonGroup.getValues(props)\n }\n }\n state._listenForPropChanges = true\n\n return state\n }\n\n static getValues(props) {\n if (typeof props.values === 'string' && props.values[0] === '[') {\n return JSON.parse(props.values)\n }\n return props.values\n }\n\n constructor(props) {\n super(props)\n this._refInput = React.createRef()\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n this._name = props.name || makeUniqueId() // cause we need an id anyway\n this.state = {\n // do not set the value here, else get true in this check } else if (context.values && Array.isArray(context.values)) {\n _listenForPropChanges: true,\n }\n }\n\n onChangeHandler = ({ value, event }) => {\n const { multiselect } = this.props\n const values = this.state.values || []\n\n if (isTrue(multiselect)) {\n if (!values.includes(value)) {\n values.push(value)\n } else {\n values.splice(values.indexOf(value), 1)\n }\n }\n\n this.setState({\n value,\n values,\n _listenForPropChanges: false,\n })\n\n dispatchCustomElementEvent(this, 'on_change', {\n value,\n values,\n event,\n })\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n ToggleButtonGroup.defaultProps,\n this.context.getTranslation(this.props).ToggleButton,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.ToggleButtonGroup\n )\n\n const {\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n label_direction,\n label_sr_only,\n vertical,\n layout_direction,\n label,\n variant,\n left_component,\n disabled,\n skeleton,\n className,\n\n multiselect,\n id: _id, // eslint-disable-line\n name: _name, // eslint-disable-line\n value: _value, // eslint-disable-line\n values: _values, // eslint-disable-line\n children, // eslint-disable-line\n on_change, // eslint-disable-line\n\n ...rest\n } = props\n\n const { value, values } = this.state\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const classes = classnames(\n 'dnb-toggle-button-group',\n status && `dnb-toggle-button-group__status--${status_state}`,\n !label && 'dnb-toggle-button-group--no-label',\n `dnb-toggle-button-group--${layout_direction}`,\n 'dnb-form-component',\n createSpacingClasses(props),\n className\n )\n\n const params = {\n ...rest,\n }\n\n if (showStatus || suffix) {\n params['aria-describedby'] = combineDescribedBy(\n params,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (label) {\n params['aria-labelledby'] = combineLabelledBy(params, id + '-label')\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n const context = {\n name: this._name,\n value,\n values,\n multiselect: isTrue(multiselect),\n variant,\n left_component,\n disabled,\n skeleton,\n setContext: (context) => {\n // also look for a function, where we are able to fill old values\n // this is used in the \"constructor\" inside the ToggleButton.js component\n if (typeof context === 'function') {\n context = context(this._tmp)\n }\n this._tmp = { ...this._tmp, ...context }\n this.setState({\n ...context,\n _listenForPropChanges: false,\n })\n },\n onChange: this.onChangeHandler,\n }\n\n const Fieldset = label ? 'fieldset' : 'div'\n\n return (\n <ToggleButtonGroupContext.Provider value={context}>\n <div className={classes}>\n <AlignmentHelper />\n <Fieldset>\n <Flex.Container\n align=\"baseline\"\n direction={\n vertical || label_direction === 'vertical'\n ? 'vertical'\n : 'horizontal'\n }\n spacing={vertical ? 'x-small' : 'small'}\n >\n {label && (\n <FormLabel\n element=\"legend\"\n id={id + '-label'}\n srOnly={label_sr_only}\n >\n {label}\n </FormLabel>\n )}\n\n <span\n id={id}\n className=\"dnb-toggle-button-group__shell\"\n role=\"group\"\n {...params}\n >\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-toggle-button-group__children\">\n {children}\n\n {suffix && (\n <Suffix\n className=\"dnb-toggle-button-group__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </Flex.Container>\n </Fieldset>\n </div>\n </ToggleButtonGroupContext.Provider>\n )\n }\n}\n\nToggleButtonGroup._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"ToggleButtonGroup.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_componentHelper","_SpacingHelper","_AlignmentHelper2","_FormLabel","_FormStatus","_Flex","_Context","_Suffix","_ToggleButtonGroupContext","_filterValidProps","_AlignmentHelper","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","ToggleButtonGroup","React","PureComponent","getDerivedStateFromProps","props","state","_listenForPropChanges","values","getValues","JSON","parse","constructor","_ref","event","multiselect","isTrue","includes","splice","setState","dispatchCustomElementEvent","_refInput","createRef","_id","id","makeUniqueId","_name","name","render","_this$context","_this$context2","extendPropsWithContextInClassComponent","defaultProps","context","getTranslation","ToggleButton","pickFormElementProps","FormRow","formElement","status","status_state","status_props","status_no_animation","globalStatus","suffix","label_direction","label_sr_only","vertical","layout_direction","label","variant","left_component","disabled","skeleton","className","_value","_values","children","on_change","rest","showStatus","getStatusState","classes","classnames","createSpacingClasses","params","combineDescribedBy","combineLabelledBy","validateDOMAttributes","setContext","_tmp","onChange","onChangeHandler","Fieldset","createElement","Provider","Container","align","direction","spacing","element","srOnly","role","show","text_id","text","no_animation","exports","Context","title","attributes","process","env","NODE_ENV","propTypes","PropTypes","oneOfType","string","func","node","oneOf","bool","shape","message","number","array","spacingPropTypes","_supportsSpacingProps"],"sources":["../../../../src/components/toggle-button/ToggleButtonGroup.js"],"sourcesContent":["/**\n * Web ToggleButtonGroup Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n combineLabelledBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport FormLabel from '../FormLabel'\nimport FormStatus from '../FormStatus'\nimport Flex from '../Flex'\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\nimport ToggleButtonGroupContext from './ToggleButtonGroupContext'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nexport default class ToggleButtonGroup extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n title: PropTypes.string,\n multiselect: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n variant: PropTypes.oneOf(['default', 'checkbox', 'radio']),\n left_component: PropTypes.node,\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n id: PropTypes.string,\n name: PropTypes.string,\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n vertical: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n layout_direction: PropTypes.oneOf(['column', 'row']),\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.object,\n PropTypes.array,\n ]),\n values: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n\n on_change: PropTypes.func,\n }\n\n static defaultProps = {\n label: null,\n label_direction: null,\n label_sr_only: null,\n title: null,\n multiselect: null,\n variant: null,\n left_component: null,\n disabled: null,\n skeleton: null,\n id: null,\n name: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n vertical: null,\n layout_direction: 'row',\n value: undefined,\n values: undefined,\n attributes: null,\n\n className: null,\n children: null,\n\n on_change: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n if (\n typeof props.value !== 'undefined' &&\n props.value !== state.value\n ) {\n state.value = props.value\n }\n if (\n typeof props.values !== 'undefined' &&\n props.values !== state.values\n ) {\n state.values = ToggleButtonGroup.getValues(props)\n }\n }\n state._listenForPropChanges = true\n\n return state\n }\n\n static getValues(props) {\n if (typeof props.values === 'string' && props.values[0] === '[') {\n return JSON.parse(props.values)\n }\n return props.values\n }\n\n constructor(props) {\n super(props)\n this._refInput = React.createRef()\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n this._name = props.name || makeUniqueId() // cause we need an id anyway\n this.state = {\n // do not set the value here, else get true in this check } else if (context.values && Array.isArray(context.values)) {\n _listenForPropChanges: true,\n }\n }\n\n onChangeHandler = ({ value, event }) => {\n const { multiselect } = this.props\n const values = this.state.values || []\n\n if (isTrue(multiselect)) {\n if (!values.includes(value)) {\n values.push(value)\n } else {\n values.splice(values.indexOf(value), 1)\n }\n }\n\n this.setState({\n value,\n values,\n _listenForPropChanges: false,\n })\n\n dispatchCustomElementEvent(this, 'on_change', {\n value,\n values,\n event,\n })\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n ToggleButtonGroup.defaultProps,\n this.context.getTranslation(this.props).ToggleButton,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.ToggleButtonGroup\n )\n\n const {\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n label_direction,\n label_sr_only,\n vertical,\n layout_direction,\n label,\n variant,\n left_component,\n disabled,\n skeleton,\n className,\n\n multiselect,\n id: _id, // eslint-disable-line\n name: _name, // eslint-disable-line\n value: _value, // eslint-disable-line\n values: _values, // eslint-disable-line\n children, // eslint-disable-line\n on_change, // eslint-disable-line\n\n ...rest\n } = props\n\n const { value, values } = this.state\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const classes = classnames(\n 'dnb-toggle-button-group',\n status && `dnb-toggle-button-group__status--${status_state}`,\n !label && 'dnb-toggle-button-group--no-label',\n `dnb-toggle-button-group--${layout_direction}`,\n 'dnb-form-component',\n createSpacingClasses(props),\n className\n )\n\n const params = {\n ...rest,\n }\n\n if (showStatus || suffix) {\n params['aria-describedby'] = combineDescribedBy(\n params,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (label) {\n params['aria-labelledby'] = combineLabelledBy(params, id + '-label')\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n const context = {\n name: this._name,\n value,\n values,\n multiselect: isTrue(multiselect),\n variant,\n left_component,\n disabled,\n skeleton,\n setContext: (context) => {\n // also look for a function, where we are able to fill old values\n // this is used in the \"constructor\" inside the ToggleButton.js component\n if (typeof context === 'function') {\n context = context(this._tmp)\n }\n this._tmp = { ...this._tmp, ...context }\n this.setState({\n ...context,\n _listenForPropChanges: false,\n })\n },\n onChange: this.onChangeHandler,\n }\n\n const Fieldset = label ? 'fieldset' : 'div'\n\n return (\n <ToggleButtonGroupContext.Provider value={context}>\n <div className={classes}>\n <AlignmentHelper />\n <Fieldset>\n <Flex.Container\n align=\"baseline\"\n direction={\n vertical || label_direction === 'vertical'\n ? 'vertical'\n : 'horizontal'\n }\n spacing={vertical ? 'x-small' : 'small'}\n >\n {label && (\n <FormLabel\n element=\"legend\"\n id={id + '-label'}\n srOnly={label_sr_only}\n >\n {label}\n </FormLabel>\n )}\n\n <span\n id={id}\n className=\"dnb-toggle-button-group__shell\"\n role=\"group\"\n {...params}\n >\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-toggle-button-group__children\">\n {children}\n\n {suffix && (\n <Suffix\n className=\"dnb-toggle-button-group__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </Flex.Container>\n </Fieldset>\n </div>\n </ToggleButtonGroupContext.Provider>\n )\n }\n}\n\nToggleButtonGroup._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -63,11 +63,13 @@ export interface ContextState {
63
63
  skipErrorCheck?: boolean;
64
64
  }) => void;
65
65
  setFieldEventListener: (path: EventListenerCall['path'], type: EventListenerCall['type'], callback: EventListenerCall['callback']) => void;
66
+ setHasVisibleError?: (path: Path, hasError: boolean) => void;
66
67
  setFieldProps?: (path: Path, props: any) => void;
67
68
  setValueProps?: (path: Path, props: any) => void;
68
69
  fieldPropsRef?: React.MutableRefObject<Record<string, FieldProps>>;
69
70
  valuePropsRef?: React.MutableRefObject<Record<string, ValueProps>>;
70
71
  showAllErrors: boolean;
72
+ hasVisibleError: boolean;
71
73
  formState: SubmitState;
72
74
  ajvInstance: Ajv;
73
75
  contextErrorMessages: CustomErrorMessagesWithPaths;
@@ -20,6 +20,7 @@ const defaultContextState = {
20
20
  handleSubmit: () => null,
21
21
  scrollToTop: () => null,
22
22
  showAllErrors: false,
23
+ hasVisibleError: false,
23
24
  formState: undefined,
24
25
  setFormState: () => null,
25
26
  setSubmitState: () => null,
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","names":["_react","_interopRequireDefault","require","_ajv","obj","__esModule","default","defaultContextState","hasContext","data","undefined","schema","submitState","handlePathChange","handlePathChangeUnvalidated","updateDataValue","setData","validateData","handleSubmit","scrollToTop","showAllErrors","formState","setFormState","setSubmitState","setFieldEventListener","handleSubmitCall","setShowAllErrors","handleMountField","handleUnMountField","hasErrors","hasFieldState","hasFieldError","setFieldState","setFieldError","ajvInstance","makeAjvInstance","contextErrorMessages","isInsideFormElement","props","exports","Context","React","createContext","_default"],"sources":["../../../../../src/extensions/forms/DataContext/Context.ts"],"sourcesContent":["import React from 'react'\nimport { Ajv, makeAjvInstance } from '../utils/ajv'\nimport {\n AllJSONSchemaVersions,\n CustomErrorMessagesWithPaths,\n SubmitState,\n Path,\n EventStateObject,\n EventReturnWithStateObject,\n Identifier,\n FieldProps,\n FormError,\n ValueProps,\n} from '../types'\nimport { Props as ProviderProps } from './Provider'\n\ntype HandleSubmitProps = {\n formElement?: HTMLFormElement\n}\n\nexport type EventListenerCall = {\n path: Path\n type: 'onSubmit'\n callback: () => any\n}\n\nexport type FilterDataHandler<Data> = (\n data: Data,\n filter: FilterData\n) => Partial<Data>\nexport type FilterDataHandlerCallback<R> = (\n parameters: FilterDataHandlerParameters\n) => R\nexport type FilterDataHandlerParameters =\n FilterDataPathConditionParameters & {\n path: Path\n }\nexport type FilterDataPathCondition<Data = unknown> = (\n parameters: FilterDataPathConditionParameters<Data>\n) => boolean | undefined\nexport type FilterDataPathConditionParameters<Data = unknown> = {\n value: unknown\n props: FieldProps\n data: Data\n internal: {\n error: Error | undefined\n }\n}\nexport type FilterDataPathObject<Data> = Record<\n Path,\n FilterDataPathCondition<Data> | boolean | undefined\n>\nexport type FilterData<Data = unknown> =\n | FilterDataPathObject<Data>\n | FilterDataHandlerCallback<boolean | undefined>\nexport type TransformData = FilterDataHandlerCallback<unknown>\n\nexport interface ContextState {\n id?: Identifier\n hasContext: boolean\n /** The dataset for the form / form wizard */\n data: any\n /** Should the form validate data before submitting? */\n errors?: Record<string, Error>\n /** Will set autoComplete=\"on\" on each nested Field.String and Field.Number */\n autoComplete?: boolean\n handlePathChange: (\n path: Path,\n value?: any\n ) =>\n | EventReturnWithStateObject\n | unknown\n | Promise<EventReturnWithStateObject | unknown>\n handlePathChangeUnvalidated: (path: Path, value: any) => void\n updateDataValue: (path: Path, value: any) => void\n setData: (data: any) => void\n mutateDataHandler?: (data: any, mutate: TransformData) => any\n filterDataHandler?: (data: any, filter: FilterData) => any\n validateData: () => void\n handleSubmit: (props?: HandleSubmitProps) => any\n scrollToTop: () => void\n setShowAllErrors: (showAllErrors: boolean) => void\n hasErrors: () => boolean\n hasFieldState: (state: SubmitState) => boolean\n hasFieldError: (path: Path) => boolean\n setFieldState: (path: Path, fieldState: SubmitState) => void\n setFieldError: (path: Path, error: Error | FormError) => void\n handleMountField: (path: Path) => void\n handleUnMountField: (path: Path) => void\n setFormState?: (state: SubmitState) => void\n setSubmitState?: (state: EventStateObject) => void\n addOnChangeHandler?: (callback: (data: unknown) => void) => void\n handleSubmitCall: ({\n onSubmit,\n enableAsyncBehaviour,\n skipFieldValidation,\n skipErrorCheck,\n }: {\n onSubmit: () =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n enableAsyncBehaviour: boolean\n skipFieldValidation?: boolean\n skipErrorCheck?: boolean\n }) => void\n setFieldEventListener: (\n path: EventListenerCall['path'],\n type: EventListenerCall['type'],\n callback: EventListenerCall['callback']\n ) => void\n setFieldProps?: (path: Path, props: any) => void\n setValueProps?: (path: Path, props: any) => void\n fieldPropsRef?: React.MutableRefObject<Record<string, FieldProps>>\n valuePropsRef?: React.MutableRefObject<Record<string, ValueProps>>\n showAllErrors: boolean\n formState: SubmitState\n ajvInstance: Ajv\n contextErrorMessages: CustomErrorMessagesWithPaths\n schema: AllJSONSchemaVersions\n disabled?: boolean\n required?: boolean\n submitState: Partial<EventStateObject>\n isInsideFormElement?: boolean\n prerenderFieldProps?: boolean\n props: ProviderProps<unknown>\n}\n\nexport const defaultContextState: ContextState = {\n hasContext: false,\n data: undefined,\n schema: undefined,\n submitState: undefined,\n handlePathChange: () => null,\n handlePathChangeUnvalidated: () => null,\n updateDataValue: () => null,\n setData: () => null,\n validateData: () => null,\n handleSubmit: () => null,\n scrollToTop: () => null,\n showAllErrors: false,\n formState: undefined,\n setFormState: () => null,\n setSubmitState: () => null,\n setFieldEventListener: () => null,\n handleSubmitCall: () => null,\n setShowAllErrors: () => null,\n handleMountField: () => null,\n handleUnMountField: () => null,\n hasErrors: () => false,\n hasFieldState: () => false,\n hasFieldError: () => false,\n setFieldState: () => null,\n setFieldError: () => null,\n ajvInstance: makeAjvInstance(),\n contextErrorMessages: undefined,\n isInsideFormElement: false,\n props: null,\n}\n\nconst Context = React.createContext<ContextState>(defaultContextState)\n\nexport default Context\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAAmD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AA+H5C,MAAMG,mBAAiC,GAAG;EAC/CC,UAAU,EAAE,KAAK;EACjBC,IAAI,EAAEC,SAAS;EACfC,MAAM,EAAED,SAAS;EACjBE,WAAW,EAAEF,SAAS;EACtBG,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,2BAA2B,EAAEA,CAAA,KAAM,IAAI;EACvCC,eAAe,EAAEA,CAAA,KAAM,IAAI;EAC3BC,OAAO,EAAEA,CAAA,KAAM,IAAI;EACnBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,WAAW,EAAEA,CAAA,KAAM,IAAI;EACvBC,aAAa,EAAE,KAAK;EACpBC,SAAS,EAAEX,SAAS;EACpBY,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,cAAc,EAAEA,CAAA,KAAM,IAAI;EAC1BC,qBAAqB,EAAEA,CAAA,KAAM,IAAI;EACjCC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,kBAAkB,EAAEA,CAAA,KAAM,IAAI;EAC9BC,SAAS,EAAEA,CAAA,KAAM,KAAK;EACtBC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,WAAW,EAAE,IAAAC,oBAAe,EAAC,CAAC;EAC9BC,oBAAoB,EAAE1B,SAAS;EAC/B2B,mBAAmB,EAAE,KAAK;EAC1BC,KAAK,EAAE;AACT,CAAC;AAAAC,OAAA,CAAAhC,mBAAA,GAAAA,mBAAA;AAED,MAAMiC,OAAO,GAAGC,cAAK,CAACC,aAAa,CAAenC,mBAAmB,CAAC;AAAA,IAAAoC,QAAA,GAEvDH,OAAO;AAAAD,OAAA,CAAAjC,OAAA,GAAAqC,QAAA"}
1
+ {"version":3,"file":"Context.js","names":["_react","_interopRequireDefault","require","_ajv","obj","__esModule","default","defaultContextState","hasContext","data","undefined","schema","submitState","handlePathChange","handlePathChangeUnvalidated","updateDataValue","setData","validateData","handleSubmit","scrollToTop","showAllErrors","hasVisibleError","formState","setFormState","setSubmitState","setFieldEventListener","handleSubmitCall","setShowAllErrors","handleMountField","handleUnMountField","hasErrors","hasFieldState","hasFieldError","setFieldState","setFieldError","ajvInstance","makeAjvInstance","contextErrorMessages","isInsideFormElement","props","exports","Context","React","createContext","_default"],"sources":["../../../../../src/extensions/forms/DataContext/Context.ts"],"sourcesContent":["import React from 'react'\nimport { Ajv, makeAjvInstance } from '../utils/ajv'\nimport {\n AllJSONSchemaVersions,\n CustomErrorMessagesWithPaths,\n SubmitState,\n Path,\n EventStateObject,\n EventReturnWithStateObject,\n Identifier,\n FieldProps,\n FormError,\n ValueProps,\n} from '../types'\nimport { Props as ProviderProps } from './Provider'\n\ntype HandleSubmitProps = {\n formElement?: HTMLFormElement\n}\n\nexport type EventListenerCall = {\n path: Path\n type: 'onSubmit'\n callback: () => any\n}\n\nexport type FilterDataHandler<Data> = (\n data: Data,\n filter: FilterData\n) => Partial<Data>\nexport type FilterDataHandlerCallback<R> = (\n parameters: FilterDataHandlerParameters\n) => R\nexport type FilterDataHandlerParameters =\n FilterDataPathConditionParameters & {\n path: Path\n }\nexport type FilterDataPathCondition<Data = unknown> = (\n parameters: FilterDataPathConditionParameters<Data>\n) => boolean | undefined\nexport type FilterDataPathConditionParameters<Data = unknown> = {\n value: unknown\n props: FieldProps\n data: Data\n internal: {\n error: Error | undefined\n }\n}\nexport type FilterDataPathObject<Data> = Record<\n Path,\n FilterDataPathCondition<Data> | boolean | undefined\n>\nexport type FilterData<Data = unknown> =\n | FilterDataPathObject<Data>\n | FilterDataHandlerCallback<boolean | undefined>\nexport type TransformData = FilterDataHandlerCallback<unknown>\n\nexport interface ContextState {\n id?: Identifier\n hasContext: boolean\n /** The dataset for the form / form wizard */\n data: any\n /** Should the form validate data before submitting? */\n errors?: Record<string, Error>\n /** Will set autoComplete=\"on\" on each nested Field.String and Field.Number */\n autoComplete?: boolean\n handlePathChange: (\n path: Path,\n value?: any\n ) =>\n | EventReturnWithStateObject\n | unknown\n | Promise<EventReturnWithStateObject | unknown>\n handlePathChangeUnvalidated: (path: Path, value: any) => void\n updateDataValue: (path: Path, value: any) => void\n setData: (data: any) => void\n mutateDataHandler?: (data: any, mutate: TransformData) => any\n filterDataHandler?: (data: any, filter: FilterData) => any\n validateData: () => void\n handleSubmit: (props?: HandleSubmitProps) => any\n scrollToTop: () => void\n setShowAllErrors: (showAllErrors: boolean) => void\n hasErrors: () => boolean\n hasFieldState: (state: SubmitState) => boolean\n hasFieldError: (path: Path) => boolean\n setFieldState: (path: Path, fieldState: SubmitState) => void\n setFieldError: (path: Path, error: Error | FormError) => void\n handleMountField: (path: Path) => void\n handleUnMountField: (path: Path) => void\n setFormState?: (state: SubmitState) => void\n setSubmitState?: (state: EventStateObject) => void\n addOnChangeHandler?: (callback: (data: unknown) => void) => void\n handleSubmitCall: ({\n onSubmit,\n enableAsyncBehaviour,\n skipFieldValidation,\n skipErrorCheck,\n }: {\n onSubmit: () =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n enableAsyncBehaviour: boolean\n skipFieldValidation?: boolean\n skipErrorCheck?: boolean\n }) => void\n setFieldEventListener: (\n path: EventListenerCall['path'],\n type: EventListenerCall['type'],\n callback: EventListenerCall['callback']\n ) => void\n setHasVisibleError?: (path: Path, hasError: boolean) => void\n setFieldProps?: (path: Path, props: any) => void\n setValueProps?: (path: Path, props: any) => void\n fieldPropsRef?: React.MutableRefObject<Record<string, FieldProps>>\n valuePropsRef?: React.MutableRefObject<Record<string, ValueProps>>\n showAllErrors: boolean\n hasVisibleError: boolean\n formState: SubmitState\n ajvInstance: Ajv\n contextErrorMessages: CustomErrorMessagesWithPaths\n schema: AllJSONSchemaVersions\n disabled?: boolean\n required?: boolean\n submitState: Partial<EventStateObject>\n isInsideFormElement?: boolean\n prerenderFieldProps?: boolean\n props: ProviderProps<unknown>\n}\n\nexport const defaultContextState: ContextState = {\n hasContext: false,\n data: undefined,\n schema: undefined,\n submitState: undefined,\n handlePathChange: () => null,\n handlePathChangeUnvalidated: () => null,\n updateDataValue: () => null,\n setData: () => null,\n validateData: () => null,\n handleSubmit: () => null,\n scrollToTop: () => null,\n showAllErrors: false,\n hasVisibleError: false,\n formState: undefined,\n setFormState: () => null,\n setSubmitState: () => null,\n setFieldEventListener: () => null,\n handleSubmitCall: () => null,\n setShowAllErrors: () => null,\n handleMountField: () => null,\n handleUnMountField: () => null,\n hasErrors: () => false,\n hasFieldState: () => false,\n hasFieldError: () => false,\n setFieldState: () => null,\n setFieldError: () => null,\n ajvInstance: makeAjvInstance(),\n contextErrorMessages: undefined,\n isInsideFormElement: false,\n props: null,\n}\n\nconst Context = React.createContext<ContextState>(defaultContextState)\n\nexport default Context\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAAmD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAiI5C,MAAMG,mBAAiC,GAAG;EAC/CC,UAAU,EAAE,KAAK;EACjBC,IAAI,EAAEC,SAAS;EACfC,MAAM,EAAED,SAAS;EACjBE,WAAW,EAAEF,SAAS;EACtBG,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,2BAA2B,EAAEA,CAAA,KAAM,IAAI;EACvCC,eAAe,EAAEA,CAAA,KAAM,IAAI;EAC3BC,OAAO,EAAEA,CAAA,KAAM,IAAI;EACnBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,WAAW,EAAEA,CAAA,KAAM,IAAI;EACvBC,aAAa,EAAE,KAAK;EACpBC,eAAe,EAAE,KAAK;EACtBC,SAAS,EAAEZ,SAAS;EACpBa,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,cAAc,EAAEA,CAAA,KAAM,IAAI;EAC1BC,qBAAqB,EAAEA,CAAA,KAAM,IAAI;EACjCC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,kBAAkB,EAAEA,CAAA,KAAM,IAAI;EAC9BC,SAAS,EAAEA,CAAA,KAAM,KAAK;EACtBC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,WAAW,EAAE,IAAAC,oBAAe,EAAC,CAAC;EAC9BC,oBAAoB,EAAE3B,SAAS;EAC/B4B,mBAAmB,EAAE,KAAK;EAC1BC,KAAK,EAAE;AACT,CAAC;AAAAC,OAAA,CAAAjC,mBAAA,GAAAA,mBAAA;AAED,MAAMkC,OAAO,GAAGC,cAAK,CAACC,aAAa,CAAepC,mBAAmB,CAAC;AAAA,IAAAqC,QAAA,GAEvDH,OAAO;AAAAD,OAAA,CAAAlC,OAAA,GAAAsC,QAAA"}
@@ -1,9 +1,25 @@
1
1
  import React from 'react';
2
2
  import { Path } from '../../types';
3
3
  export interface FieldBoundaryContextState {
4
+ /**
5
+ * Will be set to true when one or more nested fields are in error state.
6
+ */
4
7
  hasError?: boolean;
5
- hasErrorAndShowIt?: boolean;
8
+ /**
9
+ * Will be set to true when the inherited data context has submit errors and the `hasError` has errors as well.
10
+ */
11
+ hasSubmitError?: boolean;
12
+ /**
13
+ * Will be set to true when a nested field contains a visible error.
14
+ */
15
+ hasVisibleError?: boolean;
16
+ /**
17
+ * Contains the nested field errors.
18
+ */
6
19
  errorsRef?: React.RefObject<unknown>;
20
+ /**
21
+ * To set the local error state.
22
+ */
7
23
  setFieldError?: (path: Path, error: Error) => void;
8
24
  }
9
25
  declare const FieldBoundaryContext: React.Context<FieldBoundaryContextState>;