@public-ui/sample-react 4.0.0-alpha.0 → 4.0.0-alpha.10

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 (712) hide show
  1. package/README.md +21 -2
  2. package/dist/assets/Alert-DzpS4CJD-CznI58Av.js +2 -0
  3. package/dist/assets/Alert-DzpS4CJD-CznI58Av.js.map +1 -0
  4. package/dist/assets/Collapsible-CIER1XyD-CCVXz7W8.js +2 -0
  5. package/dist/assets/Collapsible-CIER1XyD-CCVXz7W8.js.map +1 -0
  6. package/dist/assets/CustomSuggestionsOptionsGroup-C6GgxWBC-O703Eyna.js +2 -0
  7. package/dist/assets/CustomSuggestionsOptionsGroup-C6GgxWBC-O703Eyna.js.map +1 -0
  8. package/dist/assets/FieldControlStateWrapper-DDYTL8sS-D6Ov-duE.js +2 -0
  9. package/dist/assets/FieldControlStateWrapper-DDYTL8sS-D6Ov-duE.js.map +1 -0
  10. package/dist/assets/FormFieldStateWrapper-B3p0ZzG--DmEUXckD.js +2 -0
  11. package/dist/assets/FormFieldStateWrapper-B3p0ZzG--DmEUXckD.js.map +1 -0
  12. package/dist/assets/Heading-ClZtMSvA-B-SEEyYN.js +2 -0
  13. package/dist/assets/Heading-ClZtMSvA-B-SEEyYN.js.map +1 -0
  14. package/dist/assets/Icon-B8-kh-9q-cdzuq2LQ.js +2 -0
  15. package/dist/assets/Icon-B8-kh-9q-cdzuq2LQ.js.map +1 -0
  16. package/dist/assets/Input-CF2Hxzy7-R3WGmdMD.js +2 -0
  17. package/dist/assets/Input-CF2Hxzy7-R3WGmdMD.js.map +1 -0
  18. package/dist/assets/InputStateWrapper-BNXEE43D-Dz_72eJ0.js +2 -0
  19. package/dist/assets/InputStateWrapper-BNXEE43D-Dz_72eJ0.js.map +1 -0
  20. package/dist/assets/InternalUnderlinedBadgeText-CF6FOiQi-FLLqVWFj.js +2 -0
  21. package/dist/assets/InternalUnderlinedBadgeText-CF6FOiQi-FLLqVWFj.js.map +1 -0
  22. package/dist/assets/README.md +1 -0
  23. package/dist/assets/Span-CNwuRioU-CpQJxJzY.js +2 -0
  24. package/dist/assets/Span-CNwuRioU-CpQJxJzY.js.map +1 -0
  25. package/dist/assets/access-and-short-key-Dy2a7Py3-D3FG3jS9.js +2 -0
  26. package/dist/assets/access-and-short-key-Dy2a7Py3-D3FG3jS9.js.map +1 -0
  27. package/dist/assets/align-Bcqvz5vw-BBjz1uM7.js +2 -0
  28. package/dist/assets/align-Bcqvz5vw-BBjz1uM7.js.map +1 -0
  29. package/dist/assets/align-floating-elements-DUQRrio7-DJAxiHCK.js +2 -0
  30. package/dist/assets/align-floating-elements-DUQRrio7-DJAxiHCK.js.map +1 -0
  31. package/dist/assets/associated.controller-CvM-u0FR-BWXALlhJ.js +2 -0
  32. package/dist/assets/associated.controller-CvM-u0FR-BWXALlhJ.js.map +1 -0
  33. package/dist/assets/auto-complete-h9OoHuC5-BpT20QvE.js +2 -0
  34. package/dist/assets/auto-complete-h9OoHuC5-BpT20QvE.js.map +1 -0
  35. package/dist/assets/button-variant-ueS50zGR-jw3dS8sQ.js +2 -0
  36. package/dist/assets/button-variant-ueS50zGR-jw3dS8sQ.js.map +1 -0
  37. package/dist/assets/clsx-eK3rPvPS-B-dksMZM.js +2 -0
  38. package/dist/assets/clsx-eK3rPvPS-B-dksMZM.js.map +1 -0
  39. package/dist/assets/codicons/codicon.css +54 -1
  40. package/dist/assets/codicons/codicon.csv +41 -0
  41. package/dist/assets/codicons/codicon.svg +1 -1
  42. package/dist/assets/codicons/codicon.ttf +0 -0
  43. package/dist/assets/color-DLhBoaj--BGlcAOOS.js +2 -0
  44. package/dist/assets/color-DLhBoaj--BGlcAOOS.js.map +1 -0
  45. package/dist/assets/controller-BUJ57XsU-_S7dLy4z.js +2 -0
  46. package/dist/assets/controller-BUJ57XsU-_S7dLy4z.js.map +1 -0
  47. package/dist/assets/controller-DKkpnndm-BH5XagBP.js +2 -0
  48. package/dist/assets/controller-DKkpnndm-BH5XagBP.js.map +1 -0
  49. package/dist/assets/controller-DLgscExO-DSo9kG6v.js +2 -0
  50. package/dist/assets/controller-DLgscExO-DSo9kG6v.js.map +1 -0
  51. package/dist/assets/controller-icon-jwhou2Oz-B9hDiz5F.js +2 -0
  52. package/dist/assets/controller-icon-jwhou2Oz-B9hDiz5F.js.map +1 -0
  53. package/dist/assets/controller-q35akpMH-Cy0REM1l.js +2 -0
  54. package/dist/assets/controller-q35akpMH-Cy0REM1l.js.map +1 -0
  55. package/dist/assets/custom-class-Dg0c6ST7-D0jJYdlm.js +2 -0
  56. package/dist/assets/custom-class-Dg0c6ST7-D0jJYdlm.js.map +1 -0
  57. package/dist/assets/dev.utils-yQD-QKCU-CTXdCWUO.js +14 -0
  58. package/dist/assets/dev.utils-yQD-QKCU-CTXdCWUO.js.map +1 -0
  59. package/dist/assets/devtools-Bonmqoiz-Cf7aqlNl.js +14 -0
  60. package/dist/assets/devtools-Bonmqoiz-Cf7aqlNl.js.map +1 -0
  61. package/dist/assets/disabled-u5a_azlj-DDthpSns.js +2 -0
  62. package/dist/assets/disabled-u5a_azlj-DDthpSns.js.map +1 -0
  63. package/dist/assets/has-closer-DENzUWH2-BVxXP49m.js +2 -0
  64. package/dist/assets/has-closer-DENzUWH2-BVxXP49m.js.map +1 -0
  65. package/dist/assets/hide-label-DjBQJOAP-C2BOypr4.js +2 -0
  66. package/dist/assets/hide-label-DjBQJOAP-C2BOypr4.js.map +1 -0
  67. package/dist/assets/href-LHUCJ_IZ-CcMJQXzv.js +2 -0
  68. package/dist/assets/href-LHUCJ_IZ-CcMJQXzv.js.map +1 -0
  69. package/dist/assets/i18n-CQxlBXNV-Bs_gON2P.js +2 -0
  70. package/dist/assets/i18n-CQxlBXNV-Bs_gON2P.js.map +1 -0
  71. package/dist/assets/icons-CmMX8bbY-BsUQMS1k.js +2 -0
  72. package/dist/assets/icons-CmMX8bbY-BsUQMS1k.js.map +1 -0
  73. package/dist/assets/image-source-DqpWx57w-DrXvm2N8.js +2 -0
  74. package/dist/assets/image-source-DqpWx57w-DrXvm2N8.js.map +1 -0
  75. package/dist/assets/index-Bt2kD2D4.css +1 -0
  76. package/dist/assets/index-D9ygQgpL.js +22547 -0
  77. package/dist/assets/index-D9ygQgpL.js.map +1 -0
  78. package/dist/assets/inline-CeKQgcde-BDWnozYb.js +2 -0
  79. package/dist/assets/inline-CeKQgcde-BDWnozYb.js.map +1 -0
  80. package/dist/assets/isObject-DvSELytj-DhzEQer1.js +2 -0
  81. package/dist/assets/isObject-DvSELytj-DhzEQer1.js.map +1 -0
  82. package/dist/assets/keyboard-D6PoWr38-BGYQJqo4.js +2 -0
  83. package/dist/assets/keyboard-D6PoWr38-BGYQJqo4.js.map +1 -0
  84. package/dist/assets/kol-abbr.entry-CVemTlcS.js +262 -0
  85. package/dist/assets/kol-abbr.entry-CVemTlcS.js.map +1 -0
  86. package/dist/assets/kol-accordion.entry-ZE4XHffO.js +262 -0
  87. package/dist/assets/kol-accordion.entry-ZE4XHffO.js.map +1 -0
  88. package/dist/assets/kol-alert-wc.entry-CnPBvGgZ.js +2 -0
  89. package/dist/assets/kol-alert-wc.entry-CnPBvGgZ.js.map +1 -0
  90. package/dist/assets/kol-alert.entry-DzfeO1ck.js +283 -0
  91. package/dist/assets/kol-alert.entry-DzfeO1ck.js.map +1 -0
  92. package/dist/assets/kol-avatar-wc.entry-BoycVXyw.js +2 -0
  93. package/dist/assets/kol-avatar-wc.entry-BoycVXyw.js.map +1 -0
  94. package/dist/assets/kol-avatar.entry-HqiALmid.js +229 -0
  95. package/dist/assets/kol-avatar.entry-HqiALmid.js.map +1 -0
  96. package/dist/assets/kol-badge.entry-8Ls5W1-H.js +273 -0
  97. package/dist/assets/kol-badge.entry-8Ls5W1-H.js.map +1 -0
  98. package/dist/assets/kol-breadcrumb.entry-C_q81ADT.js +301 -0
  99. package/dist/assets/kol-breadcrumb.entry-C_q81ADT.js.map +1 -0
  100. package/dist/assets/kol-button-link.entry-kIBoCi0H.js +293 -0
  101. package/dist/assets/kol-button-link.entry-kIBoCi0H.js.map +1 -0
  102. package/dist/assets/kol-button-wc.entry-DpxmFMkL.js +2 -0
  103. package/dist/assets/kol-button-wc.entry-DpxmFMkL.js.map +1 -0
  104. package/dist/assets/kol-button.entry-BsjF_xs2.js +281 -0
  105. package/dist/assets/kol-button.entry-BsjF_xs2.js.map +1 -0
  106. package/dist/assets/kol-card-wc.entry-C2fnGX9l.js +2 -0
  107. package/dist/assets/kol-card-wc.entry-C2fnGX9l.js.map +1 -0
  108. package/dist/assets/kol-card.entry-8zV_YsaR.js +286 -0
  109. package/dist/assets/kol-card.entry-8zV_YsaR.js.map +1 -0
  110. package/dist/assets/kol-combobox.entry-C77kC3qm.js +386 -0
  111. package/dist/assets/kol-combobox.entry-C77kC3qm.js.map +1 -0
  112. package/dist/assets/kol-details.entry--UxnwBZL.js +273 -0
  113. package/dist/assets/kol-details.entry--UxnwBZL.js.map +1 -0
  114. package/dist/assets/kol-drawer.entry-C_QbgsoK.js +325 -0
  115. package/dist/assets/kol-drawer.entry-C_QbgsoK.js.map +1 -0
  116. package/dist/assets/kol-form.entry-8_2s2CHt.js +308 -0
  117. package/dist/assets/kol-form.entry-8_2s2CHt.js.map +1 -0
  118. package/dist/assets/kol-heading.entry-vEksA2CZ.js +205 -0
  119. package/dist/assets/kol-heading.entry-vEksA2CZ.js.map +1 -0
  120. package/dist/assets/kol-icon.entry-XQZFaUlO.js +2375 -0
  121. package/dist/assets/kol-icon.entry-XQZFaUlO.js.map +1 -0
  122. package/dist/assets/kol-image.entry-Dd0bm8f2.js +207 -0
  123. package/dist/assets/kol-image.entry-Dd0bm8f2.js.map +1 -0
  124. package/dist/assets/kol-input-checkbox.entry-BwoERhKS.js +460 -0
  125. package/dist/assets/kol-input-checkbox.entry-BwoERhKS.js.map +1 -0
  126. package/dist/assets/kol-input-color.entry-DmP3-OLD.js +357 -0
  127. package/dist/assets/kol-input-color.entry-DmP3-OLD.js.map +1 -0
  128. package/dist/assets/kol-input-date.entry-veV69ftf.js +359 -0
  129. package/dist/assets/kol-input-date.entry-veV69ftf.js.map +1 -0
  130. package/dist/assets/kol-input-email.entry-WuzasvJu.js +339 -0
  131. package/dist/assets/kol-input-email.entry-WuzasvJu.js.map +1 -0
  132. package/dist/assets/kol-input-file.entry-eWzGGuLk.js +388 -0
  133. package/dist/assets/kol-input-file.entry-eWzGGuLk.js.map +1 -0
  134. package/dist/assets/kol-input-number.entry-Cyw5Y0_B.js +346 -0
  135. package/dist/assets/kol-input-number.entry-Cyw5Y0_B.js.map +1 -0
  136. package/dist/assets/kol-input-password.entry-DgItvBL6.js +342 -0
  137. package/dist/assets/kol-input-password.entry-DgItvBL6.js.map +1 -0
  138. package/dist/assets/kol-input-radio.entry-CAKyYUCP.js +459 -0
  139. package/dist/assets/kol-input-radio.entry-CAKyYUCP.js.map +1 -0
  140. package/dist/assets/kol-input-range.entry-BBU90Lo9.js +386 -0
  141. package/dist/assets/kol-input-range.entry-BBU90Lo9.js.map +1 -0
  142. package/dist/assets/kol-input-text.entry-CCtLxC_E.js +339 -0
  143. package/dist/assets/kol-input-text.entry-CCtLxC_E.js.map +1 -0
  144. package/dist/assets/kol-kolibri.entry-AwuchqCv.js +211 -0
  145. package/dist/assets/kol-kolibri.entry-AwuchqCv.js.map +1 -0
  146. package/dist/assets/kol-link-button.entry-CRRQNJrY.js +281 -0
  147. package/dist/assets/kol-link-button.entry-CRRQNJrY.js.map +1 -0
  148. package/dist/assets/kol-link-wc.entry-BebojOG8.js +2 -0
  149. package/dist/assets/kol-link-wc.entry-BebojOG8.js.map +1 -0
  150. package/dist/assets/kol-link.entry-DXifcQI8.js +289 -0
  151. package/dist/assets/kol-link.entry-DXifcQI8.js.map +1 -0
  152. package/dist/assets/kol-modal.entry-C3vVLSDB.js +301 -0
  153. package/dist/assets/kol-modal.entry-C3vVLSDB.js.map +1 -0
  154. package/dist/assets/kol-nav.entry-DfgZuMtU.js +297 -0
  155. package/dist/assets/kol-nav.entry-DfgZuMtU.js.map +1 -0
  156. package/dist/assets/kol-pagination-wc.entry-Bpq_U4eQ.js +2 -0
  157. package/dist/assets/kol-pagination-wc.entry-Bpq_U4eQ.js.map +1 -0
  158. package/dist/assets/kol-pagination.entry-IT4QAnOG.js +283 -0
  159. package/dist/assets/kol-pagination.entry-IT4QAnOG.js.map +1 -0
  160. package/dist/assets/kol-popover-button-wc.entry-Dd1lzvY3.js +2 -0
  161. package/dist/assets/kol-popover-button-wc.entry-Dd1lzvY3.js.map +1 -0
  162. package/dist/assets/kol-popover-button.entry-sFTORXui.js +299 -0
  163. package/dist/assets/kol-popover-button.entry-sFTORXui.js.map +1 -0
  164. package/dist/assets/kol-popover-wc.entry-drcDMJuT.js +2 -0
  165. package/dist/assets/kol-popover-wc.entry-drcDMJuT.js.map +1 -0
  166. package/dist/assets/kol-progress.entry-HKsFCBRH.js +283 -0
  167. package/dist/assets/kol-progress.entry-HKsFCBRH.js.map +1 -0
  168. package/dist/assets/kol-quote.entry-D3Y4Gkhj.js +228 -0
  169. package/dist/assets/kol-quote.entry-D3Y4Gkhj.js.map +1 -0
  170. package/dist/assets/kol-select.entry-DN0f7EIq.js +354 -0
  171. package/dist/assets/kol-select.entry-DN0f7EIq.js.map +1 -0
  172. package/dist/assets/kol-single-select.entry-XUu_V8oD.js +396 -0
  173. package/dist/assets/kol-single-select.entry-XUu_V8oD.js.map +1 -0
  174. package/dist/assets/kol-skip-nav.entry-DDyRk9Dh.js +221 -0
  175. package/dist/assets/kol-skip-nav.entry-DDyRk9Dh.js.map +1 -0
  176. package/dist/assets/kol-spin.entry-C0bmsgIy.js +334 -0
  177. package/dist/assets/kol-spin.entry-C0bmsgIy.js.map +1 -0
  178. package/dist/assets/kol-split-button.entry-y9JcUE7Z.js +324 -0
  179. package/dist/assets/kol-split-button.entry-y9JcUE7Z.js.map +1 -0
  180. package/dist/assets/kol-table-settings-wc.entry-sowYy9Vo.js +2 -0
  181. package/dist/assets/kol-table-settings-wc.entry-sowYy9Vo.js.map +1 -0
  182. package/dist/assets/kol-table-stateful.entry-B82YNFHs.js +514 -0
  183. package/dist/assets/kol-table-stateful.entry-B82YNFHs.js.map +1 -0
  184. package/dist/assets/kol-table-stateless-wc.entry-BQHIXqKL.js +2 -0
  185. package/dist/assets/kol-table-stateless-wc.entry-BQHIXqKL.js.map +1 -0
  186. package/dist/assets/kol-table-stateless.entry-BDJGhfHG.js +473 -0
  187. package/dist/assets/kol-table-stateless.entry-BDJGhfHG.js.map +1 -0
  188. package/dist/assets/kol-tabs.entry-Ctu4XMNN.js +310 -0
  189. package/dist/assets/kol-tabs.entry-Ctu4XMNN.js.map +1 -0
  190. package/dist/assets/kol-textarea.entry-BJqUrxrp.js +337 -0
  191. package/dist/assets/kol-textarea.entry-BJqUrxrp.js.map +1 -0
  192. package/dist/assets/kol-toast-container.entry-DQnF3J0_.js +292 -0
  193. package/dist/assets/kol-toast-container.entry-DQnF3J0_.js.map +1 -0
  194. package/dist/assets/kol-toolbar.entry-CI3jGR0V.js +313 -0
  195. package/dist/assets/kol-toolbar.entry-CI3jGR0V.js.map +1 -0
  196. package/dist/assets/kol-tooltip-wc.entry-DxNr5skK.js +2 -0
  197. package/dist/assets/kol-tooltip-wc.entry-DxNr5skK.js.map +1 -0
  198. package/dist/assets/kol-tree-item-wc.entry-D0nKqCYQ.js +2 -0
  199. package/dist/assets/kol-tree-item-wc.entry-D0nKqCYQ.js.map +1 -0
  200. package/dist/assets/kol-tree-item.entry-DHGHWJkh.js +238 -0
  201. package/dist/assets/kol-tree-item.entry-DHGHWJkh.js.map +1 -0
  202. package/dist/assets/kol-tree-wc.entry-BRk_Ps9N.js +2 -0
  203. package/dist/assets/kol-tree-wc.entry-BRk_Ps9N.js.map +1 -0
  204. package/dist/assets/kol-tree.entry-qKBOQfs6.js +211 -0
  205. package/dist/assets/kol-tree.entry-qKBOQfs6.js.map +1 -0
  206. package/dist/assets/kol-version.entry-hC3_z2Ah.js +200 -0
  207. package/dist/assets/kol-version.entry-hC3_z2Ah.js.map +1 -0
  208. package/dist/assets/kreon/OFL.txt +93 -93
  209. package/dist/assets/label-ohY9ajP0-DL9LDU0L.js +2 -0
  210. package/dist/assets/label-ohY9ajP0-DL9LDU0L.js.map +1 -0
  211. package/dist/assets/markdown-CVks1MC0-Cgkgxqwt.js +17 -0
  212. package/dist/assets/markdown-CVks1MC0-Cgkgxqwt.js.map +1 -0
  213. package/dist/assets/material-icons/README.md +19 -14
  214. package/dist/assets/material-icons/_data/versions.json +2123 -2123
  215. package/dist/assets/material-icons/css/_mixins.scss +2 -2
  216. package/dist/assets/material-icons/css/_variables.scss +3 -3
  217. package/dist/assets/material-icons/css/material-icons.scss +16 -22
  218. package/dist/assets/material-icons/iconfont/filled.scss +3 -3
  219. package/dist/assets/material-icons/iconfont/material-icons.scss +5 -5
  220. package/dist/assets/material-icons/iconfont/outlined.scss +3 -3
  221. package/dist/assets/material-icons/iconfont/round.scss +3 -3
  222. package/dist/assets/material-icons/iconfont/sharp.scss +3 -3
  223. package/dist/assets/material-icons/iconfont/two-tone.scss +3 -3
  224. package/dist/assets/material-icons/index.d.ts +2122 -2122
  225. package/dist/assets/material-icons/package.json +50 -50
  226. package/dist/assets/material-symbols/README.md +18 -11
  227. package/dist/assets/material-symbols/index.d.ts +2803 -2803
  228. package/dist/assets/material-symbols/index.scss +3 -3
  229. package/dist/assets/material-symbols/outlined.scss +2 -2
  230. package/dist/assets/material-symbols/package.json +39 -39
  231. package/dist/assets/material-symbols/rounded.scss +2 -2
  232. package/dist/assets/material-symbols/sharp.scss +2 -2
  233. package/dist/assets/max-length-behavior-N5Lbz6E--DCs07sPx.js +2 -0
  234. package/dist/assets/max-length-behavior-N5Lbz6E--DCs07sPx.js.map +1 -0
  235. package/dist/assets/multiple-D1puaB9F-D3g5RjPg.js +2 -0
  236. package/dist/assets/multiple-D1puaB9F-D3g5RjPg.js.map +1 -0
  237. package/dist/assets/noto-sans/fonts/OFL.txt +93 -93
  238. package/dist/assets/open-BFQWty8w-CEWvP37i.js +2 -0
  239. package/dist/assets/open-BFQWty8w-CEWvP37i.js.map +1 -0
  240. package/dist/assets/orientation-B0ErOlUK-YOoBrfEn.js +2 -0
  241. package/dist/assets/orientation-B0ErOlUK-YOoBrfEn.js.map +1 -0
  242. package/dist/assets/placeholder-DrgXYoah-DBHh57Yg.js +2 -0
  243. package/dist/assets/placeholder-DrgXYoah-DBHh57Yg.js.map +1 -0
  244. package/dist/assets/read-only-Bp291veM-BMLpzHyH.js +2 -0
  245. package/dist/assets/read-only-Bp291veM-BMLpzHyH.js.map +1 -0
  246. package/dist/assets/required-7L0ytoMT-Culzw-cc.js +2 -0
  247. package/dist/assets/required-7L0ytoMT-Culzw-cc.js.map +1 -0
  248. package/dist/assets/reuse-CX4AQDkS-BaVSFETn.js +2 -0
  249. package/dist/assets/reuse-CX4AQDkS-BaVSFETn.js.map +1 -0
  250. package/dist/assets/roboto/LICENSE.txt +202 -202
  251. package/dist/assets/rows-C8piLIWD-CZVHqmm6.js +2 -0
  252. package/dist/assets/rows-C8piLIWD-CZVHqmm6.js.map +1 -0
  253. package/dist/assets/show-ChfALFZd-Vn4qEOP-.js +2 -0
  254. package/dist/assets/show-ChfALFZd-Vn4qEOP-.js.map +1 -0
  255. package/dist/assets/spell-check-DrU5XI1o-Bo9L0HXW.js +2 -0
  256. package/dist/assets/spell-check-DrU5XI1o-Bo9L0HXW.js.map +1 -0
  257. package/dist/assets/suggestions-Bufr76At-B0AGyg0P.js +2 -0
  258. package/dist/assets/suggestions-Bufr76At-B0AGyg0P.js.map +1 -0
  259. package/dist/assets/table-settings-BYcS3vAt-Z4ssf2K9.js +2 -0
  260. package/dist/assets/table-settings-BYcS3vAt-Z4ssf2K9.js.map +1 -0
  261. package/dist/assets/test-component.entry-CUG_pNnC.js +2 -0
  262. package/dist/assets/test-component.entry-CUG_pNnC.js.map +1 -0
  263. package/dist/assets/tooltip-align-DEw_M6Is-DzxhQKdw.js +2 -0
  264. package/dist/assets/tooltip-align-DEw_M6Is-DzxhQKdw.js.map +1 -0
  265. package/dist/assets/tooltip-open-tracking-rBbBgPWP-DRkgcff2.js +2 -0
  266. package/dist/assets/tooltip-open-tracking-rBbBgPWP-DRkgcff2.js.map +1 -0
  267. package/dist/assets/tslib.es6-CxX45GIN-BGVaTf34.js +2 -0
  268. package/dist/assets/tslib.es6-CxX45GIN-BGVaTf34.js.map +1 -0
  269. package/dist/assets/unique-nav-labels-C-bt2E8D-BEINIyfh.js +2 -0
  270. package/dist/assets/unique-nav-labels-C-bt2E8D-BEINIyfh.js.map +1 -0
  271. package/dist/assets/validation-BVeaxeev-BCeyl-Th.js +2 -0
  272. package/dist/assets/validation-BVeaxeev-BCeyl-Th.js.map +1 -0
  273. package/dist/assets/validation-BmqW5reG-DI0TkU4B.js +2 -0
  274. package/dist/assets/validation-BmqW5reG-DI0TkU4B.js.map +1 -0
  275. package/dist/index.html +16 -14
  276. package/index.html +29 -0
  277. package/package.json +53 -49
  278. package/public/assets/README.md +1 -0
  279. package/public/assets/codicons/codicon.css +54 -1
  280. package/public/assets/codicons/codicon.csv +41 -0
  281. package/public/assets/codicons/codicon.svg +1 -1
  282. package/public/assets/codicons/codicon.ttf +0 -0
  283. package/public/assets/kreon/OFL.txt +93 -93
  284. package/public/assets/material-icons/README.md +19 -14
  285. package/public/assets/material-icons/_data/versions.json +2123 -2123
  286. package/public/assets/material-icons/css/_mixins.scss +2 -2
  287. package/public/assets/material-icons/css/_variables.scss +3 -3
  288. package/public/assets/material-icons/css/material-icons.scss +16 -22
  289. package/public/assets/material-icons/iconfont/filled.scss +3 -3
  290. package/public/assets/material-icons/iconfont/material-icons.scss +5 -5
  291. package/public/assets/material-icons/iconfont/outlined.scss +3 -3
  292. package/public/assets/material-icons/iconfont/round.scss +3 -3
  293. package/public/assets/material-icons/iconfont/sharp.scss +3 -3
  294. package/public/assets/material-icons/iconfont/two-tone.scss +3 -3
  295. package/public/assets/material-icons/index.d.ts +2122 -2122
  296. package/public/assets/material-icons/package.json +50 -50
  297. package/public/assets/material-symbols/README.md +18 -11
  298. package/public/assets/material-symbols/index.d.ts +2803 -2803
  299. package/public/assets/material-symbols/index.scss +3 -3
  300. package/public/assets/material-symbols/outlined.scss +2 -2
  301. package/public/assets/material-symbols/package.json +39 -39
  302. package/public/assets/material-symbols/rounded.scss +2 -2
  303. package/public/assets/material-symbols/sharp.scss +2 -2
  304. package/public/assets/noto-sans/fonts/OFL.txt +93 -93
  305. package/public/assets/roboto/LICENSE.txt +202 -202
  306. package/src/App.tsx +2 -6
  307. package/src/components/BackPage.tsx +1 -1
  308. package/src/components/FormWrap.tsx +18 -16
  309. package/src/components/Navigation.tsx +3 -3
  310. package/src/components/SampleColumns.tsx +9 -0
  311. package/src/components/SampleDescription.tsx +28 -16
  312. package/src/components/Sidebar.tsx +32 -13
  313. package/src/components/abbr/basic.tsx +2 -2
  314. package/src/components/accordion/basic.tsx +9 -5
  315. package/src/components/accordion/headlines.tsx +1 -1
  316. package/src/components/alert/basic.tsx +6 -6
  317. package/src/components/alert/card-msg.tsx +1 -1
  318. package/src/components/alert/html.tsx +2 -2
  319. package/src/components/avatar/basic.tsx +7 -3
  320. package/src/components/badge/basic.tsx +2 -2
  321. package/src/components/badge/button.tsx +4 -3
  322. package/src/components/badge/formatted-label.tsx +19 -0
  323. package/src/components/badge/routes.ts +2 -0
  324. package/src/components/breadcrumb/basic.tsx +2 -1
  325. package/src/components/button/access-key.tsx +37 -19
  326. package/src/components/button/aria-description.tsx +15 -7
  327. package/src/components/button/baselined.tsx +15 -11
  328. package/src/components/button/basic.tsx +83 -11
  329. package/src/components/button/disabled.tsx +43 -0
  330. package/src/components/button/expert-slot.tsx +48 -11
  331. package/src/components/button/hide-label.tsx +57 -0
  332. package/src/components/button/icons.tsx +113 -26
  333. package/src/components/button/routes.ts +12 -2
  334. package/src/components/button/row-reverse-tooltip.tsx +26 -0
  335. package/src/components/button/short-key.tsx +36 -17
  336. package/src/components/button/spinner.tsx +112 -0
  337. package/src/components/button/variants.tsx +35 -0
  338. package/src/components/button/width.tsx +26 -21
  339. package/src/components/button-link/aria-description.tsx +2 -2
  340. package/src/components/button-link/basic.tsx +12 -5
  341. package/src/components/button-link/icons.tsx +3 -2
  342. package/src/components/button-link/image.tsx +1 -1
  343. package/src/components/button-link/routes.ts +1 -1
  344. package/src/components/card/basic.tsx +1 -1
  345. package/src/components/card/headlines.tsx +46 -0
  346. package/src/components/card/routes.ts +2 -0
  347. package/src/components/combobox/basic.tsx +2 -7
  348. package/src/components/combobox/html.tsx +16 -0
  349. package/src/components/combobox/partials/cases.tsx +2 -2
  350. package/src/components/combobox/partials/variants.tsx +4 -3
  351. package/src/components/combobox/routes.ts +2 -0
  352. package/src/components/details/basic.tsx +1 -1
  353. package/src/components/drawer/basic.tsx +32 -30
  354. package/src/components/drawer/controlled.tsx +2 -13
  355. package/src/components/drawer/partials/align.tsx +1 -1
  356. package/src/components/drawer/routes.ts +2 -0
  357. package/src/components/drawer/scrolled.tsx +133 -0
  358. package/src/components/form/basic.tsx +1 -1
  359. package/src/components/form/error-list.tsx +66 -24
  360. package/src/components/handout/basic.tsx +39 -42
  361. package/src/components/heading/badged.tsx +1 -1
  362. package/src/components/heading/basic.tsx +1 -1
  363. package/src/components/heading/paragraph.tsx +1 -1
  364. package/src/components/heading/routes.ts +2 -0
  365. package/src/components/heading/secondary.tsx +20 -0
  366. package/src/components/icon/basic.tsx +8 -3
  367. package/src/components/icon/font-awesome.tsx +36 -0
  368. package/src/components/icon/routes.ts +2 -0
  369. package/src/components/image/basic.tsx +2 -2
  370. package/src/components/input-checkbox/basic.tsx +2 -2
  371. package/src/components/input-checkbox/button.tsx +2 -2
  372. package/src/components/input-checkbox/partials/cases.tsx +1 -1
  373. package/src/components/input-checkbox/partials/variants.tsx +5 -4
  374. package/src/components/input-checkbox/switch.tsx +2 -2
  375. package/src/components/input-color/basic.tsx +2 -2
  376. package/src/components/input-color/partials/cases.tsx +6 -3
  377. package/src/components/input-color/partials/variants.tsx +3 -2
  378. package/src/components/input-date/basic.tsx +2 -2
  379. package/src/components/input-date/copy-paste.tsx +172 -0
  380. package/src/components/input-date/partials/cases.tsx +9 -5
  381. package/src/components/input-date/partials/minMax.tsx +4 -4
  382. package/src/components/input-date/partials/variants.tsx +4 -3
  383. package/src/components/input-date/reset.tsx +1 -1
  384. package/src/components/input-date/routes.ts +4 -0
  385. package/src/components/input-date/show-hide-msg.tsx +59 -0
  386. package/src/components/input-email/basic.tsx +2 -2
  387. package/src/components/input-email/partials/cases.tsx +8 -4
  388. package/src/components/input-email/partials/variants.tsx +3 -2
  389. package/src/components/input-file/basic.tsx +2 -2
  390. package/src/components/input-file/partials/cases.tsx +8 -4
  391. package/src/components/input-file/partials/variants.tsx +3 -2
  392. package/src/components/input-number/basic.tsx +1 -1
  393. package/src/components/input-number/number-formatter.tsx +215 -0
  394. package/src/components/input-number/partials/cases.tsx +5 -5
  395. package/src/components/input-number/partials/variants.tsx +3 -2
  396. package/src/components/input-number/routes.ts +2 -0
  397. package/src/components/input-password/basic.tsx +2 -2
  398. package/src/components/input-password/partials/cases.tsx +10 -6
  399. package/src/components/input-password/partials/variants.tsx +3 -2
  400. package/src/components/input-password/show-password.tsx +9 -1
  401. package/src/components/input-radio/basic.tsx +2 -2
  402. package/src/components/input-radio/horizontal.tsx +3 -3
  403. package/src/components/input-radio/objectValue.tsx +1 -1
  404. package/src/components/input-radio/partials/cases.tsx +1 -14
  405. package/src/components/input-radio/partials/variants.tsx +11 -8
  406. package/src/components/input-range/basic.tsx +2 -2
  407. package/src/components/input-range/partials/cases.tsx +8 -4
  408. package/src/components/input-range/partials/variants.tsx +3 -2
  409. package/src/components/input-text/access-short-key.tsx +19 -0
  410. package/src/components/input-text/background-test.tsx +20 -0
  411. package/src/components/input-text/basic.tsx +10 -5
  412. package/src/components/input-text/disabled.tsx +19 -0
  413. package/src/components/input-text/expert-slot.tsx +21 -5
  414. package/src/components/input-text/hide-label.tsx +48 -0
  415. package/src/components/input-text/{hide-errors.tsx → hide-msg.tsx} +10 -10
  416. package/src/components/input-text/message-types.tsx +20 -0
  417. package/src/components/input-text/placeholder.tsx +20 -0
  418. package/src/components/input-text/readonly.tsx +25 -0
  419. package/src/components/input-text/routes.ts +20 -4
  420. package/src/components/input-text/select-range.tsx +36 -0
  421. package/src/components/input-text/smart-button.tsx +45 -15
  422. package/src/components/input-text/text-formatter.tsx +133 -97
  423. package/src/components/kolibri/basic.tsx +1 -1
  424. package/src/components/link/access-key.tsx +2 -4
  425. package/src/components/link/aria-description.tsx +2 -2
  426. package/src/components/link/basic.tsx +12 -12
  427. package/src/components/link/icons.tsx +1 -1
  428. package/src/components/link/image.tsx +1 -1
  429. package/src/components/link/link-react-router.tsx +31 -0
  430. package/src/components/link/routes.ts +5 -3
  431. package/src/components/link/short-key.tsx +2 -2
  432. package/src/components/link/target.tsx +1 -1
  433. package/src/components/link-button/aria-description.tsx +3 -3
  434. package/src/components/link-button/basic.tsx +9 -11
  435. package/src/components/link-button/routes.ts +1 -1
  436. package/src/components/modal/basic.tsx +41 -55
  437. package/src/components/nav/aria-current.tsx +1 -1
  438. package/src/components/nav/basic.tsx +20 -4
  439. package/src/components/nav/links.ts +61 -0
  440. package/src/components/nav/routes.ts +0 -2
  441. package/src/components/pagination/basic.tsx +2 -2
  442. package/src/components/popover-button/basic.tsx +69 -0
  443. package/src/components/popover-button/inline.tsx +36 -0
  444. package/src/components/popover-button/routes.ts +10 -0
  445. package/src/components/progress/basic.tsx +13 -6
  446. package/src/components/quote/basic.tsx +1 -1
  447. package/src/components/quote/block.tsx +1 -1
  448. package/src/components/select/basic.tsx +2 -2
  449. package/src/components/select/partials/cases.tsx +25 -6
  450. package/src/components/select/partials/variants.tsx +3 -2
  451. package/src/components/single-select/basic.tsx +2 -8
  452. package/src/components/single-select/partials/cases.tsx +95 -4
  453. package/src/components/single-select/partials/variants.tsx +8 -7
  454. package/src/components/skip-nav/basic.tsx +36 -27
  455. package/src/components/spin/basic.tsx +1 -1
  456. package/src/components/spin/custom.css +13 -12
  457. package/src/components/spin/custom.tsx +2 -2
  458. package/src/components/spin/cycle.tsx +1 -1
  459. package/src/components/spin/label.tsx +23 -0
  460. package/src/components/spin/routes.ts +2 -0
  461. package/src/components/split-button/basic.tsx +32 -17
  462. package/src/components/split-button/with-context.tsx +2 -2
  463. package/src/components/table/column-alignment.tsx +16 -13
  464. package/src/components/table/complex-headers.tsx +21 -10
  465. package/src/components/table/direction-aware-sort.tsx +65 -0
  466. package/src/components/table/horizontal-scrollbar.tsx +50 -25
  467. package/src/components/table/interactive-child-elements.tsx +4 -4
  468. package/src/components/table/multi-sort.tsx +110 -78
  469. package/src/components/table/non-hidable-columns.tsx +35 -0
  470. package/src/components/table/pagination-position.tsx +26 -5
  471. package/src/components/table/predefined-settings.tsx +42 -0
  472. package/src/components/table/render-cell.tsx +4 -5
  473. package/src/components/table/routes.ts +21 -9
  474. package/src/components/table/settings-column-options.tsx +58 -0
  475. package/src/components/table/sort-data.tsx +19 -20
  476. package/src/components/table/stateful-with-selection.tsx +13 -9
  477. package/src/components/table/stateful-with-single-selection.tsx +9 -8
  478. package/src/components/table/stateless-with-selection.tsx +17 -11
  479. package/src/components/table/stateless-with-settings-menu.tsx +104 -0
  480. package/src/components/table/stateless-with-single-selection.tsx +16 -11
  481. package/src/components/table/stateless.tsx +3 -2
  482. package/src/components/table/sticky-header.tsx +35 -0
  483. package/src/components/table/test-complex-data.ts +277 -0
  484. package/src/components/table/with-footer.tsx +4 -3
  485. package/src/components/table/with-pagination.tsx +4 -4
  486. package/src/components/tabs/align.tsx +2 -2
  487. package/src/components/tabs/basic.tsx +1 -1
  488. package/src/components/tabs/behavior.tsx +1 -1
  489. package/src/components/tabs/create-button.tsx +42 -0
  490. package/src/components/tabs/icons-only.tsx +1 -1
  491. package/src/components/tabs/routes.ts +4 -2
  492. package/src/components/textarea/adjust-height.tsx +1 -1
  493. package/src/components/textarea/basic.tsx +2 -2
  494. package/src/components/textarea/partials/cases.tsx +11 -5
  495. package/src/components/textarea/partials/variants.tsx +3 -2
  496. package/src/components/textarea/resize.tsx +7 -6
  497. package/src/components/textarea/routes.ts +2 -2
  498. package/src/components/textarea/rows.tsx +1 -1
  499. package/src/components/textarea/with-counter.tsx +23 -0
  500. package/src/components/toast/basic.tsx +11 -38
  501. package/src/components/toast/configurator.tsx +84 -0
  502. package/src/components/toast/routes.ts +2 -0
  503. package/src/components/toolbar/basic.tsx +46 -40
  504. package/src/components/toolbar/disabled.tsx +7 -5
  505. package/src/components/tree/basic.tsx +4 -4
  506. package/src/components/version/basic.tsx +1 -1
  507. package/src/components/version/context.tsx +1 -1
  508. package/src/main.ts +11 -0
  509. package/src/react.main.tsx +60 -11
  510. package/src/scenarios/appointment-form/AppointmentForm.tsx +116 -98
  511. package/src/scenarios/appointment-form/AvailableAppointmentsForm.tsx +83 -75
  512. package/src/scenarios/appointment-form/DistrictForm.tsx +50 -50
  513. package/src/scenarios/appointment-form/PersonalInformationForm.tsx +111 -142
  514. package/src/scenarios/appointment-form/Summary.tsx +12 -11
  515. package/src/scenarios/appointment-form/formUtils.ts +26 -7
  516. package/src/scenarios/button-shortkey-table.tsx +127 -0
  517. package/src/scenarios/change-tabindex.tsx +30 -28
  518. package/src/scenarios/custom-tooltip-css-properties.tsx +42 -0
  519. package/src/scenarios/date-in-form.tsx +24 -0
  520. package/src/scenarios/disabled-interactive-elements.tsx +1 -1
  521. package/src/scenarios/focus-elements.tsx +3 -4
  522. package/src/scenarios/horizontal-scrollbar-advanced/TableHorizontalScrollbarAdvanced.tsx +11 -5
  523. package/src/scenarios/horizontal-scrollbar-advanced/layout.scss +7 -7
  524. package/src/scenarios/input-group-with-error.tsx +7 -7
  525. package/src/scenarios/inputs-get-value.tsx +13 -8
  526. package/src/scenarios/performance-test.tsx +27 -0
  527. package/src/scenarios/react-hook-form/basic.tsx +194 -0
  528. package/src/scenarios/routes.ts +22 -8
  529. package/src/scenarios/same-height-of-all-interactive-elements.tsx +62 -0
  530. package/src/scenarios/sample-form-with-validation.tsx +160 -0
  531. package/src/scenarios/static-form.tsx +3 -3
  532. package/src/scenarios/toolbar-item-order.tsx +66 -0
  533. package/src/scenarios/tooltip-positioning.tsx +29 -0
  534. package/src/shares/longOptions.ts +15 -0
  535. package/src/shares/routes.ts +5 -9
  536. package/src/shares/store.ts +1 -20
  537. package/src/shares/theme.ts +5 -9
  538. package/src/style.scss +42 -20
  539. package/tsconfig.json +2 -1
  540. package/unocss.config.ts +251 -153
  541. package/vite.config.ts +42 -0
  542. package/.eslintignore +0 -2
  543. package/.eslintrc.js +0 -33
  544. package/.gitignore +0 -41
  545. package/.prettierignore +0 -4
  546. package/dist/1487.js +0 -2
  547. package/dist/1487.js.LICENSE.txt +0 -3
  548. package/dist/1552.js +0 -2
  549. package/dist/1552.js.LICENSE.txt +0 -3
  550. package/dist/1596.js +0 -2
  551. package/dist/1596.js.LICENSE.txt +0 -3
  552. package/dist/1636.js +0 -2
  553. package/dist/1636.js.LICENSE.txt +0 -3
  554. package/dist/1792.js +0 -2
  555. package/dist/1792.js.LICENSE.txt +0 -3
  556. package/dist/2017.js +0 -2
  557. package/dist/2017.js.LICENSE.txt +0 -3
  558. package/dist/2207.js +0 -2
  559. package/dist/2207.js.LICENSE.txt +0 -3
  560. package/dist/2322.js +0 -2
  561. package/dist/2322.js.LICENSE.txt +0 -3
  562. package/dist/2538.js +0 -2
  563. package/dist/2538.js.LICENSE.txt +0 -3
  564. package/dist/2567.js +0 -2
  565. package/dist/2567.js.LICENSE.txt +0 -3
  566. package/dist/263.js +0 -2
  567. package/dist/263.js.LICENSE.txt +0 -3
  568. package/dist/2719.js +0 -2
  569. package/dist/2719.js.LICENSE.txt +0 -3
  570. package/dist/3064.js +0 -2
  571. package/dist/3064.js.LICENSE.txt +0 -3
  572. package/dist/3077.js +0 -2
  573. package/dist/3077.js.LICENSE.txt +0 -3
  574. package/dist/3238.js +0 -2
  575. package/dist/3238.js.LICENSE.txt +0 -3
  576. package/dist/3395.js +0 -2
  577. package/dist/3395.js.LICENSE.txt +0 -3
  578. package/dist/35.js +0 -2
  579. package/dist/35.js.LICENSE.txt +0 -3
  580. package/dist/3521.js +0 -2
  581. package/dist/3521.js.LICENSE.txt +0 -3
  582. package/dist/356.js +0 -2
  583. package/dist/356.js.LICENSE.txt +0 -3
  584. package/dist/3714.js +0 -2
  585. package/dist/3714.js.LICENSE.txt +0 -3
  586. package/dist/3735.js +0 -2
  587. package/dist/3735.js.LICENSE.txt +0 -3
  588. package/dist/3766.js +0 -2
  589. package/dist/3766.js.LICENSE.txt +0 -3
  590. package/dist/380.js +0 -2
  591. package/dist/380.js.LICENSE.txt +0 -3
  592. package/dist/3906.js +0 -2
  593. package/dist/3906.js.LICENSE.txt +0 -3
  594. package/dist/3994.js +0 -2
  595. package/dist/3994.js.LICENSE.txt +0 -3
  596. package/dist/4025.js +0 -2
  597. package/dist/4025.js.LICENSE.txt +0 -3
  598. package/dist/4058.js +0 -2
  599. package/dist/4058.js.LICENSE.txt +0 -3
  600. package/dist/4118.js +0 -2
  601. package/dist/4118.js.LICENSE.txt +0 -3
  602. package/dist/4182.js +0 -2
  603. package/dist/4182.js.LICENSE.txt +0 -3
  604. package/dist/4188.js +0 -2
  605. package/dist/4188.js.LICENSE.txt +0 -3
  606. package/dist/4332.js +0 -2
  607. package/dist/4332.js.LICENSE.txt +0 -3
  608. package/dist/4402.js +0 -2
  609. package/dist/4402.js.LICENSE.txt +0 -3
  610. package/dist/4818.js +0 -2
  611. package/dist/4818.js.LICENSE.txt +0 -3
  612. package/dist/4892.js +0 -2
  613. package/dist/4892.js.LICENSE.txt +0 -3
  614. package/dist/4933.js +0 -2
  615. package/dist/4933.js.LICENSE.txt +0 -3
  616. package/dist/4943.js +0 -2
  617. package/dist/4943.js.LICENSE.txt +0 -3
  618. package/dist/5034.js +0 -2
  619. package/dist/5034.js.LICENSE.txt +0 -3
  620. package/dist/5056.js +0 -2
  621. package/dist/5056.js.LICENSE.txt +0 -3
  622. package/dist/5157.js +0 -2
  623. package/dist/5157.js.LICENSE.txt +0 -3
  624. package/dist/5296.js +0 -2
  625. package/dist/5296.js.LICENSE.txt +0 -3
  626. package/dist/5356.js +0 -2
  627. package/dist/5356.js.LICENSE.txt +0 -3
  628. package/dist/5551.js +0 -2
  629. package/dist/5551.js.LICENSE.txt +0 -3
  630. package/dist/5835.js +0 -2
  631. package/dist/5835.js.LICENSE.txt +0 -3
  632. package/dist/5840.js +0 -2
  633. package/dist/5840.js.LICENSE.txt +0 -3
  634. package/dist/5889.js +0 -2
  635. package/dist/5889.js.LICENSE.txt +0 -3
  636. package/dist/5912.js +0 -2
  637. package/dist/5912.js.LICENSE.txt +0 -3
  638. package/dist/6082.js +0 -2
  639. package/dist/6082.js.LICENSE.txt +0 -3
  640. package/dist/6099.js +0 -2
  641. package/dist/6099.js.LICENSE.txt +0 -3
  642. package/dist/6181.js +0 -2
  643. package/dist/6181.js.LICENSE.txt +0 -3
  644. package/dist/619.js +0 -2
  645. package/dist/619.js.LICENSE.txt +0 -3
  646. package/dist/6671.js +0 -2
  647. package/dist/6671.js.LICENSE.txt +0 -3
  648. package/dist/6775.js +0 -2
  649. package/dist/6775.js.LICENSE.txt +0 -3
  650. package/dist/7274.js +0 -2
  651. package/dist/7274.js.LICENSE.txt +0 -3
  652. package/dist/7795.js +0 -2
  653. package/dist/7795.js.LICENSE.txt +0 -3
  654. package/dist/7802.js +0 -2
  655. package/dist/7802.js.LICENSE.txt +0 -3
  656. package/dist/7860.js +0 -2
  657. package/dist/7860.js.LICENSE.txt +0 -3
  658. package/dist/8092.js +0 -2
  659. package/dist/8092.js.LICENSE.txt +0 -3
  660. package/dist/8111.js +0 -2
  661. package/dist/8111.js.LICENSE.txt +0 -3
  662. package/dist/8146.js +0 -2
  663. package/dist/8146.js.LICENSE.txt +0 -3
  664. package/dist/8427.js +0 -2
  665. package/dist/8427.js.LICENSE.txt +0 -3
  666. package/dist/8495.js +0 -2
  667. package/dist/8495.js.LICENSE.txt +0 -3
  668. package/dist/8672.js +0 -2
  669. package/dist/8672.js.LICENSE.txt +0 -3
  670. package/dist/8737.js +0 -2
  671. package/dist/8737.js.LICENSE.txt +0 -3
  672. package/dist/8786.js +0 -2
  673. package/dist/8786.js.LICENSE.txt +0 -3
  674. package/dist/8796.js +0 -2
  675. package/dist/8796.js.LICENSE.txt +0 -3
  676. package/dist/8977.js +0 -2
  677. package/dist/8977.js.LICENSE.txt +0 -3
  678. package/dist/9333.js +0 -2
  679. package/dist/9333.js.LICENSE.txt +0 -3
  680. package/dist/9389.js +0 -2
  681. package/dist/9389.js.LICENSE.txt +0 -3
  682. package/dist/9561.js +0 -2
  683. package/dist/9561.js.LICENSE.txt +0 -3
  684. package/dist/9599.js +0 -2
  685. package/dist/9599.js.LICENSE.txt +0 -3
  686. package/dist/9612.js +0 -2
  687. package/dist/9612.js.LICENSE.txt +0 -3
  688. package/dist/9890.js +0 -2
  689. package/dist/9890.js.LICENSE.txt +0 -3
  690. package/dist/assets/codicons/codicon.html +0 -3911
  691. package/dist/main.css +0 -4
  692. package/dist/main.js +0 -2
  693. package/dist/main.js.LICENSE.txt +0 -64
  694. package/prettier.config.js +0 -5
  695. package/public/assets/codicons/codicon.html +0 -3911
  696. package/public/index.html +0 -28
  697. package/src/components/button/partials/cases.tsx +0 -37
  698. package/src/components/button/partials/type.ts +0 -4
  699. package/src/components/button/partials/variants.tsx +0 -25
  700. package/src/components/button-group/basic.tsx +0 -34
  701. package/src/components/button-group/routes.ts +0 -8
  702. package/src/components/indented-text/basic.tsx +0 -37
  703. package/src/components/indented-text/routes.ts +0 -8
  704. package/src/components/input-text/partials/cases.tsx +0 -54
  705. package/src/components/input-text/partials/variants.tsx +0 -19
  706. package/src/components/link-group/basic.tsx +0 -23
  707. package/src/components/link-group/horizontal.tsx +0 -23
  708. package/src/components/link-group/routes.ts +0 -10
  709. package/src/components/nav/horizontal.tsx +0 -24
  710. package/src/components/textarea/counter.tsx +0 -20
  711. package/src/scenarios/custom-tooltip-width.tsx +0 -33
  712. package/webpack.config.js +0 -19
@@ -1,8 +1,9 @@
1
- import { Formik } from 'formik';
2
- import React, { useEffect, useState, useRef } from 'react';
3
- import * as Yup from 'yup';
1
+ import { zodResolver } from '@hookform/resolvers/zod';
2
+ import React, { useEffect, useState } from 'react';
3
+ import { FormProvider, useForm } from 'react-hook-form';
4
+ import { z } from 'zod';
4
5
 
5
- import { KolLink, KolTabs } from '@public-ui/react';
6
+ import { KolLink, KolTabs } from '@public-ui/react-v19';
6
7
 
7
8
  import { checkAppointmentAvailability } from './appointmentService';
8
9
  import { AvailableAppointmentsForm } from './AvailableAppointmentsForm';
@@ -10,20 +11,46 @@ import { DistrictForm } from './DistrictForm';
10
11
  import { PersonalInformationForm } from './PersonalInformationForm';
11
12
  import { Summary } from './Summary';
12
13
 
13
- import type { FormikHelpers, FormikProps } from 'formik';
14
- import type { Iso8601 } from '@public-ui/components';
15
14
  import { SampleDescription } from '../../components/SampleDescription';
15
+
16
+ const validationSchema = z
17
+ .object({
18
+ district: z.string().min(1, 'Please select district.'),
19
+ date: z.string().min(1, 'Please enter date.'),
20
+ time: z.string(),
21
+ salutation: z.string().min(1, 'Please select salutation.'),
22
+ name: z.string().min(1, 'Please enter your first and last name.'),
23
+ company: z.string(),
24
+ email: z.string().min(1, 'Please enter your e-mail address.'),
25
+ phone: z.string(),
26
+ })
27
+ .superRefine(async (data, ctx) => {
28
+ // Conditional validation: company is required when salutation is 'Company'
29
+ if (data.salutation === 'Company' && !data.company) {
30
+ ctx.addIssue({
31
+ code: z.ZodIssueCode.custom,
32
+ path: ['company'],
33
+ message: 'Please specify company.',
34
+ });
35
+ }
36
+
37
+ // Async validation: check time availability when date is set
38
+ if (data.date && data.time) {
39
+ const isAvailable = await checkAppointmentAvailability(data.time);
40
+ if (!isAvailable) {
41
+ ctx.addIssue({
42
+ code: z.ZodIssueCode.custom,
43
+ path: ['time'],
44
+ message: 'Date unfortunately no longer available.',
45
+ });
46
+ }
47
+ }
48
+ });
49
+
50
+ export type FormValues = z.infer<typeof validationSchema>;
16
51
  // export interface FormProps {}
17
- export interface FormValues {
18
- district: string;
19
- date: Iso8601;
20
- time: Iso8601;
21
- salutation: string;
22
- name: string;
23
- company: string;
24
- email: string;
25
- phone: string;
26
- }
52
+
53
+ export type FormFieldName = keyof FormValues & string;
27
54
 
28
55
  enum FormSection {
29
56
  DISTRICT,
@@ -34,10 +61,17 @@ enum FormSection {
34
61
 
35
62
  const formSectionSequence = [FormSection.DISTRICT, FormSection.AVAILABLE_APPOINTMENTS, FormSection.PERSONAL_INFORMATION, FormSection.SUMMARY] as const;
36
63
 
64
+ const sectionFields: Record<FormSection, FormFieldName[]> = {
65
+ [FormSection.DISTRICT]: ['district'],
66
+ [FormSection.AVAILABLE_APPOINTMENTS]: ['date', 'time'],
67
+ [FormSection.PERSONAL_INFORMATION]: ['salutation', 'company', 'name', 'email', 'phone'],
68
+ [FormSection.SUMMARY]: [],
69
+ };
70
+
37
71
  const initialValues: FormValues = {
38
72
  district: '',
39
- date: '' as Iso8601,
40
- time: '' as Iso8601,
73
+ date: '',
74
+ time: '',
41
75
  salutation: '',
42
76
  name: '',
43
77
  company: '',
@@ -45,103 +79,87 @@ const initialValues: FormValues = {
45
79
  phone: '',
46
80
  };
47
81
 
48
- const districtSchema = {
49
- district: Yup.string().required('Please select district.'),
50
- };
51
- const personalInformationSchema = {
52
- salutation: Yup.string().required('Please select salutation.'),
53
- name: Yup.string().required('Please enter your first and last name.'),
54
- company: Yup.string().when('salutation', {
55
- is: (salutation: string) => salutation === 'Company',
56
- then: (schema) => schema.required('Please specify company.'),
57
- }),
58
- email: Yup.string().required('Please enter your e-mail address.'),
59
- };
60
- const availableAppointmentsSchema = {
61
- date: Yup.string().required('Please enter date.'),
62
- time: Yup.string().when('date', {
63
- is: (date: string) => Boolean(date), // only validate time when date is already set
64
- then: (schema) => schema.test('checkTimeAvailability', 'Date unfortunately no longer available.', checkAppointmentAvailability),
65
- }),
66
- };
67
-
68
82
  export function AppointmentForm() {
69
83
  const [activeFormSection, setActiveFormSection] = useState(FormSection.DISTRICT);
70
84
  const [selectedTab, setSelectedTab] = useState(activeFormSection);
71
- const formikRef = useRef<FormikProps<FormValues>>(null);
72
85
 
73
- const validationSchema = Yup.object().shape({
74
- ...(activeFormSection === FormSection.DISTRICT ? districtSchema : {}),
75
- ...(activeFormSection === FormSection.AVAILABLE_APPOINTMENTS ? availableAppointmentsSchema : {}),
76
- ...(activeFormSection === FormSection.PERSONAL_INFORMATION ? personalInformationSchema : {}),
86
+ const formMethods = useForm<FormValues>({
87
+ defaultValues: initialValues,
88
+ mode: 'onTouched',
89
+ reValidateMode: 'onChange',
90
+ resolver: zodResolver(validationSchema),
91
+ shouldFocusError: false,
77
92
  });
78
93
 
79
94
  useEffect(() => {
80
95
  setSelectedTab(activeFormSection);
81
96
  }, [activeFormSection]);
82
97
 
83
- const handleSubmit = async (_values: FormValues, formik: FormikHelpers<FormValues>) => {
84
- const currentSectionIndex = formSectionSequence.indexOf(activeFormSection);
85
- const nextSection = formSectionSequence[currentSectionIndex + 1];
86
- if (nextSection !== undefined) {
87
- await formik.setTouched({});
88
- setActiveFormSection(nextSection);
89
- }
98
+ const goToSection = (section: FormSection) => {
99
+ setActiveFormSection(section);
100
+ formMethods.clearErrors();
101
+ };
102
+
103
+ const getNextSection = (section: FormSection) => {
104
+ const currentSectionIndex = formSectionSequence.indexOf(section);
105
+ return formSectionSequence[currentSectionIndex + 1];
90
106
  };
91
107
 
92
108
  return (
93
- <>
109
+ <FormProvider {...formMethods}>
94
110
  <SampleDescription>
95
111
  <p>
96
- The Appointment Form is a full form example featuring a large variety of KoliBri form components,{' '}
97
- <KolLink _label="Formik" _href="https://formik.org/" _target="blank" /> and{' '}
98
- <KolLink _label="Yup" _href="https://github.com/jquense/yup" _target="blank" />.
112
+ The Appointment Form is a full form example featuring a large variety of KoliBri form components, React Hook Form and{' '}
113
+ <KolLink _label="Zod" _href="https://github.com/colinhacks/zod" _target="blank" />.
99
114
  </p>
100
115
  </SampleDescription>
101
116
 
102
- <Formik<FormValues> innerRef={formikRef} initialValues={initialValues} validationSchema={validationSchema} onSubmit={handleSubmit}>
103
- <KolTabs
104
- className="w-full"
105
- _tabs={[
106
- {
107
- _label: '1. Choose registration office',
108
- },
109
- {
110
- _label: '2. Available dates',
111
- _disabled: activeFormSection < FormSection.AVAILABLE_APPOINTMENTS,
112
- },
113
- {
114
- _label: '3. Personal data',
115
- _disabled: activeFormSection < FormSection.PERSONAL_INFORMATION,
116
- },
117
- {
118
- _label: 'Summary',
119
- _disabled: activeFormSection < FormSection.SUMMARY,
120
- },
121
- ]}
122
- _label="Form navigation"
123
- _selected={selectedTab}
124
- _on={{
125
- onSelect: (_event, selectedTab) => {
126
- setActiveFormSection(selectedTab);
127
- formikRef.current?.setErrors({});
128
- },
129
- }}
130
- >
131
- <div>
132
- <DistrictForm />
133
- </div>
134
- <div>
135
- <AvailableAppointmentsForm />
136
- </div>
137
- <div>
138
- <PersonalInformationForm />
139
- </div>
140
- <div>
141
- <Summary />
142
- </div>
143
- </KolTabs>
144
- </Formik>
145
- </>
117
+ <KolTabs
118
+ className="w-full"
119
+ _tabs={[
120
+ {
121
+ _label: '1. Choose registration office',
122
+ },
123
+ {
124
+ _label: '2. Available dates',
125
+ _disabled: activeFormSection < FormSection.AVAILABLE_APPOINTMENTS,
126
+ },
127
+ {
128
+ _label: '3. Personal data',
129
+ _disabled: activeFormSection < FormSection.PERSONAL_INFORMATION,
130
+ },
131
+ {
132
+ _label: 'Summary',
133
+ _disabled: activeFormSection < FormSection.SUMMARY,
134
+ },
135
+ ]}
136
+ _label="Form navigation"
137
+ _selected={selectedTab}
138
+ _on={{
139
+ onSelect: (_event, selectedTab) => {
140
+ goToSection(selectedTab);
141
+ },
142
+ }}
143
+ >
144
+ <div>
145
+ <DistrictForm fieldsToValidate={sectionFields[FormSection.DISTRICT]} onComplete={() => goToSection(getNextSection(FormSection.DISTRICT))} />
146
+ </div>
147
+ <div>
148
+ <AvailableAppointmentsForm
149
+ fieldsToValidate={sectionFields[FormSection.AVAILABLE_APPOINTMENTS]}
150
+ onComplete={() => goToSection(getNextSection(FormSection.AVAILABLE_APPOINTMENTS))}
151
+ />
152
+ </div>
153
+ <div>
154
+ <PersonalInformationForm
155
+ fieldsToValidate={sectionFields[FormSection.PERSONAL_INFORMATION]}
156
+ onComplete={() => goToSection(getNextSection(FormSection.PERSONAL_INFORMATION))}
157
+ />
158
+ </div>
159
+ <div>
160
+ <Summary />
161
+ </div>
162
+ </KolTabs>
163
+ </FormProvider>
146
164
  );
147
165
  }
@@ -1,118 +1,126 @@
1
- import { Field, useFormikContext } from 'formik';
2
- import React, { useEffect, useState, useRef, useCallback } from 'react';
1
+ import { KolInputDateController, KolInputRadioController } from '@public-ui/react-hook-form-adapter';
2
+ import React, { useEffect, useRef, useState } from 'react';
3
+ import { useFormContext } from 'react-hook-form';
3
4
 
4
- import { KolButton, KolForm, KolHeading, KolInputDate, KolInputRadio, KolSpin } from '@public-ui/react';
5
+ import { KolButton, KolForm, KolHeading, KolSpin } from '@public-ui/react-v19';
5
6
 
6
7
  import { fetchAvailableTimes } from './appointmentService';
7
8
 
8
- import type { FormValues } from './AppointmentForm';
9
- import type { FieldProps, FieldInputProps } from 'formik';
10
9
  import type { Option } from '@public-ui/components';
11
- import { createErrorList, focusErrorList } from './formUtils';
10
+ import type { FormFieldName, FormValues } from './AppointmentForm';
11
+ import { createErrorList, focusErrorList, touchFields } from './formUtils';
12
12
 
13
- export function AvailableAppointmentsForm() {
14
- const form = useFormikContext<FormValues>();
13
+ type Props = {
14
+ fieldsToValidate: FormFieldName[];
15
+ onComplete: () => void;
16
+ };
17
+
18
+ export function AvailableAppointmentsForm({ fieldsToValidate, onComplete }: Props) {
19
+ const {
20
+ clearErrors,
21
+ control,
22
+ formState: { errors, isValidating },
23
+ getValues,
24
+ setValue,
25
+ trigger,
26
+ watch,
27
+ } = useFormContext<FormValues>();
15
28
 
16
29
  const [sectionSubmitted, setSectionSubmitted] = useState(false);
17
30
  const [availableTimes, setAvailableTimes] = useState<Option<string>[] | null>(null);
18
- const [schouldFocusErrorList, setSchouldFocusErrorList] = useState(true);
19
- const errorList = createErrorList(form.errors);
20
- const formikRef = useRef(null);
31
+ const [shouldFocusErrorList, setShouldFocusErrorList] = useState(true);
32
+ const errorList = createErrorList<FormValues>(errors, fieldsToValidate);
33
+ const formRef = useRef<HTMLKolFormElement>(null);
34
+
35
+ const date = watch('date');
21
36
 
22
37
  useEffect(() => {
23
38
  let ignoreResponse = false;
24
39
  setAvailableTimes(null);
25
- if (schouldFocusErrorList && sectionSubmitted) {
26
- focusErrorList(formikRef);
27
- setSchouldFocusErrorList(false);
40
+ if (shouldFocusErrorList && sectionSubmitted) {
41
+ focusErrorList(formRef);
42
+ setShouldFocusErrorList(false);
28
43
  }
29
44
 
30
- if (form.values.date) {
45
+ if (date) {
31
46
  fetchAvailableTimes().then(
32
47
  (times) => {
33
48
  if (!ignoreResponse) {
34
49
  setAvailableTimes(times);
35
- void form.setFieldValue('time', times[0].value);
36
- void form.setFieldTouched('time');
50
+ const [firstTime] = times;
51
+ const firstTimeValue = (firstTime as { value?: unknown } | undefined)?.value;
52
+ if (typeof firstTimeValue === 'string') {
53
+ setValue('time', firstTimeValue as FormValues['time'], { shouldValidate: true, shouldTouch: true });
54
+ clearErrors('time');
55
+ }
37
56
  }
38
57
  },
39
58
  () => {},
40
- ); // ignore errors
59
+ );
41
60
  }
42
61
  return () => {
43
62
  ignoreResponse = true;
44
63
  };
45
- }, [form.values.date, sectionSubmitted]);
46
-
47
- const renderField = useCallback(
48
- (name: string, node: (field: FieldInputProps<FormValues['date' | 'time']>) => void) => (
49
- <Field name={name}>{({ field }: FieldProps<FormValues['date' | 'time']>) => node(field)}</Field>
50
- ),
51
- [],
52
- );
64
+ }, [clearErrors, date, sectionSubmitted, setValue, shouldFocusErrorList]);
53
65
 
54
- const handleField = useCallback(
55
- (name: string) => ({
56
- onChange: (event: Event, value: unknown): void => {
57
- if (event.target) {
58
- void form.setFieldValue(name, value, true);
59
- }
60
- },
61
- onBlur: () => {
62
- void form.setFieldTouched(name, true);
63
- },
64
- }),
65
- [form.setFieldValue, form.setFieldTouched],
66
- );
66
+ const handleSubmit = async () => {
67
+ setSectionSubmitted(true);
68
+ touchFields<FormValues>(fieldsToValidate, getValues, setValue);
69
+ const isValid = await trigger(fieldsToValidate, { shouldFocus: true });
70
+ if (isValid) {
71
+ setShouldFocusErrorList(true);
72
+ onComplete();
73
+ } else {
74
+ focusErrorList(formRef);
75
+ }
76
+ };
67
77
  return (
68
78
  <div className="p-2">
69
79
  <KolHeading _level={2} _label="Select an appointment"></KolHeading>
70
80
  <KolForm
71
- ref={formikRef}
81
+ ref={formRef}
72
82
  _errorList={sectionSubmitted ? errorList : []}
73
83
  _on={{
74
84
  onSubmit: () => {
75
- setSectionSubmitted(true);
76
- void form.submitForm();
77
- focusErrorList(formikRef);
85
+ void handleSubmit();
78
86
  },
79
87
  }}
80
88
  >
81
- {renderField('date', (field) => (
82
- <KolInputDate
83
- id="field-date"
84
- _label="Date"
85
- _value={field.value}
86
- _msg={{
87
- _type: 'error',
88
- _description: form.errors.date || '',
89
- }}
90
- _touched={form.touched.date}
91
- _required
92
- _on={handleField('date')}
93
- />
94
- ))}
89
+ <KolInputDateController
90
+ control={control}
91
+ name="date"
92
+ id="field-date"
93
+ _label="Date"
94
+ _required
95
+ _on={{
96
+ onChange: () => {
97
+ setSectionSubmitted(false);
98
+ setShouldFocusErrorList(true);
99
+ clearErrors('date');
100
+ },
101
+ }}
102
+ />
95
103
 
96
- {form.values.date && (
104
+ {date && (
97
105
  <div className="grid gap-4 mt-4">
98
106
  {availableTimes ? (
99
107
  <>
100
- {renderField('time', (field) => (
101
- <KolInputRadio
102
- id="field-time"
103
- _label="Time"
104
- _orientation="horizontal"
105
- _options={availableTimes}
106
- _value={field.value}
107
- _msg={{
108
- _type: 'error',
109
- _description: form.errors.time || '',
110
- }}
111
- _touched={form.touched.time}
112
- _required
113
- _on={handleField('time')}
114
- />
115
- ))}
108
+ <KolInputRadioController
109
+ control={control}
110
+ name="time"
111
+ id="field-time"
112
+ _label="Time"
113
+ _orientation="horizontal"
114
+ _options={availableTimes}
115
+ _required
116
+ _on={{
117
+ onChange: () => {
118
+ setSectionSubmitted(false);
119
+ setShouldFocusErrorList(true);
120
+ clearErrors('time');
121
+ },
122
+ }}
123
+ />
116
124
  <p>
117
125
  <em>For test purposes, only the dates for every half hour are available.</em>
118
126
  </p>
@@ -124,7 +132,7 @@ export function AvailableAppointmentsForm() {
124
132
  )}
125
133
 
126
134
  <KolButton _label="Weiter" _type="submit" className="mt-2" />
127
- {form.values.date && form.isValidating ? <KolSpin _show aria-label="Date being checked." /> : ''}
135
+ {date && isValidating ? <KolSpin _show aria-label="Date being checked." /> : ''}
128
136
  </KolForm>
129
137
  </div>
130
138
  );
@@ -1,11 +1,16 @@
1
- import { Field, useFormikContext } from 'formik';
2
- import React, { useState, useRef } from 'react';
1
+ import { KolSelectController } from '@public-ui/react-hook-form-adapter';
2
+ import React, { useRef, useState } from 'react';
3
+ import { useFormContext } from 'react-hook-form';
3
4
 
4
- import { KolButton, KolForm, KolHeading, KolSelect } from '@public-ui/react';
5
+ import { KolButton, KolForm, KolHeading } from '@public-ui/react-v19';
5
6
 
6
- import type { FieldProps } from 'formik';
7
- import type { FormValues } from './AppointmentForm';
8
- import { createErrorList, focusErrorList } from './formUtils';
7
+ import type { FormFieldName, FormValues } from './AppointmentForm';
8
+ import { createErrorList, focusErrorList, touchFields } from './formUtils';
9
+
10
+ type Props = {
11
+ fieldsToValidate: FormFieldName[];
12
+ onComplete: () => void;
13
+ };
9
14
 
10
15
  const LOCATION_OPTIONS = [
11
16
  {
@@ -30,61 +35,56 @@ const LOCATION_OPTIONS = [
30
35
  },
31
36
  ];
32
37
 
33
- export function DistrictForm() {
34
- const form = useFormikContext<FormValues>();
35
- const errorList = createErrorList(form.errors);
38
+ export function DistrictForm({ fieldsToValidate, onComplete }: Props) {
39
+ const {
40
+ clearErrors,
41
+ control,
42
+ formState: { errors },
43
+ getValues,
44
+ setValue,
45
+ trigger,
46
+ } = useFormContext<FormValues>();
47
+ const errorList = createErrorList<FormValues>(errors, fieldsToValidate);
36
48
  const [sectionSubmitted, setSectionSubmitted] = useState(false);
37
- const formikRef = useRef<HTMLKolFormElement>(null);
49
+ const formRef = useRef<HTMLKolFormElement>(null);
50
+
51
+ const handleSubmit = async () => {
52
+ setSectionSubmitted(true);
53
+ touchFields<FormValues>(fieldsToValidate, getValues, setValue);
54
+ const isValid = await trigger(fieldsToValidate, { shouldFocus: true });
55
+ if (isValid) {
56
+ setSectionSubmitted(false);
57
+ onComplete();
58
+ } else {
59
+ focusErrorList(formRef);
60
+ }
61
+ };
38
62
  return (
39
63
  <div className="p-2">
40
64
  <KolHeading _level={2} _label="Select a district"></KolHeading>
41
65
  <KolForm
42
- ref={formikRef}
66
+ ref={formRef}
43
67
  _errorList={sectionSubmitted ? errorList : []}
44
68
  _on={{
45
69
  onSubmit: () => {
46
- setSectionSubmitted(true);
47
- form
48
- .validateForm()
49
- .then((res) => {
50
- if (res && Object.keys(res).length > 0) throw Error();
51
- void form.submitForm();
52
- })
53
- .catch(() => {
54
- focusErrorList(formikRef);
55
- });
70
+ void handleSubmit();
56
71
  },
57
72
  }}
58
73
  >
59
- <Field name="district">
60
- {({ field }: FieldProps<FormValues['district']>) => (
61
- <KolSelect
62
- id="field-district"
63
- _label="District"
64
- _options={[{ label: 'Please select…', value: '' }, ...LOCATION_OPTIONS]}
65
- _value={[field.value]}
66
- _msg={{
67
- _type: 'error',
68
- _description: form.errors.district || '',
69
- }}
70
- _touched={form.touched.district}
71
- _required
72
- onBlur={() => {
73
- void form.setFieldTouched('district', true);
74
- }}
75
- _on={{
76
- onChange: (event, values: unknown) => {
77
- setSectionSubmitted(false);
78
- // Select und Radio setzen den Wert immer initial.
79
- if (event.target) {
80
- const [value] = values as [FormValues['district']];
81
- void form.setFieldValue('district', value, true);
82
- }
83
- },
84
- }}
85
- />
86
- )}
87
- </Field>
74
+ <KolSelectController
75
+ control={control}
76
+ name="district"
77
+ id="field-district"
78
+ _label="District"
79
+ _options={[{ label: 'Please select…', value: '' }, ...LOCATION_OPTIONS]}
80
+ _required
81
+ _on={{
82
+ onChange: () => {
83
+ setSectionSubmitted(false);
84
+ clearErrors(fieldsToValidate);
85
+ },
86
+ }}
87
+ />
88
88
 
89
89
  <KolButton _label="Next" _type="submit" className="mt-2" />
90
90
  </KolForm>