@public-ui/components 3.0.0 → 3.0.1-7c24654fbf351e04b5635c30d957697951f63331.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. package/custom-elements.json +1 -1
  2. package/dist/cjs/{Alert-22c49278.js → Alert-232eddce.js} +1 -1
  3. package/dist/cjs/{Alert-22c49278.js.map → Alert-232eddce.js.map} +1 -1
  4. package/dist/cjs/{Collapsible-04d07ae5.js → Collapsible-edb6f116.js} +1 -1
  5. package/dist/cjs/{Collapsible-04d07ae5.js.map → Collapsible-edb6f116.js.map} +1 -1
  6. package/dist/cjs/{CustomSuggestionsOptionsGroup-60ec84bd.js → CustomSuggestionsOptionsGroup-58ff15d8.js} +1 -1
  7. package/dist/cjs/{CustomSuggestionsOptionsGroup-60ec84bd.js.map → CustomSuggestionsOptionsGroup-58ff15d8.js.map} +1 -1
  8. package/dist/cjs/{FieldControlStateWrapper-b83a1e2e.js → FieldControlStateWrapper-c8c06d23.js} +1 -1
  9. package/dist/cjs/{FieldControlStateWrapper-b83a1e2e.js.map → FieldControlStateWrapper-c8c06d23.js.map} +1 -1
  10. package/dist/cjs/{Heading-b8bbd132.js → Heading-6bd422b8.js} +1 -1
  11. package/dist/cjs/{Heading-b8bbd132.js.map → Heading-6bd422b8.js.map} +1 -1
  12. package/dist/cjs/{Icon-9e0021e7.js → Icon-55410375.js} +1 -1
  13. package/dist/cjs/{Icon-9e0021e7.js.map → Icon-55410375.js.map} +1 -1
  14. package/dist/cjs/{Input-c953eb09.js → Input-03525feb.js} +1 -1
  15. package/dist/cjs/{Input-c953eb09.js.map → Input-03525feb.js.map} +1 -1
  16. package/dist/cjs/{InputStateWrapper-89c220eb.js → InputStateWrapper-c8dec8cf.js} +1 -1
  17. package/dist/cjs/{InputStateWrapper-89c220eb.js.map → InputStateWrapper-c8dec8cf.js.map} +1 -1
  18. package/dist/cjs/{InternalUnderlinedBadgeText-6c8700f2.js → InternalUnderlinedBadgeText-078e9c0a.js} +1 -1
  19. package/dist/cjs/{InternalUnderlinedBadgeText-6c8700f2.js.map → InternalUnderlinedBadgeText-078e9c0a.js.map} +1 -1
  20. package/dist/cjs/{Span-77749bd7.js → Span-9ec2e9e0.js} +1 -1
  21. package/dist/cjs/{Span-77749bd7.js.map → Span-9ec2e9e0.js.map} +1 -1
  22. package/dist/cjs/{app-globals-46af1a24.js → app-globals-e11dbda2.js} +1 -1
  23. package/dist/cjs/{app-globals-46af1a24.js.map → app-globals-e11dbda2.js.map} +1 -1
  24. package/dist/cjs/{controller-3eecbf98.js → controller-0cff981a.js} +1 -1
  25. package/dist/cjs/{controller-3eecbf98.js.map → controller-0cff981a.js.map} +1 -1
  26. package/dist/cjs/{controller-849b3844.js → controller-76eff51b.js} +1 -1
  27. package/dist/cjs/{controller-849b3844.js.map → controller-76eff51b.js.map} +1 -1
  28. package/dist/cjs/{controller-d834122a.js → controller-c51dbde9.js} +1 -1
  29. package/dist/cjs/{controller-d834122a.js.map → controller-c51dbde9.js.map} +1 -1
  30. package/dist/cjs/{controller-icon-e2f8e416.js → controller-icon-d5163111.js} +1 -1
  31. package/dist/cjs/{controller-icon-e2f8e416.js.map → controller-icon-d5163111.js.map} +1 -1
  32. package/dist/cjs/{dev.utils-f6da9b54.js → dev.utils-258a9943.js} +1 -1
  33. package/dist/cjs/{dev.utils-f6da9b54.js.map → dev.utils-258a9943.js.map} +1 -1
  34. package/dist/cjs/{devtools-ff9824c8.js → devtools-78060880.js} +1 -1
  35. package/dist/cjs/{devtools-ff9824c8.js.map → devtools-78060880.js.map} +1 -1
  36. package/dist/cjs/{getRenderStates-8e102335.js → getRenderStates-4f3dbd3b.js} +1 -1
  37. package/dist/cjs/{getRenderStates-8e102335.js.map → getRenderStates-4f3dbd3b.js.map} +1 -1
  38. package/dist/cjs/index-87e5e3ad.js +4 -0
  39. package/dist/cjs/index-87e5e3ad.js.map +1 -0
  40. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  41. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  42. package/dist/cjs/kol-alert-wc.cjs.entry.js +1 -1
  43. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  44. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  45. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  46. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  47. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  48. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  49. package/dist/cjs/kol-button-wc.cjs.entry.js +1 -1
  50. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  51. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-combobox.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-drawer.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  57. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  59. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  77. package/dist/cjs/kol-popover-button-wc.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-popover-button.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-single-select.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-table-settings-wc.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-table-stateful.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-table-stateless.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-toolbar.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-tooltip-wc.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-tree-item-wc.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-tree-item.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-tree-wc.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-tree.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  101. package/dist/cjs/kolibri.cjs.js +1 -1
  102. package/dist/cjs/loader.cjs.js +1 -1
  103. package/dist/cjs/test-component.cjs.entry.js +1 -1
  104. package/dist/components/kol-pagination.js +1 -1
  105. package/dist/components/kol-pagination.js.map +1 -1
  106. package/dist/esm/Alert-bb061e95.js +4 -0
  107. package/dist/esm/{Alert-3c98a2ff.js.map → Alert-bb061e95.js.map} +1 -1
  108. package/dist/esm/{Collapsible-e6c95e1f.js → Collapsible-25ebba0d.js} +1 -1
  109. package/dist/esm/{Collapsible-e6c95e1f.js.map → Collapsible-25ebba0d.js.map} +1 -1
  110. package/dist/esm/{CustomSuggestionsOptionsGroup-6b0631f5.js → CustomSuggestionsOptionsGroup-11c15a86.js} +1 -1
  111. package/dist/esm/{CustomSuggestionsOptionsGroup-6b0631f5.js.map → CustomSuggestionsOptionsGroup-11c15a86.js.map} +1 -1
  112. package/dist/esm/{FieldControlStateWrapper-7397d965.js → FieldControlStateWrapper-bbbfa4b1.js} +1 -1
  113. package/dist/esm/{FieldControlStateWrapper-7397d965.js.map → FieldControlStateWrapper-bbbfa4b1.js.map} +1 -1
  114. package/dist/esm/{Heading-bb974fcc.js → Heading-598a07b9.js} +1 -1
  115. package/dist/esm/{Heading-bb974fcc.js.map → Heading-598a07b9.js.map} +1 -1
  116. package/dist/esm/{Icon-faa6cbca.js → Icon-0b8e0b26.js} +1 -1
  117. package/dist/esm/{Icon-faa6cbca.js.map → Icon-0b8e0b26.js.map} +1 -1
  118. package/dist/esm/{Input-ce53cfae.js → Input-56e72e4d.js} +1 -1
  119. package/dist/esm/{Input-ce53cfae.js.map → Input-56e72e4d.js.map} +1 -1
  120. package/dist/esm/{InputStateWrapper-8dd66762.js → InputStateWrapper-9982ec35.js} +1 -1
  121. package/dist/esm/{InputStateWrapper-8dd66762.js.map → InputStateWrapper-9982ec35.js.map} +1 -1
  122. package/dist/esm/{InternalUnderlinedBadgeText-2e08c7cb.js → InternalUnderlinedBadgeText-2c119ff7.js} +1 -1
  123. package/dist/esm/{InternalUnderlinedBadgeText-2e08c7cb.js.map → InternalUnderlinedBadgeText-2c119ff7.js.map} +1 -1
  124. package/dist/esm/{Span-89b9ae45.js → Span-d4dcdab5.js} +1 -1
  125. package/dist/esm/{Span-89b9ae45.js.map → Span-d4dcdab5.js.map} +1 -1
  126. package/dist/esm/{app-globals-7a7161e6.js → app-globals-b26c5e94.js} +1 -1
  127. package/dist/esm/{app-globals-7a7161e6.js.map → app-globals-b26c5e94.js.map} +1 -1
  128. package/dist/esm/{controller-6c0e1b56.js → controller-43afa174.js} +1 -1
  129. package/dist/esm/{controller-6c0e1b56.js.map → controller-43afa174.js.map} +1 -1
  130. package/dist/esm/{controller-d626a16d.js → controller-e8cb3cac.js} +1 -1
  131. package/dist/esm/{controller-d626a16d.js.map → controller-e8cb3cac.js.map} +1 -1
  132. package/dist/esm/{controller-1beb6ffa.js → controller-faa5fff2.js} +1 -1
  133. package/dist/esm/{controller-1beb6ffa.js.map → controller-faa5fff2.js.map} +1 -1
  134. package/dist/esm/{controller-icon-bb92519e.js → controller-icon-75bb95e9.js} +1 -1
  135. package/dist/esm/{controller-icon-bb92519e.js.map → controller-icon-75bb95e9.js.map} +1 -1
  136. package/dist/esm/{dev.utils-77f0b548.js → dev.utils-9e6009ff.js} +1 -1
  137. package/dist/esm/{dev.utils-77f0b548.js.map → dev.utils-9e6009ff.js.map} +1 -1
  138. package/dist/esm/{devtools-3a667970.js → devtools-5cb32cb1.js} +1 -1
  139. package/dist/esm/{devtools-3a667970.js.map → devtools-5cb32cb1.js.map} +1 -1
  140. package/dist/esm/{getRenderStates-dba2a9a8.js → getRenderStates-c9074761.js} +1 -1
  141. package/dist/esm/{getRenderStates-dba2a9a8.js.map → getRenderStates-c9074761.js.map} +1 -1
  142. package/dist/esm/index-aceb5633.js +4 -0
  143. package/dist/esm/index-aceb5633.js.map +1 -0
  144. package/dist/esm/kol-abbr.entry.js +1 -1
  145. package/dist/esm/kol-accordion.entry.js +1 -1
  146. package/dist/esm/kol-alert-wc.entry.js +1 -1
  147. package/dist/esm/kol-alert.entry.js +1 -1
  148. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  149. package/dist/esm/kol-avatar.entry.js +1 -1
  150. package/dist/esm/kol-badge.entry.js +1 -1
  151. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  152. package/dist/esm/kol-button-link.entry.js +1 -1
  153. package/dist/esm/kol-button-wc.entry.js +1 -1
  154. package/dist/esm/kol-button.entry.js +1 -1
  155. package/dist/esm/kol-card.entry.js +1 -1
  156. package/dist/esm/kol-combobox.entry.js +1 -1
  157. package/dist/esm/kol-details.entry.js +1 -1
  158. package/dist/esm/kol-drawer.entry.js +1 -1
  159. package/dist/esm/kol-form.entry.js +1 -1
  160. package/dist/esm/kol-heading.entry.js +1 -1
  161. package/dist/esm/kol-icon.entry.js +1 -1
  162. package/dist/esm/kol-image.entry.js +1 -1
  163. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  164. package/dist/esm/kol-input-color.entry.js +1 -1
  165. package/dist/esm/kol-input-date.entry.js +1 -1
  166. package/dist/esm/kol-input-email.entry.js +1 -1
  167. package/dist/esm/kol-input-file.entry.js +1 -1
  168. package/dist/esm/kol-input-number.entry.js +1 -1
  169. package/dist/esm/kol-input-password.entry.js +1 -1
  170. package/dist/esm/kol-input-radio.entry.js +1 -1
  171. package/dist/esm/kol-input-range.entry.js +1 -1
  172. package/dist/esm/kol-input-text.entry.js +1 -1
  173. package/dist/esm/kol-kolibri.entry.js +1 -1
  174. package/dist/esm/kol-link-button.entry.js +1 -1
  175. package/dist/esm/kol-link-wc.entry.js +1 -1
  176. package/dist/esm/kol-link.entry.js +1 -1
  177. package/dist/esm/kol-modal.entry.js +1 -1
  178. package/dist/esm/kol-nav.entry.js +1 -1
  179. package/dist/esm/kol-pagination.entry.js +1 -1
  180. package/dist/esm/kol-pagination.entry.js.map +1 -1
  181. package/dist/esm/kol-popover-button-wc.entry.js +1 -1
  182. package/dist/esm/kol-popover-button.entry.js +1 -1
  183. package/dist/esm/kol-popover-wc.entry.js +1 -1
  184. package/dist/esm/kol-progress.entry.js +1 -1
  185. package/dist/esm/kol-quote.entry.js +1 -1
  186. package/dist/esm/kol-select.entry.js +1 -1
  187. package/dist/esm/kol-single-select.entry.js +1 -1
  188. package/dist/esm/kol-skip-nav.entry.js +1 -1
  189. package/dist/esm/kol-spin.entry.js +1 -1
  190. package/dist/esm/kol-split-button.entry.js +1 -1
  191. package/dist/esm/kol-table-settings-wc.entry.js +1 -1
  192. package/dist/esm/kol-table-stateful.entry.js +1 -1
  193. package/dist/esm/kol-table-stateless-wc.entry.js +1 -1
  194. package/dist/esm/kol-table-stateless.entry.js +1 -1
  195. package/dist/esm/kol-tabs.entry.js +1 -1
  196. package/dist/esm/kol-textarea.entry.js +1 -1
  197. package/dist/esm/kol-toast-container.entry.js +1 -1
  198. package/dist/esm/kol-toolbar.entry.js +1 -1
  199. package/dist/esm/kol-tooltip-wc.entry.js +1 -1
  200. package/dist/esm/kol-tree-item-wc.entry.js +1 -1
  201. package/dist/esm/kol-tree-item.entry.js +1 -1
  202. package/dist/esm/kol-tree-wc.entry.js +1 -1
  203. package/dist/esm/kol-tree.entry.js +1 -1
  204. package/dist/esm/kol-version.entry.js +1 -1
  205. package/dist/esm/kolibri.js +1 -1
  206. package/dist/esm/loader.js +1 -1
  207. package/dist/esm/test-component.entry.js +1 -1
  208. package/dist/kolibri/{Alert-3c98a2ff.js → Alert-bb061e95.js} +1 -1
  209. package/dist/kolibri/{Collapsible-e6c95e1f.js → Collapsible-25ebba0d.js} +1 -1
  210. package/dist/kolibri/{CustomSuggestionsOptionsGroup-6b0631f5.js → CustomSuggestionsOptionsGroup-11c15a86.js} +1 -1
  211. package/dist/kolibri/{FieldControlStateWrapper-7397d965.js → FieldControlStateWrapper-bbbfa4b1.js} +1 -1
  212. package/dist/kolibri/{Heading-bb974fcc.js → Heading-598a07b9.js} +1 -1
  213. package/dist/kolibri/{Icon-faa6cbca.js → Icon-0b8e0b26.js} +1 -1
  214. package/dist/kolibri/{Input-ce53cfae.js → Input-56e72e4d.js} +1 -1
  215. package/dist/kolibri/{InputStateWrapper-8dd66762.js → InputStateWrapper-9982ec35.js} +1 -1
  216. package/dist/kolibri/InternalUnderlinedBadgeText-2c119ff7.js +4 -0
  217. package/dist/kolibri/{Span-89b9ae45.js → Span-d4dcdab5.js} +1 -1
  218. package/dist/kolibri/app-globals-b26c5e94.js +4 -0
  219. package/dist/kolibri/{app-globals-7a7161e6.js.map → app-globals-b26c5e94.js.map} +1 -1
  220. package/dist/kolibri/{controller-6c0e1b56.js → controller-43afa174.js} +1 -1
  221. package/dist/kolibri/{controller-d626a16d.js → controller-e8cb3cac.js} +1 -1
  222. package/dist/kolibri/{controller-1beb6ffa.js → controller-faa5fff2.js} +1 -1
  223. package/dist/kolibri/{controller-icon-bb92519e.js → controller-icon-75bb95e9.js} +1 -1
  224. package/dist/kolibri/{dev.utils-77f0b548.js → dev.utils-9e6009ff.js} +1 -1
  225. package/dist/kolibri/{devtools-3a667970.js → devtools-5cb32cb1.js} +1 -1
  226. package/dist/kolibri/{getRenderStates-dba2a9a8.js → getRenderStates-c9074761.js} +1 -1
  227. package/dist/kolibri/{index-136f59ac.js → index-aceb5633.js} +1 -1
  228. package/dist/kolibri/index-aceb5633.js.map +1 -0
  229. package/dist/kolibri/kol-abbr.entry.js +1 -1
  230. package/dist/kolibri/kol-accordion.entry.js +1 -1
  231. package/dist/kolibri/kol-alert-wc.entry.js +1 -1
  232. package/dist/kolibri/kol-alert.entry.js +1 -1
  233. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  234. package/dist/kolibri/kol-avatar.entry.js +1 -1
  235. package/dist/kolibri/kol-badge.entry.js +1 -1
  236. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  237. package/dist/kolibri/kol-button-link.entry.js +1 -1
  238. package/dist/kolibri/kol-button-wc.entry.js +1 -1
  239. package/dist/kolibri/kol-button.entry.js +1 -1
  240. package/dist/kolibri/kol-card.entry.js +1 -1
  241. package/dist/kolibri/kol-combobox.entry.js +1 -1
  242. package/dist/kolibri/kol-details.entry.js +1 -1
  243. package/dist/kolibri/kol-drawer.entry.js +1 -1
  244. package/dist/kolibri/kol-form.entry.js +1 -1
  245. package/dist/kolibri/kol-heading.entry.js +1 -1
  246. package/dist/kolibri/kol-icon.entry.js +1 -1
  247. package/dist/kolibri/kol-image.entry.js +1 -1
  248. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  249. package/dist/kolibri/kol-input-color.entry.js +1 -1
  250. package/dist/kolibri/kol-input-date.entry.js +1 -1
  251. package/dist/kolibri/kol-input-email.entry.js +1 -1
  252. package/dist/kolibri/kol-input-file.entry.js +1 -1
  253. package/dist/kolibri/kol-input-number.entry.js +1 -1
  254. package/dist/kolibri/kol-input-password.entry.js +1 -1
  255. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  256. package/dist/kolibri/kol-input-range.entry.js +1 -1
  257. package/dist/kolibri/kol-input-text.entry.js +1 -1
  258. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  259. package/dist/kolibri/kol-link-button.entry.js +1 -1
  260. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  261. package/dist/kolibri/kol-link.entry.js +1 -1
  262. package/dist/kolibri/kol-modal.entry.js +1 -1
  263. package/dist/kolibri/kol-nav.entry.js +1 -1
  264. package/dist/kolibri/kol-pagination.entry.js +1 -1
  265. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  266. package/dist/kolibri/kol-popover-button-wc.entry.js +1 -1
  267. package/dist/kolibri/kol-popover-button.entry.js +1 -1
  268. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  269. package/dist/kolibri/kol-progress.entry.js +1 -1
  270. package/dist/kolibri/kol-quote.entry.js +1 -1
  271. package/dist/kolibri/kol-select.entry.js +1 -1
  272. package/dist/kolibri/kol-single-select.entry.js +1 -1
  273. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  274. package/dist/kolibri/kol-spin.entry.js +1 -1
  275. package/dist/kolibri/kol-split-button.entry.js +1 -1
  276. package/dist/kolibri/kol-table-settings-wc.entry.js +1 -1
  277. package/dist/kolibri/kol-table-stateful.entry.js +1 -1
  278. package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
  279. package/dist/kolibri/kol-table-stateless.entry.js +1 -1
  280. package/dist/kolibri/kol-tabs.entry.js +1 -1
  281. package/dist/kolibri/kol-textarea.entry.js +1 -1
  282. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  283. package/dist/kolibri/kol-toolbar.entry.js +1 -1
  284. package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
  285. package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
  286. package/dist/kolibri/kol-tree-item.entry.js +1 -1
  287. package/dist/kolibri/kol-tree-wc.entry.js +1 -1
  288. package/dist/kolibri/kol-tree.entry.js +1 -1
  289. package/dist/kolibri/kol-version.entry.js +1 -1
  290. package/dist/kolibri/kolibri.esm.js +1 -1
  291. package/dist/kolibri/test-component.entry.js +1 -1
  292. package/package.json +1 -1
  293. package/dist/cjs/index-03ef29aa.js +0 -4
  294. package/dist/cjs/index-03ef29aa.js.map +0 -1
  295. package/dist/esm/Alert-3c98a2ff.js +0 -4
  296. package/dist/esm/index-136f59ac.js +0 -4
  297. package/dist/esm/index-136f59ac.js.map +0 -1
  298. package/dist/kolibri/InternalUnderlinedBadgeText-2e08c7cb.js +0 -4
  299. package/dist/kolibri/app-globals-7a7161e6.js +0 -4
  300. package/dist/kolibri/index-136f59ac.js.map +0 -1
  301. /package/dist/kolibri/{Alert-3c98a2ff.js.map → Alert-bb061e95.js.map} +0 -0
  302. /package/dist/kolibri/{Collapsible-e6c95e1f.js.map → Collapsible-25ebba0d.js.map} +0 -0
  303. /package/dist/kolibri/{CustomSuggestionsOptionsGroup-6b0631f5.js.map → CustomSuggestionsOptionsGroup-11c15a86.js.map} +0 -0
  304. /package/dist/kolibri/{FieldControlStateWrapper-7397d965.js.map → FieldControlStateWrapper-bbbfa4b1.js.map} +0 -0
  305. /package/dist/kolibri/{Heading-bb974fcc.js.map → Heading-598a07b9.js.map} +0 -0
  306. /package/dist/kolibri/{Icon-faa6cbca.js.map → Icon-0b8e0b26.js.map} +0 -0
  307. /package/dist/kolibri/{Input-ce53cfae.js.map → Input-56e72e4d.js.map} +0 -0
  308. /package/dist/kolibri/{InputStateWrapper-8dd66762.js.map → InputStateWrapper-9982ec35.js.map} +0 -0
  309. /package/dist/kolibri/{InternalUnderlinedBadgeText-2e08c7cb.js.map → InternalUnderlinedBadgeText-2c119ff7.js.map} +0 -0
  310. /package/dist/kolibri/{Span-89b9ae45.js.map → Span-d4dcdab5.js.map} +0 -0
  311. /package/dist/kolibri/{controller-6c0e1b56.js.map → controller-43afa174.js.map} +0 -0
  312. /package/dist/kolibri/{controller-d626a16d.js.map → controller-e8cb3cac.js.map} +0 -0
  313. /package/dist/kolibri/{controller-1beb6ffa.js.map → controller-faa5fff2.js.map} +0 -0
  314. /package/dist/kolibri/{controller-icon-bb92519e.js.map → controller-icon-75bb95e9.js.map} +0 -0
  315. /package/dist/kolibri/{dev.utils-77f0b548.js.map → dev.utils-9e6009ff.js.map} +0 -0
  316. /package/dist/kolibri/{devtools-3a667970.js.map → devtools-5cb32cb1.js.map} +0 -0
  317. /package/dist/kolibri/{getRenderStates-dba2a9a8.js.map → getRenderStates-c9074761.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"controller-1beb6ffa.js","mappings":"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","names":[],"sources":["src/schema/props/variant/password-variant.ts","src/components/input-password/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\nconst PasswordVariantPropTypeOptions = ['default', 'visibility-toggle'] as const;\nexport type PasswordVariantPropType = (typeof PasswordVariantPropTypeOptions)[number];\n\n/**\n * Defines the different variants for displaying the password input.\n */\nexport type PropPasswordVariant = {\n\tvariant: PasswordVariantPropType;\n};\n\n/* validator */\nexport const validatePasswordVariant = (component: Generic.Element.Component, value?: PasswordVariantPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t'_variant',\n\t\t(value) => typeof value === 'string' && PasswordVariantPropTypeOptions.includes(value),\n\t\tnew Set(PasswordVariantPropTypeOptions),\n\t\tvalue,\n\t);\n};\n","import type { InputPasswordProps, InputPasswordWatches, InputTypeOnOff } from '../../schema';\nimport { validateHasCounter, watchBoolean, watchNumber, watchString, watchValidator } from '../../schema';\nimport type { PasswordVariantPropType } from '../../schema/props/variant/password-variant';\nimport { validatePasswordVariant } from '../../schema/props/variant/password-variant';\n\nimport { InputIconController } from '../@deprecated/input/controller-icon';\n\nimport type { Generic } from 'adopted-style-sheets';\n\nexport class InputPasswordController extends InputIconController implements InputPasswordWatches {\n\tprotected readonly component: Generic.Element.Component & InputPasswordProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputPasswordProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tprotected afterSyncCharCounter = () => {\n\t\tif (typeof this.component._value === 'string' && this.component._value.length > 0) {\n\t\t\tthis.component.state._currentLength = this.component._value.length;\n\t\t}\n\t};\n\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_autoComplete',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'on' || value === 'off'),\n\t\t\tnew Set(['on | off']),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tvalidateHasCounter(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateVariant(value?: PasswordVariantPropType): void {\n\t\tvalidatePasswordVariant(this.component, value);\n\t}\n\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\tpublic validatePattern(value?: string): void {\n\t\twatchString(this.component, '_pattern', value);\n\t}\n\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePattern(this.component._pattern);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateValue(this.component._value);\n\t\tthis.validateVariant(this.component._variant);\n\t}\n}\n"],"version":3}
1
+ {"file":"controller-faa5fff2.js","mappings":"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","names":[],"sources":["src/schema/props/variant/password-variant.ts","src/components/input-password/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\nconst PasswordVariantPropTypeOptions = ['default', 'visibility-toggle'] as const;\nexport type PasswordVariantPropType = (typeof PasswordVariantPropTypeOptions)[number];\n\n/**\n * Defines the different variants for displaying the password input.\n */\nexport type PropPasswordVariant = {\n\tvariant: PasswordVariantPropType;\n};\n\n/* validator */\nexport const validatePasswordVariant = (component: Generic.Element.Component, value?: PasswordVariantPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t'_variant',\n\t\t(value) => typeof value === 'string' && PasswordVariantPropTypeOptions.includes(value),\n\t\tnew Set(PasswordVariantPropTypeOptions),\n\t\tvalue,\n\t);\n};\n","import type { InputPasswordProps, InputPasswordWatches, InputTypeOnOff } from '../../schema';\nimport { validateHasCounter, watchBoolean, watchNumber, watchString, watchValidator } from '../../schema';\nimport type { PasswordVariantPropType } from '../../schema/props/variant/password-variant';\nimport { validatePasswordVariant } from '../../schema/props/variant/password-variant';\n\nimport { InputIconController } from '../@deprecated/input/controller-icon';\n\nimport type { Generic } from 'adopted-style-sheets';\n\nexport class InputPasswordController extends InputIconController implements InputPasswordWatches {\n\tprotected readonly component: Generic.Element.Component & InputPasswordProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputPasswordProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tprotected afterSyncCharCounter = () => {\n\t\tif (typeof this.component._value === 'string' && this.component._value.length > 0) {\n\t\t\tthis.component.state._currentLength = this.component._value.length;\n\t\t}\n\t};\n\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_autoComplete',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'on' || value === 'off'),\n\t\t\tnew Set(['on | off']),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tvalidateHasCounter(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateVariant(value?: PasswordVariantPropType): void {\n\t\tvalidatePasswordVariant(this.component, value);\n\t}\n\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\tpublic validatePattern(value?: string): void {\n\t\twatchString(this.component, '_pattern', value);\n\t}\n\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePattern(this.component._pattern);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateValue(this.component._value);\n\t\tthis.validateVariant(this.component._variant);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{h}from"./index-136f59ac.js";import{w as watchValidator}from"./index-88dea7b1.js";import{_ as __rest}from"./tslib.es6-1173d062.js";import{c as clsx}from"./clsx-09a06a12.js";import{c as checkHasMsg,a as convertMsgToInternMsg,I as InputController}from"./getRenderStates-dba2a9a8.js";import{a as KolButtonWcTag}from"./component-names-799e91e2.js";import{K as KolIconFc}from"./Icon-faa6cbca.js";import{i as isString}from"./InternalUnderlinedBadgeText-2e08c7cb.js";import{i as isObject}from"./isObject-ffcbbb76.js";import{v as validateIcons}from"./icons-acf365fd.js";const InputAdornment=(n,t)=>{var{position:o="start",class:s}=n,e=__rest(n,["position","class"]);const i="kol-input-container__adornment",r=`${i}--${o}`;return h("div",Object.assign({class:clsx(i,r,s)},e),t)};function hasItems(n){return!!n&&(Array.isArray(n)?n.length>0:Boolean(n))}const Container=(n,t)=>{var{class:o}=n,s=__rest(n,["class"]);return h("div",Object.assign({class:clsx("kol-input-container__container",o)},s),t)},KolInputContainerFc=(n,t)=>{const{class:o,startAdornment:s,endAdornment:e,disabled:i,msg:r,touched:a,containerProps:c,startAdornmentProps:l,endAdornmentProps:d}=n,u=__rest(n,["class","startAdornment","endAdornment","disabled","msg","touched","containerProps","startAdornmentProps","endAdornmentProps"]),m=checkHasMsg(r,a),p={"kol-input-container--disabled":i,[`kol-input-container--${(null==r?void 0:r.type)||"error"}`]:m},b=Object.assign({class:clsx("kol-input-container",p,o)},u);return hasItems(s)||hasItems(e)?h("div",Object.assign({},b),h(InputAdornment,Object.assign({},l,{position:"start"}),s),h(Container,Object.assign({},c),t),h(InputAdornment,Object.assign({},d,{position:"end"}),e)):h("div",Object.assign({},b),h(Container,Object.assign({},c),t))},KolButtonFc=n=>{const{label:t,icons:o,hideLabel:s,disabled:e,onClick:i}=n,r=__rest(n,["label","icons","hideLabel","disabled","onClick"]);return h(KolButtonWcTag,Object.assign({_label:t,_disabled:e,_icons:o,_hideLabel:s,_on:{onClick:i}},r))},KolIconButtonFc=n=>{const{componentName:t="button",label:o,icon:s,onClick:e}=n,i=__rest(n,["componentName","label","icon","onClick"]);return h("button"===t?KolButtonFc:KolIconFc,Object.assign({label:o||"",hideLabel:!0,icons:`codicon codicon-${s}`,onClick:e},i))};function getInputContainerProps(n){let t,o;return"_icons"in n&&(t=n._icons),"_smartButton"in n&&(o=n._smartButton),{icons:t,smartButton:o,disabled:n._disabled,msg:convertMsgToInternMsg(n._msg),touched:n._touched}}const InputContainerStateWrapperFc=({state:n,endAdornment:t},o)=>{const{icons:s,smartButton:e,disabled:i,msg:r,touched:a}=getInputContainerProps(n);let c=null==s?void 0:s.left;isString(c)&&(c={icon:c});let l=null==s?void 0:s.right;isString(l)&&(l={icon:l});const d=[],u=[];return t&&(Array.isArray(t)?u.push(...t):u.push(t)),c&&d.push(h(KolIconButtonFc,Object.assign({componentName:"icon",class:"kol-input-container__icon"},isObject(c)?c:{}))),isObject(e)&&u.push(h(KolIconButtonFc,Object.assign({componentName:"button",class:"kol-input-container__smart-button"},e,{hideLabel:!0,disabled:i}))),l&&u.push(h(KolIconButtonFc,Object.assign({componentName:"icon",class:"kol-input-container__icon"},isObject(l)?l:{}))),h(KolInputContainerFc,{disabled:i,msg:r,touched:a,startAdornment:d,endAdornment:u},o)};class InputIconController extends InputController{constructor(n,t,o){super(n,t,o),this.numberStringRegex=/^\d+(\.\d+)?$/,this.parseToNumber=n=>"number"==typeof n?isNaN(n)?null:n:this.isNumberString(n)?parseFloat(n):null,this.validateNumber=(n,t)=>watchValidator(this.component,n,(n=>null==n||"number"==typeof n||"string"==typeof n&&this.numberStringRegex.test(n)),new Set(["number","NumberString"]),t,{hooks:{beforePatch:(t,o)=>{(null==o?void 0:o.has(n))&&(null==o||o.set(n,this.parseToNumber(t)))}}}),this.component=n}validateIcons(n){validateIcons(this.component,n)}isNumberString(n){return"string"==typeof n&&this.numberStringRegex.test(n)}componentWillLoad(){super.componentWillLoad(),this.validateIcons(this.component._icons)}}export{InputIconController as I,KolIconButtonFc as K,InputContainerStateWrapperFc as a};
4
+ import{h}from"./index-aceb5633.js";import{w as watchValidator}from"./index-88dea7b1.js";import{_ as __rest}from"./tslib.es6-1173d062.js";import{c as clsx}from"./clsx-09a06a12.js";import{c as checkHasMsg,a as convertMsgToInternMsg,I as InputController}from"./getRenderStates-c9074761.js";import{a as KolButtonWcTag}from"./component-names-799e91e2.js";import{K as KolIconFc}from"./Icon-0b8e0b26.js";import{i as isString}from"./InternalUnderlinedBadgeText-2c119ff7.js";import{i as isObject}from"./isObject-ffcbbb76.js";import{v as validateIcons}from"./icons-acf365fd.js";const InputAdornment=(n,t)=>{var{position:o="start",class:s}=n,e=__rest(n,["position","class"]);const i="kol-input-container__adornment",r=`${i}--${o}`;return h("div",Object.assign({class:clsx(i,r,s)},e),t)};function hasItems(n){return!!n&&(Array.isArray(n)?n.length>0:Boolean(n))}const Container=(n,t)=>{var{class:o}=n,s=__rest(n,["class"]);return h("div",Object.assign({class:clsx("kol-input-container__container",o)},s),t)},KolInputContainerFc=(n,t)=>{const{class:o,startAdornment:s,endAdornment:e,disabled:i,msg:r,touched:a,containerProps:c,startAdornmentProps:l,endAdornmentProps:d}=n,u=__rest(n,["class","startAdornment","endAdornment","disabled","msg","touched","containerProps","startAdornmentProps","endAdornmentProps"]),m=checkHasMsg(r,a),p={"kol-input-container--disabled":i,[`kol-input-container--${(null==r?void 0:r.type)||"error"}`]:m},b=Object.assign({class:clsx("kol-input-container",p,o)},u);return hasItems(s)||hasItems(e)?h("div",Object.assign({},b),h(InputAdornment,Object.assign({},l,{position:"start"}),s),h(Container,Object.assign({},c),t),h(InputAdornment,Object.assign({},d,{position:"end"}),e)):h("div",Object.assign({},b),h(Container,Object.assign({},c),t))},KolButtonFc=n=>{const{label:t,icons:o,hideLabel:s,disabled:e,onClick:i}=n,r=__rest(n,["label","icons","hideLabel","disabled","onClick"]);return h(KolButtonWcTag,Object.assign({_label:t,_disabled:e,_icons:o,_hideLabel:s,_on:{onClick:i}},r))},KolIconButtonFc=n=>{const{componentName:t="button",label:o,icon:s,onClick:e}=n,i=__rest(n,["componentName","label","icon","onClick"]);return h("button"===t?KolButtonFc:KolIconFc,Object.assign({label:o||"",hideLabel:!0,icons:`codicon codicon-${s}`,onClick:e},i))};function getInputContainerProps(n){let t,o;return"_icons"in n&&(t=n._icons),"_smartButton"in n&&(o=n._smartButton),{icons:t,smartButton:o,disabled:n._disabled,msg:convertMsgToInternMsg(n._msg),touched:n._touched}}const InputContainerStateWrapperFc=({state:n,endAdornment:t},o)=>{const{icons:s,smartButton:e,disabled:i,msg:r,touched:a}=getInputContainerProps(n);let c=null==s?void 0:s.left;isString(c)&&(c={icon:c});let l=null==s?void 0:s.right;isString(l)&&(l={icon:l});const d=[],u=[];return t&&(Array.isArray(t)?u.push(...t):u.push(t)),c&&d.push(h(KolIconButtonFc,Object.assign({componentName:"icon",class:"kol-input-container__icon"},isObject(c)?c:{}))),isObject(e)&&u.push(h(KolIconButtonFc,Object.assign({componentName:"button",class:"kol-input-container__smart-button"},e,{hideLabel:!0,disabled:i}))),l&&u.push(h(KolIconButtonFc,Object.assign({componentName:"icon",class:"kol-input-container__icon"},isObject(l)?l:{}))),h(KolInputContainerFc,{disabled:i,msg:r,touched:a,startAdornment:d,endAdornment:u},o)};class InputIconController extends InputController{constructor(n,t,o){super(n,t,o),this.numberStringRegex=/^\d+(\.\d+)?$/,this.parseToNumber=n=>"number"==typeof n?isNaN(n)?null:n:this.isNumberString(n)?parseFloat(n):null,this.validateNumber=(n,t)=>watchValidator(this.component,n,(n=>null==n||"number"==typeof n||"string"==typeof n&&this.numberStringRegex.test(n)),new Set(["number","NumberString"]),t,{hooks:{beforePatch:(t,o)=>{(null==o?void 0:o.has(n))&&(null==o||o.set(n,this.parseToNumber(t)))}}}),this.component=n}validateIcons(n){validateIcons(this.component,n)}isNumberString(n){return"string"==typeof n&&this.numberStringRegex.test(n)}componentWillLoad(){super.componentWillLoad(),this.validateIcons(this.component._icons)}}export{InputIconController as I,KolIconButtonFc as K,InputContainerStateWrapperFc as a};
@@ -1 +1 @@
1
- {"file":"controller-icon-bb92519e.js","mappings":"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","names":[],"sources":["src/functional-components/InputAdornment/InputAdornment.tsx","src/functional-components/InputContainer/InputContainer.tsx","src/functional-components/Button/Button.tsx","src/functional-components/IconButton/IconButton.tsx","src/functional-component-wrappers/InputContainerStateWrapper/InputContainerStateWrapper.tsx","src/components/@deprecated/input/controller-icon.ts"],"sourcesContent":["import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\n\nexport type InputAdornmentProps = JSXBase.HTMLAttributes<HTMLDivElement> & {\n\tposition?: 'start' | 'end';\n};\n\nconst InputAdornment: FC<InputAdornmentProps> = ({ position = 'start', class: className, ...other }, children) => {\n\tconst rootClassName = `kol-input-container__adornment`;\n\tconst positionClassName = `${rootClassName}--${position}`;\n\n\treturn (\n\t\t<div class={clsx(rootClassName, positionClassName, className)} {...other}>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n\nexport default InputAdornment;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport clsx from 'clsx';\nimport type { JSXBase, VNode } from '@stencil/core/internal';\nimport InputAdornment from '../InputAdornment';\nimport { checkHasMsg, type InternMsgPropType } from '../../schema';\n\ntype InputAdornmentType = VNode | VNode[] | null;\n\nexport type InputContainerProps = JSXBase.HTMLAttributes & {\n\tstartAdornment?: InputAdornmentType;\n\tendAdornment?: InputAdornmentType;\n\tdisabled?: boolean;\n\tmsg?: InternMsgPropType;\n\ttouched?: boolean;\n\n\tcontainerProps?: JSXBase.HTMLAttributes<HTMLDivElement>;\n\tstartAdornmentProps?: JSXBase.HTMLAttributes<HTMLDivElement>;\n\tendAdornmentProps?: JSXBase.HTMLAttributes<HTMLDivElement>;\n};\n\nfunction hasItems(items?: InputAdornmentType): boolean {\n\tif (!items) {\n\t\treturn false;\n\t}\n\n\treturn Array.isArray(items) ? items.length > 0 : Boolean(items);\n}\n\nconst Container: FC<JSXBase.HTMLAttributes<HTMLDivElement>> = ({ class: className, ...other }, children) => {\n\treturn (\n\t\t<div class={clsx('kol-input-container__container', className)} {...other}>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n\nconst KolInputContainerFc: FC<InputContainerProps> = (props, children) => {\n\tconst { class: classNames, startAdornment, endAdornment, disabled, msg, touched, containerProps, startAdornmentProps, endAdornmentProps, ...other } = props;\n\tconst showMsg = checkHasMsg(msg, touched);\n\n\tconst stateCssClasses = {\n\t\t['kol-input-container--disabled']: disabled,\n\t\t[`kol-input-container--${msg?.type || 'error'}`]: showMsg,\n\t};\n\n\tconst baseProps: JSXBase.HTMLAttributes<HTMLDivElement> = {\n\t\tclass: clsx('kol-input-container', stateCssClasses, classNames),\n\t\t...other,\n\t};\n\n\tif (!hasItems(startAdornment) && !hasItems(endAdornment)) {\n\t\treturn (\n\t\t\t<div {...baseProps}>\n\t\t\t\t<Container {...containerProps}>{children}</Container>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div {...baseProps}>\n\t\t\t<InputAdornment {...startAdornmentProps} position=\"start\">\n\t\t\t\t{startAdornment}\n\t\t\t</InputAdornment>\n\t\t\t<Container {...containerProps}>{children}</Container>\n\t\t\t<InputAdornment {...endAdornmentProps} position=\"end\">\n\t\t\t\t{endAdornment}\n\t\t\t</InputAdornment>\n\t\t</div>\n\t);\n};\n\nexport default KolInputContainerFc;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nimport type { InternalButtonProps } from '../../schema';\n\nexport type ButtonProps = Partial<InternalButtonProps> & {\n\tlabel: string;\n\tclass?: string;\n\tonClick?: (event: MouseEvent) => void;\n};\n\nconst KolButtonFc: FC<ButtonProps> = (props) => {\n\tconst { label, icons, hideLabel, disabled, onClick, ...other } = props;\n\n\treturn <KolButtonWcTag _label={label} _disabled={disabled} _icons={icons} _hideLabel={hideLabel} _on={{ onClick }} {...other} />;\n};\n\nexport default KolButtonFc;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport KolButtonFc, { type ButtonProps } from '../Button';\nimport KolIconFc, { type IconProps } from '../Icon';\n\ntype IconType = Partial<Omit<IconProps, 'icons'>> & {\n\tcomponentName: 'icon';\n\ticon?: string;\n\tclass?: string;\n\n\tonClick?: (event: MouseEvent) => void;\n};\n\ntype ButtonType = Partial<Omit<ButtonProps, 'icons'>> & {\n\tcomponentName: 'button';\n\ticon?: string;\n\tlabel?: string;\n\tclass?: string;\n\n\tonClick?: (event: MouseEvent) => void;\n};\n\nexport type IconButtonProps = IconType | ButtonType;\n\n/**\n * `KolIconButtonFc` is a functional component that renders either a Button or an Icon based on the provided props.\n *\n * Depending on the value of the `componentName` prop, either a Button (`KolButtonFc`) or an Icon (`KolIconFc`) is rendered.\n * Both components support optional `icon` props for displaying an icon and an optional `onClick` handler for user interactions.\n *\n * This component combines the flexibility of rendering either a button with an optional label or a simple icon, while ensuring that unnecessary props for the selected element are not passed.\n *\n * Supported props:\n * - `componentName`: Specifies whether a 'button' or 'icon' should be rendered. Default is 'button'.\n * - `label`: An optional label, which is only shown for Buttons.\n * - `icon`: The name of the icon (e.g., \"home\", \"edit\") or the Codicon class used for the icon display.\n * - `class`: Optional CSS class for additional styling customization.\n * - `onClick`: Optional click handler for user interactions.\n *\n * Example usage:\n * ```tsx\n * <KolIconButtonFc componentName=\"button\" label=\"Submit\" icon=\"check\" onClick={handleClick} />\n * <KolIconButtonFc componentName=\"icon\" icon=\"alert\" onClick={handleClick} />\n * ```\n *\n * @param {IconButtonProps} props - The properties that customize the component, including the selection of the component type (Button or Icon) and other specific attributes.\n * @returns {JSX.Element} - The rendered JSX element (Button or Icon).\n */\nconst KolIconButtonFc: FC<IconButtonProps> = (props) => {\n\tconst { componentName = 'button', label, icon, onClick, ...other } = props;\n\tconst Component = componentName === 'button' ? KolButtonFc : KolIconFc;\n\n\treturn <Component label={label || ''} hideLabel icons={`codicon codicon-${icon}`} onClick={onClick} {...other} />;\n};\n\nexport default KolIconButtonFc;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport type { InternMsgPropType } from '../../schema';\nimport {\n\ttype ButtonProps,\n\ttype IconOrIconClass,\n\ttype InputColorStates,\n\ttype InputEmailStates,\n\ttype InputFileStates,\n\ttype InputNumberStates,\n\ttype InputPasswordStates,\n\ttype InputRangeStates,\n\ttype InputTextStates,\n\ttype KoliBriHorizontalIcons,\n\ttype TextareaStates,\n\ttype SelectStates,\n\tconvertMsgToInternMsg,\n} from '../../schema';\n\nimport KolInputContainerFc, { type InputContainerProps } from '../../functional-components/InputContainer';\nimport KolIconButtonFc from '../../functional-components/IconButton';\nimport { isObject, isString } from 'lodash-es';\n\ntype InputState =\n\t| TextareaStates\n\t| SelectStates\n\t| InputTextStates\n\t| InputEmailStates\n\t| InputPasswordStates\n\t| InputNumberStates\n\t| InputColorStates\n\t| InputFileStates\n\t| InputRangeStates;\n\nexport type InputContainerStateWrapperProps = Partial<InputContainerProps> & {\n\tstate: InputState;\n};\n\nfunction getInputContainerProps(state: InputState): {\n\ticons?: KoliBriHorizontalIcons;\n\tsmartButton?: ButtonProps;\n\tdisabled?: boolean;\n\tmsg?: InternMsgPropType;\n\ttouched?: boolean;\n} {\n\tlet icons: KoliBriHorizontalIcons | undefined = undefined;\n\tlet smartButton: ButtonProps | undefined;\n\n\tif ('_icons' in state) {\n\t\ticons = state._icons;\n\t}\n\n\tif ('_smartButton' in state) {\n\t\tsmartButton = state._smartButton;\n\t}\n\n\treturn {\n\t\ticons,\n\t\tsmartButton,\n\t\tdisabled: state._disabled,\n\t\tmsg: convertMsgToInternMsg(state._msg),\n\t\ttouched: state._touched,\n\t};\n}\n\nconst InputContainerStateWrapperFc: FC<InputContainerStateWrapperProps> = ({ state, endAdornment: defaultEndAdornment }, children) => {\n\tconst { icons, smartButton, disabled, msg, touched } = getInputContainerProps(state);\n\n\tlet leftIconProps: IconOrIconClass | undefined = icons?.left;\n\tif (isString(leftIconProps)) {\n\t\tleftIconProps = { icon: leftIconProps };\n\t}\n\n\tlet rightIconProps: IconOrIconClass | undefined = icons?.right;\n\tif (isString(rightIconProps)) {\n\t\trightIconProps = { icon: rightIconProps };\n\t}\n\n\tconst startAdornment = [];\n\tconst endAdornment = [];\n\n\tif (defaultEndAdornment) {\n\t\tif (Array.isArray(defaultEndAdornment)) {\n\t\t\tendAdornment.push(...defaultEndAdornment);\n\t\t} else {\n\t\t\tendAdornment.push(defaultEndAdornment);\n\t\t}\n\t}\n\n\tif (leftIconProps) {\n\t\tstartAdornment.push(<KolIconButtonFc componentName=\"icon\" class=\"kol-input-container__icon\" {...(isObject(leftIconProps) ? leftIconProps : {})} />);\n\t}\n\n\tif (isObject(smartButton)) {\n\t\tendAdornment.push(\n\t\t\t<KolIconButtonFc componentName=\"button\" class=\"kol-input-container__smart-button\" {...smartButton} hideLabel={true} disabled={disabled} />,\n\t\t);\n\t}\n\n\tif (rightIconProps) {\n\t\tendAdornment.push(<KolIconButtonFc componentName=\"icon\" class=\"kol-input-container__icon\" {...(isObject(rightIconProps) ? rightIconProps : {})} />);\n\t}\n\n\treturn (\n\t\t<KolInputContainerFc disabled={disabled} msg={msg} touched={touched} startAdornment={startAdornment} endAdornment={endAdornment}>\n\t\t\t{children}\n\t\t</KolInputContainerFc>\n\t);\n};\n\nexport default InputContainerStateWrapperFc;\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type { IconsHorizontalPropType, NumberString } from '../../../schema';\nimport { watchValidator } from '../../../schema';\nimport { validateIcons } from '../../../schema';\n\nimport { InputController } from './controller';\n\nimport type { Props, Watches } from './types-icon';\n\nexport class InputIconController extends InputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprivate readonly numberStringRegex = /^\\d+(\\.\\d+)?$/; // https://regex101.com/r/mET6Tx/1\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateIcons(value?: IconsHorizontalPropType): void {\n\t\tvalidateIcons(this.component, value);\n\t}\n\n\tpublic isNumberString(value: unknown): value is NumberString {\n\t\treturn typeof value === 'string' && this.numberStringRegex.test(value);\n\t}\n\n\tprotected readonly parseToNumber = (value?: number | NumberString | null): number | null => {\n\t\tif (typeof value === 'number') {\n\t\t\treturn isNaN(value) ? null : value;\n\t\t}\n\t\tif (this.isNumberString(value)) {\n\t\t\treturn parseFloat(value);\n\t\t}\n\t\treturn null;\n\t};\n\n\tprotected readonly validateNumber = (propName: string, value?: number | NumberString | null) => {\n\t\treturn watchValidator(\n\t\t\tthis.component,\n\t\t\tpropName,\n\t\t\t(value): boolean =>\n\t\t\t\tvalue === undefined || value === null || typeof value === 'number' || (typeof value === 'string' && this.numberStringRegex.test(value)),\n\t\t\tnew Set(['number', 'NumberString']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tbeforePatch: (value: unknown, nextState) => {\n\t\t\t\t\t\tif (nextState?.has(propName)) {\n\t\t\t\t\t\t\tnextState?.set(propName, this.parseToNumber(value as number | NumberString | null));\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t);\n\t};\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateIcons(this.component._icons);\n\t}\n}\n"],"version":3}
1
+ {"file":"controller-icon-75bb95e9.js","mappings":"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","names":[],"sources":["src/functional-components/InputAdornment/InputAdornment.tsx","src/functional-components/InputContainer/InputContainer.tsx","src/functional-components/Button/Button.tsx","src/functional-components/IconButton/IconButton.tsx","src/functional-component-wrappers/InputContainerStateWrapper/InputContainerStateWrapper.tsx","src/components/@deprecated/input/controller-icon.ts"],"sourcesContent":["import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\n\nexport type InputAdornmentProps = JSXBase.HTMLAttributes<HTMLDivElement> & {\n\tposition?: 'start' | 'end';\n};\n\nconst InputAdornment: FC<InputAdornmentProps> = ({ position = 'start', class: className, ...other }, children) => {\n\tconst rootClassName = `kol-input-container__adornment`;\n\tconst positionClassName = `${rootClassName}--${position}`;\n\n\treturn (\n\t\t<div class={clsx(rootClassName, positionClassName, className)} {...other}>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n\nexport default InputAdornment;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport clsx from 'clsx';\nimport type { JSXBase, VNode } from '@stencil/core/internal';\nimport InputAdornment from '../InputAdornment';\nimport { checkHasMsg, type InternMsgPropType } from '../../schema';\n\ntype InputAdornmentType = VNode | VNode[] | null;\n\nexport type InputContainerProps = JSXBase.HTMLAttributes & {\n\tstartAdornment?: InputAdornmentType;\n\tendAdornment?: InputAdornmentType;\n\tdisabled?: boolean;\n\tmsg?: InternMsgPropType;\n\ttouched?: boolean;\n\n\tcontainerProps?: JSXBase.HTMLAttributes<HTMLDivElement>;\n\tstartAdornmentProps?: JSXBase.HTMLAttributes<HTMLDivElement>;\n\tendAdornmentProps?: JSXBase.HTMLAttributes<HTMLDivElement>;\n};\n\nfunction hasItems(items?: InputAdornmentType): boolean {\n\tif (!items) {\n\t\treturn false;\n\t}\n\n\treturn Array.isArray(items) ? items.length > 0 : Boolean(items);\n}\n\nconst Container: FC<JSXBase.HTMLAttributes<HTMLDivElement>> = ({ class: className, ...other }, children) => {\n\treturn (\n\t\t<div class={clsx('kol-input-container__container', className)} {...other}>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n\nconst KolInputContainerFc: FC<InputContainerProps> = (props, children) => {\n\tconst { class: classNames, startAdornment, endAdornment, disabled, msg, touched, containerProps, startAdornmentProps, endAdornmentProps, ...other } = props;\n\tconst showMsg = checkHasMsg(msg, touched);\n\n\tconst stateCssClasses = {\n\t\t['kol-input-container--disabled']: disabled,\n\t\t[`kol-input-container--${msg?.type || 'error'}`]: showMsg,\n\t};\n\n\tconst baseProps: JSXBase.HTMLAttributes<HTMLDivElement> = {\n\t\tclass: clsx('kol-input-container', stateCssClasses, classNames),\n\t\t...other,\n\t};\n\n\tif (!hasItems(startAdornment) && !hasItems(endAdornment)) {\n\t\treturn (\n\t\t\t<div {...baseProps}>\n\t\t\t\t<Container {...containerProps}>{children}</Container>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div {...baseProps}>\n\t\t\t<InputAdornment {...startAdornmentProps} position=\"start\">\n\t\t\t\t{startAdornment}\n\t\t\t</InputAdornment>\n\t\t\t<Container {...containerProps}>{children}</Container>\n\t\t\t<InputAdornment {...endAdornmentProps} position=\"end\">\n\t\t\t\t{endAdornment}\n\t\t\t</InputAdornment>\n\t\t</div>\n\t);\n};\n\nexport default KolInputContainerFc;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nimport type { InternalButtonProps } from '../../schema';\n\nexport type ButtonProps = Partial<InternalButtonProps> & {\n\tlabel: string;\n\tclass?: string;\n\tonClick?: (event: MouseEvent) => void;\n};\n\nconst KolButtonFc: FC<ButtonProps> = (props) => {\n\tconst { label, icons, hideLabel, disabled, onClick, ...other } = props;\n\n\treturn <KolButtonWcTag _label={label} _disabled={disabled} _icons={icons} _hideLabel={hideLabel} _on={{ onClick }} {...other} />;\n};\n\nexport default KolButtonFc;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport KolButtonFc, { type ButtonProps } from '../Button';\nimport KolIconFc, { type IconProps } from '../Icon';\n\ntype IconType = Partial<Omit<IconProps, 'icons'>> & {\n\tcomponentName: 'icon';\n\ticon?: string;\n\tclass?: string;\n\n\tonClick?: (event: MouseEvent) => void;\n};\n\ntype ButtonType = Partial<Omit<ButtonProps, 'icons'>> & {\n\tcomponentName: 'button';\n\ticon?: string;\n\tlabel?: string;\n\tclass?: string;\n\n\tonClick?: (event: MouseEvent) => void;\n};\n\nexport type IconButtonProps = IconType | ButtonType;\n\n/**\n * `KolIconButtonFc` is a functional component that renders either a Button or an Icon based on the provided props.\n *\n * Depending on the value of the `componentName` prop, either a Button (`KolButtonFc`) or an Icon (`KolIconFc`) is rendered.\n * Both components support optional `icon` props for displaying an icon and an optional `onClick` handler for user interactions.\n *\n * This component combines the flexibility of rendering either a button with an optional label or a simple icon, while ensuring that unnecessary props for the selected element are not passed.\n *\n * Supported props:\n * - `componentName`: Specifies whether a 'button' or 'icon' should be rendered. Default is 'button'.\n * - `label`: An optional label, which is only shown for Buttons.\n * - `icon`: The name of the icon (e.g., \"home\", \"edit\") or the Codicon class used for the icon display.\n * - `class`: Optional CSS class for additional styling customization.\n * - `onClick`: Optional click handler for user interactions.\n *\n * Example usage:\n * ```tsx\n * <KolIconButtonFc componentName=\"button\" label=\"Submit\" icon=\"check\" onClick={handleClick} />\n * <KolIconButtonFc componentName=\"icon\" icon=\"alert\" onClick={handleClick} />\n * ```\n *\n * @param {IconButtonProps} props - The properties that customize the component, including the selection of the component type (Button or Icon) and other specific attributes.\n * @returns {JSX.Element} - The rendered JSX element (Button or Icon).\n */\nconst KolIconButtonFc: FC<IconButtonProps> = (props) => {\n\tconst { componentName = 'button', label, icon, onClick, ...other } = props;\n\tconst Component = componentName === 'button' ? KolButtonFc : KolIconFc;\n\n\treturn <Component label={label || ''} hideLabel icons={`codicon codicon-${icon}`} onClick={onClick} {...other} />;\n};\n\nexport default KolIconButtonFc;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport type { InternMsgPropType } from '../../schema';\nimport {\n\ttype ButtonProps,\n\ttype IconOrIconClass,\n\ttype InputColorStates,\n\ttype InputEmailStates,\n\ttype InputFileStates,\n\ttype InputNumberStates,\n\ttype InputPasswordStates,\n\ttype InputRangeStates,\n\ttype InputTextStates,\n\ttype KoliBriHorizontalIcons,\n\ttype TextareaStates,\n\ttype SelectStates,\n\tconvertMsgToInternMsg,\n} from '../../schema';\n\nimport KolInputContainerFc, { type InputContainerProps } from '../../functional-components/InputContainer';\nimport KolIconButtonFc from '../../functional-components/IconButton';\nimport { isObject, isString } from 'lodash-es';\n\ntype InputState =\n\t| TextareaStates\n\t| SelectStates\n\t| InputTextStates\n\t| InputEmailStates\n\t| InputPasswordStates\n\t| InputNumberStates\n\t| InputColorStates\n\t| InputFileStates\n\t| InputRangeStates;\n\nexport type InputContainerStateWrapperProps = Partial<InputContainerProps> & {\n\tstate: InputState;\n};\n\nfunction getInputContainerProps(state: InputState): {\n\ticons?: KoliBriHorizontalIcons;\n\tsmartButton?: ButtonProps;\n\tdisabled?: boolean;\n\tmsg?: InternMsgPropType;\n\ttouched?: boolean;\n} {\n\tlet icons: KoliBriHorizontalIcons | undefined = undefined;\n\tlet smartButton: ButtonProps | undefined;\n\n\tif ('_icons' in state) {\n\t\ticons = state._icons;\n\t}\n\n\tif ('_smartButton' in state) {\n\t\tsmartButton = state._smartButton;\n\t}\n\n\treturn {\n\t\ticons,\n\t\tsmartButton,\n\t\tdisabled: state._disabled,\n\t\tmsg: convertMsgToInternMsg(state._msg),\n\t\ttouched: state._touched,\n\t};\n}\n\nconst InputContainerStateWrapperFc: FC<InputContainerStateWrapperProps> = ({ state, endAdornment: defaultEndAdornment }, children) => {\n\tconst { icons, smartButton, disabled, msg, touched } = getInputContainerProps(state);\n\n\tlet leftIconProps: IconOrIconClass | undefined = icons?.left;\n\tif (isString(leftIconProps)) {\n\t\tleftIconProps = { icon: leftIconProps };\n\t}\n\n\tlet rightIconProps: IconOrIconClass | undefined = icons?.right;\n\tif (isString(rightIconProps)) {\n\t\trightIconProps = { icon: rightIconProps };\n\t}\n\n\tconst startAdornment = [];\n\tconst endAdornment = [];\n\n\tif (defaultEndAdornment) {\n\t\tif (Array.isArray(defaultEndAdornment)) {\n\t\t\tendAdornment.push(...defaultEndAdornment);\n\t\t} else {\n\t\t\tendAdornment.push(defaultEndAdornment);\n\t\t}\n\t}\n\n\tif (leftIconProps) {\n\t\tstartAdornment.push(<KolIconButtonFc componentName=\"icon\" class=\"kol-input-container__icon\" {...(isObject(leftIconProps) ? leftIconProps : {})} />);\n\t}\n\n\tif (isObject(smartButton)) {\n\t\tendAdornment.push(\n\t\t\t<KolIconButtonFc componentName=\"button\" class=\"kol-input-container__smart-button\" {...smartButton} hideLabel={true} disabled={disabled} />,\n\t\t);\n\t}\n\n\tif (rightIconProps) {\n\t\tendAdornment.push(<KolIconButtonFc componentName=\"icon\" class=\"kol-input-container__icon\" {...(isObject(rightIconProps) ? rightIconProps : {})} />);\n\t}\n\n\treturn (\n\t\t<KolInputContainerFc disabled={disabled} msg={msg} touched={touched} startAdornment={startAdornment} endAdornment={endAdornment}>\n\t\t\t{children}\n\t\t</KolInputContainerFc>\n\t);\n};\n\nexport default InputContainerStateWrapperFc;\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type { IconsHorizontalPropType, NumberString } from '../../../schema';\nimport { watchValidator } from '../../../schema';\nimport { validateIcons } from '../../../schema';\n\nimport { InputController } from './controller';\n\nimport type { Props, Watches } from './types-icon';\n\nexport class InputIconController extends InputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprivate readonly numberStringRegex = /^\\d+(\\.\\d+)?$/; // https://regex101.com/r/mET6Tx/1\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateIcons(value?: IconsHorizontalPropType): void {\n\t\tvalidateIcons(this.component, value);\n\t}\n\n\tpublic isNumberString(value: unknown): value is NumberString {\n\t\treturn typeof value === 'string' && this.numberStringRegex.test(value);\n\t}\n\n\tprotected readonly parseToNumber = (value?: number | NumberString | null): number | null => {\n\t\tif (typeof value === 'number') {\n\t\t\treturn isNaN(value) ? null : value;\n\t\t}\n\t\tif (this.isNumberString(value)) {\n\t\t\treturn parseFloat(value);\n\t\t}\n\t\treturn null;\n\t};\n\n\tprotected readonly validateNumber = (propName: string, value?: number | NumberString | null) => {\n\t\treturn watchValidator(\n\t\t\tthis.component,\n\t\t\tpropName,\n\t\t\t(value): boolean =>\n\t\t\t\tvalue === undefined || value === null || typeof value === 'number' || (typeof value === 'string' && this.numberStringRegex.test(value)),\n\t\t\tnew Set(['number', 'NumberString']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tbeforePatch: (value: unknown, nextState) => {\n\t\t\t\t\t\tif (nextState?.has(propName)) {\n\t\t\t\t\t\t\tnextState?.set(propName, this.parseToNumber(value as number | NumberString | null));\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t);\n\t};\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateIcons(this.component._icons);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{L as Log,g as getDocument,s as setDevMode,c as setExperimentalMode,d as setColorContrastAnalysis,p as processEnv,e as getWindow}from"./index-88dea7b1.js";import{E as Env}from"./index-136f59ac.js";const initMeta=()=>{const e=getDocument().querySelector('meta[name="kolibri"]');if(e&&e.hasAttribute("content")){const t=e.getAttribute("content");"string"==typeof t&&(setDevMode(t.includes("dev-mode=true")),setExperimentalMode(t.includes("experimental-mode=true")),setColorContrastAnalysis(t.includes("color-contrast-analysis=true")))}},getKoliBri=()=>{let e=getWindow().KoliBri;return void 0===e&&(e={},Object.defineProperty(getWindow(),"KoliBri",{value:e,writable:!1})),e},initKoliBri=()=>{initMeta(),Log.debug(`\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | \`--' | |) /_ ,--.--. \`--'\n| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n| |\\ \\ | '-' | | | | | | '--' / | | | |\n\`--' \`--´ \`---´ \`--' \`--' \`------´ \`--' \`--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | ${Env.kolibriVersion}\n\t`,{forceLog:!0})},renderDevAdvice=()=>{!0!==getKoliBri().adviceShown&&(Object.defineProperty(getKoliBri(),"adviceShown",{get:function(){return!0}}),Log.debug("\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n"))};let nonce=()=>Math.floor(16777215*Math.random()).toString(16);"test"===processEnv&&(nonce=()=>"nonce");export{initKoliBri as i,nonce as n,renderDevAdvice as r};
4
+ import{L as Log,g as getDocument,s as setDevMode,c as setExperimentalMode,d as setColorContrastAnalysis,p as processEnv,e as getWindow}from"./index-88dea7b1.js";import{E as Env}from"./index-aceb5633.js";const initMeta=()=>{const e=getDocument().querySelector('meta[name="kolibri"]');if(e&&e.hasAttribute("content")){const t=e.getAttribute("content");"string"==typeof t&&(setDevMode(t.includes("dev-mode=true")),setExperimentalMode(t.includes("experimental-mode=true")),setColorContrastAnalysis(t.includes("color-contrast-analysis=true")))}},getKoliBri=()=>{let e=getWindow().KoliBri;return void 0===e&&(e={},Object.defineProperty(getWindow(),"KoliBri",{value:e,writable:!1})),e},initKoliBri=()=>{initMeta(),Log.debug(`\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | \`--' | |) /_ ,--.--. \`--'\n| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n| |\\ \\ | '-' | | | | | | '--' / | | | |\n\`--' \`--´ \`---´ \`--' \`--' \`------´ \`--' \`--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | ${Env.kolibriVersion}\n\t`,{forceLog:!0})},renderDevAdvice=()=>{!0!==getKoliBri().adviceShown&&(Object.defineProperty(getKoliBri(),"adviceShown",{get:function(){return!0}}),Log.debug("\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n"))};let nonce=()=>Math.floor(16777215*Math.random()).toString(16);"test"===processEnv&&(nonce=()=>"nonce");export{initKoliBri as i,nonce as n,renderDevAdvice as r};
@@ -1 +1 @@
1
- {"file":"dev.utils-77f0b548.js","mappings":";;;;;;AAKA,MAAM,QAAQ,GAAG;IAChB,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;IACjE,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAChC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;YAC9C,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAChE,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC,CAAC;SAC3E;KACD;AACF,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG;IAClB,IAAI,OAAO,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC;IAClC,IAAI,OAAO,KAAK,SAAS,EAAE;QAC1B,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE;YAC7C,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,KAAK;SACf,CAAC,CAAC;KACH;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;MAIW,WAAW,GAAG;IAC1B,QAAQ,EAAE,CAAC;IACX,GAAG,CAAC,KAAK,CACR;;;;;;qEAMmE,GAAG,CAAC,cAAc;EACrF,EACA;QACC,QAAQ,EAAE,IAAI;KACd,CACD,CAAC;AACH,EAAE;MAEW,eAAe,GAAG;IAC9B,IAAI,UAAU,EAAE,CAAC,WAAW,KAAK,IAAI,EAAE;QACtC,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE;YAClD,GAAG,EAAE;gBACJ,OAAO,IAAI,CAAC;aACZ;SACD,CAAC,CAAC;QACH,GAAG,CAAC,KAAK,CACR;;;;;CAKF,CACE,CAAC;KACF;AACF,EAAE;IAEE,KAAK,GAAG,MAAc,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE;AAE5E,IAAI,UAAU,KAAK,MAAM,EAAE;IAC1B,KAAK,GAAG,MAAc,OAAO,CAAC;AAC/B;;;;","names":[],"sources":["src/utils/dev.utils.ts"],"sourcesContent":["import { Log, getDocument, processEnv, setColorContrastAnalysis, setDevMode, setExperimentalMode } from '../schema';\n\nimport { getWindow } from '../schema';\nimport { Env } from '@stencil/core';\n\nconst initMeta = (): void => {\n\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\tif (meta && meta.hasAttribute('content')) {\n\t\tconst content = meta.getAttribute('content');\n\t\tif (typeof content === 'string') {\n\t\t\tsetDevMode(content.includes('dev-mode=true'));\n\t\t\tsetExperimentalMode(content.includes('experimental-mode=true'));\n\t\t\tsetColorContrastAnalysis(content.includes('color-contrast-analysis=true'));\n\t\t}\n\t}\n};\n\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nexport { getKoliBri };\n\nexport const initKoliBri = (): void => {\n\tinitMeta();\n\tLog.debug(\n\t\t`\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | ${Env.kolibriVersion}\n\t`,\n\t\t{\n\t\t\tforceLog: true,\n\t\t},\n\t);\n};\n\nexport const renderDevAdvice = (): void => {\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(getKoliBri(), 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`,\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n"],"version":3}
1
+ {"file":"dev.utils-9e6009ff.js","mappings":";;;;;;AAKA,MAAM,QAAQ,GAAG;IAChB,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;IACjE,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAChC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;YAC9C,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAChE,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC,CAAC;SAC3E;KACD;AACF,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG;IAClB,IAAI,OAAO,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC;IAClC,IAAI,OAAO,KAAK,SAAS,EAAE;QAC1B,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE;YAC7C,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,KAAK;SACf,CAAC,CAAC;KACH;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;MAIW,WAAW,GAAG;IAC1B,QAAQ,EAAE,CAAC;IACX,GAAG,CAAC,KAAK,CACR;;;;;;qEAMmE,GAAG,CAAC,cAAc;EACrF,EACA;QACC,QAAQ,EAAE,IAAI;KACd,CACD,CAAC;AACH,EAAE;MAEW,eAAe,GAAG;IAC9B,IAAI,UAAU,EAAE,CAAC,WAAW,KAAK,IAAI,EAAE;QACtC,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE;YAClD,GAAG,EAAE;gBACJ,OAAO,IAAI,CAAC;aACZ;SACD,CAAC,CAAC;QACH,GAAG,CAAC,KAAK,CACR;;;;;CAKF,CACE,CAAC;KACF;AACF,EAAE;IAEE,KAAK,GAAG,MAAc,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE;AAE5E,IAAI,UAAU,KAAK,MAAM,EAAE;IAC1B,KAAK,GAAG,MAAc,OAAO,CAAC;AAC/B;;;;","names":[],"sources":["src/utils/dev.utils.ts"],"sourcesContent":["import { Log, getDocument, processEnv, setColorContrastAnalysis, setDevMode, setExperimentalMode } from '../schema';\n\nimport { getWindow } from '../schema';\nimport { Env } from '@stencil/core';\n\nconst initMeta = (): void => {\n\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\tif (meta && meta.hasAttribute('content')) {\n\t\tconst content = meta.getAttribute('content');\n\t\tif (typeof content === 'string') {\n\t\t\tsetDevMode(content.includes('dev-mode=true'));\n\t\t\tsetExperimentalMode(content.includes('experimental-mode=true'));\n\t\t\tsetColorContrastAnalysis(content.includes('color-contrast-analysis=true'));\n\t\t}\n\t}\n};\n\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nexport { getKoliBri };\n\nexport const initKoliBri = (): void => {\n\tinitMeta();\n\tLog.debug(\n\t\t`\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | ${Env.kolibriVersion}\n\t`,\n\t\t{\n\t\t\tforceLog: true,\n\t\t},\n\t);\n};\n\nexport const renderDevAdvice = (): void => {\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(getKoliBri(), 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`,\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{Q as getDevMode,g as getDocument,L as Log,F as getExperimentalMode,R as getColorContrastAnalysis,T as koliBriA11yColorContrast,N as koliBriQuerySelector,U as koliBriQuerySelectorAll,W as koliBriQuerySelectorColors,X as KoliBriUtils,j as parseJson,Y as stringifyJson,e as getWindow}from"./index-88dea7b1.js";import{i as initKoliBri,r as renderDevAdvice}from"./dev.utils-77f0b548.js";import"./index-136f59ac.js";const getKoliBri=()=>{let e=getWindow().KoliBri;return void 0===e&&(e={},Object.defineProperty(getWindow(),"KoliBri",{value:e,writable:!1})),e};function prototypeKoliBri(e,t){try{Object.defineProperty(getKoliBri(),e,{get:function(){return t}})}catch(t){Log.debug(`KoliBri property ${e} is already bind.`)}}const metaModeLog=(e,t)=>Log.debug(`${e} ${t?"":"not "}activated`),initialize=()=>{if(initKoliBri(),getDevMode()){renderDevAdvice(),prototypeKoliBri("a11yColorContrast",koliBriA11yColorContrast),prototypeKoliBri("querySelector",koliBriQuerySelector),prototypeKoliBri("querySelectorAll",koliBriQuerySelectorAll),prototypeKoliBri("querySelectorColors",koliBriQuerySelectorColors),prototypeKoliBri("utils",(function(){return KoliBriUtils})),prototypeKoliBri("parseJson",parseJson),prototypeKoliBri("stringifyJson",stringifyJson);const e=getDocument().body,t=getDocument().createElement("svg");if(t.setAttribute("aria-label","KoliBri-DevTools"),t.setAttribute("xmlns","http://www.w3.org/2000/svg"),t.setAttribute("role","toolbar"),t.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),t.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',getDocument().body.appendChild(t),metaModeLog("Development mode",getDevMode()),metaModeLog("Experimental mode",getExperimentalMode()),metaModeLog("Color contrast analysis",getColorContrastAnalysis()),getColorContrastAnalysis()){const t=setTimeout((()=>{clearTimeout(t),setInterval((()=>{KoliBriUtils.queryHtmlElementColors(getDocument().createElement("div"),koliBriA11yColorContrast(e),!1,!1)}),1e4)}),2500)}}};export{initialize};
4
+ import{Q as getDevMode,g as getDocument,L as Log,F as getExperimentalMode,R as getColorContrastAnalysis,T as koliBriA11yColorContrast,N as koliBriQuerySelector,U as koliBriQuerySelectorAll,W as koliBriQuerySelectorColors,X as KoliBriUtils,j as parseJson,Y as stringifyJson,e as getWindow}from"./index-88dea7b1.js";import{i as initKoliBri,r as renderDevAdvice}from"./dev.utils-9e6009ff.js";import"./index-aceb5633.js";const getKoliBri=()=>{let e=getWindow().KoliBri;return void 0===e&&(e={},Object.defineProperty(getWindow(),"KoliBri",{value:e,writable:!1})),e};function prototypeKoliBri(e,t){try{Object.defineProperty(getKoliBri(),e,{get:function(){return t}})}catch(t){Log.debug(`KoliBri property ${e} is already bind.`)}}const metaModeLog=(e,t)=>Log.debug(`${e} ${t?"":"not "}activated`),initialize=()=>{if(initKoliBri(),getDevMode()){renderDevAdvice(),prototypeKoliBri("a11yColorContrast",koliBriA11yColorContrast),prototypeKoliBri("querySelector",koliBriQuerySelector),prototypeKoliBri("querySelectorAll",koliBriQuerySelectorAll),prototypeKoliBri("querySelectorColors",koliBriQuerySelectorColors),prototypeKoliBri("utils",(function(){return KoliBriUtils})),prototypeKoliBri("parseJson",parseJson),prototypeKoliBri("stringifyJson",stringifyJson);const e=getDocument().body,t=getDocument().createElement("svg");if(t.setAttribute("aria-label","KoliBri-DevTools"),t.setAttribute("xmlns","http://www.w3.org/2000/svg"),t.setAttribute("role","toolbar"),t.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),t.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',getDocument().body.appendChild(t),metaModeLog("Development mode",getDevMode()),metaModeLog("Experimental mode",getExperimentalMode()),metaModeLog("Color contrast analysis",getColorContrastAnalysis()),getColorContrastAnalysis()){const t=setTimeout((()=>{clearTimeout(t),setInterval((()=>{KoliBriUtils.queryHtmlElementColors(getDocument().createElement("div"),koliBriA11yColorContrast(e),!1,!1)}),1e4)}),2500)}}};export{initialize};
@@ -1 +1 @@
1
- {"file":"devtools-3a667970.js","mappings":";;;;;;;AAiBA,MAAM,UAAU,GAAG;IAClB,IAAI,OAAO,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC;IAClC,IAAI,OAAO,KAAK,SAAS,EAAE;QAC1B,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE;YAC7C,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,KAAK;SACf,CAAC,CAAC;KACH;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAEF,SAAS,gBAAgB,CAAI,IAAY,EAAE,EAAK;IAC/C,IAAI;QACH,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE;YACzC,GAAG,EAAE;gBACJ,OAAO,EAAE,CAAC;aACV;SACD,CAAC,CAAC;KACH;IAAC,OAAO,CAAC,EAAE;QACX,GAAG,CAAC,KAAK,CAAC,oBAAoB,IAAI,mBAAmB,CAAC,CAAC;KACvD;AACF,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,MAAe,KAAK,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,MAAM,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC,CAAC;MAEhG,UAAU,GAAG;IACzB,WAAW,EAAE,CAAC;IACd,IAAI,UAAU,EAAE,EAAE;QACjB,eAAe,EAAE,CAAC;QAElB,gBAAgB,CAAC,mBAAmB,EAAE,wBAAwB,CAAC,CAAC;QAChE,gBAAgB,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;QACxD,gBAAgB,CAAC,kBAAkB,EAAE,uBAAuB,CAAC,CAAC;QAC9D,gBAAgB,CAAC,qBAAqB,EAAE,0BAA0B,CAAC,CAAC;QACpE,gBAAgB,CAAC,OAAO,EAAE;YACzB,OAAO,YAAY,CAAC;SACpB,CAAC,CAAC;QACH,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACzC,gBAAgB,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;QAEjD,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC,IAAI,CAAC;QAEhC,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC/C,GAAG,CAAC,YAAY,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;QACnD,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,4BAA4B,CAAC,CAAC;QACxD,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACpC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,8EAA8E,CAAC,CAAC;QAC1G,GAAG,CAAC,SAAS,GAAG;;;;;;;;;;;;OAYX,CAAC;QAEN,WAAW,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAEpC,WAAW,CAAC,kBAAkB,EAAE,UAAU,EAAE,CAAC,CAAC;QAC9C,WAAW,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,CAAC,CAAC;QACxD,WAAW,CAAC,yBAAyB,EAAE,wBAAwB,EAAE,CAAC,CAAC;QAEnE,IAAI,wBAAwB,EAAE,EAAE;YAC/B,MAAM,OAAO,GAAG,UAAU,CAAC;gBAC1B,YAAY,CAAC,OAAO,CAAC,CAAC;gBACtB,WAAW,CAAC;oBACX,YAAY,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,wBAAwB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;iBACtH,EAAE,KAAK,CAAC,CAAC;aACV,EAAE,IAAI,CAAC,CAAC;SACT;KAmBD;AACF;;;;","names":[],"sources":["src/global/devtools.ts"],"sourcesContent":["import {\n\tgetColorContrastAnalysis,\n\tgetDevMode,\n\tgetDocument,\n\tgetExperimentalMode,\n\tgetWindow,\n\tkoliBriA11yColorContrast,\n\tkoliBriQuerySelector,\n\tkoliBriQuerySelectorAll,\n\tkoliBriQuerySelectorColors,\n\tKoliBriUtils,\n\tLog,\n\tparseJson,\n\tstringifyJson,\n} from '../schema';\nimport { initKoliBri, renderDevAdvice } from '../utils/dev.utils';\n\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nfunction prototypeKoliBri<T>(name: string, cb: T) {\n\ttry {\n\t\tObject.defineProperty(getKoliBri(), name, {\n\t\t\tget: function () {\n\t\t\t\treturn cb;\n\t\t\t},\n\t\t});\n\t} catch (e) {\n\t\tLog.debug(`KoliBri property ${name} is already bind.`);\n\t}\n}\n\nconst metaModeLog = (name: string, active: boolean) => Log.debug(`${name} ${active ? '' : 'not '}activated`);\n\nexport const initialize = (): void => {\n\tinitKoliBri();\n\tif (getDevMode()) {\n\t\trenderDevAdvice();\n\n\t\tprototypeKoliBri('a11yColorContrast', koliBriA11yColorContrast);\n\t\tprototypeKoliBri('querySelector', koliBriQuerySelector);\n\t\tprototypeKoliBri('querySelectorAll', koliBriQuerySelectorAll);\n\t\tprototypeKoliBri('querySelectorColors', koliBriQuerySelectorColors);\n\t\tprototypeKoliBri('utils', function () {\n\t\t\treturn KoliBriUtils;\n\t\t});\n\t\tprototypeKoliBri('parseJson', parseJson);\n\t\tprototypeKoliBri('stringifyJson', stringifyJson);\n\n\t\tconst body = getDocument().body;\n\n\t\tconst div = getDocument().createElement('svg');\n\t\tdiv.setAttribute('aria-label', 'KoliBri-DevTools');\n\t\tdiv.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n\t\tdiv.setAttribute('role', 'toolbar');\n\t\tdiv.setAttribute('style', 'position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;');\n\t\tdiv.innerHTML = `<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"50\"\n height=\"50\"\n viewBox=\"0 0 600 600\"\n>\n <path d=\"M353 322L213 304V434L353 322Z\" fill=\"#047\" />\n <path d=\"M209 564V304L149 434L209 564Z\" fill=\"#047\" />\n <path d=\"M357 316L417 250L361 210L275 244L357 316Z\" fill=\"#047\" />\n <path d=\"M353 318L35 36L213 300L353 318Z\" fill=\"#047\" />\n <path d=\"M329 218L237 92L250 222L272 241L329 218Z\" fill=\"#047\" />\n <path d=\"M391 286L565 272L421 252L391 286Z\" fill=\"#047\" />\n</svg>`;\n\n\t\tgetDocument().body.appendChild(div);\n\n\t\tmetaModeLog('Development mode', getDevMode());\n\t\tmetaModeLog('Experimental mode', getExperimentalMode());\n\t\tmetaModeLog('Color contrast analysis', getColorContrastAnalysis());\n\n\t\tif (getColorContrastAnalysis()) {\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tsetInterval(() => {\n\t\t\t\t\tKoliBriUtils.queryHtmlElementColors(getDocument().createElement('div'), koliBriA11yColorContrast(body), false, false);\n\t\t\t\t}, 10000);\n\t\t\t}, 2500);\n\t\t}\n\n\t\t// setTimeout(() => {\n\t\t// const kolButton = koliBriQuerySelector<HTMLButtonElement>(document, '[_label=\"Aktion ausführen\"]');\n\t\t// if (kolButton) {\n\t\t// const button = koliBriQuerySelector<HTMLButtonElement>(kolButton?.shadowRoot as ShadowRoot, 'button');\n\t\t// if (button) {\n\t\t// kolButton.style.backgroundColor = '#988';\n\t\t// button.style.backgroundColor = 'inherit';\n\t\t// button.style.color = '#988';\n\t\t// const kolButtonColors = koliBriQuerySelectorColors('[_label=\"Aktion ausführen\"]');\n\t\t// console.log(\n\t\t// koliBriQuerySelectorColors('button', {\n\t\t// ...kolButtonColors,\n\t\t// })\n\t\t// );\n\t\t// }\n\t\t// }\n\t\t// }, 2500);\n\t}\n};\n"],"version":3}
1
+ {"file":"devtools-5cb32cb1.js","mappings":";;;;;;;AAiBA,MAAM,UAAU,GAAG;IAClB,IAAI,OAAO,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC;IAClC,IAAI,OAAO,KAAK,SAAS,EAAE;QAC1B,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE;YAC7C,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,KAAK;SACf,CAAC,CAAC;KACH;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAEF,SAAS,gBAAgB,CAAI,IAAY,EAAE,EAAK;IAC/C,IAAI;QACH,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE;YACzC,GAAG,EAAE;gBACJ,OAAO,EAAE,CAAC;aACV;SACD,CAAC,CAAC;KACH;IAAC,OAAO,CAAC,EAAE;QACX,GAAG,CAAC,KAAK,CAAC,oBAAoB,IAAI,mBAAmB,CAAC,CAAC;KACvD;AACF,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,MAAe,KAAK,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,MAAM,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC,CAAC;MAEhG,UAAU,GAAG;IACzB,WAAW,EAAE,CAAC;IACd,IAAI,UAAU,EAAE,EAAE;QACjB,eAAe,EAAE,CAAC;QAElB,gBAAgB,CAAC,mBAAmB,EAAE,wBAAwB,CAAC,CAAC;QAChE,gBAAgB,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;QACxD,gBAAgB,CAAC,kBAAkB,EAAE,uBAAuB,CAAC,CAAC;QAC9D,gBAAgB,CAAC,qBAAqB,EAAE,0BAA0B,CAAC,CAAC;QACpE,gBAAgB,CAAC,OAAO,EAAE;YACzB,OAAO,YAAY,CAAC;SACpB,CAAC,CAAC;QACH,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACzC,gBAAgB,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;QAEjD,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC,IAAI,CAAC;QAEhC,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC/C,GAAG,CAAC,YAAY,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;QACnD,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,4BAA4B,CAAC,CAAC;QACxD,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACpC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,8EAA8E,CAAC,CAAC;QAC1G,GAAG,CAAC,SAAS,GAAG;;;;;;;;;;;;OAYX,CAAC;QAEN,WAAW,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAEpC,WAAW,CAAC,kBAAkB,EAAE,UAAU,EAAE,CAAC,CAAC;QAC9C,WAAW,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,CAAC,CAAC;QACxD,WAAW,CAAC,yBAAyB,EAAE,wBAAwB,EAAE,CAAC,CAAC;QAEnE,IAAI,wBAAwB,EAAE,EAAE;YAC/B,MAAM,OAAO,GAAG,UAAU,CAAC;gBAC1B,YAAY,CAAC,OAAO,CAAC,CAAC;gBACtB,WAAW,CAAC;oBACX,YAAY,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,wBAAwB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;iBACtH,EAAE,KAAK,CAAC,CAAC;aACV,EAAE,IAAI,CAAC,CAAC;SACT;KAmBD;AACF;;;;","names":[],"sources":["src/global/devtools.ts"],"sourcesContent":["import {\n\tgetColorContrastAnalysis,\n\tgetDevMode,\n\tgetDocument,\n\tgetExperimentalMode,\n\tgetWindow,\n\tkoliBriA11yColorContrast,\n\tkoliBriQuerySelector,\n\tkoliBriQuerySelectorAll,\n\tkoliBriQuerySelectorColors,\n\tKoliBriUtils,\n\tLog,\n\tparseJson,\n\tstringifyJson,\n} from '../schema';\nimport { initKoliBri, renderDevAdvice } from '../utils/dev.utils';\n\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nfunction prototypeKoliBri<T>(name: string, cb: T) {\n\ttry {\n\t\tObject.defineProperty(getKoliBri(), name, {\n\t\t\tget: function () {\n\t\t\t\treturn cb;\n\t\t\t},\n\t\t});\n\t} catch (e) {\n\t\tLog.debug(`KoliBri property ${name} is already bind.`);\n\t}\n}\n\nconst metaModeLog = (name: string, active: boolean) => Log.debug(`${name} ${active ? '' : 'not '}activated`);\n\nexport const initialize = (): void => {\n\tinitKoliBri();\n\tif (getDevMode()) {\n\t\trenderDevAdvice();\n\n\t\tprototypeKoliBri('a11yColorContrast', koliBriA11yColorContrast);\n\t\tprototypeKoliBri('querySelector', koliBriQuerySelector);\n\t\tprototypeKoliBri('querySelectorAll', koliBriQuerySelectorAll);\n\t\tprototypeKoliBri('querySelectorColors', koliBriQuerySelectorColors);\n\t\tprototypeKoliBri('utils', function () {\n\t\t\treturn KoliBriUtils;\n\t\t});\n\t\tprototypeKoliBri('parseJson', parseJson);\n\t\tprototypeKoliBri('stringifyJson', stringifyJson);\n\n\t\tconst body = getDocument().body;\n\n\t\tconst div = getDocument().createElement('svg');\n\t\tdiv.setAttribute('aria-label', 'KoliBri-DevTools');\n\t\tdiv.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n\t\tdiv.setAttribute('role', 'toolbar');\n\t\tdiv.setAttribute('style', 'position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;');\n\t\tdiv.innerHTML = `<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"50\"\n height=\"50\"\n viewBox=\"0 0 600 600\"\n>\n <path d=\"M353 322L213 304V434L353 322Z\" fill=\"#047\" />\n <path d=\"M209 564V304L149 434L209 564Z\" fill=\"#047\" />\n <path d=\"M357 316L417 250L361 210L275 244L357 316Z\" fill=\"#047\" />\n <path d=\"M353 318L35 36L213 300L353 318Z\" fill=\"#047\" />\n <path d=\"M329 218L237 92L250 222L272 241L329 218Z\" fill=\"#047\" />\n <path d=\"M391 286L565 272L421 252L391 286Z\" fill=\"#047\" />\n</svg>`;\n\n\t\tgetDocument().body.appendChild(div);\n\n\t\tmetaModeLog('Development mode', getDevMode());\n\t\tmetaModeLog('Experimental mode', getExperimentalMode());\n\t\tmetaModeLog('Color contrast analysis', getColorContrastAnalysis());\n\n\t\tif (getColorContrastAnalysis()) {\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tsetInterval(() => {\n\t\t\t\t\tKoliBriUtils.queryHtmlElementColors(getDocument().createElement('div'), koliBriA11yColorContrast(body), false, false);\n\t\t\t\t}, 10000);\n\t\t\t}, 2500);\n\t\t}\n\n\t\t// setTimeout(() => {\n\t\t// const kolButton = koliBriQuerySelector<HTMLButtonElement>(document, '[_label=\"Aktion ausführen\"]');\n\t\t// if (kolButton) {\n\t\t// const button = koliBriQuerySelector<HTMLButtonElement>(kolButton?.shadowRoot as ShadowRoot, 'button');\n\t\t// if (button) {\n\t\t// kolButton.style.backgroundColor = '#988';\n\t\t// button.style.backgroundColor = 'inherit';\n\t\t// button.style.color = '#988';\n\t\t// const kolButtonColors = koliBriQuerySelectorColors('[_label=\"Aktion ausführen\"]');\n\t\t// console.log(\n\t\t// koliBriQuerySelectorColors('button', {\n\t\t// ...kolButtonColors,\n\t\t// })\n\t\t// );\n\t\t// }\n\t\t// }\n\t\t// }, 2500);\n\t}\n};\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{h as watchBoolean,o as objectObjectHandler,j as parseJson,w as watchValidator,v as isObject,q as isString,B as buildBadgeTextString,l as showExpertSlot,i as a11yHintDisabled,b as a11yHint,A as watchString,D as devHint,k as setState}from"./index-88dea7b1.js";import{d as dispatchDomEvent,K as KolEvent}from"./events-5886c68b.js";import{A as AssociatedInputController}from"./associated.controller-4efb16f5.js";import{v as validateAccessKey,a as validateAccessAndShortKey,b as validateShortKey,c as validateTabIndex}from"./access-and-short-key-753466cb.js";import{v as validateTooltipAlign}from"./tooltip-align-4c18152e.js";import{v as validateHideLabel}from"./hide-label-418cc5c0.js";import{a as validateLabelWithExpertSlot}from"./label-5982d241.js";import{_ as __rest}from"./tslib.es6-1173d062.js";import{h,F as Fragment}from"./index-136f59ac.js";import{c as clsx}from"./clsx-09a06a12.js";import{K as KolAlertFc}from"./Alert-3c98a2ff.js";import{i as isString$1,K as KolInternalUnderlinedBadgeTextFc}from"./InternalUnderlinedBadgeText-2e08c7cb.js";import{t as translate}from"./i18n-01abf777.js";import{f as KolTooltipWcTag}from"./component-names-799e91e2.js";const validateAdjustHeight=(e,t)=>{watchBoolean(e,"_adjustHeight",t)},validateHideMsg=(e,t,o)=>{watchBoolean(e,"_hideMsg",t,o)};function transformObjectProperties(e){return Object.entries(e).reduce(((e,[t,o])=>{const i=t.startsWith("_")?t.slice(1):t;return Object.assign(Object.assign({},e),{[i]:o})}),{})}const validateMsg=(e,t)=>{objectObjectHandler(t,(()=>{try{t=parseJson(t)}catch(e){}watchValidator(e,"_msg",(e=>isObject(e)&&isString(null==e?void 0:e._description,1)||void 0===(null==e?void 0:e._type)),new Set(["MsgPropType"]),t)}))};function convertMsgToInternMsg(e){if(e)return transformObjectProperties(e)}function checkHasMsg(e,t){return!!e&&(!0===t||"error"!==(null==e?void 0:e.type))}const validateTouched=(e,t)=>{watchBoolean(e,"_touched",t)},FormFieldMsgFc=e=>{var{alert:t,msg:o,hideMsg:i,id:s,class:n}=e,a=__rest(e,["alert","msg","hideMsg","id","class"]);return h(KolAlertFc,Object.assign({id:`${s}-msg`,alert:t,type:"error",class:clsx("kol-form-field__msg",{"visually-hidden":!0===i},n)},o,a,{"aria-hidden":"true"}),(null==o?void 0:o.description)||void 0)},LabelFc=({hasExpertSlot:e,accessKey:t,shortKey:o,label:i,showBadge:s=!0})=>{if(e)return h("slot",{name:"expert"});if(!i)return null;const n=isString$1(t)||isString$1(o);if(!s||!n)return h("span",null,i);const a=buildBadgeTextString(t,o);return h(Fragment,null,h(KolInternalUnderlinedBadgeTextFc,{badgeText:a,label:i})," ",h("span",{class:"badge-text-hint","aria-hidden":"true"},a))},KolFormFieldLabelFc=e=>{var{component:t="label",id:o,baseClassName:i="kol-form-field",class:s,accessKey:n,shortKey:a,label:l,hideLabel:r,hasExpertSlot:d,showBadge:c}=e,p=__rest(e,["component","id","baseClassName","class","accessKey","shortKey","label","hideLabel","hasExpertSlot","showBadge"]);const m=!d&&r;return h(t,Object.assign({},p,{class:clsx(`${i}__label`,s),id:m?void 0:`${o}-label`,hidden:m,htmlFor:o}),h("span",{class:clsx(`${i}__label-text`)},h(LabelFc,{hasExpertSlot:d,accessKey:n,shortKey:a,label:l,showBadge:c})))},KolFormFieldHintFc=e=>{var{id:t,class:o,hint:i,baseClassName:s="kol-form-field"}=e,n=__rest(e,["id","class","hint","baseClassName"]);return i?h("span",Object.assign({class:clsx(`${s}__hint`,o),id:`${t}-hint`},n),i):null},KolFormFieldCounterFc=e=>{var{currentLength:t,maxLength:o,class:i}=e,s=__rest(e,["currentLength","maxLength","class"]);return h("span",Object.assign({class:clsx("kol-form-field__counter",i)},s,{"aria-atomic":"true","aria-live":"polite","data-testid":"input-counter"}),t,o&&h(Fragment,null,h("span",{"aria-label":translate("kol-of"),role:"img"},"/"),o)," ",h("span",null,translate("kol-characters")))},FormFieldTooltipFc=({id:e,align:t,badgeText:o,hideLabel:i,label:s,class:n})=>h(KolTooltipWcTag,{"aria-hidden":"true",class:clsx("kol-form-field__tooltip",n),_badgeText:o,_align:t,_id:i?`${e}-label`:void 0,_label:s});function getModifierClassNameByMsgType(e){return(null==e?void 0:e.type)&&{default:"msg-type-default",info:"msg-type-info",success:"msg-type-success",warning:"msg-type-warning",error:"msg-type-error"}[null==e?void 0:e.type]||""}const InputContainer=(e,t)=>{var{class:o}=e,i=__rest(e,["class"]);return h("div",Object.assign({class:clsx("kol-form-field__input",o)},i),t)},KolFormFieldFc=(e,t)=>{const{component:o="div",renderNoLabel:i,renderNoTooltip:s,renderNoHint:n,anotherChildren:a,id:l,required:r,alert:d,disabled:c,class:p,msg:m,hideMsg:u,hideLabel:g,label:b,hint:v,accessKey:f,shortKey:_,tooltipAlign:y,counter:F,readOnly:K,touched:j,formFieldLabelProps:x,formFieldHintProps:L,formFieldTooltipProps:C,formFieldMsgProps:S,formFieldCounterProps:T,formFieldInputProps:H}=e,M=__rest(e,["component","renderNoLabel","renderNoTooltip","renderNoHint","anotherChildren","id","required","alert","disabled","class","msg","hideMsg","hideLabel","label","hint","accessKey","shortKey","tooltipAlign","counter","readOnly","touched","formFieldLabelProps","formFieldHintProps","formFieldTooltipProps","formFieldMsgProps","formFieldCounterProps","formFieldInputProps"]),B=!i,O=!n,k=!s,A=showExpertSlot(b),I=checkHasMsg(m,j),E=buildBadgeTextString(f,_),P=k&&!A&&g;let w={"kol-form-field--disabled":Boolean(c),"kol-form-field--required":Boolean(r),"kol-form-field--touched":Boolean(j),"kol-form-field--hide-label":Boolean(g),"kol-form-field--read-only":Boolean(K),"kol-form-field--hidden-msg":Boolean(u)};return I&&(w=Object.assign(Object.assign({},w),{[`kol-form-field--${(null==m?void 0:m.type)||"error"}`]:!0,[`kol-form-field--${getModifierClassNameByMsgType(m)}`]:!0})),h(o,Object.assign({class:clsx("kol-form-field",w,p)},M),B&&h(KolFormFieldLabelFc,Object.assign({},x||{},{id:l,hasExpertSlot:A,hideLabel:g,label:b,accessKey:f,shortKey:_})),h(InputContainer,Object.assign({},H),t,P&&h(FormFieldTooltipFc,Object.assign({},C||{},{id:l,label:b,hideLabel:g,align:y,badgeText:E}))),F?h(KolFormFieldCounterFc,Object.assign({},T||{},F)):null,I&&h(FormFieldMsgFc,Object.assign({},S||{},{id:l,alert:d,msg:m,hideMsg:u})),O&&h(KolFormFieldHintFc,Object.assign({},L||{},{id:l,hint:v})),a)};function getDefaultProps({ariaDescribedBy:e,hideLabel:t,label:o}){return{title:"",autoCapitalize:"off",autoCorrect:"off","aria-describedby":(null==e?void 0:e.length)?e.join(" "):void 0,"aria-label":t&&o?o:void 0}}class ControlledInputController extends AssociatedInputController{constructor(e,t,o){super(e,t,o),this.component=e}validateTouched(e){validateTouched(this.component,e)}componentWillLoad(){super.componentWillLoad(),this.validateTouched(this.component._touched)}}class InputController extends ControlledInputController{constructor(e,t,o){super(e,t,o),this.valueChangeListeners=[],this.onFacade={onBlur:this.onBlur.bind(this),onChange:this.onChange.bind(this),onClick:this.onClick.bind(this),onFocus:this.onFocus.bind(this),onInput:this.onInput.bind(this)},this.component=e}validateAccessKey(e){validateAccessKey(this.component,e),validateAccessAndShortKey(e,this.component._shortKey)}validateAdjustHeight(e){validateAdjustHeight(this.component,e)}validateDisabled(e){watchBoolean(this.component,"_disabled",e),!0===e&&a11yHintDisabled()}validateTooltipAlign(e){validateTooltipAlign(this.component,e)}validateHideMsg(e){validateHideMsg(this.component,e,{hooks:{afterPatch:()=>{this.component.state._hideMsg&&a11yHint("Property _hideMsg for inputs: Only use when the error message is shown outside of the input component.")}}})}validateHideLabel(e){validateHideLabel(this.component,e,{hooks:{afterPatch:()=>{this.component.state._hideLabel&&a11yHint("Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.")}}})}validateHint(e){watchString(this.component,"_hint",e)}validateId(e){watchString(this.component,"_id",e,{minLength:1}),""!==e&&void 0!==e||devHint("A unique ID on the input fields is not strictly required, but it might be relevant for E2E tests.")}validateLabel(e){validateLabelWithExpertSlot(this.component,e,{required:!0})}validateMsg(e){validateMsg(this.component,e)}validateOn(e){"object"==typeof e&&setState(this.component,"_on",e)}validateShortKey(e){validateShortKey(this.component,e),validateAccessAndShortKey(this.component._accessKey,e)}validateSmartButton(e){objectObjectHandler(e,(()=>{try{e=parseJson(e)}catch(e){}setState(this.component,"_smartButton",e)}))}validateTabIndex(e){validateTabIndex(this.component,e)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateMsg(this.component._msg),this.validateDisabled(this.component._disabled),this.validateHideMsg(this.component._hideMsg),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),this.validateShortKey(this.component._shortKey),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex),validateAccessAndShortKey(this.component._accessKey,this.component._shortKey)}emitEvent(e,t){this.host&&dispatchDomEvent(this.host,e,t)}onBlur(e){var t;this.component._touched=!0,this.emitEvent(KolEvent.blur),"function"==typeof(null===(t=this.component._on)||void 0===t?void 0:t.onBlur)&&this.component._on.onBlur(e)}onChange(e,t){var o;void 0===t&&(t=e.target.value),this.emitEvent(KolEvent.change,t),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onChange)&&this.component._on.onChange(e,t),this.valueChangeListeners.forEach((e=>e(t)))}onInput(e,t=!0,o){var i;void 0===o&&(o=e.target.value),this.emitEvent(KolEvent.input,o),t&&this.setFormAssociatedValue(o),"function"==typeof(null===(i=this.component._on)||void 0===i?void 0:i.onInput)&&this.component._on.onInput(e,o)}onClick(e){var t;this.emitEvent(KolEvent.click),"function"==typeof(null===(t=this.component._on)||void 0===t?void 0:t.onClick)&&this.component._on.onClick(e)}onFocus(e){var t;this.emitEvent(KolEvent.focus),"function"==typeof(null===(t=this.component._on)||void 0===t?void 0:t.onFocus)&&this.component._on.onFocus(e)}addValueChangeListener(e){this.valueChangeListeners.push(e)}}function getFormFieldProps(e){const t={id:e._id,disabled:e._disabled,msg:convertMsgToInternMsg(e._msg),hint:e._hint,label:e._label,hideLabel:e._hideLabel,hideMsg:e._hideMsg,touched:e._touched,accessKey:e._accessKey,shortKey:e._shortKey};return"_required"in e&&(t.required=e._required),"_readOnly"in e&&(t.readOnly=e._readOnly),"_hasCounter"in e&&"_currentLength"in e&&(t.counter=e._hasCounter?{currentLength:e._currentLength}:void 0,t.counter&&"_maxLength"in e&&(t.counter.maxLength=e._maxLength)),t}const FormFieldStateWrapper=(e,t)=>{var{state:o}=e,i=__rest(e,["state"]);return h(KolFormFieldFc,Object.assign({},getFormFieldProps(o),i),t)},getRenderStates=e=>{var t,o,i;const s=Boolean((null===(t=null==e?void 0:e._msg)||void 0===t?void 0:t._description)&&(null===(o=e._msg._description)||void 0===o?void 0:o.length)>0),n="error"===(null===(i=e._msg)||void 0===i?void 0:i._type)&&s&&!0===e._touched,a="string"==typeof e._hint&&e._hint.length>0,l=[];return s&&l.push(`${e._id}-msg`),a&&l.push(`${e._id}-hint`),{hasError:n,hasHint:a,ariaDescribedBy:l}};export{FormFieldStateWrapper as F,InputController as I,KolFormFieldLabelFc as K,convertMsgToInternMsg as a,FormFieldTooltipFc as b,checkHasMsg as c,KolFormFieldHintFc as d,getDefaultProps as e,getRenderStates as g};
4
+ import{h as watchBoolean,o as objectObjectHandler,j as parseJson,w as watchValidator,v as isObject,q as isString,B as buildBadgeTextString,l as showExpertSlot,i as a11yHintDisabled,b as a11yHint,A as watchString,D as devHint,k as setState}from"./index-88dea7b1.js";import{d as dispatchDomEvent,K as KolEvent}from"./events-5886c68b.js";import{A as AssociatedInputController}from"./associated.controller-4efb16f5.js";import{v as validateAccessKey,a as validateAccessAndShortKey,b as validateShortKey,c as validateTabIndex}from"./access-and-short-key-753466cb.js";import{v as validateTooltipAlign}from"./tooltip-align-4c18152e.js";import{v as validateHideLabel}from"./hide-label-418cc5c0.js";import{a as validateLabelWithExpertSlot}from"./label-5982d241.js";import{_ as __rest}from"./tslib.es6-1173d062.js";import{h,F as Fragment}from"./index-aceb5633.js";import{c as clsx}from"./clsx-09a06a12.js";import{K as KolAlertFc}from"./Alert-bb061e95.js";import{i as isString$1,K as KolInternalUnderlinedBadgeTextFc}from"./InternalUnderlinedBadgeText-2c119ff7.js";import{t as translate}from"./i18n-01abf777.js";import{f as KolTooltipWcTag}from"./component-names-799e91e2.js";const validateAdjustHeight=(e,t)=>{watchBoolean(e,"_adjustHeight",t)},validateHideMsg=(e,t,o)=>{watchBoolean(e,"_hideMsg",t,o)};function transformObjectProperties(e){return Object.entries(e).reduce(((e,[t,o])=>{const i=t.startsWith("_")?t.slice(1):t;return Object.assign(Object.assign({},e),{[i]:o})}),{})}const validateMsg=(e,t)=>{objectObjectHandler(t,(()=>{try{t=parseJson(t)}catch(e){}watchValidator(e,"_msg",(e=>isObject(e)&&isString(null==e?void 0:e._description,1)||void 0===(null==e?void 0:e._type)),new Set(["MsgPropType"]),t)}))};function convertMsgToInternMsg(e){if(e)return transformObjectProperties(e)}function checkHasMsg(e,t){return!!e&&(!0===t||"error"!==(null==e?void 0:e.type))}const validateTouched=(e,t)=>{watchBoolean(e,"_touched",t)},FormFieldMsgFc=e=>{var{alert:t,msg:o,hideMsg:i,id:s,class:n}=e,a=__rest(e,["alert","msg","hideMsg","id","class"]);return h(KolAlertFc,Object.assign({id:`${s}-msg`,alert:t,type:"error",class:clsx("kol-form-field__msg",{"visually-hidden":!0===i},n)},o,a,{"aria-hidden":"true"}),(null==o?void 0:o.description)||void 0)},LabelFc=({hasExpertSlot:e,accessKey:t,shortKey:o,label:i,showBadge:s=!0})=>{if(e)return h("slot",{name:"expert"});if(!i)return null;const n=isString$1(t)||isString$1(o);if(!s||!n)return h("span",null,i);const a=buildBadgeTextString(t,o);return h(Fragment,null,h(KolInternalUnderlinedBadgeTextFc,{badgeText:a,label:i})," ",h("span",{class:"badge-text-hint","aria-hidden":"true"},a))},KolFormFieldLabelFc=e=>{var{component:t="label",id:o,baseClassName:i="kol-form-field",class:s,accessKey:n,shortKey:a,label:l,hideLabel:r,hasExpertSlot:d,showBadge:c}=e,p=__rest(e,["component","id","baseClassName","class","accessKey","shortKey","label","hideLabel","hasExpertSlot","showBadge"]);const m=!d&&r;return h(t,Object.assign({},p,{class:clsx(`${i}__label`,s),id:m?void 0:`${o}-label`,hidden:m,htmlFor:o}),h("span",{class:clsx(`${i}__label-text`)},h(LabelFc,{hasExpertSlot:d,accessKey:n,shortKey:a,label:l,showBadge:c})))},KolFormFieldHintFc=e=>{var{id:t,class:o,hint:i,baseClassName:s="kol-form-field"}=e,n=__rest(e,["id","class","hint","baseClassName"]);return i?h("span",Object.assign({class:clsx(`${s}__hint`,o),id:`${t}-hint`},n),i):null},KolFormFieldCounterFc=e=>{var{currentLength:t,maxLength:o,class:i}=e,s=__rest(e,["currentLength","maxLength","class"]);return h("span",Object.assign({class:clsx("kol-form-field__counter",i)},s,{"aria-atomic":"true","aria-live":"polite","data-testid":"input-counter"}),t,o&&h(Fragment,null,h("span",{"aria-label":translate("kol-of"),role:"img"},"/"),o)," ",h("span",null,translate("kol-characters")))},FormFieldTooltipFc=({id:e,align:t,badgeText:o,hideLabel:i,label:s,class:n})=>h(KolTooltipWcTag,{"aria-hidden":"true",class:clsx("kol-form-field__tooltip",n),_badgeText:o,_align:t,_id:i?`${e}-label`:void 0,_label:s});function getModifierClassNameByMsgType(e){return(null==e?void 0:e.type)&&{default:"msg-type-default",info:"msg-type-info",success:"msg-type-success",warning:"msg-type-warning",error:"msg-type-error"}[null==e?void 0:e.type]||""}const InputContainer=(e,t)=>{var{class:o}=e,i=__rest(e,["class"]);return h("div",Object.assign({class:clsx("kol-form-field__input",o)},i),t)},KolFormFieldFc=(e,t)=>{const{component:o="div",renderNoLabel:i,renderNoTooltip:s,renderNoHint:n,anotherChildren:a,id:l,required:r,alert:d,disabled:c,class:p,msg:m,hideMsg:u,hideLabel:g,label:b,hint:v,accessKey:f,shortKey:_,tooltipAlign:y,counter:F,readOnly:K,touched:j,formFieldLabelProps:x,formFieldHintProps:L,formFieldTooltipProps:C,formFieldMsgProps:S,formFieldCounterProps:T,formFieldInputProps:H}=e,M=__rest(e,["component","renderNoLabel","renderNoTooltip","renderNoHint","anotherChildren","id","required","alert","disabled","class","msg","hideMsg","hideLabel","label","hint","accessKey","shortKey","tooltipAlign","counter","readOnly","touched","formFieldLabelProps","formFieldHintProps","formFieldTooltipProps","formFieldMsgProps","formFieldCounterProps","formFieldInputProps"]),B=!i,O=!n,k=!s,A=showExpertSlot(b),I=checkHasMsg(m,j),E=buildBadgeTextString(f,_),P=k&&!A&&g;let w={"kol-form-field--disabled":Boolean(c),"kol-form-field--required":Boolean(r),"kol-form-field--touched":Boolean(j),"kol-form-field--hide-label":Boolean(g),"kol-form-field--read-only":Boolean(K),"kol-form-field--hidden-msg":Boolean(u)};return I&&(w=Object.assign(Object.assign({},w),{[`kol-form-field--${(null==m?void 0:m.type)||"error"}`]:!0,[`kol-form-field--${getModifierClassNameByMsgType(m)}`]:!0})),h(o,Object.assign({class:clsx("kol-form-field",w,p)},M),B&&h(KolFormFieldLabelFc,Object.assign({},x||{},{id:l,hasExpertSlot:A,hideLabel:g,label:b,accessKey:f,shortKey:_})),h(InputContainer,Object.assign({},H),t,P&&h(FormFieldTooltipFc,Object.assign({},C||{},{id:l,label:b,hideLabel:g,align:y,badgeText:E}))),F?h(KolFormFieldCounterFc,Object.assign({},T||{},F)):null,I&&h(FormFieldMsgFc,Object.assign({},S||{},{id:l,alert:d,msg:m,hideMsg:u})),O&&h(KolFormFieldHintFc,Object.assign({},L||{},{id:l,hint:v})),a)};function getDefaultProps({ariaDescribedBy:e,hideLabel:t,label:o}){return{title:"",autoCapitalize:"off",autoCorrect:"off","aria-describedby":(null==e?void 0:e.length)?e.join(" "):void 0,"aria-label":t&&o?o:void 0}}class ControlledInputController extends AssociatedInputController{constructor(e,t,o){super(e,t,o),this.component=e}validateTouched(e){validateTouched(this.component,e)}componentWillLoad(){super.componentWillLoad(),this.validateTouched(this.component._touched)}}class InputController extends ControlledInputController{constructor(e,t,o){super(e,t,o),this.valueChangeListeners=[],this.onFacade={onBlur:this.onBlur.bind(this),onChange:this.onChange.bind(this),onClick:this.onClick.bind(this),onFocus:this.onFocus.bind(this),onInput:this.onInput.bind(this)},this.component=e}validateAccessKey(e){validateAccessKey(this.component,e),validateAccessAndShortKey(e,this.component._shortKey)}validateAdjustHeight(e){validateAdjustHeight(this.component,e)}validateDisabled(e){watchBoolean(this.component,"_disabled",e),!0===e&&a11yHintDisabled()}validateTooltipAlign(e){validateTooltipAlign(this.component,e)}validateHideMsg(e){validateHideMsg(this.component,e,{hooks:{afterPatch:()=>{this.component.state._hideMsg&&a11yHint("Property _hideMsg for inputs: Only use when the error message is shown outside of the input component.")}}})}validateHideLabel(e){validateHideLabel(this.component,e,{hooks:{afterPatch:()=>{this.component.state._hideLabel&&a11yHint("Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.")}}})}validateHint(e){watchString(this.component,"_hint",e)}validateId(e){watchString(this.component,"_id",e,{minLength:1}),""!==e&&void 0!==e||devHint("A unique ID on the input fields is not strictly required, but it might be relevant for E2E tests.")}validateLabel(e){validateLabelWithExpertSlot(this.component,e,{required:!0})}validateMsg(e){validateMsg(this.component,e)}validateOn(e){"object"==typeof e&&setState(this.component,"_on",e)}validateShortKey(e){validateShortKey(this.component,e),validateAccessAndShortKey(this.component._accessKey,e)}validateSmartButton(e){objectObjectHandler(e,(()=>{try{e=parseJson(e)}catch(e){}setState(this.component,"_smartButton",e)}))}validateTabIndex(e){validateTabIndex(this.component,e)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateMsg(this.component._msg),this.validateDisabled(this.component._disabled),this.validateHideMsg(this.component._hideMsg),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),this.validateShortKey(this.component._shortKey),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex),validateAccessAndShortKey(this.component._accessKey,this.component._shortKey)}emitEvent(e,t){this.host&&dispatchDomEvent(this.host,e,t)}onBlur(e){var t;this.component._touched=!0,this.emitEvent(KolEvent.blur),"function"==typeof(null===(t=this.component._on)||void 0===t?void 0:t.onBlur)&&this.component._on.onBlur(e)}onChange(e,t){var o;void 0===t&&(t=e.target.value),this.emitEvent(KolEvent.change,t),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onChange)&&this.component._on.onChange(e,t),this.valueChangeListeners.forEach((e=>e(t)))}onInput(e,t=!0,o){var i;void 0===o&&(o=e.target.value),this.emitEvent(KolEvent.input,o),t&&this.setFormAssociatedValue(o),"function"==typeof(null===(i=this.component._on)||void 0===i?void 0:i.onInput)&&this.component._on.onInput(e,o)}onClick(e){var t;this.emitEvent(KolEvent.click),"function"==typeof(null===(t=this.component._on)||void 0===t?void 0:t.onClick)&&this.component._on.onClick(e)}onFocus(e){var t;this.emitEvent(KolEvent.focus),"function"==typeof(null===(t=this.component._on)||void 0===t?void 0:t.onFocus)&&this.component._on.onFocus(e)}addValueChangeListener(e){this.valueChangeListeners.push(e)}}function getFormFieldProps(e){const t={id:e._id,disabled:e._disabled,msg:convertMsgToInternMsg(e._msg),hint:e._hint,label:e._label,hideLabel:e._hideLabel,hideMsg:e._hideMsg,touched:e._touched,accessKey:e._accessKey,shortKey:e._shortKey};return"_required"in e&&(t.required=e._required),"_readOnly"in e&&(t.readOnly=e._readOnly),"_hasCounter"in e&&"_currentLength"in e&&(t.counter=e._hasCounter?{currentLength:e._currentLength}:void 0,t.counter&&"_maxLength"in e&&(t.counter.maxLength=e._maxLength)),t}const FormFieldStateWrapper=(e,t)=>{var{state:o}=e,i=__rest(e,["state"]);return h(KolFormFieldFc,Object.assign({},getFormFieldProps(o),i),t)},getRenderStates=e=>{var t,o,i;const s=Boolean((null===(t=null==e?void 0:e._msg)||void 0===t?void 0:t._description)&&(null===(o=e._msg._description)||void 0===o?void 0:o.length)>0),n="error"===(null===(i=e._msg)||void 0===i?void 0:i._type)&&s&&!0===e._touched,a="string"==typeof e._hint&&e._hint.length>0,l=[];return s&&l.push(`${e._id}-msg`),a&&l.push(`${e._id}-hint`),{hasError:n,hasHint:a,ariaDescribedBy:l}};export{FormFieldStateWrapper as F,InputController as I,KolFormFieldLabelFc as K,convertMsgToInternMsg as a,FormFieldTooltipFc as b,checkHasMsg as c,KolFormFieldHintFc as d,getDefaultProps as e,getRenderStates as g};
@@ -1 +1 @@
1
- {"file":"getRenderStates-dba2a9a8.js","mappings":";;;;;;;;;;;;;;;;;;AAeO,MAAM,oBAAoB,GAAG,CAAC,SAAoC,EAAE,KAA4B;IACtG,YAAY,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;;ACDM,MAAM,eAAe,GAAG,CAAC,SAAoC,EAAE,KAAuB,EAAE,OAA6B;IAC3H,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC;;SCKe,yBAAyB,CACxC,GAAM;IAIN,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAChC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACxD,uCACI,GAAG,KACN,CAAC,MAAM,GAAG,KAAK,IACd;KACF,EACD,EAEC,CACD,CAAC;AACH;;ACdO,MAAM,WAAW,GAAG,CAAC,SAAoC,EAAE,KAAgC;IACjG,mBAAmB,CAAC,KAAK,EAAE;QAC1B,IAAI;YACH,KAAK,GAAG,SAAS,CAAc,KAAK,CAAC,CAAC;SAEtC;QAAC,OAAO,CAAC,EAAE;SAEX;QACD,cAAc,CACb,SAAS,EACT,MAAM,EACN,CAAC,KAAK,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,MAAK,SAAS,EAC9F,IAAI,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,EACxB,KAAoB,CACpB,CAAC;KACF,CAAC,CAAC;AACJ,CAAC,CAAC;SAEc,qBAAqB,CAAC,GAAiB;IACtD,IAAI,CAAC,GAAG,EAAE;QACT,OAAO,SAAS,CAAC;KACjB;IAED,OAAO,yBAAyB,CAAC,GAAG,CAAC,CAAC;AACvC,CAAC;SAEe,WAAW,CAAC,GAAuB,EAAE,OAAiB;IAarE,MAAM,OAAO,GAAG,GAAG,GAAG,OAAO,KAAK,IAAI,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,MAAK,OAAO,GAAG,KAAK,CAAC;IAExE,OAAO,OAAO,CAAC;AAChB;;ACrDO,MAAM,eAAe,GAAG,CAAC,SAAoC,EAAE,KAAuB;IAC5F,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AAC5C,CAAC;;ACHD,MAAM,cAAc,GAA2C,CAAC,EAAwD;QAAxD,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,OAAY,EAAP,KAAK,cAAtD,0CAAwD,CAAF;IAAO,QAC5H,EAAC,UAAU,kBACV,EAAE,EAAE,GAAG,EAAE,MAAM,EACf,KAAK,EAAE,KAAK,EACZ,IAAI,EAAC,OAAO,EACZ,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,EAAE,iBAAiB,EAAE,OAAO,KAAK,IAAI,EAAE,EAAE,UAAU,CAAC,IACnF,GAAG,EACH,KAAK,mBACG,MAAM,KAEjB,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,WAAW,KAAI,SAAS,CAClB,EACb;CAAA;;ACHD,MAAM,OAAO,GAAmB,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,EAAE;IAC/F,IAAI,aAAa,EAAE;QAClB,OAAO,YAAM,IAAI,EAAC,QAAQ,GAAQ,CAAC;KACnC;IAED,IAAI,CAAC,KAAK,EAAE;QACX,OAAO,IAAI,CAAC;KACZ;IAED,MAAM,YAAY,GAAGA,UAAQ,CAAC,SAAS,CAAC,IAAIA,UAAQ,CAAC,QAAQ,CAAC,CAAC;IAE/D,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE;QAChC,OAAO,gBAAO,KAAK,CAAQ,CAAC;KAC5B;IAED,MAAM,SAAS,GAAG,oBAAoB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAE5D,QACC;QACC,EAACC,gCAA2B,IAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,GAAI;;QAEnE,YAAM,KAAK,EAAC,iBAAiB,iBAAa,MAAM,IAC9C,SAAS,CACJ,CACL,EACF;AACH,CAAC,CAAC;MAEI,mBAAmB,GAA4B,CAAC,EAYrD;QAZqD,EACrD,SAAS,EAAE,SAAS,GAAG,OAAO,EAC9B,EAAE,EACF,aAAa,GAAG,gBAAgB,EAChC,KAAK,EAAE,UAAU,EACjB,SAAS,EACT,QAAQ,EACR,KAAK,EACL,SAAS,EACT,aAAa,EACb,SAAS,OAET,EADG,KAAK,cAX6C,0HAYrD,CADQ;IAER,MAAM,wBAAwB,GAAG,CAAC,aAAa,IAAI,SAAS,CAAC;IAE7D,QACC,EAAC,SAAS,oBACL,KAAK,IACT,KAAK,EAAE,IAAI,CAAC,GAAG,aAAa,SAAS,EAAE,UAAU,CAAC,EAClD,EAAE,EAAE,CAAC,wBAAwB,GAAG,GAAG,EAAE,QAAQ,GAAG,SAAS,EACzD,MAAM,EAAE,wBAAwB,EAChC,OAAO,EAAE,EAAE;QAGX,YAAM,KAAK,EAAE,IAAI,CAAC,GAAG,aAAa,cAAc,CAAC;YAEhD,EAAC,OAAO,IAAC,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,GAAI,CACjH,CACI,EACX;AACH;;MCxEM,kBAAkB,GAA2B,CAAC,EAA2E;QAA3E,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,GAAG,gBAAgB,OAAY,EAAP,KAAK,cAAzE,wCAA2E,CAAF;IAC5H,IAAI,CAAC,IAAI,EAAE;QACV,OAAO,IAAI,CAAC;KACZ;IAED,QACC,0BAAM,KAAK,EAAE,IAAI,CAAC,GAAG,aAAa,QAAQ,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,IAAM,KAAK,GAClF,IAAI,CACC,EACN;AACH;;ACTA,MAAM,qBAAqB,GAA8B,CAAC,EAAyD;QAAzD,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,OAAY,EAAP,KAAK,cAAvD,uCAAyD,CAAF;IAChH,QACC,0BAAM,KAAK,EAAE,IAAI,CAAC,yBAAyB,EAAE,UAAU,CAAC,IAAM,KAAK,mBAAc,MAAM,eAAW,QAAQ,iBAAa,eAAe;QACpI,aAAa;QACb,SAAS,KACT;YACC,0BAAkB,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAC,KAAK,QAE1C;YACN,SAAS,CACR,CACH;;QACK,gBAAO,SAAS,CAAC,gBAAgB,CAAC,CAAQ,CAC1C,EACN;AACH,CAAC;;MCXK,kBAAkB,GAA8B,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE;IACnH,QACC,EAAC,eAAe,mBAKH,MAAM,EAClB,KAAK,EAAE,IAAI,CAAC,yBAAyB,EAAE,UAAU,CAAC,EAClD,UAAU,EAAE,SAAS,EACrB,MAAM,EAAE,KAAK,EACb,GAAG,EAAE,SAAS,GAAG,GAAG,EAAE,QAAQ,GAAG,SAAS,EAC1C,MAAM,EAAE,KAAK,GACK,EAClB;AACH;;ACjBA,SAAS,6BAA6B,CAAC,GAAuB;IAC7D,IAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,EAAE;QACd,QACC;YACC,OAAO,EAAE,kBAAkB;YAC3B,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,kBAAkB;YAC3B,KAAK,EAAE,gBAAgB;SACvB,CAAC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,CAAC,IAAI,EAAE,EACjB;KACF;IAED,OAAO,EAAE,CAAC;AACX,CAAC;AAkCD,MAAM,cAAc,GAA+C,CAAC,EAA+B,EAAE,QAAQ;QAAzC,EAAE,KAAK,EAAE,UAAU,OAAY,EAAP,KAAK,cAA7B,SAA+B,CAAF;IAChG,QACC,yBAAK,KAAK,EAAE,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC,IAAM,KAAK,GAC9D,QAAQ,CACJ,EACL;AACH,CAAC,CAAC;AAEF,MAAM,cAAc,GAAuB,CAAC,KAAK,EAAE,QAAQ;IAC1D,MAAM,EACL,SAAS,EAAE,SAAS,GAAG,KAAK,EAC5B,aAAa,EACb,eAAe,EACf,YAAY,EACZ,eAAe,EACf,EAAE,EACF,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,KAAK,EAAE,UAAU,EACjB,GAAG,EACH,OAAO,EACP,SAAS,EACT,KAAK,EACL,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,OAAO,EACP,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,KAEhB,KAAK,EADL,KAAK,UACL,KAAK,EA7BH,0YA6BL,CAAQ,CAAC;IAEV,MAAM,SAAS,GAAG,CAAC,aAAa,CAAC;IACjC,MAAM,QAAQ,GAAG,CAAC,YAAY,CAAC;IAC/B,MAAM,WAAW,GAAG,CAAC,eAAe,CAAC;IACrC,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,oBAAoB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC5D,MAAM,wBAAwB,GAAG,WAAW,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC;IAE5E,IAAI,eAAe,GAAG;QACrB,CAAC,0BAA0B,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC/C,CAAC,0BAA0B,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC/C,CAAC,yBAAyB,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7C,CAAC,4BAA4B,GAAG,OAAO,CAAC,SAAS,CAAC;QAClD,CAAC,2BAA2B,GAAG,OAAO,CAAC,QAAQ,CAAC;QAChD,CAAC,4BAA4B,GAAG,OAAO,CAAC,OAAO,CAAC;KAChD,CAAC;IAEF,IAAI,OAAO,EAAE;QACZ,eAAe,mCACX,eAAe,KAClB,CAAC,mBAAmB,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,KAAI,OAAO,EAAE,GAAG,IAAI,EACjD,CAAC,mBAAmB,6BAA6B,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,GAC/D,CAAC;KACF;IAED,QACC,EAAC,SAAS,kBAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,eAAe,EAAE,UAAU,CAAC,IAAM,KAAK;QAC9E,SAAS,KACT,EAAC,mBAAmB,qBACd,mBAAmB,IAAI,EAAE,KAC9B,EAAE,EAAE,EAAE,EACN,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,IACjB,CACF;QACD,EAAC,cAAc,oBAAK,mBAAmB;YACrC,QAAQ;YACR,wBAAwB,KACxB,EAACC,kBAAqB,qBAAM,qBAAqB,IAAI,EAAE,KAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,IAAI,CACnJ,CACe;QAChB,OAAO,GAAG,EAAC,qBAAqB,qBAAM,qBAAqB,IAAI,EAAE,GAAO,OAAO,EAAI,GAAG,IAAI;QAC1F,OAAO,IAAI,EAACC,cAAiB,qBAAM,iBAAiB,IAAI,EAAE,KAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,IAAI;QACjH,QAAQ,IAAI,EAAC,kBAAkB,qBAAM,kBAAkB,IAAI,EAAE,KAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI;QACtF,eAAe,CACL,EACX;AACH,CAAC;;SCtJe,eAAe,CAAC,EAAE,eAAe,EAAE,SAAS,EAAE,KAAK,EAAuE;IAOzI,OAAO;QACN,KAAK,EAAE,EAAE;QACT,cAAc,EAAE,KAAK;QACrB,WAAW,EAAE,KAAK;QAClB,kBAAkB,EAAE,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,MAAM,IAAG,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS;QACnF,YAAY,EAAE,SAAS,IAAI,KAAK,GAAG,KAAK,GAAG,SAAS;KACpD,CAAC;AACH;;MCNa,yBAA0B,SAAQ,yBAAyB;IAGvE,YAAmB,SAA4C,EAAE,IAAY,EAAE,IAAkB;QAChG,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC3B;IAEM,eAAe,CAAC,KAAe;QACrC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KACvC;IAEM,iBAAiB;QACvB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;KAC9C;;;MCqBW,eAAgB,SAAQ,yBAAyB;IAK7D,YAAmB,SAA4C,EAAE,IAAY,EAAE,IAAkB;QAChG,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAHb,yBAAoB,GAA0B,EAAE,CAAC;QA4NlD,aAAQ,GAAG;YAC1B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAChC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAChC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;SAChC,CAAC;QA9ND,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC3B;IAEM,iBAAiB,CAAC,KAAyB;QACjD,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACzC,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;KAC3D;IAEM,oBAAoB,CAAC,KAA4B;QACvD,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KAC5C;IAEM,gBAAgB,CAAC,KAAe;QACtC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;QACjD,IAAI,KAAK,KAAK,IAAI,EAAE;YACnB,gBAAgB,EAAE,CAAC;SACnB;KACD;IACM,oBAAoB,CAAC,KAA4B;QACvD,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KAC5C;IAEM,eAAe,CAAC,KAAuB;QAC7C,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE;YACtC,KAAK,EAAE;gBACN,UAAU,EAAE;oBACX,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE;wBAClC,QAAQ,CAAC,wGAAwG,CAAC,CAAC;qBACnH;iBACD;aACD;SACD,CAAC,CAAC;KACH;IAEM,iBAAiB,CAAC,KAAe;QACvC,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE;YACxC,KAAK,EAAE;gBACN,UAAU,EAAE;oBACX,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,EAAE;wBACpC,QAAQ,CAAC,4HAA4H,CAAC,CAAC;qBACvI;iBACD;aACD;SACD,CAAC,CAAC;KACH;IAEM,YAAY,CAAC,KAAc;QACjC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;KAC5C;IAEM,UAAU,CAAC,KAAc;QAC/B,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5D,IAAI,KAAK,KAAK,EAAE,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YACjD,OAAO,CAAC,mGAAmG,CAAC,CAAC;SAC7G;KACD;IAEM,aAAa,CAAC,KAAmC;QACvD,2BAA2B,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE;YAClD,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;KACH;IAEM,WAAW,CAAC,KAAgC;QAClD,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KACnC;IAEM,UAAU,CAAC,KAA0B;QAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC9B,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SACvC;KACD;IAEM,gBAAgB,CAAC,KAAwB;QAC/C,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACxC,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;KAC5D;IAEM,mBAAmB,CAAC,KAA4B;QACtD,mBAAmB,CAAC,KAAK,EAAE;YAC1B,IAAI;gBACH,KAAK,GAAG,SAAS,CAAc,KAAe,CAAC,CAAC;aAEhD;YAAC,OAAO,CAAC,EAAE;aAEX;YACD,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;SAChD,CAAC,CAAC;KACH;IAEM,gBAAgB,CAAC,KAAc;QACrC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KACxC;IAEM,iBAAiB;QACvB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAChD,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;KAC/E;IAEO,SAAS,CAAC,IAAc,EAAE,KAAe;QAChD,IAAI,IAAI,CAAC,IAAI,EAAE;YACd,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;SACzC;KACD;IAES,MAAM,CAAC,KAAY;;QAC5B,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;QAG/B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAG9B,IAAI,QAAO,MAAA,IAAI,CAAC,SAAS,CAAC,GAAG,0CAAE,MAAM,CAAA,KAAK,UAAU,EAAE;YACrD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACjC;KACD;IAMS,QAAQ,CAAC,KAAY,EAAE,KAAsB;;QACtD,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YACjC,KAAK,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;SACjD;QAGD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAGvC,IAAI,QAAO,MAAA,IAAI,CAAC,SAAS,CAAC,GAAG,0CAAE,QAAQ,CAAA,KAAK,UAAU,EAAE;YAQvD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SAC1C;QAKD,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;KACjE;IAOS,OAAO,CAAC,KAAY,EAAE,4BAA4B,GAAG,IAAI,EAAE,KAAsB;;QAC1F,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YACjC,KAAK,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;SACjD;QAGD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAGtC,IAAI,4BAA4B,EAAE;YACjC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;SACnC;QAGD,IAAI,QAAO,MAAA,IAAI,CAAC,SAAS,CAAC,GAAG,0CAAE,OAAO,CAAA,KAAK,UAAU,EAAE;YACtD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SACzC;KACD;IAES,OAAO,CAAC,KAAY;;QAE7B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAG/B,IAAI,QAAO,MAAA,IAAI,CAAC,SAAS,CAAC,GAAG,0CAAE,OAAO,CAAA,KAAK,UAAU,EAAE;YACtD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAClC;KACD;IAES,OAAO,CAAC,KAAY;;QAE7B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAG/B,IAAI,QAAO,MAAA,IAAI,CAAC,SAAS,CAAC,GAAG,0CAAE,OAAO,CAAA,KAAK,UAAU,EAAE;YACtD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAClC;KACD;IAEM,sBAAsB,CAAC,QAA6B;QAC1D,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACzC;;;ACjOF,SAAS,iBAAiB,CAAC,KAAiB;IAC3C,MAAM,KAAK,GAAmB;QAC7B,EAAE,EAAE,KAAK,CAAC,GAAG;QACb,QAAQ,EAAE,KAAK,CAAC,SAAS;QACzB,GAAG,EAAE,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC;QACtC,IAAI,EAAE,KAAK,CAAC,KAAK;QACjB,KAAK,EAAE,KAAK,CAAC,MAAM;QACnB,SAAS,EAAE,KAAK,CAAC,UAAU;QAC3B,OAAO,EAAE,KAAK,CAAC,QAAQ;QACvB,OAAO,EAAE,KAAK,CAAC,QAAQ;QACvB,SAAS,EAAE,KAAK,CAAC,UAAU;QAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS;KACzB,CAAC;IAEF,IAAI,WAAW,IAAI,KAAK,EAAE;QACzB,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;KACjC;IAED,IAAI,WAAW,IAAI,KAAK,EAAE;QACzB,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;KACjC;IAED,IAAI,aAAa,IAAI,KAAK,IAAI,gBAAgB,IAAI,KAAK,EAAE;QACxD,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,WAAW,GAAG,EAAE,aAAa,EAAE,KAAK,CAAC,cAAc,EAAE,GAAG,SAAS,CAAC;QACxF,IAAI,KAAK,CAAC,OAAO,IAAI,YAAY,IAAI,KAAK,EAAE;YAC3C,KAAK,CAAC,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC;SAC3C;KACD;IAED,OAAO,KAAK,CAAC;AACd,CAAC;MAEK,qBAAqB,GAAmC,CAAC,EAAmB,EAAE,QAAQ;QAA7B,EAAE,KAAK,OAAY,EAAP,KAAK,cAAjB,SAAmB,CAAF;IAC/E,QACC,EAAC,cAAc,oBAAK,iBAAiB,CAAC,KAAK,CAAC,EAAM,KAAK,GACrD,QAAQ,CACO,EAChB;AACH;;MC7Da,eAAe,GAAG,CAAC,KAK/B;;IAKA,MAAM,UAAU,GAAG,OAAO,CAAC,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,0CAAE,YAAY,KAAI,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,YAAY,0CAAE,MAAM,IAAG,CAAC,CAAC,CAAC;IAC7F,MAAM,mBAAmB,GAAG,CAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,KAAK,MAAK,OAAO,IAAI,UAAU,CAAC;IACxE,MAAM,QAAQ,GAAG,mBAAmB,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC;IAChE,MAAM,OAAO,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAE1E,MAAM,eAAe,GAAa,EAAE,CAAC;IACrC,IAAI,UAAU,EAAE;QACf,eAAe,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC;KACzC;IACD,IAAI,OAAO,EAAE;QACZ,eAAe,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC;KAC1C;IACD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;AAC/C;;;;","names":["isString","InternalUnderlinedBadgeText","KolFormFieldTooltipFc","KolFormFieldMsgFc"],"sources":["src/schema/props/adjust-height.ts","src/schema/props/hide-msg.ts","src/utils/transformObjectProperties.ts","src/schema/props/msg.ts","src/schema/props/touched.ts","src/functional-components/FormFieldMsg/FormFieldMsg.tsx","src/functional-components/FormFieldLabel/FormFieldLabel.tsx","src/functional-components/FormFieldHint/FormFieldHint.tsx","src/functional-components/FormFieldCounter/FormFieldCounter.tsx","src/functional-components/FormFieldTooltip/FormFieldTooltip.tsx","src/functional-components/FormField/FormField.tsx","src/functional-components/inputs/_helpers/getDefaultProps.ts","src/components/input-adapter-leanup/controller.ts","src/components/@deprecated/input/controller.ts","src/functional-component-wrappers/FormFieldStateWrapper/FormFieldStateWrapper.tsx","src/functional-component-wrappers/_helpers/getRenderStates.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type AdjustHeightPropType = boolean;\n\n/**\n * Adjusts the height of the element to its content.\n */\nexport type PropAdjustHeight = {\n\tadjustHeight: AdjustHeightPropType;\n};\n\n/* validator */\nexport const validateAdjustHeight = (component: Generic.Element.Component, value?: AdjustHeightPropType): void => {\n\twatchBoolean(component, '_adjustHeight', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchBooleanOptions } from '../utils';\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type HideMsgPropType = boolean;\n\n/**\n * Hides the message but leaves it in the DOM for the input's aria-describedby.\n */\nexport type PropHideMsg = {\n\thideMsg: HideMsgPropType;\n};\n\n/* validator */\nexport const validateHideMsg = (component: Generic.Element.Component, value?: HideMsgPropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_hideMsg', value, options);\n};\n","/**\n * Transforms keys with leading underscores, keeping non-underscore keys unchanged.\n *\n * @template K The original key type\n * @returns Transformed key type\n */\ntype TransformKeys<K> = K extends `_${infer Rest}` ? Rest : K;\n\n/**\n * Transforms object properties by removing leading underscores from key names.\n *\n * This method is useful for converting objects from a naming convention with leading underscores\n * (often used for private or internal properties) to a standard naming format.\n *\n * @param obj The input object with potential underscore prefixes\n * @returns A new object with underscores removed from key names\n *\n * @example\n * // Converts object with underscore-prefixed keys\n * const input = { _name: 'John', _age: 30 };\n * const result = transformObjectProperties(input);\n * // result is { name: 'John', age: 30 }\n */\nexport function transformObjectProperties<T extends Record<string, unknown>>(\n\tobj: T,\n): {\n\t[K in keyof T as TransformKeys<K>]: T[K];\n} {\n\treturn Object.entries(obj).reduce(\n\t\t(acc, [key, value]) => {\n\t\t\tconst newKey = key.startsWith('_') ? key.slice(1) : key;\n\t\t\treturn {\n\t\t\t\t...acc,\n\t\t\t\t[newKey]: value,\n\t\t\t};\n\t\t},\n\t\t{} as {\n\t\t\t[K in keyof T as TransformKeys<K>]: T[K];\n\t\t},\n\t);\n}\n","import type { Generic } from 'adopted-style-sheets';\nimport type { AlertProps, InternalAlertProps } from '../components';\nimport type { Stringified } from '../types';\nimport { objectObjectHandler, parseJson, watchValidator } from '../utils';\nimport { isObject, isString } from '../validators';\nimport { transformObjectProperties } from '../../utils/transformObjectProperties';\n\n/* types */\nexport type MsgPropType = AlertProps & {\n\t_description: string;\n};\n\nexport type InternMsgPropType = Partial<\n\tInternalAlertProps & {\n\t\tdescription: string;\n\t}\n>;\n\n/**\n * Defines the properties for a message rendered as Alert component.\n */\nexport type PropMsg = {\n\tmsg: MsgPropType;\n};\n\n/* validator */\nexport const validateMsg = (component: Generic.Element.Component, value?: Stringified<MsgPropType>): void => {\n\tobjectObjectHandler(value, () => {\n\t\ttry {\n\t\t\tvalue = parseJson<MsgPropType>(value);\n\t\t\t// eslint-disable-next-line no-empty\n\t\t} catch (e) {\n\t\t\t// value keeps original value\n\t\t}\n\t\twatchValidator<MsgPropType>(\n\t\t\tcomponent,\n\t\t\t`_msg`,\n\t\t\t(value) => (isObject(value) && isString(value?._description, 1)) || value?._type === undefined,\n\t\t\tnew Set(['MsgPropType']),\n\t\t\tvalue as MsgPropType,\n\t\t);\n\t});\n};\n\nexport function convertMsgToInternMsg(msg?: MsgPropType): InternMsgPropType | undefined {\n\tif (!msg) {\n\t\treturn undefined;\n\t}\n\n\treturn transformObjectProperties(msg);\n}\n\nexport function checkHasMsg(msg?: InternMsgPropType, touched?: boolean): boolean {\n\t/**\n\t * We support 5 types of messages:\n\t * - default\n\t * - info\n\t * - success\n\t * - warning\n\t * - error\n\t *\n\t * The message is shown if:\n\t * - we show only one message at a time\n\t * - by error messages the input must be touched\n\t */\n\tconst showMsg = msg ? touched === true || msg?.type !== 'error' : false;\n\n\treturn showMsg;\n}\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type TouchedPropType = boolean;\n\n/**\n * Shows if the input was touched by a user.\n */\nexport type PropTouched = {\n\ttouched: TouchedPropType;\n};\n\n/* validator */\nexport const validateTouched = (component: Generic.Element.Component, value?: TouchedPropType): void => {\n\twatchBoolean(component, '_touched', value);\n};\n","import clsx from 'clsx';\nimport type { AlertPropType, HideMsgPropType, IdPropType, InternMsgPropType } from '../../schema';\nimport type { FunctionalComponent } from '@stencil/core';\nimport { h } from '@stencil/core';\nimport KolAlertFc from '../Alert';\nimport type { JSXBase } from '@stencil/core/internal';\n\ntype FormFieldMsgProps = JSXBase.HTMLAttributes<HTMLDivElement> & {\n\talert?: AlertPropType;\n\tmsg?: InternMsgPropType;\n\thideMsg?: HideMsgPropType;\n\tid: IdPropType;\n};\n\nconst FormFieldMsgFc: FunctionalComponent<FormFieldMsgProps> = ({ alert, msg, hideMsg, id, class: classNames, ...other }) => (\n\t<KolAlertFc\n\t\tid={`${id}-msg`}\n\t\talert={alert}\n\t\ttype=\"error\"\n\t\tclass={clsx('kol-form-field__msg', { 'visually-hidden': hideMsg === true }, classNames)}\n\t\t{...msg}\n\t\t{...other}\n\t\taria-hidden=\"true\"\n\t>\n\t\t{msg?.description || undefined}\n\t</KolAlertFc>\n);\n\nexport default FormFieldMsgFc;\n","import { h, Fragment, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\nimport InternalUnderlinedBadgeText from '../InternalUnderlinedBadgeText';\nimport { buildBadgeTextString } from '../../schema';\nimport { isString } from 'lodash-es';\n\ntype LabelProps = {\n\tlabel?: string;\n\taccessKey?: string;\n\tshortKey?: string;\n\thasExpertSlot?: boolean;\n\tshowBadge?: boolean;\n};\n\ntype FormFieldLabelProps = JSXBase.HTMLAttributes<Omit<HTMLLabelElement | HTMLLegendElement, 'id' | 'hidden' | 'htmlFor'>> & {\n\tcomponent?: 'label' | 'legend';\n\tid: string;\n\thideLabel?: boolean;\n\tbaseClassName?: string;\n\tshowBadge?: boolean;\n} & LabelProps;\n\nconst LabelFc: FC<LabelProps> = ({ hasExpertSlot, accessKey, shortKey, label, showBadge = true }) => {\n\tif (hasExpertSlot) {\n\t\treturn <slot name=\"expert\"></slot>;\n\t}\n\n\tif (!label) {\n\t\treturn null;\n\t}\n\n\tconst hasBadgeText = isString(accessKey) || isString(shortKey);\n\n\tif (!showBadge || !hasBadgeText) {\n\t\treturn <span>{label}</span>;\n\t}\n\n\tconst badgeText = buildBadgeTextString(accessKey, shortKey);\n\n\treturn (\n\t\t<>\n\t\t\t<InternalUnderlinedBadgeText badgeText={badgeText} label={label} />\n\t\t\t&nbsp;\n\t\t\t<span class=\"badge-text-hint\" aria-hidden=\"true\">\n\t\t\t\t{badgeText}\n\t\t\t</span>\n\t\t</>\n\t);\n};\n\nconst KolFormFieldLabelFc: FC<FormFieldLabelProps> = ({\n\tcomponent: Component = 'label',\n\tid,\n\tbaseClassName = 'kol-form-field',\n\tclass: classNames,\n\taccessKey,\n\tshortKey,\n\tlabel,\n\thideLabel,\n\thasExpertSlot,\n\tshowBadge,\n\t...other\n}) => {\n\tconst useTooltipInsteadOfLabel = !hasExpertSlot && hideLabel;\n\n\treturn (\n\t\t<Component\n\t\t\t{...other}\n\t\t\tclass={clsx(`${baseClassName}__label`, classNames)}\n\t\t\tid={!useTooltipInsteadOfLabel ? `${id}-label` : undefined}\n\t\t\thidden={useTooltipInsteadOfLabel}\n\t\t\thtmlFor={id}\n\t\t>\n\t\t\t{/* INFO: span is needed for css styling :after content like a star (*) or optional text ! */}\n\t\t\t<span class={clsx(`${baseClassName}__label-text`)}>\n\t\t\t\t{/* INFO: label comes with any html tag or as plain text! */}\n\t\t\t\t<LabelFc hasExpertSlot={hasExpertSlot} accessKey={accessKey} shortKey={shortKey} label={label} showBadge={showBadge} />\n\t\t\t</span>\n\t\t</Component>\n\t);\n};\n\nexport default KolFormFieldLabelFc;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\n\ntype FormFieldHintProps = JSXBase.HTMLAttributes<HTMLSpanElement> & {\n\thint?: string;\n\tbaseClassName?: string;\n};\n\nconst KolFormFieldHintFc: FC<FormFieldHintProps> = ({ id, class: classNames, hint, baseClassName = 'kol-form-field', ...other }) => {\n\tif (!hint) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<span class={clsx(`${baseClassName}__hint`, classNames)} id={`${id}-hint`} {...other}>\n\t\t\t{hint}\n\t\t</span>\n\t);\n};\n\nexport default KolFormFieldHintFc;\n","import { h, Fragment, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\nimport { translate } from '../../i18n';\n\ntype FormFieldCounterProps = JSXBase.HTMLAttributes<HTMLSpanElement> & {\n\tcurrentLength?: number;\n\tmaxLength?: number;\n};\n\nconst KolFormFieldCounterFc: FC<FormFieldCounterProps> = ({ currentLength, maxLength, class: classNames, ...other }) => {\n\treturn (\n\t\t<span class={clsx('kol-form-field__counter', classNames)} {...other} aria-atomic=\"true\" aria-live=\"polite\" data-testid=\"input-counter\">\n\t\t\t{currentLength}\n\t\t\t{maxLength && (\n\t\t\t\t<>\n\t\t\t\t\t<span aria-label={translate('kol-of')} role=\"img\">\n\t\t\t\t\t\t/\n\t\t\t\t\t</span>\n\t\t\t\t\t{maxLength}\n\t\t\t\t</>\n\t\t\t)}\n\t\t\t&nbsp;<span>{translate('kol-characters')}</span>\n\t\t</span>\n\t);\n};\n\nexport default KolFormFieldCounterFc;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\nimport { KolTooltipWcTag } from '../../core/component-names';\nimport type { AlignPropType } from '../../schema';\n\ntype FormFieldTooltipProps = Pick<JSXBase.HTMLAttributes<HTMLElement>, 'class'> & {\n\tid: string;\n\talign?: AlignPropType;\n\tbadgeText?: string;\n\thideLabel?: boolean;\n\tlabel: string;\n};\n\nconst FormFieldTooltipFc: FC<FormFieldTooltipProps> = ({ id, align, badgeText, hideLabel, label, class: classNames }) => {\n\treturn (\n\t\t<KolTooltipWcTag\n\t\t\t/**\n\t\t\t * Dieses Aria-Hidden verhindert das doppelte Vorlesen des Labels,\n\t\t\t * verhindert aber nicht das Aria-Labelledby vorgelesen wird.\n\t\t\t */\n\t\t\taria-hidden=\"true\"\n\t\t\tclass={clsx('kol-form-field__tooltip', classNames)}\n\t\t\t_badgeText={badgeText}\n\t\t\t_align={align}\n\t\t\t_id={hideLabel ? `${id}-label` : undefined}\n\t\t\t_label={label}\n\t\t></KolTooltipWcTag>\n\t);\n};\n\nexport default FormFieldTooltipFc;\n","import type { JSX } from '@stencil/core';\nimport { h, type FunctionalComponent as FC } from '@stencil/core';\nimport KolFormFieldMsgFc from '../FormFieldMsg';\nimport KolFormFieldLabelFc from '../FormFieldLabel';\nimport KolFormFieldHintFc from '../FormFieldHint/FormFieldHint';\nimport KolFormFieldCounterFc from '../FormFieldCounter';\nimport KolFormFieldTooltipFc from '../FormFieldTooltip';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\nimport type { AlignPropType, InternMsgPropType } from '../../schema';\nimport { buildBadgeTextString, checkHasMsg, showExpertSlot } from '../../schema';\n\nfunction getModifierClassNameByMsgType(msg?: { type?: string }): string {\n\tif (msg?.type) {\n\t\treturn (\n\t\t\t{\n\t\t\t\tdefault: 'msg-type-default',\n\t\t\t\tinfo: 'msg-type-info',\n\t\t\t\tsuccess: 'msg-type-success',\n\t\t\t\twarning: 'msg-type-warning',\n\t\t\t\terror: 'msg-type-error',\n\t\t\t}[msg?.type] || ''\n\t\t);\n\t}\n\n\treturn '';\n}\n\nexport type FormFieldProps = Omit<JSXBase.HTMLAttributes<HTMLElement>, 'id'> & {\n\tcomponent?: 'div' | 'fieldset';\n\tid: string;\n\talert?: boolean;\n\tdisabled?: boolean;\n\tmsg?: InternMsgPropType;\n\ttooltipAlign?: AlignPropType;\n\thint?: string;\n\tlabel: string;\n\thideLabel?: boolean;\n\thideMsg?: boolean;\n\taccessKey?: string;\n\tshortKey?: string;\n\tcounter?: { currentLength?: number; maxLength?: number };\n\treadOnly?: boolean;\n\ttouched?: boolean;\n\trequired?: boolean;\n\trenderNoLabel?: boolean;\n\trenderNoTooltip?: boolean;\n\trenderNoHint?: boolean;\n\tanotherChildren?: JSX.Element | JSX.Element[];\n\n\tformFieldLabelProps?: JSXBase.HTMLAttributes<Omit<HTMLLabelElement | HTMLLegendElement, 'id' | 'hidden' | 'htmlFor'>> & { component?: 'label' | 'legend' };\n\tformFieldHintProps?: JSXBase.HTMLAttributes<HTMLElement>;\n\tformFieldTooltipProps?: Pick<JSXBase.HTMLAttributes<HTMLElement>, 'class'>;\n\tformFieldMsgProps?: JSXBase.HTMLAttributes<HTMLDivElement>;\n\tformFieldCounterProps?: JSXBase.HTMLAttributes<HTMLSpanElement>;\n\tformFieldInputProps?: JSXBase.HTMLAttributes<HTMLDivElement>;\n} & {\n\t[key: `data-${string}`]: unknown;\n};\n\nconst InputContainer: FC<JSXBase.HTMLAttributes<HTMLDivElement>> = ({ class: classNames, ...other }, children) => {\n\treturn (\n\t\t<div class={clsx('kol-form-field__input', classNames)} {...other}>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n\nconst KolFormFieldFc: FC<FormFieldProps> = (props, children) => {\n\tconst {\n\t\tcomponent: Component = 'div',\n\t\trenderNoLabel,\n\t\trenderNoTooltip,\n\t\trenderNoHint,\n\t\tanotherChildren,\n\t\tid,\n\t\trequired,\n\t\talert,\n\t\tdisabled,\n\t\tclass: classNames,\n\t\tmsg,\n\t\thideMsg,\n\t\thideLabel,\n\t\tlabel,\n\t\thint,\n\t\taccessKey,\n\t\tshortKey,\n\t\ttooltipAlign,\n\t\tcounter,\n\t\treadOnly,\n\t\ttouched,\n\t\tformFieldLabelProps,\n\t\tformFieldHintProps,\n\t\tformFieldTooltipProps,\n\t\tformFieldMsgProps,\n\t\tformFieldCounterProps,\n\t\tformFieldInputProps,\n\t\t...other\n\t} = props;\n\n\tconst showLabel = !renderNoLabel;\n\tconst showHint = !renderNoHint;\n\tconst showTooltip = !renderNoTooltip;\n\tconst hasExpertSlot = showExpertSlot(label);\n\tconst showMsg = checkHasMsg(msg, touched);\n\tconst badgeText = buildBadgeTextString(accessKey, shortKey);\n\tconst useTooltipInsteadOfLabel = showTooltip && !hasExpertSlot && hideLabel;\n\n\tlet stateCssClasses = {\n\t\t['kol-form-field--disabled']: Boolean(disabled),\n\t\t['kol-form-field--required']: Boolean(required),\n\t\t['kol-form-field--touched']: Boolean(touched),\n\t\t['kol-form-field--hide-label']: Boolean(hideLabel),\n\t\t['kol-form-field--read-only']: Boolean(readOnly),\n\t\t['kol-form-field--hidden-msg']: Boolean(hideMsg),\n\t};\n\n\tif (showMsg) {\n\t\tstateCssClasses = {\n\t\t\t...stateCssClasses,\n\t\t\t[`kol-form-field--${msg?.type || 'error'}`]: true,\n\t\t\t[`kol-form-field--${getModifierClassNameByMsgType(msg)}`]: true,\n\t\t};\n\t}\n\n\treturn (\n\t\t<Component class={clsx('kol-form-field', stateCssClasses, classNames)} {...other}>\n\t\t\t{showLabel && (\n\t\t\t\t<KolFormFieldLabelFc\n\t\t\t\t\t{...(formFieldLabelProps || {})}\n\t\t\t\t\tid={id}\n\t\t\t\t\thasExpertSlot={hasExpertSlot}\n\t\t\t\t\thideLabel={hideLabel}\n\t\t\t\t\tlabel={label}\n\t\t\t\t\taccessKey={accessKey}\n\t\t\t\t\tshortKey={shortKey}\n\t\t\t\t/>\n\t\t\t)}\n\t\t\t<InputContainer {...formFieldInputProps}>\n\t\t\t\t{children}\n\t\t\t\t{useTooltipInsteadOfLabel && (\n\t\t\t\t\t<KolFormFieldTooltipFc {...(formFieldTooltipProps || {})} id={id} label={label} hideLabel={hideLabel} align={tooltipAlign} badgeText={badgeText} />\n\t\t\t\t)}\n\t\t\t</InputContainer>\n\t\t\t{counter ? <KolFormFieldCounterFc {...(formFieldCounterProps || {})} {...counter} /> : null}\n\t\t\t{showMsg && <KolFormFieldMsgFc {...(formFieldMsgProps || {})} id={id} alert={alert} msg={msg} hideMsg={hideMsg} />}\n\t\t\t{showHint && <KolFormFieldHintFc {...(formFieldHintProps || {})} id={id} hint={hint} />}\n\t\t\t{anotherChildren}\n\t\t</Component>\n\t);\n};\n\nexport default KolFormFieldFc;\n","export function getDefaultProps({ ariaDescribedBy, hideLabel, label }: { ariaDescribedBy?: string[]; hideLabel?: boolean; label?: string }): {\n\ttitle: string;\n\tautoCapitalize: string;\n\tautoCorrect: string;\n\t'aria-describedby'?: string;\n\t'aria-label'?: string;\n} {\n\treturn {\n\t\ttitle: '',\n\t\tautoCapitalize: 'off',\n\t\tautoCorrect: 'off',\n\t\t'aria-describedby': ariaDescribedBy?.length ? ariaDescribedBy.join(' ') : undefined,\n\t\t'aria-label': hideLabel && label ? label : undefined,\n\t};\n}\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { validateTouched } from '../../schema';\n\nimport { AssociatedInputController } from './associated.controller';\n\nimport type { Props, Watches } from './types';\n\nexport class ControlledInputController extends AssociatedInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateTouched(value?: boolean): void {\n\t\tvalidateTouched(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateTouched(this.component._touched);\n\t}\n}\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type {\n\tAccessKeyPropType,\n\tAdjustHeightPropType,\n\tButtonProps,\n\tHideMsgPropType,\n\tInputTypeOnDefault,\n\tLabelWithExpertSlotPropType,\n\tMsgPropType,\n\tShortKeyPropType,\n\tStencilUnknown,\n\tStringified,\n\tTooltipAlignPropType,\n} from '../../../schema';\nimport {\n\ta11yHint,\n\ta11yHintDisabled,\n\tdevHint,\n\tobjectObjectHandler,\n\tparseJson,\n\tsetState,\n\tvalidateAccessKey,\n\tvalidateAdjustHeight,\n\tvalidateHideMsg,\n\tvalidateHideLabel,\n\tvalidateLabelWithExpertSlot,\n\tvalidateMsg,\n\tvalidateShortKey,\n\tvalidateTabIndex,\n\tvalidateTooltipAlign,\n\twatchBoolean,\n\twatchString,\n} from '../../../schema';\n\nimport { dispatchDomEvent, KolEvent } from '../../../utils/events';\nimport { ControlledInputController } from '../../input-adapter-leanup/controller';\n\nimport type { Props as AdapterProps } from '../../input-adapter-leanup/types';\nimport type { Props, Watches } from './types';\nimport { validateAccessAndShortKey } from '../../../schema/validators/access-and-short-key';\n\ntype ValueChangeListener = (value: StencilUnknown) => void;\n\nexport class InputController extends ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props & AdapterProps;\n\n\tprivate readonly valueChangeListeners: ValueChangeListener[] = [];\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAccessKey(value?: AccessKeyPropType): void {\n\t\tvalidateAccessKey(this.component, value);\n\t\tvalidateAccessAndShortKey(value, this.component._shortKey);\n\t}\n\n\tpublic validateAdjustHeight(value?: AdjustHeightPropType): void {\n\t\tvalidateAdjustHeight(this.component, value);\n\t}\n\n\tpublic validateDisabled(value?: boolean): void {\n\t\twatchBoolean(this.component, '_disabled', value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\tpublic validateTooltipAlign(value?: TooltipAlignPropType): void {\n\t\tvalidateTooltipAlign(this.component, value);\n\t}\n\n\tpublic validateHideMsg(value?: HideMsgPropType): void {\n\t\tvalidateHideMsg(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideMsg) {\n\t\t\t\t\t\ta11yHint('Property _hideMsg for inputs: Only use when the error message is shown outside of the input component.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tvalidateHideLabel(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideLabel) {\n\t\t\t\t\t\ta11yHint('Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateHint(value?: string): void {\n\t\twatchString(this.component, '_hint', value);\n\t}\n\n\tpublic validateId(value?: string): void {\n\t\twatchString(this.component, '_id', value, { minLength: 1 });\n\t\tif (value === '' || typeof value === 'undefined') {\n\t\t\tdevHint(`A unique ID on the input fields is not strictly required, but it might be relevant for E2E tests.`);\n\t\t}\n\t}\n\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tvalidateLabelWithExpertSlot(this.component, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\tpublic validateMsg(value?: Stringified<MsgPropType>): void {\n\t\tvalidateMsg(this.component, value);\n\t}\n\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tif (typeof value === 'object') {\n\t\t\tsetState(this.component, '_on', value);\n\t\t}\n\t}\n\n\tpublic validateShortKey(value?: ShortKeyPropType): void {\n\t\tvalidateShortKey(this.component, value);\n\t\tvalidateAccessAndShortKey(this.component._accessKey, value);\n\t}\n\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ButtonProps>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\tsetState(this.component, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAccessKey(this.component._accessKey);\n\t\tthis.validateAdjustHeight(this.component._adjustHeight);\n\t\tthis.validateMsg(this.component._msg);\n\t\tthis.validateDisabled(this.component._disabled);\n\t\tthis.validateHideMsg(this.component._hideMsg);\n\t\tthis.validateHideLabel(this.component._hideLabel);\n\t\tthis.validateHint(this.component._hint);\n\t\tthis.validateId(this.component._id);\n\t\tthis.validateLabel(this.component._label);\n\t\tthis.validateShortKey(this.component._shortKey);\n\t\tthis.validateSmartButton(this.component._smartButton);\n\t\tthis.validateOn(this.component._on);\n\t\tthis.validateTabIndex(this.component._tabIndex);\n\t\tvalidateAccessAndShortKey(this.component._accessKey, this.component._shortKey);\n\t}\n\n\tprivate emitEvent(type: KolEvent, value?: unknown): void {\n\t\tif (this.host) {\n\t\t\tdispatchDomEvent(this.host, type, value);\n\t\t}\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\tthis.component._touched = true;\n\n\t\t// Event handling\n\t\tthis.emitEvent(KolEvent.blur);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onBlur === 'function') {\n\t\t\tthis.component._on.onBlur(event);\n\t\t}\n\t}\n\n\t/**\n\t * @param event - The original event object\n\t * @param value - Optional value. Taken from event if not defined.\n\t */\n\tprotected onChange(event: Event, value?: StencilUnknown): void {\n\t\tif (typeof value === 'undefined') {\n\t\t\tvalue = (event.target as HTMLInputElement).value;\n\t\t}\n\n\t\t// Event handling\n\t\tthis.emitEvent(KolEvent.change, value);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\t/**\n\t\t\t * TODO\n\t\t\t * Value-Handling muss für InputDate und InputNumber optimiert werden\n\t\t\t * - value\n\t\t\t * - valueAsNumber\n\t\t\t * - valueAsDate\n\t\t\t */\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\n\t\t/**\n\t\t * TODO: Was ist das?\n\t\t */\n\t\tthis.valueChangeListeners.forEach((listener) => listener(value));\n\t}\n\n\t/**\n\t * @param event - The original event object\n\t * @param shouldSetFormAssociatedValue - Set to false when setting form associated value is not desired.\n\t * @param value - Optional value. Taken from event if not defined.\n\t */\n\tprotected onInput(event: Event, shouldSetFormAssociatedValue = true, value?: StencilUnknown): void {\n\t\tif (typeof value === 'undefined') {\n\t\t\tvalue = (event.target as HTMLInputElement).value;\n\t\t}\n\n\t\t// Event handling\n\t\tthis.emitEvent(KolEvent.input, value);\n\n\t\t// Static form handling\n\t\tif (shouldSetFormAssociatedValue) {\n\t\t\tthis.setFormAssociatedValue(value);\n\t\t}\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onInput === 'function') {\n\t\t\tthis.component._on.onInput(event, value);\n\t\t}\n\t}\n\n\tprotected onClick(event: Event): void {\n\t\t// Event handling\n\t\tthis.emitEvent(KolEvent.click);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onClick === 'function') {\n\t\t\tthis.component._on.onClick(event);\n\t\t}\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\t// Event handling\n\t\tthis.emitEvent(KolEvent.focus);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onFocus === 'function') {\n\t\t\tthis.component._on.onFocus(event);\n\t\t}\n\t}\n\n\tpublic addValueChangeListener(listener: ValueChangeListener) {\n\t\tthis.valueChangeListeners.push(listener);\n\t}\n\n\t/**\n\t * Hinweis: In der Subklasse 'InputPasswordController'\n\t * werden die Methoden onBlur und onFocus\n\t * überschrieben.\n\t * Es werden somit zunächst die Methoden der\n\t * Subklasse ausgeführt und danach die der\n\t * Oberklassen.\n\t */\n\tpublic readonly onFacade = {\n\t\tonBlur: this.onBlur.bind(this),\n\t\tonChange: this.onChange.bind(this),\n\t\tonClick: this.onClick.bind(this),\n\t\tonFocus: this.onFocus.bind(this),\n\t\tonInput: this.onInput.bind(this),\n\t};\n}\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport KolFormFieldFc, { type FormFieldProps } from '../../functional-components/FormField';\nimport {\n\ttype InputColorStates,\n\ttype InputEmailStates,\n\ttype InputFileStates,\n\ttype InputNumberStates,\n\ttype InputPasswordStates,\n\ttype InputRangeStates,\n\ttype InputTextStates,\n\ttype InputCheckboxStates,\n\ttype InputRadioStates,\n\ttype SelectStates,\n\tconvertMsgToInternMsg,\n} from '../../schema';\n\ntype InputState =\n\t| InputTextStates\n\t| InputEmailStates\n\t| InputPasswordStates\n\t| InputNumberStates\n\t| InputColorStates\n\t| InputFileStates\n\t| InputRangeStates\n\t| InputCheckboxStates\n\t| InputRadioStates\n\t| SelectStates;\n\nexport type FormFieldStateWrapperProps = Partial<FormFieldProps> & {\n\tstate: InputState;\n};\n\nfunction getFormFieldProps(state: InputState): FormFieldProps {\n\tconst props: FormFieldProps = {\n\t\tid: state._id,\n\t\tdisabled: state._disabled,\n\t\tmsg: convertMsgToInternMsg(state._msg),\n\t\thint: state._hint,\n\t\tlabel: state._label,\n\t\thideLabel: state._hideLabel,\n\t\thideMsg: state._hideMsg,\n\t\ttouched: state._touched,\n\t\taccessKey: state._accessKey,\n\t\tshortKey: state._shortKey,\n\t};\n\n\tif ('_required' in state) {\n\t\tprops.required = state._required;\n\t}\n\n\tif ('_readOnly' in state) {\n\t\tprops.readOnly = state._readOnly;\n\t}\n\n\tif ('_hasCounter' in state && '_currentLength' in state) {\n\t\tprops.counter = state._hasCounter ? { currentLength: state._currentLength } : undefined;\n\t\tif (props.counter && '_maxLength' in state) {\n\t\t\tprops.counter.maxLength = state._maxLength;\n\t\t}\n\t}\n\n\treturn props;\n}\n\nconst FormFieldStateWrapper: FC<FormFieldStateWrapperProps> = ({ state, ...other }, children) => {\n\treturn (\n\t\t<KolFormFieldFc {...getFormFieldProps(state)} {...other}>\n\t\t\t{children}\n\t\t</KolFormFieldFc>\n\t);\n};\n\nexport default FormFieldStateWrapper;\n","import type { MsgPropType, TouchedPropType } from '../../schema';\n\n/**\n * Berechnet in Abhängigkeit des Component-State, wie die\n * aria-describedby-Attributs gesetzt werden sollen.\n *\n * @param state State der Component\n * @returns Render-States\n */\nexport const getRenderStates = (state: {\n\t_msg?: MsgPropType;\n\t_hint?: string;\n\t_id: string;\n\t_touched?: TouchedPropType;\n}): {\n\thasError: boolean;\n\thasHint: boolean;\n\tariaDescribedBy: string[];\n} => {\n\tconst hasMessage = Boolean(state?._msg?._description && state._msg._description?.length > 0);\n\tconst isMessageValidError = state._msg?._type === 'error' && hasMessage;\n\tconst hasError = isMessageValidError && state._touched === true;\n\tconst hasHint = typeof state._hint === 'string' && state._hint.length > 0;\n\n\tconst ariaDescribedBy: string[] = [];\n\tif (hasMessage) {\n\t\tariaDescribedBy.push(`${state._id}-msg`);\n\t}\n\tif (hasHint) {\n\t\tariaDescribedBy.push(`${state._id}-hint`);\n\t}\n\treturn { hasError, hasHint, ariaDescribedBy };\n};\n"],"version":3}
1
+ {"file":"getRenderStates-c9074761.js","mappings":"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","names":["isString","InternalUnderlinedBadgeText","KolFormFieldTooltipFc","KolFormFieldMsgFc"],"sources":["src/schema/props/adjust-height.ts","src/schema/props/hide-msg.ts","src/utils/transformObjectProperties.ts","src/schema/props/msg.ts","src/schema/props/touched.ts","src/functional-components/FormFieldMsg/FormFieldMsg.tsx","src/functional-components/FormFieldLabel/FormFieldLabel.tsx","src/functional-components/FormFieldHint/FormFieldHint.tsx","src/functional-components/FormFieldCounter/FormFieldCounter.tsx","src/functional-components/FormFieldTooltip/FormFieldTooltip.tsx","src/functional-components/FormField/FormField.tsx","src/functional-components/inputs/_helpers/getDefaultProps.ts","src/components/input-adapter-leanup/controller.ts","src/components/@deprecated/input/controller.ts","src/functional-component-wrappers/FormFieldStateWrapper/FormFieldStateWrapper.tsx","src/functional-component-wrappers/_helpers/getRenderStates.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type AdjustHeightPropType = boolean;\n\n/**\n * Adjusts the height of the element to its content.\n */\nexport type PropAdjustHeight = {\n\tadjustHeight: AdjustHeightPropType;\n};\n\n/* validator */\nexport const validateAdjustHeight = (component: Generic.Element.Component, value?: AdjustHeightPropType): void => {\n\twatchBoolean(component, '_adjustHeight', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchBooleanOptions } from '../utils';\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type HideMsgPropType = boolean;\n\n/**\n * Hides the message but leaves it in the DOM for the input's aria-describedby.\n */\nexport type PropHideMsg = {\n\thideMsg: HideMsgPropType;\n};\n\n/* validator */\nexport const validateHideMsg = (component: Generic.Element.Component, value?: HideMsgPropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_hideMsg', value, options);\n};\n","/**\n * Transforms keys with leading underscores, keeping non-underscore keys unchanged.\n *\n * @template K The original key type\n * @returns Transformed key type\n */\ntype TransformKeys<K> = K extends `_${infer Rest}` ? Rest : K;\n\n/**\n * Transforms object properties by removing leading underscores from key names.\n *\n * This method is useful for converting objects from a naming convention with leading underscores\n * (often used for private or internal properties) to a standard naming format.\n *\n * @param obj The input object with potential underscore prefixes\n * @returns A new object with underscores removed from key names\n *\n * @example\n * // Converts object with underscore-prefixed keys\n * const input = { _name: 'John', _age: 30 };\n * const result = transformObjectProperties(input);\n * // result is { name: 'John', age: 30 }\n */\nexport function transformObjectProperties<T extends Record<string, unknown>>(\n\tobj: T,\n): {\n\t[K in keyof T as TransformKeys<K>]: T[K];\n} {\n\treturn Object.entries(obj).reduce(\n\t\t(acc, [key, value]) => {\n\t\t\tconst newKey = key.startsWith('_') ? key.slice(1) : key;\n\t\t\treturn {\n\t\t\t\t...acc,\n\t\t\t\t[newKey]: value,\n\t\t\t};\n\t\t},\n\t\t{} as {\n\t\t\t[K in keyof T as TransformKeys<K>]: T[K];\n\t\t},\n\t);\n}\n","import type { Generic } from 'adopted-style-sheets';\nimport type { AlertProps, InternalAlertProps } from '../components';\nimport type { Stringified } from '../types';\nimport { objectObjectHandler, parseJson, watchValidator } from '../utils';\nimport { isObject, isString } from '../validators';\nimport { transformObjectProperties } from '../../utils/transformObjectProperties';\n\n/* types */\nexport type MsgPropType = AlertProps & {\n\t_description: string;\n};\n\nexport type InternMsgPropType = Partial<\n\tInternalAlertProps & {\n\t\tdescription: string;\n\t}\n>;\n\n/**\n * Defines the properties for a message rendered as Alert component.\n */\nexport type PropMsg = {\n\tmsg: MsgPropType;\n};\n\n/* validator */\nexport const validateMsg = (component: Generic.Element.Component, value?: Stringified<MsgPropType>): void => {\n\tobjectObjectHandler(value, () => {\n\t\ttry {\n\t\t\tvalue = parseJson<MsgPropType>(value);\n\t\t\t// eslint-disable-next-line no-empty\n\t\t} catch (e) {\n\t\t\t// value keeps original value\n\t\t}\n\t\twatchValidator<MsgPropType>(\n\t\t\tcomponent,\n\t\t\t`_msg`,\n\t\t\t(value) => (isObject(value) && isString(value?._description, 1)) || value?._type === undefined,\n\t\t\tnew Set(['MsgPropType']),\n\t\t\tvalue as MsgPropType,\n\t\t);\n\t});\n};\n\nexport function convertMsgToInternMsg(msg?: MsgPropType): InternMsgPropType | undefined {\n\tif (!msg) {\n\t\treturn undefined;\n\t}\n\n\treturn transformObjectProperties(msg);\n}\n\nexport function checkHasMsg(msg?: InternMsgPropType, touched?: boolean): boolean {\n\t/**\n\t * We support 5 types of messages:\n\t * - default\n\t * - info\n\t * - success\n\t * - warning\n\t * - error\n\t *\n\t * The message is shown if:\n\t * - we show only one message at a time\n\t * - by error messages the input must be touched\n\t */\n\tconst showMsg = msg ? touched === true || msg?.type !== 'error' : false;\n\n\treturn showMsg;\n}\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type TouchedPropType = boolean;\n\n/**\n * Shows if the input was touched by a user.\n */\nexport type PropTouched = {\n\ttouched: TouchedPropType;\n};\n\n/* validator */\nexport const validateTouched = (component: Generic.Element.Component, value?: TouchedPropType): void => {\n\twatchBoolean(component, '_touched', value);\n};\n","import clsx from 'clsx';\nimport type { AlertPropType, HideMsgPropType, IdPropType, InternMsgPropType } from '../../schema';\nimport type { FunctionalComponent } from '@stencil/core';\nimport { h } from '@stencil/core';\nimport KolAlertFc from '../Alert';\nimport type { JSXBase } from '@stencil/core/internal';\n\ntype FormFieldMsgProps = JSXBase.HTMLAttributes<HTMLDivElement> & {\n\talert?: AlertPropType;\n\tmsg?: InternMsgPropType;\n\thideMsg?: HideMsgPropType;\n\tid: IdPropType;\n};\n\nconst FormFieldMsgFc: FunctionalComponent<FormFieldMsgProps> = ({ alert, msg, hideMsg, id, class: classNames, ...other }) => (\n\t<KolAlertFc\n\t\tid={`${id}-msg`}\n\t\talert={alert}\n\t\ttype=\"error\"\n\t\tclass={clsx('kol-form-field__msg', { 'visually-hidden': hideMsg === true }, classNames)}\n\t\t{...msg}\n\t\t{...other}\n\t\taria-hidden=\"true\"\n\t>\n\t\t{msg?.description || undefined}\n\t</KolAlertFc>\n);\n\nexport default FormFieldMsgFc;\n","import { h, Fragment, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\nimport InternalUnderlinedBadgeText from '../InternalUnderlinedBadgeText';\nimport { buildBadgeTextString } from '../../schema';\nimport { isString } from 'lodash-es';\n\ntype LabelProps = {\n\tlabel?: string;\n\taccessKey?: string;\n\tshortKey?: string;\n\thasExpertSlot?: boolean;\n\tshowBadge?: boolean;\n};\n\ntype FormFieldLabelProps = JSXBase.HTMLAttributes<Omit<HTMLLabelElement | HTMLLegendElement, 'id' | 'hidden' | 'htmlFor'>> & {\n\tcomponent?: 'label' | 'legend';\n\tid: string;\n\thideLabel?: boolean;\n\tbaseClassName?: string;\n\tshowBadge?: boolean;\n} & LabelProps;\n\nconst LabelFc: FC<LabelProps> = ({ hasExpertSlot, accessKey, shortKey, label, showBadge = true }) => {\n\tif (hasExpertSlot) {\n\t\treturn <slot name=\"expert\"></slot>;\n\t}\n\n\tif (!label) {\n\t\treturn null;\n\t}\n\n\tconst hasBadgeText = isString(accessKey) || isString(shortKey);\n\n\tif (!showBadge || !hasBadgeText) {\n\t\treturn <span>{label}</span>;\n\t}\n\n\tconst badgeText = buildBadgeTextString(accessKey, shortKey);\n\n\treturn (\n\t\t<>\n\t\t\t<InternalUnderlinedBadgeText badgeText={badgeText} label={label} />\n\t\t\t&nbsp;\n\t\t\t<span class=\"badge-text-hint\" aria-hidden=\"true\">\n\t\t\t\t{badgeText}\n\t\t\t</span>\n\t\t</>\n\t);\n};\n\nconst KolFormFieldLabelFc: FC<FormFieldLabelProps> = ({\n\tcomponent: Component = 'label',\n\tid,\n\tbaseClassName = 'kol-form-field',\n\tclass: classNames,\n\taccessKey,\n\tshortKey,\n\tlabel,\n\thideLabel,\n\thasExpertSlot,\n\tshowBadge,\n\t...other\n}) => {\n\tconst useTooltipInsteadOfLabel = !hasExpertSlot && hideLabel;\n\n\treturn (\n\t\t<Component\n\t\t\t{...other}\n\t\t\tclass={clsx(`${baseClassName}__label`, classNames)}\n\t\t\tid={!useTooltipInsteadOfLabel ? `${id}-label` : undefined}\n\t\t\thidden={useTooltipInsteadOfLabel}\n\t\t\thtmlFor={id}\n\t\t>\n\t\t\t{/* INFO: span is needed for css styling :after content like a star (*) or optional text ! */}\n\t\t\t<span class={clsx(`${baseClassName}__label-text`)}>\n\t\t\t\t{/* INFO: label comes with any html tag or as plain text! */}\n\t\t\t\t<LabelFc hasExpertSlot={hasExpertSlot} accessKey={accessKey} shortKey={shortKey} label={label} showBadge={showBadge} />\n\t\t\t</span>\n\t\t</Component>\n\t);\n};\n\nexport default KolFormFieldLabelFc;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\n\ntype FormFieldHintProps = JSXBase.HTMLAttributes<HTMLSpanElement> & {\n\thint?: string;\n\tbaseClassName?: string;\n};\n\nconst KolFormFieldHintFc: FC<FormFieldHintProps> = ({ id, class: classNames, hint, baseClassName = 'kol-form-field', ...other }) => {\n\tif (!hint) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<span class={clsx(`${baseClassName}__hint`, classNames)} id={`${id}-hint`} {...other}>\n\t\t\t{hint}\n\t\t</span>\n\t);\n};\n\nexport default KolFormFieldHintFc;\n","import { h, Fragment, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\nimport { translate } from '../../i18n';\n\ntype FormFieldCounterProps = JSXBase.HTMLAttributes<HTMLSpanElement> & {\n\tcurrentLength?: number;\n\tmaxLength?: number;\n};\n\nconst KolFormFieldCounterFc: FC<FormFieldCounterProps> = ({ currentLength, maxLength, class: classNames, ...other }) => {\n\treturn (\n\t\t<span class={clsx('kol-form-field__counter', classNames)} {...other} aria-atomic=\"true\" aria-live=\"polite\" data-testid=\"input-counter\">\n\t\t\t{currentLength}\n\t\t\t{maxLength && (\n\t\t\t\t<>\n\t\t\t\t\t<span aria-label={translate('kol-of')} role=\"img\">\n\t\t\t\t\t\t/\n\t\t\t\t\t</span>\n\t\t\t\t\t{maxLength}\n\t\t\t\t</>\n\t\t\t)}\n\t\t\t&nbsp;<span>{translate('kol-characters')}</span>\n\t\t</span>\n\t);\n};\n\nexport default KolFormFieldCounterFc;\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\nimport { KolTooltipWcTag } from '../../core/component-names';\nimport type { AlignPropType } from '../../schema';\n\ntype FormFieldTooltipProps = Pick<JSXBase.HTMLAttributes<HTMLElement>, 'class'> & {\n\tid: string;\n\talign?: AlignPropType;\n\tbadgeText?: string;\n\thideLabel?: boolean;\n\tlabel: string;\n};\n\nconst FormFieldTooltipFc: FC<FormFieldTooltipProps> = ({ id, align, badgeText, hideLabel, label, class: classNames }) => {\n\treturn (\n\t\t<KolTooltipWcTag\n\t\t\t/**\n\t\t\t * Dieses Aria-Hidden verhindert das doppelte Vorlesen des Labels,\n\t\t\t * verhindert aber nicht das Aria-Labelledby vorgelesen wird.\n\t\t\t */\n\t\t\taria-hidden=\"true\"\n\t\t\tclass={clsx('kol-form-field__tooltip', classNames)}\n\t\t\t_badgeText={badgeText}\n\t\t\t_align={align}\n\t\t\t_id={hideLabel ? `${id}-label` : undefined}\n\t\t\t_label={label}\n\t\t></KolTooltipWcTag>\n\t);\n};\n\nexport default FormFieldTooltipFc;\n","import type { JSX } from '@stencil/core';\nimport { h, type FunctionalComponent as FC } from '@stencil/core';\nimport KolFormFieldMsgFc from '../FormFieldMsg';\nimport KolFormFieldLabelFc from '../FormFieldLabel';\nimport KolFormFieldHintFc from '../FormFieldHint/FormFieldHint';\nimport KolFormFieldCounterFc from '../FormFieldCounter';\nimport KolFormFieldTooltipFc from '../FormFieldTooltip';\nimport type { JSXBase } from '@stencil/core/internal';\nimport clsx from 'clsx';\nimport type { AlignPropType, InternMsgPropType } from '../../schema';\nimport { buildBadgeTextString, checkHasMsg, showExpertSlot } from '../../schema';\n\nfunction getModifierClassNameByMsgType(msg?: { type?: string }): string {\n\tif (msg?.type) {\n\t\treturn (\n\t\t\t{\n\t\t\t\tdefault: 'msg-type-default',\n\t\t\t\tinfo: 'msg-type-info',\n\t\t\t\tsuccess: 'msg-type-success',\n\t\t\t\twarning: 'msg-type-warning',\n\t\t\t\terror: 'msg-type-error',\n\t\t\t}[msg?.type] || ''\n\t\t);\n\t}\n\n\treturn '';\n}\n\nexport type FormFieldProps = Omit<JSXBase.HTMLAttributes<HTMLElement>, 'id'> & {\n\tcomponent?: 'div' | 'fieldset';\n\tid: string;\n\talert?: boolean;\n\tdisabled?: boolean;\n\tmsg?: InternMsgPropType;\n\ttooltipAlign?: AlignPropType;\n\thint?: string;\n\tlabel: string;\n\thideLabel?: boolean;\n\thideMsg?: boolean;\n\taccessKey?: string;\n\tshortKey?: string;\n\tcounter?: { currentLength?: number; maxLength?: number };\n\treadOnly?: boolean;\n\ttouched?: boolean;\n\trequired?: boolean;\n\trenderNoLabel?: boolean;\n\trenderNoTooltip?: boolean;\n\trenderNoHint?: boolean;\n\tanotherChildren?: JSX.Element | JSX.Element[];\n\n\tformFieldLabelProps?: JSXBase.HTMLAttributes<Omit<HTMLLabelElement | HTMLLegendElement, 'id' | 'hidden' | 'htmlFor'>> & { component?: 'label' | 'legend' };\n\tformFieldHintProps?: JSXBase.HTMLAttributes<HTMLElement>;\n\tformFieldTooltipProps?: Pick<JSXBase.HTMLAttributes<HTMLElement>, 'class'>;\n\tformFieldMsgProps?: JSXBase.HTMLAttributes<HTMLDivElement>;\n\tformFieldCounterProps?: JSXBase.HTMLAttributes<HTMLSpanElement>;\n\tformFieldInputProps?: JSXBase.HTMLAttributes<HTMLDivElement>;\n} & {\n\t[key: `data-${string}`]: unknown;\n};\n\nconst InputContainer: FC<JSXBase.HTMLAttributes<HTMLDivElement>> = ({ class: classNames, ...other }, children) => {\n\treturn (\n\t\t<div class={clsx('kol-form-field__input', classNames)} {...other}>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n\nconst KolFormFieldFc: FC<FormFieldProps> = (props, children) => {\n\tconst {\n\t\tcomponent: Component = 'div',\n\t\trenderNoLabel,\n\t\trenderNoTooltip,\n\t\trenderNoHint,\n\t\tanotherChildren,\n\t\tid,\n\t\trequired,\n\t\talert,\n\t\tdisabled,\n\t\tclass: classNames,\n\t\tmsg,\n\t\thideMsg,\n\t\thideLabel,\n\t\tlabel,\n\t\thint,\n\t\taccessKey,\n\t\tshortKey,\n\t\ttooltipAlign,\n\t\tcounter,\n\t\treadOnly,\n\t\ttouched,\n\t\tformFieldLabelProps,\n\t\tformFieldHintProps,\n\t\tformFieldTooltipProps,\n\t\tformFieldMsgProps,\n\t\tformFieldCounterProps,\n\t\tformFieldInputProps,\n\t\t...other\n\t} = props;\n\n\tconst showLabel = !renderNoLabel;\n\tconst showHint = !renderNoHint;\n\tconst showTooltip = !renderNoTooltip;\n\tconst hasExpertSlot = showExpertSlot(label);\n\tconst showMsg = checkHasMsg(msg, touched);\n\tconst badgeText = buildBadgeTextString(accessKey, shortKey);\n\tconst useTooltipInsteadOfLabel = showTooltip && !hasExpertSlot && hideLabel;\n\n\tlet stateCssClasses = {\n\t\t['kol-form-field--disabled']: Boolean(disabled),\n\t\t['kol-form-field--required']: Boolean(required),\n\t\t['kol-form-field--touched']: Boolean(touched),\n\t\t['kol-form-field--hide-label']: Boolean(hideLabel),\n\t\t['kol-form-field--read-only']: Boolean(readOnly),\n\t\t['kol-form-field--hidden-msg']: Boolean(hideMsg),\n\t};\n\n\tif (showMsg) {\n\t\tstateCssClasses = {\n\t\t\t...stateCssClasses,\n\t\t\t[`kol-form-field--${msg?.type || 'error'}`]: true,\n\t\t\t[`kol-form-field--${getModifierClassNameByMsgType(msg)}`]: true,\n\t\t};\n\t}\n\n\treturn (\n\t\t<Component class={clsx('kol-form-field', stateCssClasses, classNames)} {...other}>\n\t\t\t{showLabel && (\n\t\t\t\t<KolFormFieldLabelFc\n\t\t\t\t\t{...(formFieldLabelProps || {})}\n\t\t\t\t\tid={id}\n\t\t\t\t\thasExpertSlot={hasExpertSlot}\n\t\t\t\t\thideLabel={hideLabel}\n\t\t\t\t\tlabel={label}\n\t\t\t\t\taccessKey={accessKey}\n\t\t\t\t\tshortKey={shortKey}\n\t\t\t\t/>\n\t\t\t)}\n\t\t\t<InputContainer {...formFieldInputProps}>\n\t\t\t\t{children}\n\t\t\t\t{useTooltipInsteadOfLabel && (\n\t\t\t\t\t<KolFormFieldTooltipFc {...(formFieldTooltipProps || {})} id={id} label={label} hideLabel={hideLabel} align={tooltipAlign} badgeText={badgeText} />\n\t\t\t\t)}\n\t\t\t</InputContainer>\n\t\t\t{counter ? <KolFormFieldCounterFc {...(formFieldCounterProps || {})} {...counter} /> : null}\n\t\t\t{showMsg && <KolFormFieldMsgFc {...(formFieldMsgProps || {})} id={id} alert={alert} msg={msg} hideMsg={hideMsg} />}\n\t\t\t{showHint && <KolFormFieldHintFc {...(formFieldHintProps || {})} id={id} hint={hint} />}\n\t\t\t{anotherChildren}\n\t\t</Component>\n\t);\n};\n\nexport default KolFormFieldFc;\n","export function getDefaultProps({ ariaDescribedBy, hideLabel, label }: { ariaDescribedBy?: string[]; hideLabel?: boolean; label?: string }): {\n\ttitle: string;\n\tautoCapitalize: string;\n\tautoCorrect: string;\n\t'aria-describedby'?: string;\n\t'aria-label'?: string;\n} {\n\treturn {\n\t\ttitle: '',\n\t\tautoCapitalize: 'off',\n\t\tautoCorrect: 'off',\n\t\t'aria-describedby': ariaDescribedBy?.length ? ariaDescribedBy.join(' ') : undefined,\n\t\t'aria-label': hideLabel && label ? label : undefined,\n\t};\n}\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { validateTouched } from '../../schema';\n\nimport { AssociatedInputController } from './associated.controller';\n\nimport type { Props, Watches } from './types';\n\nexport class ControlledInputController extends AssociatedInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateTouched(value?: boolean): void {\n\t\tvalidateTouched(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateTouched(this.component._touched);\n\t}\n}\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type {\n\tAccessKeyPropType,\n\tAdjustHeightPropType,\n\tButtonProps,\n\tHideMsgPropType,\n\tInputTypeOnDefault,\n\tLabelWithExpertSlotPropType,\n\tMsgPropType,\n\tShortKeyPropType,\n\tStencilUnknown,\n\tStringified,\n\tTooltipAlignPropType,\n} from '../../../schema';\nimport {\n\ta11yHint,\n\ta11yHintDisabled,\n\tdevHint,\n\tobjectObjectHandler,\n\tparseJson,\n\tsetState,\n\tvalidateAccessKey,\n\tvalidateAdjustHeight,\n\tvalidateHideMsg,\n\tvalidateHideLabel,\n\tvalidateLabelWithExpertSlot,\n\tvalidateMsg,\n\tvalidateShortKey,\n\tvalidateTabIndex,\n\tvalidateTooltipAlign,\n\twatchBoolean,\n\twatchString,\n} from '../../../schema';\n\nimport { dispatchDomEvent, KolEvent } from '../../../utils/events';\nimport { ControlledInputController } from '../../input-adapter-leanup/controller';\n\nimport type { Props as AdapterProps } from '../../input-adapter-leanup/types';\nimport type { Props, Watches } from './types';\nimport { validateAccessAndShortKey } from '../../../schema/validators/access-and-short-key';\n\ntype ValueChangeListener = (value: StencilUnknown) => void;\n\nexport class InputController extends ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props & AdapterProps;\n\n\tprivate readonly valueChangeListeners: ValueChangeListener[] = [];\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAccessKey(value?: AccessKeyPropType): void {\n\t\tvalidateAccessKey(this.component, value);\n\t\tvalidateAccessAndShortKey(value, this.component._shortKey);\n\t}\n\n\tpublic validateAdjustHeight(value?: AdjustHeightPropType): void {\n\t\tvalidateAdjustHeight(this.component, value);\n\t}\n\n\tpublic validateDisabled(value?: boolean): void {\n\t\twatchBoolean(this.component, '_disabled', value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\tpublic validateTooltipAlign(value?: TooltipAlignPropType): void {\n\t\tvalidateTooltipAlign(this.component, value);\n\t}\n\n\tpublic validateHideMsg(value?: HideMsgPropType): void {\n\t\tvalidateHideMsg(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideMsg) {\n\t\t\t\t\t\ta11yHint('Property _hideMsg for inputs: Only use when the error message is shown outside of the input component.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tvalidateHideLabel(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideLabel) {\n\t\t\t\t\t\ta11yHint('Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateHint(value?: string): void {\n\t\twatchString(this.component, '_hint', value);\n\t}\n\n\tpublic validateId(value?: string): void {\n\t\twatchString(this.component, '_id', value, { minLength: 1 });\n\t\tif (value === '' || typeof value === 'undefined') {\n\t\t\tdevHint(`A unique ID on the input fields is not strictly required, but it might be relevant for E2E tests.`);\n\t\t}\n\t}\n\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tvalidateLabelWithExpertSlot(this.component, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\tpublic validateMsg(value?: Stringified<MsgPropType>): void {\n\t\tvalidateMsg(this.component, value);\n\t}\n\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tif (typeof value === 'object') {\n\t\t\tsetState(this.component, '_on', value);\n\t\t}\n\t}\n\n\tpublic validateShortKey(value?: ShortKeyPropType): void {\n\t\tvalidateShortKey(this.component, value);\n\t\tvalidateAccessAndShortKey(this.component._accessKey, value);\n\t}\n\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ButtonProps>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\tsetState(this.component, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAccessKey(this.component._accessKey);\n\t\tthis.validateAdjustHeight(this.component._adjustHeight);\n\t\tthis.validateMsg(this.component._msg);\n\t\tthis.validateDisabled(this.component._disabled);\n\t\tthis.validateHideMsg(this.component._hideMsg);\n\t\tthis.validateHideLabel(this.component._hideLabel);\n\t\tthis.validateHint(this.component._hint);\n\t\tthis.validateId(this.component._id);\n\t\tthis.validateLabel(this.component._label);\n\t\tthis.validateShortKey(this.component._shortKey);\n\t\tthis.validateSmartButton(this.component._smartButton);\n\t\tthis.validateOn(this.component._on);\n\t\tthis.validateTabIndex(this.component._tabIndex);\n\t\tvalidateAccessAndShortKey(this.component._accessKey, this.component._shortKey);\n\t}\n\n\tprivate emitEvent(type: KolEvent, value?: unknown): void {\n\t\tif (this.host) {\n\t\t\tdispatchDomEvent(this.host, type, value);\n\t\t}\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\tthis.component._touched = true;\n\n\t\t// Event handling\n\t\tthis.emitEvent(KolEvent.blur);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onBlur === 'function') {\n\t\t\tthis.component._on.onBlur(event);\n\t\t}\n\t}\n\n\t/**\n\t * @param event - The original event object\n\t * @param value - Optional value. Taken from event if not defined.\n\t */\n\tprotected onChange(event: Event, value?: StencilUnknown): void {\n\t\tif (typeof value === 'undefined') {\n\t\t\tvalue = (event.target as HTMLInputElement).value;\n\t\t}\n\n\t\t// Event handling\n\t\tthis.emitEvent(KolEvent.change, value);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\t/**\n\t\t\t * TODO\n\t\t\t * Value-Handling muss für InputDate und InputNumber optimiert werden\n\t\t\t * - value\n\t\t\t * - valueAsNumber\n\t\t\t * - valueAsDate\n\t\t\t */\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\n\t\t/**\n\t\t * TODO: Was ist das?\n\t\t */\n\t\tthis.valueChangeListeners.forEach((listener) => listener(value));\n\t}\n\n\t/**\n\t * @param event - The original event object\n\t * @param shouldSetFormAssociatedValue - Set to false when setting form associated value is not desired.\n\t * @param value - Optional value. Taken from event if not defined.\n\t */\n\tprotected onInput(event: Event, shouldSetFormAssociatedValue = true, value?: StencilUnknown): void {\n\t\tif (typeof value === 'undefined') {\n\t\t\tvalue = (event.target as HTMLInputElement).value;\n\t\t}\n\n\t\t// Event handling\n\t\tthis.emitEvent(KolEvent.input, value);\n\n\t\t// Static form handling\n\t\tif (shouldSetFormAssociatedValue) {\n\t\t\tthis.setFormAssociatedValue(value);\n\t\t}\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onInput === 'function') {\n\t\t\tthis.component._on.onInput(event, value);\n\t\t}\n\t}\n\n\tprotected onClick(event: Event): void {\n\t\t// Event handling\n\t\tthis.emitEvent(KolEvent.click);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onClick === 'function') {\n\t\t\tthis.component._on.onClick(event);\n\t\t}\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\t// Event handling\n\t\tthis.emitEvent(KolEvent.focus);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onFocus === 'function') {\n\t\t\tthis.component._on.onFocus(event);\n\t\t}\n\t}\n\n\tpublic addValueChangeListener(listener: ValueChangeListener) {\n\t\tthis.valueChangeListeners.push(listener);\n\t}\n\n\t/**\n\t * Hinweis: In der Subklasse 'InputPasswordController'\n\t * werden die Methoden onBlur und onFocus\n\t * überschrieben.\n\t * Es werden somit zunächst die Methoden der\n\t * Subklasse ausgeführt und danach die der\n\t * Oberklassen.\n\t */\n\tpublic readonly onFacade = {\n\t\tonBlur: this.onBlur.bind(this),\n\t\tonChange: this.onChange.bind(this),\n\t\tonClick: this.onClick.bind(this),\n\t\tonFocus: this.onFocus.bind(this),\n\t\tonInput: this.onInput.bind(this),\n\t};\n}\n","import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport KolFormFieldFc, { type FormFieldProps } from '../../functional-components/FormField';\nimport {\n\ttype InputColorStates,\n\ttype InputEmailStates,\n\ttype InputFileStates,\n\ttype InputNumberStates,\n\ttype InputPasswordStates,\n\ttype InputRangeStates,\n\ttype InputTextStates,\n\ttype InputCheckboxStates,\n\ttype InputRadioStates,\n\ttype SelectStates,\n\tconvertMsgToInternMsg,\n} from '../../schema';\n\ntype InputState =\n\t| InputTextStates\n\t| InputEmailStates\n\t| InputPasswordStates\n\t| InputNumberStates\n\t| InputColorStates\n\t| InputFileStates\n\t| InputRangeStates\n\t| InputCheckboxStates\n\t| InputRadioStates\n\t| SelectStates;\n\nexport type FormFieldStateWrapperProps = Partial<FormFieldProps> & {\n\tstate: InputState;\n};\n\nfunction getFormFieldProps(state: InputState): FormFieldProps {\n\tconst props: FormFieldProps = {\n\t\tid: state._id,\n\t\tdisabled: state._disabled,\n\t\tmsg: convertMsgToInternMsg(state._msg),\n\t\thint: state._hint,\n\t\tlabel: state._label,\n\t\thideLabel: state._hideLabel,\n\t\thideMsg: state._hideMsg,\n\t\ttouched: state._touched,\n\t\taccessKey: state._accessKey,\n\t\tshortKey: state._shortKey,\n\t};\n\n\tif ('_required' in state) {\n\t\tprops.required = state._required;\n\t}\n\n\tif ('_readOnly' in state) {\n\t\tprops.readOnly = state._readOnly;\n\t}\n\n\tif ('_hasCounter' in state && '_currentLength' in state) {\n\t\tprops.counter = state._hasCounter ? { currentLength: state._currentLength } : undefined;\n\t\tif (props.counter && '_maxLength' in state) {\n\t\t\tprops.counter.maxLength = state._maxLength;\n\t\t}\n\t}\n\n\treturn props;\n}\n\nconst FormFieldStateWrapper: FC<FormFieldStateWrapperProps> = ({ state, ...other }, children) => {\n\treturn (\n\t\t<KolFormFieldFc {...getFormFieldProps(state)} {...other}>\n\t\t\t{children}\n\t\t</KolFormFieldFc>\n\t);\n};\n\nexport default FormFieldStateWrapper;\n","import type { MsgPropType, TouchedPropType } from '../../schema';\n\n/**\n * Berechnet in Abhängigkeit des Component-State, wie die\n * aria-describedby-Attributs gesetzt werden sollen.\n *\n * @param state State der Component\n * @returns Render-States\n */\nexport const getRenderStates = (state: {\n\t_msg?: MsgPropType;\n\t_hint?: string;\n\t_id: string;\n\t_touched?: TouchedPropType;\n}): {\n\thasError: boolean;\n\thasHint: boolean;\n\tariaDescribedBy: string[];\n} => {\n\tconst hasMessage = Boolean(state?._msg?._description && state._msg._description?.length > 0);\n\tconst isMessageValidError = state._msg?._type === 'error' && hasMessage;\n\tconst hasError = isMessageValidError && state._touched === true;\n\tconst hasHint = typeof state._hint === 'string' && state._hint.length > 0;\n\n\tconst ariaDescribedBy: string[] = [];\n\tif (hasMessage) {\n\t\tariaDescribedBy.push(`${state._id}-msg`);\n\t}\n\tif (hasHint) {\n\t\tariaDescribedBy.push(`${state._id}-hint`);\n\t}\n\treturn { hasError, hasHint, ariaDescribedBy };\n};\n"],"version":3}