@inera/ids-react 9.1.2 → 9.2.1

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 (353) hide show
  1. package/components/accordion/accordion-base.d.ts +4 -1
  2. package/components/accordion/accordion-base.js +33 -7
  3. package/components/accordion/accordion.d.ts +4 -1
  4. package/components/accordion/accordion.js +14 -11
  5. package/components/alert/alert-base.d.ts +3 -0
  6. package/components/alert/alert-base.js +4 -3
  7. package/components/alert/alert.d.ts +6 -1
  8. package/components/alert/alert.js +12 -9
  9. package/components/badge/badge.d.ts +1 -1
  10. package/components/badge/badge.js +6 -3
  11. package/components/breadcrumbs/breadcrumbs.d.ts +3 -0
  12. package/components/breadcrumbs/breadcrumbs.js +25 -4
  13. package/components/button/button-group.d.ts +3 -0
  14. package/components/button/button-group.js +1 -0
  15. package/components/button/button.js +22 -14
  16. package/components/card/card.d.ts +3 -0
  17. package/components/card/card.js +2 -1
  18. package/components/carousel/carousel-item.d.ts +3 -0
  19. package/components/carousel/carousel-item.js +1 -0
  20. package/components/date-label/date-label.d.ts +3 -0
  21. package/components/date-label/date-label.js +1 -0
  22. package/components/dialog/dialog-base.d.ts +0 -1
  23. package/components/dialog/dialog-base.js +3 -3
  24. package/components/dialog/dialog.d.ts +3 -0
  25. package/components/dialog/dialog.js +19 -19
  26. package/components/dropdown/dropdown-base.js +6 -3
  27. package/components/dropdown/dropdown-content-button.js +1 -1
  28. package/components/dropdown/dropdown-content-link.d.ts +3 -0
  29. package/components/dropdown/dropdown-content-link.js +1 -1
  30. package/components/dropdown/dropdown.d.ts +3 -0
  31. package/components/dropdown/dropdown.js +28 -31
  32. package/components/footer-1177/footer-1177.d.ts +3 -0
  33. package/components/footer-1177/footer-1177.js +1 -0
  34. package/components/footer-1177-admin/footer-1177-admin.d.ts +3 -0
  35. package/components/footer-1177-admin/footer-1177-admin.js +1 -0
  36. package/components/footer-1177-pro/footer-1177-pro.d.ts +3 -0
  37. package/components/footer-1177-pro/footer-1177-pro.js +1 -0
  38. package/components/footer-inera/footer-inera.d.ts +3 -0
  39. package/components/footer-inera/footer-inera.js +1 -0
  40. package/components/footer-inera-admin/footer-inera-admin.d.ts +3 -0
  41. package/components/footer-inera-admin/footer-inera-admin.js +2 -1
  42. package/components/footer-inera-general/footer-inera-general.d.ts +21 -0
  43. package/components/footer-inera-general/footer-inera-general.js +28 -0
  44. package/components/form/check-button/check-button.js +1 -0
  45. package/components/form/checkbox/checkbox-base.d.ts +7 -13
  46. package/components/form/checkbox/checkbox-base.js +10 -10
  47. package/components/form/checkbox/checkbox-group-base.d.ts +3 -0
  48. package/components/form/checkbox/checkbox-group-base.js +3 -2
  49. package/components/form/checkbox/checkbox-group.d.ts +3 -0
  50. package/components/form/checkbox/checkbox-group.js +1 -0
  51. package/components/form/checkbox/checkbox.d.ts +5 -15
  52. package/components/form/checkbox/checkbox.js +10 -2
  53. package/components/form/datepicker/datepicker.d.ts +7 -11
  54. package/components/form/datepicker/datepicker.js +17 -16
  55. package/components/form/error-message/error-message.d.ts +3 -0
  56. package/components/form/error-message/error-message.js +1 -0
  57. package/components/form/form-props/form-props.d.ts +18 -0
  58. package/components/form/input/input-base.d.ts +7 -16
  59. package/components/form/input/input-base.js +15 -16
  60. package/components/form/input/input.d.ts +3 -16
  61. package/components/form/input/input.js +3 -4
  62. package/components/form/radio/radio-base.d.ts +8 -13
  63. package/components/form/radio/radio-base.js +8 -10
  64. package/components/form/radio/radio-group-base.d.ts +3 -0
  65. package/components/form/radio/radio-group-base.js +1 -0
  66. package/components/form/radio/radio-group.d.ts +3 -0
  67. package/components/form/radio/radio-group.js +1 -1
  68. package/components/form/radio/radio.d.ts +2 -14
  69. package/components/form/radio/radio.js +11 -5
  70. package/components/form/radio-button/radio-button-group-base.d.ts +3 -0
  71. package/components/form/radio-button/radio-button-group-base.js +1 -0
  72. package/components/form/radio-button/radio-button-group.d.ts +3 -0
  73. package/components/form/radio-button/radio-button-group.js +4 -1
  74. package/components/form/radio-button/radio-button.js +1 -0
  75. package/components/form/range/range-base.d.ts +6 -8
  76. package/components/form/range/range-base.js +3 -2
  77. package/components/form/range/range.d.ts +2 -7
  78. package/components/form/range/range.js +13 -6
  79. package/components/form/select/select-base.d.ts +7 -15
  80. package/components/form/select/select-base.js +8 -8
  81. package/components/form/select/select.d.ts +2 -14
  82. package/components/form/select/select.js +12 -5
  83. package/components/form/select-multiple/select-multiple-base.d.ts +7 -14
  84. package/components/form/select-multiple/select-multiple-base.js +7 -5
  85. package/components/form/select-multiple/select-multiple.d.ts +4 -15
  86. package/components/form/select-multiple/select-multiple.js +3 -5
  87. package/components/form/spinner/spinner.d.ts +3 -0
  88. package/components/form/spinner/spinner.js +1 -0
  89. package/components/form/textarea/textarea-base.d.ts +7 -15
  90. package/components/form/textarea/textarea-base.js +7 -10
  91. package/components/form/textarea/textarea.d.ts +4 -14
  92. package/components/form/textarea/textarea.js +13 -6
  93. package/components/form/time/time-base.d.ts +6 -12
  94. package/components/form/time/time-base.js +7 -7
  95. package/components/form/time/time.d.ts +2 -14
  96. package/components/form/time/time.js +13 -6
  97. package/components/global-alert/global-alert-base.d.ts +3 -0
  98. package/components/global-alert/global-alert-base.js +3 -2
  99. package/components/global-alert/global-alert.d.ts +6 -1
  100. package/components/global-alert/global-alert.js +12 -9
  101. package/components/header-1177/header-1177-avatar-base.d.ts +3 -0
  102. package/components/header-1177/header-1177-avatar-base.js +1 -0
  103. package/components/header-1177/header-1177-avatar.d.ts +3 -0
  104. package/components/header-1177/header-1177-avatar.js +7 -15
  105. package/components/header-1177/header-1177-base.d.ts +3 -0
  106. package/components/header-1177/header-1177-base.js +1 -0
  107. package/components/header-1177/header-1177-item-base.d.ts +3 -0
  108. package/components/header-1177/header-1177-item-base.js +1 -0
  109. package/components/header-1177/header-1177-item.d.ts +3 -0
  110. package/components/header-1177/header-1177-item.js +1 -0
  111. package/components/header-1177/header-1177-menu-mobile-base.d.ts +3 -0
  112. package/components/header-1177/header-1177-menu-mobile-base.js +1 -0
  113. package/components/header-1177/header-1177-menu-mobile.d.ts +3 -0
  114. package/components/header-1177/header-1177-menu-mobile.js +7 -24
  115. package/components/header-1177/header-1177-nav-base.d.ts +3 -0
  116. package/components/header-1177/header-1177-nav-base.js +1 -0
  117. package/components/header-1177/header-1177-nav-item-base.d.ts +3 -0
  118. package/components/header-1177/header-1177-nav-item-base.js +1 -0
  119. package/components/header-1177/header-1177-nav-item-mobile-base.d.ts +3 -0
  120. package/components/header-1177/header-1177-nav-item-mobile-base.js +1 -0
  121. package/components/header-1177/header-1177-nav-item-mobile.d.ts +3 -0
  122. package/components/header-1177/header-1177-nav-item-mobile.js +1 -0
  123. package/components/header-1177/header-1177-nav-item.d.ts +3 -0
  124. package/components/header-1177/header-1177-nav-item.js +6 -29
  125. package/components/header-1177/header-1177-nav.d.ts +3 -0
  126. package/components/header-1177/header-1177-nav.js +2 -1
  127. package/components/header-1177/header-1177-region-picker-base.d.ts +3 -0
  128. package/components/header-1177/header-1177-region-picker-base.js +1 -0
  129. package/components/header-1177/header-1177-region-picker-mobile-base.d.ts +3 -0
  130. package/components/header-1177/header-1177-region-picker-mobile-base.js +1 -0
  131. package/components/header-1177/header-1177-region-picker-mobile.d.ts +3 -0
  132. package/components/header-1177/header-1177-region-picker-mobile.js +1 -0
  133. package/components/header-1177/header-1177-region-picker.d.ts +3 -0
  134. package/components/header-1177/header-1177-region-picker.js +1 -0
  135. package/components/header-1177/header-1177.d.ts +3 -0
  136. package/components/header-1177/header-1177.js +1 -0
  137. package/components/header-1177-admin/header-1177-admin-avatar-base.d.ts +3 -0
  138. package/components/header-1177-admin/header-1177-admin-avatar-base.js +2 -1
  139. package/components/header-1177-admin/header-1177-admin-avatar-mobile-base.d.ts +3 -0
  140. package/components/header-1177-admin/header-1177-admin-avatar-mobile-base.js +2 -1
  141. package/components/header-1177-admin/header-1177-admin-avatar-mobile.d.ts +3 -0
  142. package/components/header-1177-admin/header-1177-admin-avatar-mobile.js +7 -7
  143. package/components/header-1177-admin/header-1177-admin-avatar.d.ts +3 -0
  144. package/components/header-1177-admin/header-1177-admin-avatar.js +7 -25
  145. package/components/header-1177-admin/header-1177-admin-base.d.ts +3 -0
  146. package/components/header-1177-admin/header-1177-admin-base.js +1 -0
  147. package/components/header-1177-admin/header-1177-admin-item-base.d.ts +3 -0
  148. package/components/header-1177-admin/header-1177-admin-item-base.js +1 -0
  149. package/components/header-1177-admin/header-1177-admin-item.d.ts +3 -0
  150. package/components/header-1177-admin/header-1177-admin-item.js +1 -0
  151. package/components/header-1177-admin/header-1177-admin-menu-mobile-base.d.ts +3 -0
  152. package/components/header-1177-admin/header-1177-admin-menu-mobile-base.js +1 -0
  153. package/components/header-1177-admin/header-1177-admin-menu-mobile.d.ts +3 -0
  154. package/components/header-1177-admin/header-1177-admin-menu-mobile.js +7 -26
  155. package/components/header-1177-admin/header-1177-admin-nav-base.d.ts +6 -1
  156. package/components/header-1177-admin/header-1177-admin-nav-base.js +5 -3
  157. package/components/header-1177-admin/header-1177-admin-nav-item-base.d.ts +3 -0
  158. package/components/header-1177-admin/header-1177-admin-nav-item-base.js +1 -0
  159. package/components/header-1177-admin/header-1177-admin-nav-item-mobile-base.d.ts +3 -0
  160. package/components/header-1177-admin/header-1177-admin-nav-item-mobile-base.js +1 -0
  161. package/components/header-1177-admin/header-1177-admin-nav-item-mobile.d.ts +3 -0
  162. package/components/header-1177-admin/header-1177-admin-nav-item-mobile.js +1 -0
  163. package/components/header-1177-admin/header-1177-admin-nav-item.d.ts +3 -0
  164. package/components/header-1177-admin/header-1177-admin-nav-item.js +6 -29
  165. package/components/header-1177-admin/header-1177-admin-nav.d.ts +6 -1
  166. package/components/header-1177-admin/header-1177-admin-nav.js +3 -2
  167. package/components/header-1177-admin/header-1177-admin.d.ts +3 -0
  168. package/components/header-1177-admin/header-1177-admin.js +1 -0
  169. package/components/header-1177-pro/header-1177-pro-avatar-base.d.ts +3 -0
  170. package/components/header-1177-pro/header-1177-pro-avatar-base.js +1 -0
  171. package/components/header-1177-pro/header-1177-pro-avatar-mobile-base.d.ts +3 -0
  172. package/components/header-1177-pro/header-1177-pro-avatar-mobile-base.js +1 -0
  173. package/components/header-1177-pro/header-1177-pro-avatar-mobile.d.ts +3 -0
  174. package/components/header-1177-pro/header-1177-pro-avatar-mobile.js +6 -5
  175. package/components/header-1177-pro/header-1177-pro-avatar.d.ts +3 -0
  176. package/components/header-1177-pro/header-1177-pro-avatar.js +7 -26
  177. package/components/header-1177-pro/header-1177-pro-base.d.ts +3 -0
  178. package/components/header-1177-pro/header-1177-pro-base.js +1 -0
  179. package/components/header-1177-pro/header-1177-pro-item-base.d.ts +3 -0
  180. package/components/header-1177-pro/header-1177-pro-item-base.js +1 -0
  181. package/components/header-1177-pro/header-1177-pro-item.d.ts +3 -0
  182. package/components/header-1177-pro/header-1177-pro-item.js +1 -0
  183. package/components/header-1177-pro/header-1177-pro-menu-mobile-base.d.ts +3 -0
  184. package/components/header-1177-pro/header-1177-pro-menu-mobile-base.js +1 -0
  185. package/components/header-1177-pro/header-1177-pro-menu-mobile.d.ts +3 -0
  186. package/components/header-1177-pro/header-1177-pro-menu-mobile.js +7 -26
  187. package/components/header-1177-pro/header-1177-pro-nav-base.d.ts +6 -1
  188. package/components/header-1177-pro/header-1177-pro-nav-base.js +5 -3
  189. package/components/header-1177-pro/header-1177-pro-nav-item-base.d.ts +3 -0
  190. package/components/header-1177-pro/header-1177-pro-nav-item-base.js +1 -0
  191. package/components/header-1177-pro/header-1177-pro-nav-item-mobile-base.d.ts +3 -0
  192. package/components/header-1177-pro/header-1177-pro-nav-item-mobile-base.js +1 -0
  193. package/components/header-1177-pro/header-1177-pro-nav-item-mobile.d.ts +3 -0
  194. package/components/header-1177-pro/header-1177-pro-nav-item-mobile.js +1 -0
  195. package/components/header-1177-pro/header-1177-pro-nav-item.d.ts +3 -0
  196. package/components/header-1177-pro/header-1177-pro-nav-item.js +6 -29
  197. package/components/header-1177-pro/header-1177-pro-nav.d.ts +6 -1
  198. package/components/header-1177-pro/header-1177-pro-nav.js +3 -2
  199. package/components/header-1177-pro/header-1177-pro-region-picker-base.d.ts +3 -0
  200. package/components/header-1177-pro/header-1177-pro-region-picker-base.js +2 -1
  201. package/components/header-1177-pro/header-1177-pro-region-picker-mobile-base.d.ts +5 -1
  202. package/components/header-1177-pro/header-1177-pro-region-picker-mobile-base.js +4 -2
  203. package/components/header-1177-pro/header-1177-pro-region-picker-mobile.d.ts +3 -0
  204. package/components/header-1177-pro/header-1177-pro-region-picker-mobile.js +2 -1
  205. package/components/header-1177-pro/header-1177-pro-region-picker.d.ts +3 -0
  206. package/components/header-1177-pro/header-1177-pro-region-picker.js +1 -0
  207. package/components/header-1177-pro/header-1177-pro.d.ts +3 -0
  208. package/components/header-1177-pro/header-1177-pro.js +1 -0
  209. package/components/header-inera/header-inera-base.d.ts +3 -0
  210. package/components/header-inera/header-inera-base.js +1 -0
  211. package/components/header-inera/header-inera-item-base.d.ts +3 -0
  212. package/components/header-inera/header-inera-item-base.js +1 -0
  213. package/components/header-inera/header-inera-item.d.ts +3 -0
  214. package/components/header-inera/header-inera-item.js +1 -0
  215. package/components/header-inera/header-inera-menu-mobile-base.d.ts +3 -0
  216. package/components/header-inera/header-inera-menu-mobile-base.js +1 -0
  217. package/components/header-inera/header-inera-menu-mobile.d.ts +3 -0
  218. package/components/header-inera/header-inera-menu-mobile.js +7 -26
  219. package/components/header-inera/header-inera-nav-base.d.ts +3 -0
  220. package/components/header-inera/header-inera-nav-base.js +1 -0
  221. package/components/header-inera/header-inera-nav-item-base.d.ts +3 -0
  222. package/components/header-inera/header-inera-nav-item-base.js +1 -0
  223. package/components/header-inera/header-inera-nav-item.d.ts +3 -0
  224. package/components/header-inera/header-inera-nav-item.js +6 -29
  225. package/components/header-inera/header-inera-nav.d.ts +3 -0
  226. package/components/header-inera/header-inera-nav.js +1 -0
  227. package/components/header-inera/header-inera.d.ts +3 -0
  228. package/components/header-inera/header-inera.js +1 -0
  229. package/components/header-inera-admin/header-inera-admin-avatar-base.d.ts +3 -0
  230. package/components/header-inera-admin/header-inera-admin-avatar-base.js +2 -1
  231. package/components/header-inera-admin/header-inera-admin-avatar-mobile-base.d.ts +3 -0
  232. package/components/header-inera-admin/header-inera-admin-avatar-mobile-base.js +2 -1
  233. package/components/header-inera-admin/header-inera-admin-avatar-mobile.d.ts +3 -0
  234. package/components/header-inera-admin/header-inera-admin-avatar-mobile.js +6 -5
  235. package/components/header-inera-admin/header-inera-admin-avatar.d.ts +3 -0
  236. package/components/header-inera-admin/header-inera-admin-avatar.js +7 -25
  237. package/components/header-inera-admin/header-inera-admin-base.d.ts +3 -0
  238. package/components/header-inera-admin/header-inera-admin-base.js +1 -0
  239. package/components/header-inera-admin/header-inera-admin-item-base.d.ts +3 -0
  240. package/components/header-inera-admin/header-inera-admin-item-base.js +1 -0
  241. package/components/header-inera-admin/header-inera-admin-item.d.ts +3 -0
  242. package/components/header-inera-admin/header-inera-admin-item.js +1 -0
  243. package/components/header-inera-admin/header-inera-admin-menu-mobile-base.d.ts +3 -0
  244. package/components/header-inera-admin/header-inera-admin-menu-mobile-base.js +2 -1
  245. package/components/header-inera-admin/header-inera-admin-menu-mobile.d.ts +3 -0
  246. package/components/header-inera-admin/header-inera-admin-menu-mobile.js +7 -26
  247. package/components/header-inera-admin/header-inera-admin-nav-base.d.ts +6 -1
  248. package/components/header-inera-admin/header-inera-admin-nav-base.js +5 -3
  249. package/components/header-inera-admin/header-inera-admin-nav-item-base.d.ts +3 -0
  250. package/components/header-inera-admin/header-inera-admin-nav-item-base.js +1 -0
  251. package/components/header-inera-admin/header-inera-admin-nav-item-mobile-base.d.ts +3 -0
  252. package/components/header-inera-admin/header-inera-admin-nav-item-mobile-base.js +1 -0
  253. package/components/header-inera-admin/header-inera-admin-nav-item-mobile.d.ts +3 -0
  254. package/components/header-inera-admin/header-inera-admin-nav-item-mobile.js +1 -0
  255. package/components/header-inera-admin/header-inera-admin-nav-item.d.ts +3 -0
  256. package/components/header-inera-admin/header-inera-admin-nav-item.js +6 -29
  257. package/components/header-inera-admin/header-inera-admin-nav.d.ts +6 -1
  258. package/components/header-inera-admin/header-inera-admin-nav.js +3 -2
  259. package/components/header-inera-admin/header-inera-admin.d.ts +3 -0
  260. package/components/header-inera-admin/header-inera-admin.js +1 -0
  261. package/components/header-inera-general/header-inera-general-base.d.ts +16 -0
  262. package/components/header-inera-general/header-inera-general-base.js +12 -0
  263. package/components/header-inera-general/header-inera-general-item-base.d.ts +11 -0
  264. package/components/header-inera-general/header-inera-general-item-base.js +13 -0
  265. package/components/header-inera-general/header-inera-general-item.d.ts +10 -0
  266. package/components/header-inera-general/header-inera-general-item.js +12 -0
  267. package/components/header-inera-general/header-inera-general-menu-mobile-base.d.ts +15 -0
  268. package/components/header-inera-general/header-inera-general-menu-mobile-base.js +19 -0
  269. package/components/header-inera-general/header-inera-general-menu-mobile.d.ts +13 -0
  270. package/components/header-inera-general/header-inera-general-menu-mobile.js +31 -0
  271. package/components/header-inera-general/header-inera-general-nav-base.d.ts +10 -0
  272. package/components/header-inera-general/header-inera-general-nav-base.js +11 -0
  273. package/components/header-inera-general/header-inera-general-nav-item-base.d.ts +21 -0
  274. package/components/header-inera-general/header-inera-general-nav-item-base.js +27 -0
  275. package/components/header-inera-general/header-inera-general-nav-item.d.ts +18 -0
  276. package/components/header-inera-general/header-inera-general-nav-item.js +27 -0
  277. package/components/header-inera-general/header-inera-general-nav.d.ts +8 -0
  278. package/components/header-inera-general/header-inera-general-nav.js +12 -0
  279. package/components/header-inera-general/header-inera-general.d.ts +15 -0
  280. package/components/header-inera-general/header-inera-general.js +11 -0
  281. package/components/header-patient/header-patient.d.ts +3 -0
  282. package/components/header-patient/header-patient.js +1 -0
  283. package/components/link/action-link.d.ts +3 -0
  284. package/components/link/action-link.js +2 -1
  285. package/components/link/box-link.d.ts +3 -0
  286. package/components/link/box-link.js +1 -0
  287. package/components/link/link.d.ts +3 -0
  288. package/components/link/link.js +1 -0
  289. package/components/list-pagination/list-pagination-links.d.ts +3 -0
  290. package/components/list-pagination/list-pagination-links.js +1 -0
  291. package/components/list-pagination/list-pagination.d.ts +3 -0
  292. package/components/list-pagination/list-pagination.js +4 -3
  293. package/components/mobile-menu/mobile-item-base.d.ts +3 -0
  294. package/components/mobile-menu/mobile-item-base.js +1 -0
  295. package/components/mobile-menu/mobile-item.d.ts +3 -0
  296. package/components/mobile-menu/mobile-item.js +1 -0
  297. package/components/mobile-menu/mobile-menu.d.ts +3 -0
  298. package/components/mobile-menu/mobile-menu.js +1 -0
  299. package/components/navigation-content/navigation-content.d.ts +3 -0
  300. package/components/navigation-content/navigation-content.js +1 -0
  301. package/components/navigation-local/navigation-local.d.ts +3 -0
  302. package/components/navigation-local/navigation-local.js +1 -0
  303. package/components/notification-badge/notification-badge.d.ts +2 -4
  304. package/components/notification-badge/notification-badge.js +6 -3
  305. package/components/popover/popover-base.d.ts +4 -1
  306. package/components/popover/popover-base.js +1 -0
  307. package/components/popover/popover-content.d.ts +7 -1
  308. package/components/popover/popover-content.js +6 -10
  309. package/components/popover/popover.d.ts +3 -0
  310. package/components/popover/popover.js +141 -52
  311. package/components/progressbar/progressbar.d.ts +4 -4
  312. package/components/progressbar/progressbar.js +5 -3
  313. package/components/puff-list/puff-list-item-date.d.ts +3 -0
  314. package/components/puff-list/puff-list-item-date.js +1 -0
  315. package/components/puff-list/puff-list-item-info.d.ts +3 -0
  316. package/components/puff-list/puff-list-item-info.js +1 -0
  317. package/components/puff-list/puff-list-item.d.ts +1 -1
  318. package/components/puff-list/puff-list-item.js +11 -13
  319. package/components/puff-list/puff-list.d.ts +4 -1
  320. package/components/puff-list/puff-list.js +2 -1
  321. package/components/region-icon/region-icon.d.ts +3 -0
  322. package/components/region-icon/region-icon.js +1 -0
  323. package/components/side-menu/side-menu.d.ts +3 -0
  324. package/components/side-menu/side-menu.js +1 -0
  325. package/components/side-panel/side-panel-base.d.ts +1 -0
  326. package/components/side-panel/side-panel-base.js +1 -1
  327. package/components/side-panel/side-panel-provider.d.ts +3 -0
  328. package/components/side-panel/side-panel-provider.js +1 -0
  329. package/components/side-panel/side-panel.d.ts +3 -0
  330. package/components/side-panel/side-panel.js +29 -7
  331. package/components/stepper/step-base.js +1 -1
  332. package/components/stepper/step.js +11 -4
  333. package/components/stepper/stepper.d.ts +3 -0
  334. package/components/stepper/stepper.js +1 -0
  335. package/components/tabs/tabs-base.d.ts +3 -0
  336. package/components/tabs/tabs-base.js +1 -0
  337. package/components/tabs/tabs.d.ts +3 -0
  338. package/components/tabs/tabs.js +1 -0
  339. package/components/tag/tag.d.ts +1 -1
  340. package/components/tag/tag.js +4 -3
  341. package/components/toolbar/toolbar.d.ts +5 -0
  342. package/components/toolbar/toolbar.js +11 -0
  343. package/components/tooltip/tooltip-base.d.ts +5 -1
  344. package/components/tooltip/tooltip-base.js +3 -2
  345. package/components/tooltip/tooltip.d.ts +3 -0
  346. package/components/tooltip/tooltip.js +26 -1
  347. package/components/utils/hooks/useClickOutside.d.ts +1 -9
  348. package/components/utils/hooks/useClickOutside.js +9 -16
  349. package/components/utils/hooks/useLinkClick.d.ts +2 -0
  350. package/components/utils/hooks/useLinkClick.js +22 -0
  351. package/index.d.ts +24 -0
  352. package/index.js +12 -0
  353. package/package.json +2 -2
@@ -12,4 +12,7 @@ type Props = Omit<IDSDropdownBaseProps, "onTriggerClick" | "triggerRef" | "conte
12
12
  onOpened?: () => void;
13
13
  };
14
14
  export declare function IDSDropdown({ button, position, maxHeight, minWidth, sBlock, mBlock, expanded, persistent, onClosed, onOpened, children, className, ...props }: Props): import("react/jsx-runtime").JSX.Element;
15
+ export declare namespace IDSDropdown {
16
+ var displayName: string;
17
+ }
15
18
  export {};
@@ -2,45 +2,22 @@
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import { useState, useRef, useEffect } from 'react';
4
4
  import { IDSDropdownBase } from './dropdown-base.js';
5
+ import { useFocusTrap } from '../utils/hooks/useFocusTrap.js';
6
+ import { useEsc } from '../utils/hooks/useEsc.js';
5
7
 
6
8
  function IDSDropdown({ button, position, maxHeight, minWidth, sBlock, mBlock, expanded = false, persistent = false, onClosed, onOpened, children, className, ...props }) {
7
9
  const [isExpanded, setIsExpanded] = useState(expanded);
8
10
  const triggerRef = useRef(null);
9
11
  const contentRef = useRef(null);
12
+ useFocusTrap(contentRef.current, isExpanded);
13
+ const closeMenu = () => {
14
+ setIsExpanded(false);
15
+ onClosed?.();
16
+ };
17
+ useEsc(closeMenu, triggerRef, contentRef, isExpanded);
10
18
  useEffect(() => {
11
19
  setIsExpanded(expanded);
12
20
  }, [expanded]);
13
- // Click outside to close
14
- useEffect(() => {
15
- if (!isExpanded || persistent)
16
- return;
17
- const handleClickOutside = (event) => {
18
- if (triggerRef.current &&
19
- !triggerRef.current.contains(event.target) &&
20
- contentRef.current &&
21
- !contentRef.current.contains(event.target)) {
22
- setIsExpanded(false);
23
- onClosed?.();
24
- }
25
- };
26
- document.addEventListener("mousedown", handleClickOutside);
27
- return () => document.removeEventListener("mousedown", handleClickOutside);
28
- }, [isExpanded, persistent, onClosed]);
29
- // Escape should also close
30
- useEffect(() => {
31
- if (!isExpanded || persistent)
32
- return;
33
- const handleKeyDown = (event) => {
34
- if (event.key === "Escape") {
35
- event.preventDefault();
36
- setIsExpanded(false);
37
- onClosed?.();
38
- triggerRef.current?.focus();
39
- }
40
- };
41
- document.addEventListener("keydown", handleKeyDown);
42
- return () => document.removeEventListener("keydown", handleKeyDown);
43
- }, [isExpanded, persistent, onClosed]);
44
21
  const toggleDropdown = () => {
45
22
  setIsExpanded(prev => {
46
23
  const next = !prev;
@@ -51,7 +28,27 @@ function IDSDropdown({ button, position, maxHeight, minWidth, sBlock, mBlock, ex
51
28
  return next;
52
29
  });
53
30
  };
31
+ useEffect(() => {
32
+ if (!isExpanded)
33
+ return;
34
+ const content = contentRef.current;
35
+ if (!content)
36
+ return;
37
+ requestAnimationFrame(() => {
38
+ const focusable = content.querySelectorAll([
39
+ "a[href]",
40
+ "button:not([disabled])",
41
+ "[tabindex]:not([tabindex='-1'])",
42
+ "input:not([disabled])",
43
+ "select:not([disabled])",
44
+ "textarea:not([disabled])"
45
+ ].join(","));
46
+ const firstVisible = Array.from(focusable).find(el => el.offsetParent !== null);
47
+ firstVisible?.focus();
48
+ });
49
+ }, [isExpanded]);
54
50
  return (jsx(IDSDropdownBase, { ...props, client: true, className: className, expanded: isExpanded, trigger: button, triggerRef: triggerRef, contentRef: contentRef, maxHeight: maxHeight, sBlock: sBlock, mBlock: mBlock, minWidth: minWidth, position: position, onTriggerClick: toggleDropdown, children: children }));
55
51
  }
52
+ IDSDropdown.displayName = "IDSDropdown";
56
53
 
57
54
  export { IDSDropdown };
@@ -16,3 +16,6 @@ export interface Footer1177Props extends React.HTMLAttributes<HTMLDivElement> {
16
16
  children?: ReactNode;
17
17
  }
18
18
  export declare function IDSFooter1177({ headline, srHeadline, subHeadline, col1, col2, col3, toggle, subFooterLeft, subFooterRight, mobileMenu, mobileLinks, subFooterMobile, children, className, ...props }: Footer1177Props): import("react/jsx-runtime").JSX.Element;
19
+ export declare namespace IDSFooter1177 {
20
+ var displayName: string;
21
+ }
@@ -23,5 +23,6 @@ function IDSFooter1177({ headline = "", srHeadline = "", subHeadline = "", col1,
23
23
  };
24
24
  return (jsxs("footer", { className: clsx("ids-footer-1177", className), ...props, children: [jsx("div", { className: "ids-footer-1177__inner-wrapper", children: jsxs("div", { className: "ids-footer-1177__inner", children: [jsx("div", { className: "ids-footer-1177__headline-wrapper", children: renderHeadline() }), jsxs("div", { className: "ids-footer-1177__content", children: [jsxs("div", { className: "ids-footer-1177__text", children: [children, toggle && jsx("div", { className: "ids-footer-1177__darkmode-toggle", children: toggle })] }), jsx("div", { className: "ids-footer-1177__cols", children: renderCols() })] })] }) }), jsx("div", { className: "ids-footer-1177__mobile-menu", children: mobileMenu }), jsxs("div", { className: "ids-footer-1177__sub-footer", children: [jsx("div", { className: "ids-footer-1177__sub-footer-container", children: jsxs("div", { className: "ids-footer-1177__sub-footer-inner", children: [jsx("div", { className: "ids-footer-1177__sub-footer-left", children: subFooterLeft }), jsx("div", { className: "ids-footer-1177__sub-footer-right", children: subFooterRight }), jsx("div", { className: "ids-footer-1177__mobile-links", children: mobileLinks })] }) }), jsx("div", { className: "ids-footer-1177__sub-footer-mobile", children: jsx("div", { className: "ids-footer-1177__sub-footer-mobile-text", children: subFooterMobile }) })] })] }));
25
25
  }
26
+ IDSFooter1177.displayName = "IDSFooter1177";
26
27
 
27
28
  export { IDSFooter1177 };
@@ -15,4 +15,7 @@ interface Footer1177AdminProps extends React.HTMLAttributes<HTMLDivElement> {
15
15
  children?: ReactNode;
16
16
  }
17
17
  export declare function IDSFooter1177Admin({ headline, srHeadline, col1, col2, col3, toggle, subFooterLeft, subFooterRight, mobileMenu, mobileLinks, subFooterMobile, children, className, ...props }: Footer1177AdminProps): import("react/jsx-runtime").JSX.Element;
18
+ export declare namespace IDSFooter1177Admin {
19
+ var displayName: string;
20
+ }
18
21
  export {};
@@ -23,5 +23,6 @@ function IDSFooter1177Admin({ headline = "", srHeadline = "", col1, col2, col3,
23
23
  };
24
24
  return (jsxs("footer", { className: clsx("ids-footer-1177-admin", className), ...props, children: [jsx("div", { className: "ids-footer-1177-admin__inner-wrapper", children: jsxs("div", { className: "ids-footer-1177-admin__inner", children: [jsx("div", { className: "ids-footer-1177-admin__headline-wrapper", children: renderHeadline() }), jsxs("div", { className: "ids-footer-1177-admin__content", children: [jsxs("div", { className: "ids-footer-1177-admin__text", children: [children, toggle && jsx("div", { className: "ids-footer-1177-admin__darkmode-toggle", children: toggle })] }), jsx("div", { className: "ids-footer-1177-admin__cols", children: renderCols() })] })] }) }), jsx("div", { className: "ids-footer-1177-admin__mobile-menu", children: mobileMenu }), jsxs("div", { className: "ids-footer-1177-admin__sub-footer", children: [jsx("div", { className: "ids-footer-1177-admin__sub-footer-container", children: jsxs("div", { className: "ids-footer-1177-admin__sub-footer-inner", children: [jsx("div", { className: "ids-footer-1177-admin__sub-footer-left", children: subFooterLeft }), jsx("div", { className: "ids-footer-1177-admin__sub-footer-right", children: subFooterRight }), jsx("div", { className: "ids-footer-1177-admin__mobile-links", children: mobileLinks })] }) }), jsxs("div", { className: "ids-footer-1177-admin__sub-footer-mobile", children: [jsxs("div", { className: "ids-footer-1177-admin__sub-footer-mobile-headline-wrapper", children: [jsx("div", { className: "ids-footer-1177-admin__sub-footer-mobile-logo" }), jsx("div", { className: "ids-footer-1177-admin__sub-footer-mobile-headline", children: headline })] }), jsx("div", { className: "ids-footer-1177-admin__sub-footer-mobile-text", children: subFooterMobile })] })] })] }));
25
25
  }
26
+ IDSFooter1177Admin.displayName = "IDSFooter1177Admin";
26
27
 
27
28
  export { IDSFooter1177Admin };
@@ -19,4 +19,7 @@ interface Footer1177ProProps extends React.HTMLAttributes<HTMLDivElement> {
19
19
  children?: ReactNode;
20
20
  }
21
21
  export declare function IDSFooter1177Pro({ headline, srHeadline, mobileHeadline, col1, col2, col3, toggle, col1Headline, col2Headline, col3Headline, subFooterLeft, subFooterRight, mobileMenu, mobileLinks, subFooterMobile, children, className, ...props }: Footer1177ProProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare namespace IDSFooter1177Pro {
23
+ var displayName: string;
24
+ }
22
25
  export {};
@@ -23,5 +23,6 @@ function IDSFooter1177Pro({ headline = "", srHeadline = "", mobileHeadline = "",
23
23
  };
24
24
  return (jsxs("footer", { className: clsx("ids-footer-1177-pro", className), ...props, children: [jsx("div", { className: "ids-footer-1177-pro__inner-wrapper", children: jsxs("div", { className: "ids-footer-1177-pro__inner", children: [jsx("div", { className: "ids-footer-1177-pro__headline-wrapper", children: renderHeadline() }), jsxs("div", { className: "ids-footer-1177-pro__content", children: [jsxs("div", { className: "ids-footer-1177-pro__text", children: [children, toggle && jsx("div", { className: "ids-footer-1177-pro__darkmode-toggle", children: toggle })] }), jsx("div", { className: "ids-footer-1177-pro__cols", children: renderCols() })] })] }) }), jsx("div", { className: "ids-footer-1177-pro__mobile-menu", children: mobileMenu }), jsxs("div", { className: "ids-footer-1177-pro__sub-footer", children: [jsx("div", { className: "ids-footer-1177-pro__sub-footer-container", children: jsxs("div", { className: "ids-footer-1177-pro__sub-footer-inner", children: [jsx("div", { className: "ids-footer-1177-pro__sub-footer-left", children: subFooterLeft }), jsx("div", { className: "ids-footer-1177-pro__sub-footer-right", children: subFooterRight }), jsx("div", { className: "ids-footer-1177-pro__mobile-links", children: mobileLinks })] }) }), jsxs("div", { className: "ids-footer-1177-pro__sub-footer-mobile", children: [jsxs("div", { className: "ids-footer-1177-pro__sub-footer-mobile-headline-wrapper", children: [jsx("div", { className: "ids-footer-1177-pro__sub-footer-mobile-logo" }), jsx("div", { className: "ids-footer-1177-pro__sub-footer-mobile-headline", children: mobileHeadline })] }), jsx("div", { className: "ids-footer-1177-pro__sub-footer-mobile-text", children: subFooterMobile })] })] })] }));
25
25
  }
26
+ IDSFooter1177Pro.displayName = "IDSFooter1177Pro";
26
27
 
27
28
  export { IDSFooter1177Pro };
@@ -15,4 +15,7 @@ interface FooterIneraProps extends React.HTMLAttributes<HTMLDivElement> {
15
15
  children?: ReactNode;
16
16
  }
17
17
  export declare function IDSFooterInera({ headline, srHeadline, col1, col2, col3, toggle, subFooterLeft, subFooterRight, mobileMenu, mobileLinks, subFooterMobile, children, className, ...props }: FooterIneraProps): import("react/jsx-runtime").JSX.Element;
18
+ export declare namespace IDSFooterInera {
19
+ var displayName: string;
20
+ }
18
21
  export {};
@@ -23,5 +23,6 @@ function IDSFooterInera({ headline = "", srHeadline = "", col1, col2, col3, togg
23
23
  };
24
24
  return (jsxs("footer", { className: clsx("ids-footer-inera", className), ...props, children: [jsx("div", { className: "ids-footer-inera__inner-wrapper", children: jsxs("div", { className: "ids-footer-inera__inner", children: [jsx("div", { className: "ids-footer-inera__headline-wrapper", children: renderHeadline() }), jsxs("div", { className: "ids-footer-inera__content", children: [jsxs("div", { className: "ids-footer-inera__text", children: [children, toggle && jsx("div", { className: "ids-footer-inera__darkmode-toggle", children: toggle })] }), jsx("div", { className: "ids-footer-inera__cols", children: renderCols() })] })] }) }), jsx("div", { className: "ids-footer-inera__mobile-menu", children: mobileMenu }), jsxs("div", { className: "ids-footer-inera__sub-footer", children: [jsx("div", { className: "ids-footer-inera__sub-footer-container", children: jsxs("div", { className: "ids-footer-inera__sub-footer-inner", children: [jsx("div", { className: "ids-footer-inera__sub-footer-left", children: subFooterLeft }), jsx("div", { className: "ids-footer-inera__sub-footer-right", children: subFooterRight }), jsx("div", { className: "ids-footer-inera__mobile-links", children: mobileLinks })] }) }), jsx("div", { className: "ids-footer-inera__sub-footer-mobile", children: jsx("div", { className: "ids-footer-inera__sub-footer-mobile-text", children: subFooterMobile }) })] })] }));
25
25
  }
26
+ IDSFooterInera.displayName = "IDSFooterInera";
26
27
 
27
28
  export { IDSFooterInera };
@@ -15,4 +15,7 @@ interface FooterIneraAdminProps extends React.HTMLAttributes<HTMLDivElement> {
15
15
  children?: ReactNode;
16
16
  }
17
17
  export declare function IDSFooterIneraAdmin({ headline, srHeadline, col1, col2, col3, toggle, subFooterLeft, subFooterRight, mobileMenu, mobileLinks, subFooterMobile, children, className, ...props }: FooterIneraAdminProps): import("react/jsx-runtime").JSX.Element;
18
+ export declare namespace IDSFooterIneraAdmin {
19
+ var displayName: string;
20
+ }
18
21
  export {};
@@ -21,7 +21,8 @@ function IDSFooterIneraAdmin({ headline = "", srHeadline = "", col1, col2, col3,
21
21
  }
22
22
  return null;
23
23
  };
24
- return (jsxs("footer", { className: clsx("ids-footer-inera-admin", className), ...props, children: [jsx("div", { className: "ids-footer-inera-admin__inner-wrapper", children: jsxs("div", { className: "ids-footer-inera-admin__inner", children: [jsx("div", { className: "ids-footer-inera-admin__headline-wrapper", children: renderHeadline() }), jsxs("div", { className: "ids-footer-inera-admin__content", children: [jsxs("div", { className: "ids-footer-inera-admin__text", children: [children, toggle && jsx("div", { className: "ids-footer-inera-admin__darkmode-toggle", children: toggle })] }), jsx("div", { className: "ids-footer-inera-admin__cols", children: renderCols() })] })] }) }), jsx("div", { className: "ids-footer-inera-admin__mobile-menu", children: mobileMenu }), jsxs("div", { className: "ids-footer-inera-admin__sub-footer", children: [jsx("div", { className: "ids-footer-inera-admin__sub-footer-container", children: jsxs("div", { className: "ids-footer-inera-admin__sub-footer-inner", children: [jsx("div", { className: "ids-footer-inera-admin__sub-footer-left", children: subFooterLeft }), jsx("div", { className: "ids-footer-inera-admin__sub-footer-right", children: subFooterRight }), jsx("div", { className: "ids-footer-inera-admin__mobile-links", children: mobileLinks })] }) }), jsxs("div", { className: "ids-footer-inera-admin__sub-footer-mobile", children: [jsxs("div", { className: "ids-footer-inera-admin__sub-footer-mobile-headline-wrapper", children: [jsx("div", { className: "ids-footer-inera-admin__sub-footer-mobile-logo" }), jsx("div", { className: "ids-footer-inera-admin__sub-footer-mobile-headline", children: headline })] }), jsx("div", { className: "ids-footer-inera-admin__sub-footer-mobile-text", children: subFooterMobile })] })] })] }));
24
+ return (jsxs("footer", { className: clsx("ids-footer-inera-admin", className), ...props, children: [jsx("div", { className: "ids-footer-inera-admin__inner-wrapper", children: jsxs("div", { className: "ids-footer-inera-admin__inner", children: [jsx("div", { className: "ids-footer-inera-admin__headline-wrapper", children: renderHeadline() }), jsxs("div", { className: "ids-footer-inera-admin__content", children: [jsxs("div", { className: "ids-footer-inera-admin__text", children: [children, toggle && jsx("div", { className: "ids-footer-inera-admin__darkmode-toggle", children: toggle })] }), jsx("div", { className: "ids-footer-inera-admin__cols", children: renderCols() })] })] }) }), jsx("div", { className: "ids-footer-inera-admin__mobile-menu", children: mobileMenu }), jsxs("div", { className: "ids-footer-inera-admin__sub-footer", children: [jsx("div", { className: "ids-footer-inera-admin__sub-footer-container", children: jsxs("div", { className: "ids-footer-inera-admin__sub-footer-inner", children: [jsx("div", { className: "ids-footer-inera-admin__sub-footer-left", children: subFooterLeft }), jsx("div", { className: "ids-footer-inera-admin__sub-footer-right", children: subFooterRight }), jsx("div", { className: "ids-footer-inera-admin__mobile-links", children: mobileLinks })] }) }), jsx("div", { className: "ids-footer-inera-admin__sub-footer-mobile", children: jsx("div", { className: "ids-footer-inera-admin__sub-footer-mobile-text", children: subFooterMobile }) })] })] }));
25
25
  }
26
+ IDSFooterIneraAdmin.displayName = "IDSFooterIneraAdmin";
26
27
 
27
28
  export { IDSFooterIneraAdmin };
@@ -0,0 +1,21 @@
1
+ import React, { ReactNode } from "react";
2
+ import "@inera/ids-design/components/footer-inera-general/footer-inera-general.css";
3
+ interface FooterIneraGeneralProps extends React.HTMLAttributes<HTMLDivElement> {
4
+ headline?: string;
5
+ srHeadline?: string;
6
+ toggle?: ReactNode;
7
+ col1?: ReactNode;
8
+ col2?: ReactNode;
9
+ col3?: ReactNode;
10
+ subFooterLeft?: ReactNode;
11
+ subFooterRight?: ReactNode;
12
+ mobileMenu?: ReactNode;
13
+ mobileLinks?: ReactNode;
14
+ subFooterMobile?: ReactNode;
15
+ children?: ReactNode;
16
+ }
17
+ export declare function IDSFooterIneraGeneral({ headline, srHeadline, col1, col2, col3, toggle, subFooterLeft, subFooterRight, mobileMenu, mobileLinks, subFooterMobile, children, className, ...props }: FooterIneraGeneralProps): import("react/jsx-runtime").JSX.Element;
18
+ export declare namespace IDSFooterIneraGeneral {
19
+ var displayName: string;
20
+ }
21
+ export {};
@@ -0,0 +1,28 @@
1
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
+ import clsx from 'clsx';
3
+ import '@inera/ids-design/components/footer-inera-general/footer-inera-general.css';
4
+
5
+ function IDSFooterIneraGeneral({ headline = "", srHeadline = "", col1, col2, col3, toggle, subFooterLeft, subFooterRight, mobileMenu, mobileLinks, subFooterMobile, children, className, ...props }) {
6
+ const renderHeadline = () => {
7
+ if (srHeadline) {
8
+ return (jsxs(Fragment, { children: [jsx("h2", { className: "ids-footer-inera-general__headline--sr", children: srHeadline }), jsx("h2", { "aria-hidden": "true", className: "ids-footer-inera-general__headline", children: headline })] }));
9
+ }
10
+ return jsx("h2", { className: "ids-footer-inera-general__headline", children: headline });
11
+ };
12
+ const renderCols = () => {
13
+ if (!!col1 && !col2 && !col3) {
14
+ return jsx("div", { className: clsx("ids-footer-inera-general__link-col", "ids-footer-inera-general__link-col--100"), children: col1 });
15
+ }
16
+ else if (!!col1 && !!col2 && !col3) {
17
+ return (jsxs(Fragment, { children: [jsx("div", { className: clsx("ids-footer-inera-general__link-col", "ids-footer-inera-general__link-col--50"), children: col1 }), jsx("div", { className: clsx("ids-footer-inera-general__link-col", "ids-footer-inera-general__link-col--50"), children: col2 })] }));
18
+ }
19
+ else if (!!col1 && !!col2 && !!col3) {
20
+ return (jsxs(Fragment, { children: [jsx("div", { className: clsx("ids-footer-inera-general__link-col", "ids-footer-inera-general__link-col--33"), children: col1 }), jsx("div", { className: clsx("ids-footer-inera-general__link-col", "ids-footer-inera-general__link-col--33"), children: col2 }), jsx("div", { className: clsx("ids-footer-inera-general__link-col", "ids-footer-inera-general__link-col--33"), children: col3 })] }));
21
+ }
22
+ return null;
23
+ };
24
+ return (jsxs("footer", { className: clsx("ids-footer-inera-general", className), ...props, children: [jsx("div", { className: "ids-footer-inera-general__inner-wrapper", children: jsxs("div", { className: "ids-footer-inera-general__inner", children: [jsx("div", { className: "ids-footer-inera-general__headline-wrapper", children: renderHeadline() }), jsxs("div", { className: "ids-footer-inera-general__content", children: [jsxs("div", { className: "ids-footer-inera-general__text", children: [children, toggle && jsx("div", { className: "ids-footer-inera-general__darkmode-toggle", children: toggle })] }), jsx("div", { className: "ids-footer-inera-general__cols", children: renderCols() })] })] }) }), jsx("div", { className: "ids-footer-inera-general__mobile-menu", children: mobileMenu }), jsxs("div", { className: "ids-footer-inera-general__sub-footer", children: [jsx("div", { className: "ids-footer-inera-general__sub-footer-container", children: jsxs("div", { className: "ids-footer-inera-general__sub-footer-inner", children: [jsx("div", { className: "ids-footer-inera-general__sub-footer-left", children: subFooterLeft }), jsx("div", { className: "ids-footer-inera-general__sub-footer-right", children: subFooterRight }), jsx("div", { className: "ids-footer-inera-general__mobile-links", children: mobileLinks })] }) }), jsx("div", { className: "ids-footer-inera-general__sub-footer-mobile", children: jsx("div", { className: "ids-footer-inera-general__sub-footer-mobile-text", children: subFooterMobile }) })] })] }));
25
+ }
26
+ IDSFooterIneraGeneral.displayName = "IDSFooterIneraGeneral";
27
+
28
+ export { IDSFooterIneraGeneral };
@@ -8,5 +8,6 @@ const IDSCheckButton = forwardRef(function IDSCheckButton({ id, dataTestId, disa
8
8
  "ids-focus-anchor": focusAnchor
9
9
  }), type: "checkbox", disabled: disabled, ...props }), jsx("label", { htmlFor: inputId, className: "ids-check-button__label", children: children })] }));
10
10
  });
11
+ IDSCheckButton.displayName = "IDSCheckButton";
11
12
 
12
13
  export { IDSCheckButton };
@@ -1,19 +1,13 @@
1
- import React, { ReactNode, ReactElement, InputHTMLAttributes } from "react";
2
- export interface IDSCheckboxBaseProps extends InputHTMLAttributes<HTMLInputElement> {
3
- invalid?: boolean;
4
- disabled?: boolean;
5
- required?: boolean;
1
+ import React, { ReactElement } from "react";
2
+ import { CommonFormPropsWithReadOnly } from "../form-props/form-props";
3
+ export interface IDSCheckboxBaseProps extends React.InputHTMLAttributes<HTMLInputElement>, CommonFormPropsWithReadOnly {
6
4
  indeterminate?: boolean;
7
- light?: boolean;
8
5
  block?: boolean;
9
- compact?: boolean;
10
- focusAnchor?: boolean;
11
- errorMsg?: string | ReactNode;
12
- tooltip?: ReactNode;
13
- dataTestId?: string;
14
- id?: string;
15
6
  groupErrorMsgId?: string;
16
7
  errorMsgId?: string;
17
8
  inputRef?: React.Ref<HTMLInputElement>;
18
9
  }
19
- export declare function IDSCheckboxBase({ invalid, disabled, required, indeterminate, light, block, compact, focusAnchor, errorMsg, tooltip, children, dataTestId, id, groupErrorMsgId, errorMsgId, inputRef, className, ...props }: IDSCheckboxBaseProps): ReactElement;
10
+ export declare function IDSCheckboxBase({ invalid, disabled, required, indeterminate, light, block, focusAnchor, errorMsg, tooltip, children, dataTestId, id, groupErrorMsgId, errorMsgId, inputRef, className, ...props }: IDSCheckboxBaseProps): ReactElement;
11
+ export declare namespace IDSCheckboxBase {
12
+ var displayName: string;
13
+ }
@@ -3,28 +3,28 @@ import { useId } from 'react';
3
3
  import clsx from 'clsx';
4
4
  import { IDSErrorMessage } from '../error-message/error-message.js';
5
5
 
6
- function IDSCheckboxBase({ invalid, disabled, required, indeterminate, light, block, compact, focusAnchor, errorMsg, tooltip, children, dataTestId, id, groupErrorMsgId, errorMsgId, inputRef, className, ...props }) {
6
+ function IDSCheckboxBase({ invalid, disabled, required, indeterminate, light, block, focusAnchor, errorMsg, tooltip, children, dataTestId, id, groupErrorMsgId, errorMsgId, inputRef, className, ...props }) {
7
7
  const reactId = useId();
8
- const inputId = !!id ? id : `checkbox-base-${reactId}`;
9
- const baseErrorMsgId = !!errorMsgId ? errorMsgId : `checkbox-base-error-${reactId}`;
8
+ const inputId = id ?? `checkbox-base-${reactId}`;
9
+ const baseErrorMsgId = errorMsgId ?? `checkbox-base-error-${reactId}`;
10
10
  const showErrorMsg = invalid && !!errorMsg;
11
- const ariaErrorHandler = showErrorMsg || !!groupErrorMsgId
12
- ? {
13
- "aria-describedby": groupErrorMsgId || baseErrorMsgId
14
- }
15
- : {};
11
+ const ariaErrorHandler = {};
12
+ if (showErrorMsg || !!groupErrorMsgId) {
13
+ ariaErrorHandler["aria-describedby"] = groupErrorMsgId || baseErrorMsgId;
14
+ }
16
15
  const ariaCheckedHandler = indeterminate ? { "aria-checked": "mixed" } : {};
17
16
  return (jsxs("div", { className: clsx("ids-checkbox-component", className), style: { display: "inline-flex", flexDirection: "column", gap: showErrorMsg ? "0.5rem" : "" }, "data-testid": dataTestId, children: [jsxs("div", { className: clsx("ids-checkbox", {
18
17
  "ids-checkbox--light": light,
19
18
  "ids-checkbox--block": block
20
19
  }), "data-testid": dataTestId, children: [jsx("input", { id: inputId, ref: inputRef, type: "checkbox", className: clsx("ids-checkbox__input", {
21
20
  "ids-focus-anchor": focusAnchor
22
- }), "aria-invalid": invalid, disabled: disabled, "aria-disabled": disabled, required: required, "aria-required": required, ...ariaErrorHandler, ...ariaCheckedHandler, ...props }), !!children && (jsxs("div", { className: clsx("ids-label-wrapper", {
21
+ }), "aria-invalid": invalid, disabled: disabled, required: required, ...ariaErrorHandler, ...ariaCheckedHandler, ...props }), !!children && (jsxs("div", { className: clsx("ids-label-wrapper", {
23
22
  "ids-label-wrapper--block": block
24
23
  }), children: [jsx("label", { htmlFor: inputId, className: clsx("ids-checkbox__label ids-label", {
25
24
  "ids-label--clickable": !disabled,
26
25
  "ids-label--disabled": disabled
27
- }), children: children }), tooltip && jsx("span", { className: "ids-label__tooltip", children: tooltip })] }))] }), showErrorMsg && (jsx(IDSErrorMessage, { id: baseErrorMsgId, show: true, compact: true, children: errorMsg }))] }));
26
+ }), children: children }), tooltip && jsx("span", { className: "ids-label__tooltip", children: tooltip })] }))] }), showErrorMsg && (jsx(IDSErrorMessage, { id: baseErrorMsgId, show: true, children: errorMsg }))] }));
28
27
  }
28
+ IDSCheckboxBase.displayName = "IDSCheckboxBase";
29
29
 
30
30
  export { IDSCheckboxBase };
@@ -11,3 +11,6 @@ export interface IDSCheckboxGroupBaseProps extends InputHTMLAttributes<HTMLField
11
11
  groupRef?: React.Ref<HTMLFieldSetElement>;
12
12
  }
13
13
  export declare function IDSCheckboxGroupBase({ legend, errorMsg, compact, hideLegend, tooltip, children, className, invalid, errorMsgId, groupRef, ...props }: IDSCheckboxGroupBaseProps): import("react/jsx-runtime").JSX.Element;
14
+ export declare namespace IDSCheckboxGroupBase {
15
+ var displayName: string;
16
+ }
@@ -4,12 +4,13 @@ import clsx from 'clsx';
4
4
  import { IDSErrorMessage } from '../error-message/error-message.js';
5
5
 
6
6
  function IDSCheckboxGroupBase({ legend, errorMsg = "", compact = false, hideLegend, tooltip, children, className, invalid = false, errorMsgId, groupRef, ...props }) {
7
- const baseErrorMsgId = !!errorMsgId ? errorMsgId : `checkbox-group-base-error-${useId()}`;
8
- return (jsxs("fieldset", { ref: groupRef, className: clsx("ids-form-group__fieldset", {
7
+ const baseErrorMsgId = errorMsgId ?? `checkbox-group-base-error-${useId()}`;
8
+ return (jsxs("fieldset", { ref: groupRef, "aria-describedby": invalid && errorMsg ? baseErrorMsgId : undefined, className: clsx("ids-form-group__fieldset", {
9
9
  "ids-form-group__fieldset--compact": compact
10
10
  }, className), ...props, children: [legend && (jsx("div", { className: clsx("ids-label-wrapper", {
11
11
  "ids-label-wrapper--sr-only": hideLegend
12
12
  }, className), children: jsxs("legend", { children: [legend, tooltip && jsx("span", { className: "ids-legend__tooltip", children: tooltip })] }) })), children, invalid && !!errorMsg && (jsx(IDSErrorMessage, { id: baseErrorMsgId, show: true, compact: true, style: { marginTop: compact ? "0.75rem" : "auto" }, children: errorMsg }))] }));
13
13
  }
14
+ IDSCheckboxGroupBase.displayName = "IDSCheckboxGroupBase";
14
15
 
15
16
  export { IDSCheckboxGroupBase };
@@ -12,3 +12,6 @@ export interface IDSCheckboxGroupProps extends InputHTMLAttributes<HTMLFieldSetE
12
12
  onValidityChange?: (isValid: boolean) => void;
13
13
  }
14
14
  export declare function IDSCheckboxGroup({ errorMsg, block, invalid, noValidation, onValidityChange, children, ...props }: IDSCheckboxGroupProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare namespace IDSCheckboxGroup {
16
+ var displayName: string;
17
+ }
@@ -36,5 +36,6 @@ function IDSCheckboxGroup({ errorMsg = "", block, invalid, noValidation = false,
36
36
  });
37
37
  return (jsx(IDSCheckboxGroupBase, { ...props, groupRef: groupRef, invalid: groupInvalid || invalid, errorMsgId: errorMsgId, errorMsg: !noValidation && errorMsg, children: clonedChildren }));
38
38
  }
39
+ IDSCheckboxGroup.displayName = "IDSCheckboxGroup";
39
40
 
40
41
  export { IDSCheckboxGroup };
@@ -1,19 +1,9 @@
1
- import React, { ReactNode, InputHTMLAttributes } from "react";
2
- export interface IDSCheckboxProps extends InputHTMLAttributes<HTMLInputElement> {
3
- id?: string;
4
- key?: string;
5
- invalid?: boolean;
6
- disabled?: boolean;
7
- required?: boolean;
1
+ import React from "react";
2
+ import { CommonFormPropsWithReadOnly } from "../form-props/form-props";
3
+ export interface IDSCheckboxProps extends React.InputHTMLAttributes<HTMLInputElement>, CommonFormPropsWithReadOnly {
8
4
  indeterminate?: boolean;
9
- noValidation?: boolean;
10
- light?: boolean;
11
- block?: boolean;
12
- compact?: boolean;
13
- focusAnchor?: boolean;
14
- errorMsg?: string | ReactNode;
15
- tooltip?: ReactNode;
16
- dataTestId?: string;
17
5
  groupErrorMsgId?: string;
6
+ key?: string;
7
+ block?: boolean;
18
8
  }
19
9
  export declare const IDSCheckbox: React.ForwardRefExoticComponent<IDSCheckboxProps & React.RefAttributes<HTMLInputElement>>;
@@ -8,14 +8,22 @@ const IDSCheckbox = forwardRef(({ invalid = false, noValidation = false, indeter
8
8
  const internalRef = useRef(null);
9
9
  const checkboxRef = ref ?? internalRef;
10
10
  const hasValidValue = useInputValidity(checkboxRef);
11
- const isInvalid = (invalid || !hasValidValue) && !noValidation;
11
+ const computedInvalid = (invalid || !hasValidValue) && !noValidation;
12
+ // Merge forwarded + local ref
13
+ const mergedRef = (node) => {
14
+ checkboxRef.current = node;
15
+ if (typeof ref === "function")
16
+ ref(node);
17
+ else if (ref)
18
+ ref.current = node;
19
+ };
12
20
  // indeterminate support
13
21
  useEffect(() => {
14
22
  if (checkboxRef.current) {
15
23
  checkboxRef.current.indeterminate = indeterminate;
16
24
  }
17
25
  }, [indeterminate]);
18
- return (jsx(IDSCheckboxBase, { ...props, inputRef: checkboxRef, invalid: isInvalid, indeterminate: indeterminate, children: children }));
26
+ return (jsx(IDSCheckboxBase, { ...props, inputRef: mergedRef, invalid: computedInvalid, indeterminate: indeterminate, children: children }));
19
27
  });
20
28
  IDSCheckbox.displayName = "IDSCheckbox";
21
29
 
@@ -1,15 +1,14 @@
1
- import React, { ReactNode } from "react";
1
+ import React from "react";
2
2
  import { Matcher, Modifiers } from "react-day-picker";
3
+ import { CommonFormPropsWithReadOnly } from "../form-props/form-props";
3
4
  export interface IDSDatePickerChangeEvent {
4
5
  value: string;
5
6
  valueAsDate?: Date;
6
7
  invalidDate: boolean;
7
8
  missingDate: boolean;
8
9
  }
9
- export interface IDSDatePickerProps extends Omit<React.HTMLAttributes<HTMLElement>, "onChange"> {
10
- label: string;
10
+ export interface IDSDatePickerProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange">, CommonFormPropsWithReadOnly {
11
11
  value?: string;
12
- light?: boolean;
13
12
  placeholder?: string;
14
13
  calendarHeader?: string;
15
14
  defaultMonth?: Date;
@@ -18,16 +17,10 @@ export interface IDSDatePickerProps extends Omit<React.HTMLAttributes<HTMLElemen
18
17
  srOpenText?: string;
19
18
  srCloseText?: string;
20
19
  focusedDay?: Date;
21
- disabled?: boolean;
22
- required?: boolean;
23
- noValidation?: boolean;
24
- errorMsg?: string;
25
20
  missingDateErrorMsg?: string;
26
21
  invalidDateErrorMsg?: string;
27
- validationOnBlur?: boolean;
28
- invalid?: boolean;
29
22
  disableNavigation?: boolean;
30
- tooltip?: ReactNode;
23
+ noValidation?: boolean;
31
24
  modifiers?: Record<string, Matcher | Matcher[]>;
32
25
  onChange?: (event: IDSDatePickerChangeEvent) => void;
33
26
  onOpen?: () => void;
@@ -35,3 +28,6 @@ export interface IDSDatePickerProps extends Omit<React.HTMLAttributes<HTMLElemen
35
28
  onDayClick?: (date: Date, modifiers: Modifiers, e: React.MouseEvent) => void;
36
29
  }
37
30
  export declare function IDSDatePicker({ label, id, value, light, placeholder, errorMsg, missingDateErrorMsg, invalidDateErrorMsg, calendarHeader, srOpenText, srCloseText, validationOnBlur, defaultMonth, startMonth, endMonth, noValidation, disabled, required, invalid, tooltip, disableNavigation, modifiers, focusedDay, onChange, onFocus, onBlur, onOpen, onClose, onDayClick, className, ...props }: IDSDatePickerProps): import("react/jsx-runtime").JSX.Element;
31
+ export declare namespace IDSDatePicker {
32
+ var displayName: string;
33
+ }
@@ -7,6 +7,7 @@ import { IDSErrorMessage } from '../error-message/error-message.js';
7
7
  import { DayPicker, WeekNumberHeader, MonthsDropdown, YearsDropdown, useDayPicker, DropdownNav } from 'react-day-picker';
8
8
  import { useFocusTrap } from '../../utils/hooks/useFocusTrap.js';
9
9
  import { useAriaDescribedBy } from '../form-hooks/useAriaDescribedBy.js';
10
+ import { useClickOutside } from '../../utils/hooks/useClickOutside.js';
10
11
 
11
12
  const locale = { locale: sv };
12
13
  const createNewDate = (dateString) => {
@@ -46,11 +47,15 @@ function IDSDatePicker({ label, id, value, light = false, placeholder = "ååå
46
47
  const [hasMissingError, setHasMissingError] = useState(false);
47
48
  const [hasOtherError, setHasOtherError] = useState(false);
48
49
  const hasError = hasMissingError || hasDateError || hasOtherError || invalid;
49
- const showInvalidError = !!hasDateError && !!invalidDateErrorMsg;
50
- const showMissingError = !!hasMissingError && !!missingDateErrorMsg;
51
- const showError = !!invalid && !!errorMsg && !isDialogOpen;
50
+ const showInvalidError = !!hasDateError && !!invalidDateErrorMsg && !noValidation;
51
+ const showMissingError = !!hasMissingError && !!missingDateErrorMsg && !noValidation;
52
+ const showError = !!invalid && !!errorMsg && !isDialogOpen && !noValidation;
52
53
  useAriaDescribedBy(inputRef, errorMsgId, invalid, (showError || showMissingError || showInvalidError) && !noValidation);
53
54
  useFocusTrap(dialogRef.current, isDialogOpen);
55
+ useClickOutside(() => {
56
+ setIsDialogOpen(false);
57
+ onClose?.();
58
+ }, [dialogRef, triggerRef], triggerRef, isDialogOpen);
54
59
  const handleOpenDialog = (e) => {
55
60
  e.preventDefault();
56
61
  setIsDialogOpen(true);
@@ -61,15 +66,6 @@ function IDSDatePicker({ label, id, value, light = false, placeholder = "ååå
61
66
  triggerRef.current.focus();
62
67
  onClose?.();
63
68
  };
64
- useEffect(() => {
65
- const handleClickOutside = (event) => {
66
- if (dialogRef.current && !dialogRef.current.contains(event.target)) {
67
- setIsDialogOpen(false);
68
- }
69
- };
70
- document.addEventListener("mousedown", handleClickOutside);
71
- return () => document.removeEventListener("mousedown", handleClickOutside);
72
- }, []);
73
69
  useEffect(() => {
74
70
  if (!isDialogOpen)
75
71
  return;
@@ -125,11 +121,13 @@ function IDSDatePicker({ label, id, value, light = false, placeholder = "ååå
125
121
  resetErrors();
126
122
  setInputValue(e.currentTarget.value);
127
123
  const parsedDate = createNewDate(e.currentTarget.value);
124
+ setHasDateError(false);
128
125
  if (isValid(parsedDate)) {
129
126
  setSelectedDate(parsedDate);
130
127
  setMonth(parsedDate);
131
128
  }
132
129
  else {
130
+ setHasDateError(true);
133
131
  setSelectedDate(undefined);
134
132
  }
135
133
  emitValue(e.currentTarget.value, parsedDate);
@@ -139,6 +137,7 @@ function IDSDatePicker({ label, id, value, light = false, placeholder = "ååå
139
137
  if (value !== inputValue && inputRef.current) {
140
138
  resetErrors();
141
139
  setInputValue(value);
140
+ setHasDateError(false);
142
141
  if (value) {
143
142
  const parsedDate = createNewDate(value);
144
143
  if (isValid(parsedDate)) {
@@ -147,6 +146,7 @@ function IDSDatePicker({ label, id, value, light = false, placeholder = "ååå
147
146
  }
148
147
  else {
149
148
  setSelectedDate(undefined);
149
+ setHasDateError(true);
150
150
  }
151
151
  }
152
152
  }
@@ -174,7 +174,7 @@ function IDSDatePicker({ label, id, value, light = false, placeholder = "ååå
174
174
  const form = inputRef.current?.form;
175
175
  if (!form)
176
176
  return;
177
- const handleSubmit = (e) => {
177
+ const handleSubmit = (_e) => {
178
178
  if (!noValidation) {
179
179
  requestAnimationFrame(() => {
180
180
  updateErrors(inputRef.current.validity, !isValid(createNewDate(inputRef.current.value)));
@@ -214,10 +214,10 @@ function IDSDatePicker({ label, id, value, light = false, placeholder = "ååå
214
214
  return;
215
215
  header?.focus();
216
216
  }, [isDialogOpen]);
217
- return (jsxs("div", { className: clsx("ids-datepicker", { "ids-datepicker--invalid": !noValidation && hasError }, className), ...props, children: [isDialogOpen && jsx("div", { className: "ids-datepicker__overlay" }), label && (jsxs("div", { className: "ids-label-wrapper ids-label-wrapper--margin-bottom", children: [jsx("label", { htmlFor: inputId, className: "ids-label", children: label }), tooltip && jsx("span", { className: "ids-label__tooltip", children: tooltip })] })), jsxs("div", { className: "ids-datepicker__input-wrapper", children: [jsx("input", { className: clsx("ids-datepicker__input", { "ids-input--light": light }), ref: inputRef, style: { fontSize: "inherit" }, id: inputId, type: "text", value: inputValue, required: required, disabled: disabled, "aria-invalid": !noValidation && hasError, placeholder: placeholder, onChange: handleInputChange, onInvalid: handleInvalid, onBlur: handleBlur, pattern: "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])$" }), jsx("button", { ref: triggerRef, type: "button", className: "ids-datepicker__trigger", style: { fontSize: "inherit" }, disabled: disabled, onClick: handleOpenDialog, "aria-controls": "dialog", "aria-haspopup": "dialog", "aria-expanded": isDialogOpen, "aria-label": srOpenText }), jsxs("div", { className: clsx("ids-datepicker__dialog", { "ids-datepicker__dialog--show": isDialogOpen }), role: "dialog", ref: dialogRef, id: dialogId, "aria-modal": true, "aria-labelledby": headerId, children: [jsxs("div", { className: "ids-datepicker__dialog-bar", children: [jsx("div", { className: "ids-datepicker__dialog-header", id: headerId, ref: headerRef, tabIndex: -1, children: calendarHeader }), jsx("button", { className: "ids-datepicker__dialog-close-button", onClick: closeDialog, "aria-label": srCloseText })] }), jsx(DayPicker, { mode: "single", locale: sv, labels: {
217
+ return (jsxs("div", { className: clsx("ids-datepicker", { "ids-datepicker--invalid": !noValidation && hasError }, className), ...props, children: [isDialogOpen && jsx("div", { className: "ids-datepicker__overlay" }), label && (jsxs("div", { className: "ids-label-wrapper ids-label-wrapper--margin-bottom", children: [jsx("label", { htmlFor: inputId, className: "ids-label", children: label }), tooltip && jsx("span", { className: "ids-label__tooltip", children: tooltip })] })), jsxs("div", { className: "ids-datepicker__input-wrapper", children: [jsx("input", { className: clsx("ids-datepicker__input", { "ids-input--light": light }), ref: inputRef, style: { fontSize: "inherit" }, id: inputId, type: "text", value: inputValue, required: required, disabled: disabled, "aria-invalid": !noValidation && hasError, placeholder: placeholder, onChange: handleInputChange, onInvalid: handleInvalid, onBlur: handleBlur, pattern: "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])$" }), jsx("button", { ref: triggerRef, type: "button", className: "ids-datepicker__trigger", style: { fontSize: "inherit" }, disabled: disabled, onClick: handleOpenDialog, "aria-controls": "dialog", "aria-haspopup": "dialog", "aria-expanded": isDialogOpen, "aria-label": srOpenText }), jsxs("div", { className: clsx("ids-datepicker__dialog", { "ids-datepicker__dialog--show": isDialogOpen }), role: "dialog", ref: dialogRef, id: dialogId, "aria-modal": true, "aria-labelledby": headerId, children: [jsxs("div", { className: "ids-datepicker__dialog-bar", children: [jsx("div", { className: "ids-datepicker__dialog-header", id: headerId, ref: headerRef, tabIndex: -1, children: calendarHeader }), jsx("button", { className: "ids-datepicker__dialog-close-button", type: "button", onClick: closeDialog, "aria-label": srCloseText })] }), jsx(DayPicker, { mode: "single", locale: sv, labels: {
218
218
  labelWeekNumberHeader: () => "Veckonumer",
219
- labelWeekNumber: (weekNumber) => `vecka`,
220
- labelDayButton(date, modifiers, options, dateLib) {
219
+ labelWeekNumber: (_weekNumber) => `vecka`,
220
+ labelDayButton(date, _modifiers, _options, dateLib) {
221
221
  const formattedDate = dateLib.format(date, "EEEE d MMMM yyyy", { locale: sv });
222
222
  const weekNumber = getWeek(date, {
223
223
  weekStartsOn: 1,
@@ -237,5 +237,6 @@ function IDSDatePicker({ label, id, value, light = false, placeholder = "ååå
237
237
  YearsDropdown: props => (jsx(YearsDropdown, { ...props, disabled: disableNavigation, className: "ids-datepicker__year-select" }))
238
238
  }, startMonth: startMonth, endMonth: endMonth, month: month, onMonthChange: setMonth, defaultMonth: defaultMonth, selected: selectedDate, onSelect: handleDayPickerSelect, onDayClick: onDayClick })] })] }), (showError || showInvalidError || showMissingError) && (jsxs(IDSErrorMessage, { id: errorMsgId, show: true, children: [showInvalidError && !showMissingError && !showError && invalidDateErrorMsg, showMissingError && !showInvalidError && !showError && missingDateErrorMsg, showError && errorMsg] }))] }));
239
239
  }
240
+ IDSDatePicker.displayName = "IDSDatePicker";
240
241
 
241
242
  export { IDSDatePicker };
@@ -6,4 +6,7 @@ interface IDSErrorMessageProps extends React.HTMLAttributes<HTMLDivElement> {
6
6
  children?: ReactNode;
7
7
  }
8
8
  export declare function IDSErrorMessage({ show, compact, id, children, className, ...props }: IDSErrorMessageProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare namespace IDSErrorMessage {
10
+ var displayName: string;
11
+ }
9
12
  export {};
@@ -6,5 +6,6 @@ function IDSErrorMessage({ show = false, compact = false, id, children, classNam
6
6
  "ids-error-message--show": show
7
7
  }, className), ...props, children: jsxs("span", { className: "ids-error-message__text", children: [" ", children, " "] }) }));
8
8
  }
9
+ IDSErrorMessage.displayName = "IDSErrorMessage";
9
10
 
10
11
  export { IDSErrorMessage };
@@ -0,0 +1,18 @@
1
+ import { ReactNode } from "react";
2
+ export interface CommonFormProps {
3
+ disabled?: boolean;
4
+ required?: boolean;
5
+ invalid?: boolean;
6
+ noValidation?: boolean;
7
+ validationOnBlur?: boolean;
8
+ label?: string;
9
+ errorMsg?: string;
10
+ hint?: string | ReactNode;
11
+ tooltip?: ReactNode;
12
+ focusAnchor?: boolean;
13
+ dataTestId?: string;
14
+ light?: boolean;
15
+ }
16
+ export interface CommonFormPropsWithReadOnly extends CommonFormProps {
17
+ readOnly?: boolean;
18
+ }